ImportError: brak modułu o nazwie apiclient.discovery

Mam ten błąd w Python Google App Engine użyłem Google Translate API, Ale nie wiem jak to naprawić,

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

Postaram się ustawić środowisko, które wskazuje na Google App Engine SDK , I prześlij do Google Apps Engine jeszcze raz, zawsze otrzymuj błąd ,

Error: Server Error

Serwer napotkał błąd i nie mógł wykonać żądania. Jeśli problem nadal występuje, zgłoś swój problem i wspomnij ten Komunikat o błędzie i zapytanie, które go spowodowało.

Proszę powiedz mi jak naprawić,

Dzięki

UPDATE: Fixed Śledź Nijjin ' s help, Naprawiłem problemy dodając następujące foldery,

apiclient, gflags, httplib2, oauth2client, uritemplate

jeśli nadal masz problem, rozważ poniżej odpowiedź na tę stronę, aby uzyskać więcej informacji. ex. : Varum answer itp ...

Author: Huy Tower, 2013-08-16

17 answers

Powinieneś być w stanie uzyskać te zależności za pomocą tej prostej instalacji:

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

Jest to opisane na stronie quick start dla Pythona .

 253
Author: Jorvis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-24 17:21:27

apiclient Oryginalna nazwa biblioteki.
W pewnym momencie zmieniono ją na googleapiclient.

Jeśli Twój kod działa na Google App Engine, oba powinny działać.

Jeśli uruchamiasz aplikację samodzielnie, z zainstalowanym google-api-python-client, oba powinny działać również.

Chociaż, jeśli spojrzymy na kod źródłowy apiclient pakietu __init__.py modułu , możemy zobaczyć, że moduł apiclient był po prostu trzymany przez kompatybilność wsteczna.

Zachowaj apiclient jako alias dla googleapiclient.

Więc naprawdę powinieneś używać googleapiclient w swoim kodzie, ponieważ alias apiclient był po prostu utrzymywany, aby nie łamać kodu starszego.

# bad
from apiclient.discovery import build

# good
from googleapiclient.discovery import build
 127
Author: Jesse Webb,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-06-12 20:24:49

apiclient nie znajduje się na liście bibliotek stron trzecich dostarczonych przez AppEngine runtime: http://developers.google.com/appengine/docs/python/tools/libraries27 .

Musisz skopiować apiclient do katalogu twojego projektu i skopiować te uritemplate & httplib2 też.

Uwaga: każda biblioteka innej firmy, która nie jest dostarczana na liście dokumentacji, musi skopiować ją do katalogu projektu appengine

 10
Author: Nijin Narayanan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-16 07:53:12

Jeśli żadne z powyższych rozwiązań nie działa dla Ciebie, zastanów się, czy możesz zainstalować Pythona przez Anacondę. Jeśli tak jest, zainstalowanie biblioteki google API z conda może to naprawić.

Run:

python --version

Jeśli dostaniesz coś takiego

Python 3.6.4 :: Anaconda, Inc.

Następnie spróbuj:

conda install google-api-python-client

Jak zauważył bgoodr w komentarzu, może być konieczne określenie kanału (repozytorium myśli), aby uzyskać bibliotekę google API. W momencie pisania tego tekstu oznacza to uruchamianie polecenie:

conda install -c conda-forge google-api-python-client

Zobacz więcej na https://anaconda.org/conda-forge/google-api-python-client

 8
Author: Jonathan Hansen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-26 08:35:41

Upewnij się, że masz zainstalowany tylko google-api-python-client. Jeśli masz zainstalowany apiclient, spowoduje to kolizję. Więc uruchom następujące:

sudo pip uninstall apiclient
 7
Author: Keith Holliday,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-16 17:41:27

Dla projektu app engine należy zainstalować lib lokalnie wpisując

pip install -t lib google-api-python-client

Czytaj więcej tutaj

 6
Author: varun,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-24 20:22:45

Istnieje pobieranie dla biblioteki klienta Pythona API Google, która zawiera bibliotekę i wszystkie jej zależności, o nazwie coś w rodzaju google-api-python-client-gae - .zip w sekcji Pliki do pobrania projektu. Po prostu rozpakuj to do swojego projektu silnika aplikacji.

 5
Author: Joe Gregorio,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-16 11:42:40

Naprawiłem problem, instalując ponownie pakiet z:

pip install --force-reinstall google-api-python-client
 5
Author: mrmuggles,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-27 20:26:35

Dla python3 to mi pomogło:

sudo pip3 install --upgrade google-api-python-client
 5
Author: R3n4,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-26 10:52:37

Miałem ten sam problem z powodu błędu w instalacji modułu URITemplate.

To rozwiązało problem:

pip install --force-reinstall uritemplate.py
 4
Author: wizmer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-29 18:27:37

"google-api-python-client" wymaga:

pip install uritemplate.py

Aby rozwiązać problem na serwerze deweloperskim GAE:

from googleapiclient.discovery import build

ImportError: No module named googleapiclient.discovery
 3
Author: Dan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-18 10:24:34

Dostałem ten sam błąd podczas pracy nad projektem do analizy ostatnich wydarzeń kalendarza z Kalendarza Google.

Używanie standardowej instalacji z pip nie działało dla mnie, oto co zrobiłem, aby uzyskać potrzebne pakiety.

Przejdź bezpośrednio do źródła, oto link do Google-api-python-client , ale jeśli potrzebujesz innego języka, nie powinien być zbyt różny.

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

Kliknij zielony przycisk "Klonuj lub Pobierz" w lewym górnym rogu i zapisz go jako plik zip. Przenieś zip do folderu projektu i rozpakuj go tam. Następnie wytnij wszystkie pliki z utworzonego folderu z powrotem do katalogu głównego projektu.

Tak, to zaśmieca przestrzeń roboczą, ale wiele kompilatorów ma sposoby na ukrywanie plików.

Po zrobieniu tego standard

from googleapiclient import discovery
Działa świetnie. Mam nadzieję, że to pomoże.
 3
Author: Conrad Selig,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-16 23:43:43

Napotkałem ten sam problem. To działało:

>>> 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
>>> 
 1
Author: Rathna,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-04 20:41:15

To działało tylko ze mną, gdy używałem sudo:

sudo pip install --upgrade google-api-python-client
 1
Author: momen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-25 16:46:49

Otrzymałem ten sam błąd, nawet po śledzeniu przewodnika Google na https://developers.google.com/drive/api/v3/quickstart/python , wtedy zdałem sobie sprawę, że muszę powoływać się w ten sposób:

python3 quickstart.py

Zamiast:

python quickstart.py <-- WRONG

(zwróć uwagę na "3")

Działa bez zarzutu.

Używam Ubuntu 18.04.4 LTS.

 1
Author: Alexandre Schmidt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-05-01 23:59:13

Użyj tego

pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
 0
Author: a zEnItH,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-04-21 14:05:33

Ten sam błąd można zobaczyć, jeśli tworzysz moduł Pythona i wykonujesz skrypt po zainstalowaniu go za pomocą polecenia pip lub pipx. W tym przypadku upewnij się, że zadeklarowałeś, co projekt minimalnie musi poprawnie uruchomić w install_requires sekcji Twojego pliku setup.py, więc w tym przypadku:

install_requires=[
    "google-api-python-client>=1.12.3",
    "google-auth-httplib2>=0.0.4",
    "google-auth-oauthlib>=0.4.1"
]
 0
Author: Francesco Vadicamo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-10-18 12:25:24