Следующая строка в моей Google App App Engine (webapp.py
) не удается импортировать Google Cloud библиотеки:Невозможно использовать Google-облако в приложении GAE
from google.cloud import storage
со следующей ошибкой:
ImportError: No module named google.cloud.storage
Я провел некоторое исследование и нашел следующие статьи, которые полезны:
- https://cloud.google.com/appengine/docs/python/tools/using-libraries-python-27#installing_a_library
- https://stackoverflow.com/a/34585485
- https://www.simonmweber.com/2013/06/18/python-protobuf-on-app-engine.html
Используя комбинацию методов, предложенных выше статей, я сделал следующее:
Создать
requirements.txt
файл:google-cloud==0.19.0
Импорт этой библиотеки с помощью
pip
:pip install -t lib -r requirements.txt
Используйте следующий код в моем
appengine_config.py
файле:import os import sys import google libDir = os.path.join(os.path.dirname(__file__), "lib") google.__path__.append(os.path.join(libDir, "google")) sys.path.insert(0, libDir)
Может кто-нибудь пролить свет на то, что я, возможно, отсутствует, чтобы получить эту работу? Я просто пытаюсь написать приложение Google App Engine, которое может писать/читать из Google Cloud Storage, и я бы хотел протестировать локально до развертывания.
Я пробовал это после второго предложения atimothee, и это сработало! Мне было непонятно, что я должен использовать один над другим. – nefaurk
Тот факт, что есть две библиотеки, довольно запутан. Попытка поиска одного из них, исключая другого, довольно сложна, но afaik 'cloudstorage' не поддерживает возобновляемые загрузки, а' google.cloud.storage' делает. – evertheylen