4

を必要とする python3 プログラムを実行していますhtml5libが、エラーが発生しますNo module named 'html5lib'

端末の 2 つのセッションを次に示します。

sam@pc ~ $ python
Python 2.7.9 (default, Mar  1 2015, 12:57:24) 
[GCC 4.9.2] on linux2
>>> import html5lib
>>> html5lib.__file__
'/usr/local/lib/python2.7/dist-packages/html5lib/__init__.pyc'
>>> quit()

sam@pc ~ $ python3
Python 3.4.2 (default, Oct  8 2014, 10:45:20) 
[GCC 4.9.1] on linux
>>> import html5lib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'html5lib'
>>> 

どこに問題がありますか?

4

1 に答える 1

7

モジュールはpython 2専用のようです。ほとんどの場合、python3用にインストールする必要があります。通常、そのために pip3 を使用します。

pip3 install html5lib   

以下を使用して、インストールされているモジュールを確認できます。

pip freeze    (or pip3 freeze)

開発にはvirtualenvを使用することを強くお勧めします。したがって、さまざまな python バージョンとライブラリ/モジュールをプロジェクトごとに分けることができます。

使用する:

pip3 install virtualenv   

次に、(簡易バージョン)を使用して「環境」を簡単に作成できます

virtualenv projectname  --python=PYTHON_EXE_TO_USE

これにより、ディレクトリ projectname が作成されます。そのディレクトリに切り替えて、

Scripts\activate (on linux/unix: source bin/activte)

そしてブーム。指定された python.exe があり、モジュールがまったくインストールされていない隔離された環境があります。そのプロジェクトの分離された pip もあります。本当に助かります。

そのプロジェクトでの作業を終了するには、次を実行します。

Scripts\deactivate (on linux: deactivate)

それでおしまい。

もう1つ ;) また、次のこともできます

pip freeze > requirements.txt 

プロジェクトに必要なすべての依存関係をファイルに保存します。新しい virtualenv でゼロから再起動する必要があるときはいつでも、次の操作を実行できます。

pip install -r requirements.txt

これにより、必要なすべてのモジュールがインストールされます。-Uを追加して、最新バージョンを取得します。

于 2016-04-14T11:43:35.617 に答える