12

オプション付きのvirtualenvがあり--no-site-packagesます。私はそれにscrapyを使用しています。Scrapyは。によってlibxml2import libxml2を使用します。またはを使用してvirtualenvにlibxml2をインストールするにはどうすればよいですpipeasy_install

4

6 に答える 6

20

pip install ftp://xmlsoft.org/libxml2/python/libxml2-python-2.6.9.tar.gz

于 2011-05-18T13:01:40.447 に答える
3

libxml2はPythonパッケージではなくCライブラリであるため、Pipを使用してインストールすることはできません。通常、ほとんどすべてのLinuxディストリビューションにすでにインストールされています。あなたがそれをインストールする必要があるなら、それはただです

sudo apt-get install libxml2

何らかの理由でローカルインストールがどうしても必要な場合は、.debパッケージまたはRPMを取得してインストールする必要があります。ソースをダウンロードしてビルドできることを除けば。

共通コピーを使用しても問題がないが、パスに/ usr / local /を含めたくない場合は、virtualenv内でシンボリックリンクするだけです。

http://xmlsoft.org/で(おそらくあなたが望んでいたよりも)より多くの情報を見つけることができます

Scrapyはそれを要件にリストしています:

  • Python2.5以降
  • ツイスト2.5.0以上
  • libxml2 2.6.28以降(Python入札を含む)
  • pyopenssl-安全な(HTTPS)ページをクロールする場合のみ
于 2010-10-15T00:01:31.957 に答える
3

lxmlをインストールする前に(Debianに):

apt-get install libxml2-dev libxslt1-dev pythonX.X-dev -y

またはまたは他の針付きPythonバージョンpythonX.Xはどこにありますか。python2.7python2.6

システムパッケージをインストールした後:

workon %environment_name%
pip install lxml --upgrade
于 2014-08-28T11:55:48.380 に答える
2

Ubuntu 14.04カーネルで、この問題が発生しました。

私はすでにpipを使用してlxmlをインストールしました。

pip install lxml --upgrade私がvirtualenvの中に入れようとすると、それはいつも私に

x86_64-gnu-gcc exit 1

私はこれを使用して解決しsudo apt-get install libssl-devました。

于 2016-01-05T00:36:22.960 に答える
1

または、Windowsを使用している場合は、質問から推測できるように、libxml2バイナリを取得する必要があります。scrapyサイトにリンクがあり、2010年11月の時点で、すべてで動作するバージョンがコンパイルされています。 -または、lxml2で動作するscrapyの現在のトランク/開発バージョンを取得します。virtualenvの場合、追加のバイナリを使用してセットアップする方法がわからないため、後者のアプローチが最適な場合があります。私は後者のアプローチを採用しましたが、これまでのところ問題なく機能しています。Scrapyの非常に役立つ作成者であるPabloHoffmanに感謝します(Scrapyのメーリングリストにこのような質問を投稿したとき、彼はほぼ翌日、この変更をトランクにリリースしました)。注:Python 2.7で動作するlibxml2バイナリは、その時点ではまだ利用できませんでした。

于 2010-11-04T08:55:36.577 に答える
0

apt-get(または他のパッケージマネージャー)を使用してpython-libxml2をインストールした場合 は、フラグを使用してvirtualenvからアクセスできます--system-site-packages

virtualenvを作成するときは、次のようにこのフラグを指定するだけです。

virtualenv --system-site-packages env

このようにして、virtualenvはシステム全体にインストールされているlibxml2パッケージを継承します。

于 2018-04-04T21:37:06.150 に答える