Pythonにlxmlモジュールをインストールする


88

Pythonスクリプトの実行中に、このエラーが発生しました

  from lxml import etree
ImportError: No module named lxml

今私はlxmlをインストールしようとしました

sudo easy_install lmxl

しかし、それは私に次のエラーを与えます

Building lxml version 2.3.beta1.
NOTE: Trying to build without Cython, pre-generated 'src/lxml/lxml.etree.c' needs to be available.
ERROR: /bin/sh: xslt-config: not found

** make sure the development packages of libxml2 and libxslt are installed **

libxsltのビルド構成を使用する

src/lxml/lxml.etree.c:4: fatal error: Python.h: No such file or directory
compilation terminated.
error: Setup script exited with error: command 'gcc' failed with exit status 1

回答:


106

ただしてください:

sudo apt-get install python-lxml

Python 2の場合(たとえば、Inkscapeで必要):

sudo apt-get install python2-lxml

ソースからインストールすることを計画している場合は、albertovの答えが役立ちます。ただし、理由がない限り、リポジトリからインストールするだけです。


6
仮想環境を使用している場合、これは正しい答えではありません。
AlexLordThorsen 2015

71

私はそれを解決しました:lxmlバージョンをアップグレードします:

pip install --upgrade lxml

49

lxmlをコンパイルするには、Pythonのヘッダーファイル(debian / ubuntuのpython-devパッケージ)をインストールする必要があります。libxml2、libxslt、libxml2-dev、およびlibxslt-devと同様に:

apt-get install python-dev libxml2 libxml2-dev libxslt-dev

2
およびlibxml2-devおよびlibxslt-dev。
Lennart Regebro 2011年

1
libxsltは必要ないようです(少なくとも私にとっては必要ありませんでした)。したがって、apt-get install python-dev libxml2 libxml2-dev libxslt-dev十分なはずです
Mathieu

WeasyPrintをインストールするにはこれをしなければなりませんでしたが、apt-getDebian7だけでは機能しませんでした。
cnst 2014

1
libxsltは私にとって不可欠でした、lxmlのセットアップはそれなしでは完了しませんでした。
axil 2015

32

python3を実行している場合は、次のことを行う必要があります。

pip3 install lxml


これは私のために働いたものです!私はpython3を使用していて、以前のバージョンのpythonのライブラリをを介してインストールしていましたpip。にはpython3、を使用する必要がありますpip3
ビクター

5

RHEL / CentOSの場合、「python --version」コマンドを実行して、Pythonのバージョンを確認します。以下の例:

$ python --version 
  Python 2.7.12

次に、「sudo yum search lxml」を実行して、python * -lxmlパッケージを見つけます。

$ sudo yum search lxml
Failed to set locale, defaulting to C
Loaded plugins: priorities, update-motd, upgrade-helper
1014 packages excluded due to repository priority protections
============================================================================================================= N/S matched: lxml =============================================================================================================
python26-lxml-docs.noarch : Documentation for python-lxml
python27-lxml-docs.noarch : Documentation for python-lxml
python26-lxml.x86_64 : ElementTree-like Python bindings for libxml2 and libxslt
python27-lxml.x86_64 : ElementTree-like Python bindings for libxml2 and libxslt

これで、Pythonのバージョンに従ってパッケージを選択し、次のようにコマンドを実行できます。

$ sudo yum install python27-lxml.x86_64

私はWindowsを使用しています。解決策はありますか?
ポール

「python2.7.exe
Oni

1

Python 3の場合、これは私のために機能しました

sudo apt-get install python3-lxml

0

アルパインベースの画像でこの問題が発生している場合は、これを試してください:

apk add --update --no-cache g++ gcc libxml2-dev libxslt-dev python-dev libffi-dev openssl-dev make

// pip install -r Requirements.txt

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.