Comment éviter les “ImportError: No module named oauth2client.client” sur Google App Engine?
On reçoit un message d'erreur:
ImportError: No module named OAuth2Client
Nous avons remarqué des dizaines de questions autour de ce sujet, beaucoup de suspens et au moins une réponse qui décrit la solution de copier des fichiers à partir du SDK Google App Engine.
Cette approche, cependant, semble fastidieux, parce que toutes les dépendances ne sont pas claires. Si l'on copie sur oauth2client
exécutez ensuite, l'erreur suivante est un autre module qui est manquant. Correctif, puis un autre module est manquant, etc., etc.
Ce qui est ironique c'est que nous pouvons voir tous les fichiers et les modules nécessaires, répertoriés à partir de Google App Engine SDK droit dans PyCharm, mais ils semblent inaccessibles pour le script.
Il n'y a pas de meilleure façon de tirer dans tous les fichiers que oauth2client
besoins pour Python pour travailler sur App Engine?
Vous devez vous connecter pour publier un commentaire.
J'ai ce problème et résolu par l'installation
oauth2client
avecpip3
:Que par la
google-api-python
la documentation, essayez cetteLa réponse est "vendeur" dans le fichier(s).
Nous avons trouvé un moyen rapide de résoudre sur la base de cette documentation https://cloud.google.com/appengine/docs/python/tools/libraries27#vendoring
et ce DONC réponse.
Créer un nouveau dossier appelé "lib" dans le même dossier que votre application.fichier yaml. (Vous pouvez l'appeler quelque chose d'autre. Juste utiliser ce nom ci-dessous.)
Créer un fichier vide appelé appengine_config.py dans le même dossier que votre application.fichier yaml
Ajouter deux lignes pour que appengine_config.py fichier:
from google.appengine.ext import vendor
vendor.add('lib')
Depuis le terminal, allez dans le répertoire qui contient le fichier et exécutez la commande suivante:
sudo pip install -t lib google-api-python-client
L'importation d'erreur disparaît et vous aurez tous les sous-modules dépendants ainsi.
Installer WHL fichier
Exécuter ce
sudo python -m pip install oauth2client