python - Google App Engine : from six. 移动导入 http_client 没有名为移动的模块

标签 python google-app-engine gcloud dialogflow-es

好吧,

我正在尝试让 Google 的 Dialogflow python API 与 Google App Engine 一起使用,但在运行该应用程序时似乎遇到了问题。我已将对话框流 pip 安装到 lib 文件夹中,并通过 app.yaml 文件添加了 lib 文件夹。我不断遇到错误,提示找不到“六步移动”。对此(一般来说是应用程序引擎)非常陌生,所以请告诉我是否有设置错误。

我读过其他一些帖子,但没有运气。这不适用于本地或部署。

下面是我的 app.yaml 文件:

runtime: python27
api_version: 1
threadsafe: true
service: basic-npl-ui

handlers:
- url: /img
  static_dir: img

- url: /javascript
  static_dir: javascript

- url: /css
  static_dir: css

- url: /.*
  script: main.app



env_variables:
  GAE_USE_SOCKETS_HTTPLIB: 'anyvalue'

libraries:
- name: jinja2
  version: latest
- name: webapp2
  version: latest
- name: ssl
  version: latest
- name: grpcio
  version: latest

这是我的错误日志(本地开发):

Traceback (most recent call last):
  File "/Users/AVD1WIP/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/Users/AVD1WIP/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
    handler, path, err = LoadObject(self._handler)
  File "/Users/AVD1WIP/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
    obj = __import__(path[0])
  File "/Users/AVD1WIP/Documents/Orca_interns/NLP/basic_ui_app/main.py", line 28, in <module>
    from src.dialog_response_util import DialogflowResponseUtil
  File "/Users/AVD1WIP/Documents/Orca_interns/NLP/basic_ui_app/src/dialog_response_util.py", line 2, in <module>
    import dialogflow
  File "/Users/AVD1WIP/Documents/Orca_interns/NLP/basic_ui_app/lib/dialogflow/__init__.py", line 17, in <module>
    from dialogflow_v2 import AgentsClient
  File "/Users/AVD1WIP/Documents/Orca_interns/NLP/basic_ui_app/lib/dialogflow_v2/__init__.py", line 18, in <module>
    from dialogflow_v2.gapic import agents_client
  File "/Users/AVD1WIP/Documents/Orca_interns/NLP/basic_ui_app/lib/dialogflow_v2/gapic/agents_client.py", line 19, in <module>
    import google.api_core.gapic_v1.client_info
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/google/api_core/gapic_v1/__init__.py", line 16, in <module>
    from google.api_core.gapic_v1 import config
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/google/api_core/gapic_v1/config.py", line 26, in <module>
    from google.api_core import exceptions
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/google/api_core/exceptions.py", line 26, in <module>
    from six.moves import http_client
ImportError: No module named moves
INFO     2018-06-08 20:20:19,020 module.py:846] basic-npl-ui: "GET / HTTP/1.1" 500 -

最佳答案

回溯表明您有一些依赖项未安装在应用程序的 lib 目录中,它们是从本地 python 安装库中获取的。请注意其中的 .../python2.7/site-packages/google/api_core/gapic_v1 路径。

您需要在应用的 lib 目录中安装应用的所有依赖项,如 here 中所述。 .

关于python - Google App Engine : from six. 移动导入 http_client 没有名为移动的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50768023/

相关文章:

php - 无法在 App Engine for Laravel 的 php.ini 上启用 PHP 扩展

kubernetes - 如何在 kubernetes 中创建一个在 pod 死亡时不会被破坏的卷?

go - gcloud 应用程序部署说 : exec: "git": executable file not found in $PATH

python - 为什么我安装的软件包无法被识别

java - 如何访问 servlet 的 web.xml 文件的第二个参数?

python - 如何以编程方式设置 forms.CharField 文本?

google-app-engine - Google App Engine 上的 SSL 证书无法正常工作

kubernetes - 使用gcloud和kubectl切换帐户是否有更好的工作流程?

java - Jython Swing : Randomly Occurring Java ImageIO IOException

python - 计算 X 和 Y 坐标之间的值