0

我正在自学 Python,多亏了当我遇到困难时得到的大力帮助,我对自己的进步感到满意。

我正在从事一个项目,该项目从多个 API 中检索一堆记录、数据挖掘地址、提取地理位置(使用 GeoPy),现在我想在 Google 地球中将它们可视化。

我想做的完美库是 PyKML。它看起来很简单,特别是因为我想在 PyKML 文档中重新创建“环绕位置”之旅,使我能够以编程方式创建 KML 文档。

我遇到的问题是 PyKML 依赖于 lxml,而 lxml 依赖于 libxml2 和 libxslt,我无法安装它们中的任何一个。

我不确定这些库的用途,我什至不知道我是否可以在我的机器上运行(我正在使用 Windows)。libxml2 和 libxslt 的文档让我特别困惑,因为其中提到了 C 语言和编译器。

谁能告诉我“安装”和测试 lxml、libxml2 和 libxslt 以与 Python 一起使用的正确方法是什么?是否有人知道其他允许以编程方式创建 KML 文档的 Python 库,并且最好不依赖于其他库?

在此先感谢您的帮助。干杯


解决了

我通过卸载 64 位版本的 Python for Windows 并安装 32 位版本解决了这个问题。

此外,我从这里为 Python 2.6 安装了 lxml 2.3 的 32 位二进制版本:

http://pypi.python.org/pypi/lxml/2.3

我认为问题在于 Python 2.6 64 的某些组件与 lxml 工作所需的所有库之间的不兼容。

4

2 回答 2

2

但是,所有这些库都应该安装easy_install.

PyKML文档

鉴于此,安装 pyKML 的第一步是让 lxml 在您的系统上运行。有关如何安装 lxml的说明,请参阅 lxml 网站。

如果您使用的是类 unix 系统(包括 OS X),可能已经安装了 libxml2 和 libxslt,或者可以通过本机包管理器轻松安装。

对于 windows,lxml 提供了带有静态编译的 libxml2 和 libxslt 的预构建鸡蛋(如lxml 安装文档中所述),因此您不需要单独安装它们。从 lxml 文档:

获取 easy_install 工具并以超级用户(或管理员)身份运行以下命令:

easy_install --allow-hosts=lxml.de,*.python.org lxml

在 MS Windows 上,以上将安装我们提供的二进制构建。如果还没有最新版本的二进制构建,请在 PyPI 中搜索包含它们的最后一个版本,并将该版本传递给 easy_install。

看来最新版本是2.3,所以只有在上面的命令不起作用的情况下,尝试:

easy_install --allow-hosts=lxml.de,*.python.org lxml==2.3

从您收到的错误消息easy_install PyKML中,听起来 easy_install 没有找到您安装的 lxml 包,并且正在尝试为 PyKML 安装它。您可以尝试使用 强制解决问题easy_install --no-deps pykml,这将忽略依赖项并仅安装 PyKML(这是一个简单的仅 python 库)。然后测试是否import pykml有效,如果有效,您就完成了。

于 2012-04-18T19:07:55.997 回答
0

我通过卸载 64 位版本的 Python for Windows 并安装 32 位版本解决了这个问题。

此外,我从这里为 Python 2.6 安装了 lxml 2.3 的 32 位二进制版本:

http://pypi.python.org/pypi/lxml/2.3

我认为问题在于 Python 2.6 64 的某些组件与 lxml 工作所需的所有库之间的不兼容。

于 2013-12-05T21:04:18.397 回答