170 votes

Pourquoi mon application Python App Engine utilisant l'API Translate obtient-elle l'erreur ImportError : Aucun module nommé apiclient.discovery ?

J'ai obtenu cette erreur dans Python de Google App Engine ont utilisé l'API Google Translate, mais je ne sais pas comment réparer,

<module>
from apiclient.discovery import build
ImportError: No module named apiclient.discovery

Je vais essayer de environnement défini qui indique à Google App Engine SDK , Et téléchargez à nouveau sur Google Apps Engine, Je reçois toujours l'erreur ,

Erreur : Erreur de serveur

Le serveur a rencontré une erreur et n'a pas pu répondre à votre demande. Si le problème persiste, veuillez signaler votre problème en mentionnant ce message d'erreur et la requête qui l'a provoqué.

Veuillez me dire comment réparer,

Merci

UPDATE : Corrigé Suivez l'aide de Nijjin, J'ai résolu les problèmes en ajoutant les dossiers suivants,

apiclient, gflags, httplib2, oauth2client, uritemplate

Si vous avez encore des problèmes, veuillez consulter les réponses ci-dessous pour obtenir plus d'informations, par exemple : la réponse de Varum, etc...

4voto

Conrad Selig Points 341

J'ai obtenu cette même erreur en travaillant sur un projet d'analyse des événements récents du calendrier de Google Calendar.

Utiliser l'installation standard avec pip n'a pas fonctionné pour moi, voici ce que j'ai fait pour obtenir les paquets dont j'avais besoin.

Allez directement à la source, voici un lien pour le site web de la Commission européenne. google-api-python-client mais si vous avez besoin d'une autre langue, elle ne devrait pas être trop différente.

https://github.com/google/google-api-python-client

Cliquez sur le bouton vert "Cloner ou télécharger" en haut à gauche et enregistrez-le sous forme de fichier zip. Déplacez le fichier zip dans votre dossier de projet et extrayez-le. Découpez ensuite tous les fichiers du dossier qu'il crée pour les replacer dans la racine de votre dossier de projet.

Oui, cela encombre votre espace de travail, mais de nombreux compilateurs ont des moyens de cacher les fichiers.

Après avoir fait cela, la norme

from googleapiclient import discovery

fonctionne très bien.

J'espère que cela vous aidera.

3voto

Dan Points 845

"google-api-python-client" requiert :

pip install uritemplate.py

pour résoudre le problème sur le serveur de développement GAE :

from googleapiclient.discovery import build

ImportError: No module named googleapiclient.discovery

3voto

parth gosai Points 51

J'ai installé google-api-python-client en utilisant pip mais il me montre toujours une erreur alors j'ai essayé de le mettre à jour et il m'a aidé à sortir de l'erreur.

si vous utilisez " Windows " alors

pip install --upgrade google-api-python-client

vous aidera parce qu'il m'a aidé alors il vous aidera aussi :)

1voto

Rathna Points 21

J'ai rencontré le même problème. Cela a fonctionné :

>>> import pkg_resources
>>> pkg_resources.require("google-api-python-client")
[google-api-python-client 1.5.3 (c:\python27), uritemplate 0.6 (c:\python27\lib\site-packages\uritemplate-0.6-py2.7.egg), six 1.10.0 (c:\python27\lib\site-packages\six-1.10.0-py2.7.egg), oauth2client 3.0.0 (c:\python27\lib\site-packages\oauth2client-3.0.0-py2.7.egg), httplib2 0.9.2 (c:\python27\lib\site-packages\httplib2-0.9.2-py2.7.egg), simplejson 3.8.2 (c:\python27\lib\site-packages\simplejson-3.8.2-py2.7-win32.egg), six 1.10.0 (c:\python27\lib\site-packages\six-1.10.0-py2.7.egg), rsa 3.4.2 (c:\python27\lib\site-packages\rsa-3.4.2-py2.7.egg), pyasn1-modules 0.0.8 (c:\python27\lib\site-packages\pyasn1_modules-0.0.8-py2.7.egg), pyasn1 0.1.9 (c:\python27\lib\site-packages\pyasn1-0.1.9-py2.7.egg)]

>>> from apiclient.discovery import build
>>>

1voto

momen Points 41

Ça n'a fonctionné avec moi que lorsque j'ai utilisé sudo :

sudo pip install --upgrade google-api-python-client

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X