我尝试执行时遇到问题:
myuser@my-pc:~$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import libxml2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named libxml2
我已经安装了python-dev libxml2 libxml2-dev libxslt-dev
个软件包,因为我在互联网上发现了很多关于我的问题的这些软件包的建议,但没有结果。
同时在我的ubuntu桌面上没有任何更改,我可以成功地执行&#39;导入libxml2&#39;使用python2.7命令行
请问您如何解决此问题?
答案 0 :(得分:3)
您安装的软件包不包含 Python绑定到libxml2
。您已经按照注释中的说明安装了共享对象库,但是没有Python模块的Python程序无法使用它。
安装python-dev libxml2 libxml2-dev libxslt-dev
听起来就像是要从源代码构建Python模块,因此请查看您所关注的说明是否包含其他步骤。
我相信这是您需要的模块的页面http://xmlsoft.org/python.html。有关如何在OS-X上安装主要适用于Linux的说明,请参阅此SO答案https://stackoverflow.com/a/9797504/66349
答案 1 :(得分:3)
您正在尝试安装共享对象库;这些包不包含Python绑定。
如果/usr/lib/python2.7/dist-packages
中安装了另一台服务器上的Python软件包,那么该机器可能已安装python-libxml2
。它的included file list肯定与你在另一台机器上的相匹配:
/usr/lib/python2.7/dist-packages/drv_libxml2.py
/usr/lib/python2.7/dist-packages/libxml2.py
/usr/lib/python2.7/dist-packages/libxml2mod.so
为了将来参考,每当遇到您不熟悉的Python库时,您可以使用以下方法检查模块文件路径:
import modulename
print modulename.__file__
如果这是一个Ubuntu软件包,您可以搜索它所属的软件包:
dpkg -S /path/to/file
但考虑到以.pyc
结尾的文件是字节码缓存;相反,寻找.py
等价物。