Python

在 Ubuntu 中導入 lxml 包 python 時出錯

  • April 29, 2019

當我嘗試在 python 中導入 lxml 包時,我收到以下錯誤。

Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/usr/lib/python2.7/dist-packages/lxml/html/__init__.py", line 42, in    <module>
  from lxml import etree
ImportError: /usr/lib/python2.7/dist-packages/lxml/etree.so: undefined symbol:   PyUnicodeUCS4_DecodeLatin1

(Python版本->2.7.5)

Python 可以以兩種不同的模式編譯;UCS2 或 UCS4 - 請參閱如何確定 Python 是使用 UCS-2 還是 UCS-4 編譯的?Stackoverflow 上的問題。所有二進制包(如 lxml)必須以編譯 Python 的相同模式編譯。看起來你的 lxml 是在 UCS4 模式下編譯的,而 Python 是在 UCS2 模式下編譯的。您必須重新編譯其中一個,以便它們使用相同的模式。

引用自:https://unix.stackexchange.com/questions/160386