App Engine错误没有模块google.cloud.speech和appengine.api

时间:2018-01-17 12:17:55

标签: python python-2.7 google-app-engine google-cloud-speech

我正在使用基于Github上提供的示例的Google Cloud AppEngine我正在测试blobstore示例但是当我尝试在该示例中包含API google.cloud.speech时,我收到错误“No module”名为google.cloud.speech“,但在演讲演示中,它的工作原理与此相同。

  

dev_appserver.py app.yaml

在我包含导入google.appengine.api的语音演示中,我有错误没有名为appengine.api的模块,但是它在blobstore示例中的导入相同。

  

python2.7 transcribeSpeech.py​​ resources / audio.raw

第一次错误

ERROR    2018-01-17 12:07:09,600 wsgi.py:263]
Traceback (most recent call last):
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
    handler, path, err = LoadObject(self._handler)
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
    obj = __import__(path[0])
  File "/home/user/src/project/python_gae_quickstart_editor-2018-01-14-21-40/appengine/standard/blobstore/gcs/main.py", line 13, in <module>
    from google.cloud import speech
  File "/google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/python/runtime/sandbox.py", line 1147, in load_module
    raise ImportError('No module named %s' % fullname)
ImportError: No module named google.cloud.speech

第二个错误:

Traceback (most recent call last):
  File "transcribeSpeech.py", line 39, in <module>
    import cloudstorage
  File "/home/user/src/project/python_gae_quickstart_editor-2018-01-14-21-40/appengine/standard/blobstore/gcs/lib/cloudstorage/__init__.py", line 20, in <module>
    from .api_utils import RetryParams
  File "/home/user/src/project/python_gae_quickstart_editor-2018-01-14-21-40/appengine/standard/blobstore/gcs/lib/cloudstorage/api_utils.py", line 45, in <module>
    from google.appengine.api import app_identity
ImportError: No module named appengine.apiv

1 个答案:

答案 0 :(得分:0)

你将标准的env GAE应用程序(你的第一次调用)与独立的python应用程序(你的第二次调用)混合在一起 - 不一样,它们的工作方式不同,所以不要在它们之间进行行为比较期待相同/相似。见GAE works but import webapp2 failed in Spyder

如果您的应用是GAE标准应用(dev_appserver.py支持的唯一应用),那么您必须在应用内的所有其他库中提供商(GAE不知道/关心虚拟环境中安装的库)或者你当地的python安装)。见python google app engine stripe integration

您所关注的每个(标准env GAE)示例都包含一个带有所需库的requirements.txt - 这是您需要供应的库,不要只是将整个示例目录转储到您的应用中,期望这些示例有效(因为回溯中的文件路径似乎表明了这一点)。它们只是独立的片段/示例,而不是一个功能齐全,随时可用的应用程序。请参阅https://github.com/GoogleCloudPlatform/python-docs-samples/tree/master/appengine/standard

上的说明