デフォルトのパーサーは非常に遅いため、BeautifulSoupのパーサーとしてlxml
を使用しようとしていますが、次のエラーが発生します。
soup = BeautifulSoup(html, "lxml")
File "/home/rob/python/stock/local/lib/python2.7/site-packages/bs4/__init__.py", line 152, in __init__
% ",".join(features))
bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?
Lxmlとbeautifulsoupを何度もアンインストールして再インストールしましたが、それでも読み取れません。 lxmlの依存関係も再インストールしようとしましたが、まだ取得しています。
新しい仮想環境を作成し、すべてを新しくインストールしても、このエラーが発生します。
誰かがここで何が起こっているのか考えていますか?
編集
UbuntuデスクトップのPython 2.7.xで最新バージョンのbs4とlxmlを使用する
私はできる import lxml
でも、私は出来ません from lxml import etree
戻ってきます:
File "<stdin>", line 1, in <module>
ImportError: /usr/lib/x86_64-linux-gnu/libxml2.so.2: version `LIBXML2_2.9.0' not found (required by /home/rob/python/stock/local/lib/python2.7/site-packages/lxml/etree.so)
libxmlを持っていますが、バージョンがわかりませんが、最新のものをインストールして再インストールしました。また、2.9.0を手動でインストールしようとしましたが、まだ何もありません
Lxmlが正常にインストールされていないようです。 Ubuntuにlxml
をインストールするには、
Sudo apt-get install libxslt1-dev libxml2
Virtualenvの場合:
pip install --upgrade lxml
pip install cssselect
これらのページに移動します。
両方のパッケージのソースファイルをダウンロードします。それぞれを別のフォルダーに展開します。次に、各フォルダーでsetup.pyファイルを見つけて、次のコマンドを実行します。
python setup.py install
Lxmlでいくつかの問題が発生する可能性があります。次のようなエラーが発生した場合
error: command 'gcc' failed with exit status 1
必ずlibxml2-devとlibxslt1-devを使用してインストールしてください
Sudo apt-get install libxml2-dev libxslt1-dev
うまくいけば、それはうまくいくはずです。