15

私は次のことをしようとしています:

from bs4 import BeautifulSoup

エラーが発生しました

Traceback (most recent call last):
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/admin/__init__.py", line 355, in post
    exec(compiled_code, globals())
  File "<string>", line 1, in <module>
ImportError: No module named bs4

どのように使用できGoogle App Engine runtime 2.7ますか?

更新
私のプロジェクト構造は次のようになります

flask-appengine-template/
                        docs/
                        licenses/
                        src/
                            application/
                                        static/
                                        templates/
                                        models.py
                                        settings.py
                                        urls.py
                                        views.py
                        libs/
                            bs4/
                         app.yaml
                         src.py

ここからこのテンプレートを使用しています の親が でapp.yamlあるためsrc、ファイルsrc.pyを追加し、そこに 2 行追加しました。

まだ同じエラーが表示されます

ImportError: No module named bs4

ただし、私のプロジェクト名は、 私がまだ間違っていることを教えてくださいapp.yamlflaskonappengine

4

1 に答える 1

33

このリストに含まれていないサードパーティのライブラリを使用する場合は、手動で追加する必要があります。

他のライブラリを手動で含めるには、それらが存在するディレクトリ内にある必要がありapp.yamlます。したがって、たとえば、次の構造がある場合:

hello
├── libs
│   └── bs4 
├── hello.py 
└── app.yaml

次にhello.py、ファイルの先頭に次の2行を配置する必要があります。

import sys
sys.path.insert(0, 'libs')

libsこれを実行すると、そのディレクトリに配置するサードパーティのライブラリを使用できるようになります。例えば:

from bs4 import BeautifulSoup

アップデート

そのフレームワークを使用しているので、変更をロールバックし、flask、werkzeug、またはその他のサードパーティライブラリに使用しているのと同じパターンを使用します。bs4をsrcディレクトリに置き、通常どおりにインクルードしてみてください。

于 2013-02-01T14:05:03.293 に答える