エラーが発生しています:
ImportError:OAuth2Clientというモジュールはありません
このトピックに関する多数の質問、多くの未回答、およびGoogle App Engine SDKからファイルをコピーするソリューションを説明する少なくとも1つの回答に気付きました。
ただし、すべての依存関係が不明確であるため、このアプローチは退屈に思われます。 oauth2client
をコピーして実行すると、次のエラーは欠落している別のモジュールです。それを修正してから、別のモジュールが見つからないなど。
皮肉なことに、必要なすべてのファイルとモジュールをPyCharmのGoogle App Engine SDKから直接表示できますが、スクリプトにはアクセスできないようです。
oauth2client
がPythonがApp Engineで動作するために必要なすべてのファイルを取り込むより良い方法はありませんか?
答えは、ファイルの「ベンダー」です。
このドキュメントに基づいてこれを解決する簡単な方法を見つけました https://cloud.google.com/appengine/docs/python/tools/libraries27#vendoring そしてこれ SO answer =。
App.yamlファイルと同じフォルダーに「lib」という名前の新しいフォルダーを作成します。 (別の名前を付けることができます。その名前を使用してください。)
App.yamlファイルと同じフォルダーにappengine_config.pyという空のファイルを作成します
そのappengine_config.pyファイルに2行追加します。
from google.appengine.ext import vendor vendor.add('lib')
ターミナルから、そのファイルを含むディレクトリに移動し、次のコマンドを実行します。
Sudo pip install -t lib google-api-python-client
インポートエラーが消え、サブ依存モジュールもすべて表示されます。
この問題があり、oauth2client
をpip3
と一緒にインストールすることで解決しました。
pip3 install --upgrade oauth2client
google-api-python
ドキュメント 、これを試してください
pip install --upgrade google-api-python-client oauth2client
インストール WHLファイル
pip install oauth2client-4.1.3-py2.py3-none-any.whl
これを実行する
Sudo python -m pip install oauth2client