在哪里放python第三方模块(lxml)?

时间:2012-12-17 22:17:16

标签: python import module lxml elementtree

我想编写一个使用lxml库的Python程序(参见http://lxml.de/)。当然我想与他人分享我的程序,并希望在不同的计算机上运行它。

现在,我有一个包含lxml模块的文件夹和一个导入的python文件。现在,此导入不起作用并抛出异常。您可以在下图中查看所有详细信息和概述: http://www.qpic.ws/images/pythonprob.png

搜索此错误时,建议将lxml源文件夹的路径放入我的PATH。但是:我希望程序能够在不同的计算机上运行,​​而不必操纵它们的PATHes / PYTHONPATHes!该模块应该只在本地上下文中引用,这意味着,应该只驻留在我的程序旁边的文件夹中。我认为,无论是lxml还是其他第三方模块集合都无关紧要。

我是否理解了一些严重错误或者是否有解决我需求的简单方法?

系统: Python 3.3 •Windows 7

提前致谢!

2 个答案:

答案 0 :(得分:3)

virtualenv内安装LXML,并从该环境运行您的程序。这将无缝地处理您的PATH问题。在不同的计算机上,您可以构建新的virtualenvs并安装依赖项。

答案 1 :(得分:1)

lxml.etree是已编译的扩展程序。仅将lxml源文件夹放入sys.path是不够的。 尝试从http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml下载lxml-3.0.2.win-amd64-py3.3.‌exe,使用解压缩程序打开安装程序文件,例如WinRAR,并将当前的lxml源目录替换为安装程序中的lxml文件夹。