【发布时间】:2014-03-13 19:14:58
【问题描述】:
- 我下载了lxml的源码。
- 然后解压
- 键入“python setup.py install”。
==> 一切正常。
但现在输入:
import lxml
我明白了:
Traceback (most recent call last):
File "lxml.py", line 1, in <module>
from lxml import etree
File "/Soft/fox_dev/dev/ut1u3h/dev/lxml.py", line 1, in <module>
from lxml import etree
ImportError: cannot import name etree
在您向我提供任何解决方案之前,我必须告诉您,我们的系统管理员和网络管理员是控制/安全怪胎。
- 我不是root
- 我无法访问公司以外的任何 URL(从我尝试安装 lxml 的服务器)
例如我尝试安装 pip:
>> python get-pip.py
Downloading/unpacking pip
Cannot fetch index base URL https://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement pip
Cleaning up...
No distributions at all found for pip
Storing debug log for failure in /Home/ut1u3h/.pip/pip.log
我有一台可以访问网络的 Windows 机器。然后我可以通过 sftp 将文件从它传输到 linux 服务器。
任何想法/解决方案?
编辑
好的,我试过了:http://lxml.de/build.html
第一:
make inplace
python setup.py install
现在,如果取决于我打开 python 解释器的路径,它要么工作,要么我得到上述错误。我也添加了 pythonpath 的源代码......但它并没有改变任何东西!
EDIT2:解决方案
请不要伤害我...最终解决方案:不要将名为 lxml.py 的文件放在您尝试从中导入 lxml 的目录中...而是将您的测试命名为 lxml_test.py !!!
【问题讨论】:
-
也许将输出文件夹添加到您的 python 路径,而不是源文件夹?
-
输出文件夹是什么?有so文件的那个?
-
我看到你解决了这个问题,但还有一个问题:你不是root,你是怎么安装的?在 virtualenv 里面?
-
好吧,我将 tarball 复制到了我可以复制的地方。然后我做了“就地制作”和“设置安装”步骤。请注意,我的 python 站点包不在它通常的位置,而是在我可以到达的路径中,我将其添加到我的 pythonpath 中。
-
+1 用于发现与运行“import lxml”的脚本在同一目录中具有文件名“lxml.py”会做坏事。这也是我的问题。