ImportError:没有名为 lxml 的模块 - 即使安装了 LXML

Posted

技术标签:

【中文标题】ImportError:没有名为 lxml 的模块 - 即使安装了 LXML【英文标题】:ImportError: No module named lxml - Even though LXML Is installed 【发布时间】:2015-01-16 11:05:40 【问题描述】:

我收到此错误“ImportError: No module named lxml”,即使肯定安装了 LXML。具体来说,它安装在项目的 python Virtualenv 中。最终我正在研究Python/Amazon Product API。尝试从终端 (mac) 运行该项目的示例脚本之一后出现错误。

我该如何解决这个问题?或进一步追查问题?

Google 搜索将我引导至:

重新安装 LXML 确保同意 Xcode 许可证:sudo xcodebuild -license 更新 LXML 为:pip install --upgrade lxml 当前版本为 3.4.0 按照here - pip install libxml2-dev libxslt-dev python-dev 的概述重新安装 LXML 依赖项

编辑:更多细节 引发错误的代码行是from lxml import etree, objectify,它位于远离我的虚拟环境中安装 LXML 的位置的文件夹中(尽管我在终端的 virtualenv 中运行脚本)。如果问题只是脚本不知道在哪里找到 LXML 安装的问题,我将如何解决?

【问题讨论】:

当您从命令提示符运行 python 并尝试 import lxml 时会发生什么? 【参考方案1】:

原来我在这里找到了答案:import lxml fails on OSX after (seemingly) successful install

显然,Mac 上的 LXML 安装最终会将其安装在错误的路径中,因此您必须使用以下命令重置路径:export PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:$PATH"

【讨论】:

你被允许(事实上被鼓励)接受你自己的答案。这样做甚至还有一个徽章。 您好,我遇到了同样的错误,但是在编辑 bash_profile 和 Path 之后,我仍然遇到了同样的错误。这不是修复。你能告诉更多细节如何把那条线放在哪个地方吗? 我想我在这里得到了答案:***.com/questions/10729116/…【参考方案2】:

所以事实证明,如果您通过自制程序使用 python,那么对于像 Inkscape 这样的应用程序来说,事情会变得有点粗略,它们在他们的脑海中硬编码需要某个版本的 python。

获得正确的 python 版本只是卸载 brew 并安装 PIP:

brew uninstall --ignore-dependencies python

sudo easy_install pip

STATIC_DEPS=true sudo pip install lxml

【讨论】:

【参考方案3】:

如果你的python是python 3.6,试试pip3.6 install lxml

【讨论】:

以上是关于ImportError:没有名为 lxml 的模块 - 即使安装了 LXML的主要内容,如果未能解决你的问题,请参考以下文章

ImportError:没有名为瓶子的模块

ImportError:没有名为 ghostscript 的模块

ImportError:没有名为枚举的模块

ImportError:没有名为 pynotify 的模块。安装模块时

ImportError:没有名为 websocket 的模块

ImportError:没有名为“backports”的模块