Я пытаюсь сохранить свой проект Google Cloud в центре внимания стандартной среды App Engine (GAE), запустив пользовательский интерфейс в GAE Python 2.7, а затем развернув OpenAPI в облачных конечных точках, который также использует Python 2.7. Я хочу, чтобы мой API мог проверять Google Cloud Storage (GCS) на наличие файла, а затем, если он не существует, получать объект из Datastore, обрабатывать некоторые данные с помощью преобразования текста в речь, а затем сохранять полученный mp3 в GCS.
В Python 2.7 мне нужно использовать старую (2015 г.) cloudstorage
клиентскую библиотеку. , google-endpoints
, google-endpoints-api-management
и google-cloud-texttospeech
модули, все в моей папке ./lib
.
Установив эти модули, я могу запустить демонстрационный проект" echo " без проблем. Это указывает на отсутствие конфликтов версий зависимостей. Однако при попытке использовать texttospeech
я получаю эту ошибку:
ImportError: нет модуля с именем grpc._cython.cygrpc
Чтобы исправить это, я добавляю в раздел libraries
app.yaml следующее:
- name: grpcio
version: latest
Затем я получаю эту ошибку:
from six.moves import http_client
ImportError: No module named moves
Я пытаюсь исправить это аналогично, но ошибка не исчезает
- name: six
version: latest
Другие решения не помогли. six
1.12.0 устанавливается в ./lib, а 1.11.0 поставляется с новейшим gcloud
облачным SDK (233.0.0).
Как я могу использовать синтезатор речи с Cloud Endpoints? Могу ли я ожидать, что это будет работать с GCS и Datastore, даже если у меня это заработает? Пока что использование Flask-RESTful в GAE кажется проще.