【问题标题】:Installing lxml, libxml2, libxslt on Windows 8.1在 Windows 8.1 上安装 lxml、libxml2、libxslt
【发布时间】:2015-08-10 03:54:26
【问题描述】:

经过额外的探索,我找到了用pip和wheel安装lxml的解决方案。欢迎提供更多关于方法的 cmets。

我发现适用于 Linux 发行版的现有 Python 文档非常出色。对于Windows...不是那么多。我已经很好地配置了我的 Linux 系统,但我还需要一些帮助来准备 Windows 8.1 平板电脑。

我的项目需要 Python 3.4 的 lxml 模块。我找到了很多关于如何安装 lxml 的教程,但每个教程都失败了。

https://docs.python.org/3/installing/ 我已经下载了“get-pip.py”并从 Windows cmd 行成功运行它,结果如下:

Requirement already up-to-date: pip in c:\python34\lib\site-packages

所以我不认为我有“点子”问题。从那里我从 Windows cmd 行运行以下命令:

python -m pip install lxml

一长串命令滚动浏览,但有几行似乎是我无法解决的错误。

  ERROR: b"'xslt-config' is not recognized as an internal or external command,\r\noperable program or batch file.\r\n"
  ** make sure the development packages of libxml2 and libxslt are installed **

Failed building wheel for lxml

最后一部分,全是红色的

Command "C:\Python34\python.exe -c "import setuptools, tokenize;__file__='C:\\Users\\Owner\\AppData\\Local\\Temp\\pip-build-ya3n6wkd\\lxml\\setup.py';exec(compi
le(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record C:\Users\Owner\AppData\Local\Temp\pip-ytybzl9l-r
ecord\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\Owner\AppData\Local\Temp\pip-build-ya3n6wkd\lxml

任何帮助理解这应该如何工作,或者我做错了什么,我们将不胜感激。

【问题讨论】:

  • 他,他。不会提出任何好的建议,但我在 Ubuntu 上使用 Chef 时遇到了一些不愉快的问题。或者,不安装它,因为我只需要它进行一些单元测试,我可以在其他地方做。我确实发现 Linux 上的 lxml 显然具有非 PIP 依赖​​项。是的,我知道,Windows,而不是 Linux,但也许你会看到一些有趣的东西 @stackoverflow.com/questions/6504810/… 是否有需要手动安装的先决条件?
  • @JLPeyret - 除了让我的笔记本电脑使用 lxml 使用 PyCharm 之外,没有任何先决条件。我只需要让环境正常工作。我不知道为什么在 Windows 上安装一个模块如此痛苦。如果有更好的方法,我会尝试任何方法。
  • 我的意思是,在 Ubuntu 上,lxml显然需要找到一些安装的包,这些包将通过 apt-get 而不是 pip 放入。因此,在这种情况下,您可以随心所欲地使用 pip ,如果它没有来自其他软件包的正确文件,它就会爆炸。我只是指出了在 Windows 上安装 lxml 的类似先决条件的可能性。然后您可能需要在运行 pip 之前安装 .exe 或 .msi 文件。至少在 Ubuntu 上,从到处都是 lxml 的 pip 错误来看,这并不明显。
  • 另请参阅 pypi.python.org/pypi/lxml/3.4.0lxml.de/installation.html 有关使用二进制文件的说明。

标签: python windows module installation lxml


【解决方案1】:

我能够通过以下步骤修复安装。我希望其他人会觉得这很有帮助。

在出现问题之前,我安装的“pip”运行良好。我转到 Windows 命令行并确保安装了“wheel”。

C:\Python34>python -m pip install wheel
Requirement already satisfied (use --upgrade to upgrade): wheel in c:\python34\lib\site-packages

之后我从http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml下载了lxml文件并将它放在我的python目录“C:\Python34”中

在该目录中,我运行了以下命令:

C:\Python34>python -m pip install lxml-3.4.4-cp34-none-win32.whl

结果是:

Processing c:\python34\lxml-3.4.4-cp34-none-win32.whl
Installing collected packages: lxml
Successfully installed lxml-3.4.4

我打开 PyCharm 并且 lxml 模块可用。我能够毫无问题地执行代码。

我学到了什么(虽然这可能会被其他知识渊博的人纠正)

  1. 需要使用 pip 和 wheel 安装所需的模块(作为“*.whl”文件)。
  2. 使用 Dropbox 与不同的 PyCharm 安装共享代码文件夹会导致“workspace.xml”文件混淆。两台计算机一直在相互写入,弄乱了安装路径。

希望这会有所帮助。

【讨论】:

  • 你救了我的命!
  • 非常感谢! ....我在过去 5 小时内一直在努力解决这个问题...尝试使用 pip 安装 lxml...没有用...然后分别尝试了它的依赖项 libxml2 和 libxslt...没有用...试过为 libxml2 安装 Visual C++ ......这也不起作用......总之,谷歌搜索的解决方案都没有工作,除了这个。这是完美的解决方案,完全按照上面写的步骤进行。
  • 卸载 Python 3.5.2 并安装 Python 3.4.4 对我有用。执行此操作后,甚至在 cmd 提示符中都没有此问题。 lxml 立即安装。
  • 手动安装 lxml 是神一样的解决方案,节省了我几个小时!
  • 尝试安装轮子时出现错误 (lxml-4.5.1-cp38-cp38-win_amd64.whl is not a supported wheel on this platform.) 该站点提供了有关如何解决此问题的说明(Google 翻译为胜利!):blog.csdn.net/ourjaycn/article/details/106718952 通过重命名轮到lxml-4.5.1-cp38-cp38m-win_amd64.whl(注意“cp38m”中的“m”),它安装成功。
【解决方案2】:

我的情况很像这样。我的笔记本电脑上安装了 Python 3.4 以供工作,而且我们的安全性很严,所以我不能在没有系统管理员的情况下安装 3.5。

所以我在这里点击了 Python 扩展站点:

http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

为符合我的规格的 lxml 提取了 wheel 文件:

lxml-3.6.4-cp34-cp34m-win_amd64.whl

然后输入:

pip install lxml-3.6.4-cp34-cp34m-win_amd64.whl

它马上就安装好了。

【讨论】:

    【解决方案3】:

    不久前我开始使用 lxml,当时需要解析一些 html 文件。我以某种方式安装了它,然后由于 PC 格式,我失去了安装。

    从可用的二进制文件/轮子在 Windows 上安装 lxml 非常容易。以下链接包含二进制文件/轮子,以备不时之需。

    http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

    根据您的 Windows 下载 wheel 文件后,您可以发出以下命令 pip install <pathtoyourdownloadedwheelfile>

    如果你在 Windows 上使用 git-sdk-win32,你可以先使用pacman 搜索libxml2-devellibxml2-pythonlibxslt-devellibxslt-python,方法是发出以下命令。

    pacman -Ss libxml2

    pacman -Ss libxslt

    然后你可以使用下面的命令安装 lxml

    pip install lxml 它可能无法构建轮子(就像它为我所做的那样),但会使用 setup.py 安装 lxml

    我只是开始喜欢这个 git-win32-sdk。它可以帮助我利用我在 Linux 上学到的知识在我的 Windows 上工作。

    https://github.com/git-for-windows/build-extra/releases

    【讨论】:

      【解决方案4】:

      从 lxml 版本 4.2.5 开始,此问题似乎已得到修复。

      如果您仍然收到此错误并且您在需求文件中指定了特定版本的 lxml,请尝试更新需求文件以指定 lxml 版本 4.2.5 或更高版本。

      我在使用 lxml 4.2.1 时遇到了这个错误。但是当我将要求更改为 lxml 4.2.5 时它已修复。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-16
        • 1970-01-01
        • 2014-12-15
        • 1970-01-01
        • 2011-12-16
        • 1970-01-01
        相关资源
        最近更新 更多