是否可以在 Google App Engine 上使用 Python lxml?

Posted

技术标签:

【中文标题】是否可以在 Google App Engine 上使用 Python lxml?【英文标题】:Is it possible to use Python lxml on Google App Engine? 【发布时间】:2010-12-26 01:35:57 【问题描述】:

我可以在 Google App Engine 上使用 Python lxml 吗? (或者我必须使用 Beautiful Soup 吗?)

我已经开始使用 Beautiful Soup,但它似乎很慢。我刚刚开始尝试从其他网站“抓取”数据以创建某种“混搭”的想法。

【问题讨论】:

【参考方案1】:

编辑lxml 库is now supported。


简答:you can't.

来自 AppEngine 的文档: "为 Python 环境编写的应用程序代码必须仅使用 Python 编写。不支持使用 C 语言编写的扩展"

现在,您是否必须使用 BeautifulSoup,这实际上取决于您打算如何使用它。更新问题的详细信息,如果可能的话,我会尝试在这里更新其他建议。

【讨论】:

不能,但从 AppEngine 上的 Python 2.7 开始 you can。 找不到 lxml。发生了什么? @seriousdev 假设您的意思是使用 2.7 运行时在 appengine 上找不到它:look here - 您需要手动启用 lxml 才能使用它。【参考方案2】:

要添加到 Caio 的修订答案,您可以使用 lxml,这是如何做到的:

在您的 app.yaml 文件中,添加以下内容:

libraries:
- name: lxml
  version: "2.3"   # or "latest"

现在import lxml 将在您的 Python 脚本中运行。

Here is the link to the official documentation.

【讨论】:

“版本:2.3”之前不应有破折号。 很遗憾,GAE 只提供了旧版本的 lxml。 GAE 的“最新”版本的 lxml 缺少“safe_attrs”属性,这对于实现 XSS 安全性至关重要。

以上是关于是否可以在 Google App Engine 上使用 Python lxml?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以将 Google App Engine 与 Google Cloud *** 一起使用?

在 Google App Engine 上打开 SQLite 数据库

是否可以在 Google App Engine 中设置会话 cookie 路径?

Google App Engine检查更新

Google App Engine - 哪些工具可以在本地编辑数据存储? [关闭]

是否可以在 Google App Engine 应用程序中实现 iPhone 推送通知?