web-dev-qa-db-ja.com

JythonにさまざまなPythonライブラリをインストールするにはどうすればよいですか?

JavaでJythonをインストールでき、Pythonを使用する場所でJythonを使用できることを知っています。Jythonシェルは正常に動作しています。

Jythonでは、通常lxmlまたはeasy_installを介してインストールするScrappyBeautifulSouppipなどのライブラリをインストールする方法を教えてください

46
Mirage

いくつかのPythonモジュール(lxmlなど)にはCに必要なコンポーネントがあります。これらはJythonでは機能しません。

ほとんどのPythonパッケージは正常に動作し、CPythonで使用するのと同じツールを使用してインストールできます。これは Jython Bookの付録Aで説明

Setuptoolsを入手するには、 http://peak.telecommunity.com/dist/ez_setup.py からez_setup.pyをダウンロードします。次に、ダウンロードしたファイルを残したディレクトリに移動して実行します。

$ jython ez_setup.py

[easy_installスクリプトは] Jythonインストールのbinディレクトリにインストールされます(/home/lsoto/jython2.5.0/bin上記の例で)。 Jythonを頻繁に使用する場合、このディレクトリをPATH環境変数の先頭に追加することをお勧めします。したがって、このディレクトリにインストールされたeasy_installまたはその他のスクリプトを使用するたびにパス全体を入力する必要はありません。

Jythonにsetuptoolsをインストールした後、自分でテストし、pipを正しくインストールしました。

$ Sudo /usr/bin/jython2.5.2b1/bin/easy_install pip
Searching for pip
[...]
Installing pip-2.5 script to /usr/bin/jython2.5.2b1/bin
Installing pip script to /usr/bin/jython2.5.2b1/bin

Installed /usr/bin/jython2.5.2b1/Lib/site-packages/pip-1.0.2-py2.5.Egg
Processing dependencies for pip
Finished processing dependencies for pip

$ Sudo /usr/bin/jython2.5.2b1/bin/pip install bottle
Downloading/unpacking bottle
  Downloading bottle-0.9.6.tar.gz (45Kb): 45Kb downloaded
  Running setup.py Egg_info for package bottle
    Installing collected packages: bottle
  Running setup.py install for bottle
Successfully installed bottle
Cleaning up...

$ jython
Jython 2.5.2b1 (Release_2_5_2beta1:7075, Jun 28 2010, 07:44:20) 
[Java HotSpot(TM) 64-Bit Server VM (Apple Inc.)] on Java1.6.0_26
Type "help", "copyright", "credits" or "license" for more information.
>>> import bottle
>>> bottle
<module 'bottle' from '/usr/bin/jython2.5.2b1/Lib/site-packages/bottle$py.class'>
>>>
38
Jeremy Banks

V2.7b4の時点で、Jythonディストリビューションには ensurepipモジュール が含まれています。これにより、pipとsetuptoolsのインストールが簡単になります。

jython -m ensurepip

sys.platform == 'win32'issue に注意してください。ホストプラットフォームを決定します。

10
Each

Javaライブラリのパワーを持っているにもかかわらず、Jythonであり、少数のpython Cライブラリをインストールできないという制限ではありません。

たとえば、Beautiful Soupの代わりに Jsoup を使用するか、 Jtidy のような完全なソリューションを使用する方が良いでしょう。

Lxmlの代わりに Jaxp を使用します。

また、要件に合った別のオプションは NekoHTML です

7
sayth

CPythonとJythonの両方がインストールされています。 pipを介してJythonにパッケージをインストールする場合の手順を次に示します。

jython -m pip install <package_name>

たとえば、ロボットフレームワークをjythonにインストールするには(キーワードライブラリをJavaで記述したいので)

jython -m pip install robotframework
1
Moses