python - Google App Engine 标准 dev_appserver.py 出现导入错误

标签 python google-app-engine flask google-cloud-platform werkzeug

我正在尝试在此 Google App Engine Standard Flask Sample 上运行 dev_appserver.py

按照说明,我运行:

pip install -t lib -r requirements.txt
dev_appserver.py app.yaml

我应该能够访问http://localhost:8080/form,但我得到ImportError:没有名为msvcrt的模块

我发现使用 Flask==0.10.1Werkzeug==0.12.2 可以工作,但没有更新。

版本:

OS: Windows 10 Pro

Python 2.7.14

Google Cloud SDK 182.0.0
app-engine-go
app-engine-python 1.9.63
app-engine-python-extras 1.9.63
bq 2.0.27
core 2017.12.01
gsutil 4.28

最佳答案

我自己从 Cloud Shell 尝试了该示例,并且还发现了一些导入问题。看起来 Werkzeug 的新版本已将代码转移到不同的位置,如建议的 in this recent post 所示。如果您想按原样使用示例,您最好使用 Werkzeug 0.12.2 版本。

为此,我建议您执行以下步骤:

  1. 删除应用程序目录中的lib 文件及其所有内容。
  2. requirements.txt 文件编辑如下:

需求.txt:

Flask==0.12.2
werkzeug==0.12.2
  • 再次运行命令pip install -t lib -rrequirements.txt
  • 现在您可以尝试使用 dev_appserver 在本地运行您的应用程序。请确保 appengine_config.py 文件指向安装库的 lib 文件夹的正确位置。

    完成所有这些后,一切都应该正常工作。我尝试浏览您提到的本地主机 URL,并出现一个带有表单的简单 HTML 页面。

    关于python - Google App Engine 标准 dev_appserver.py 出现导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47788484/

    相关文章:

    python - 压缩附件中断 email.message.Message.get_payload()

    google-app-engine - GAE webapp2 session : the correct process of creating and checking sessions

    python - 使用jinja2和flask动态生成href标签

    python - 如何使用 Flask-SQLAlchemy 仅选择数据库中的某些列?

    python - 为什么我不能得到与 GridSearchCV 相同的结果?

    python - 手动停止由 mod_wsgi 启动的进程,并监控有多少进程正在运行

    python - 如何在谷歌应用引擎中执行多个异步查询?

    node.js - Django vs Node(Express) vs Flask 用于具有高安全性和实时性的 RESTful API

    python - Flask-Restful 优于 Flask-ReSTLess

    maven - com.google.api.server.spi.auth.EspAuthenticator 未找到