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

我正在尝试在此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: No module named 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版本。

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

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

requirements.txt:

Flask==0.12.2
werkzeug==0.12.2

再次运行命令pip install -t lib -r requirements.txt

现在,您可以尝试使用dev_appserver在本地运行应用程序。请确保appengine_config.py文件指向安装库的lib文件夹的正确位置。

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

Google App Engine烧瓶SSL和OAuth2问题 - python

我正在尝试在自定义域上使用oauth2身份验证在Google App Engine python 3 flexible env上创建Flask Web应用程序。因此,问题如下:1)我已将自定义域添加到我的项目中,并且还向该自定义域添加了SSL。在Google Cloud Console中,一切似乎都很好,但是SSL无法在我的自定义域上显示/工作。也许问题在我…

使用nodejs中的前端和python中的后端服务器运行Google App Engine的一个实例 - python

我对GCP和GAE,nodejs和python及网络(我知道)感到不知所措。[+]我有:基本上,我有一些nodejs代码,它们接受一些输入,然后应该将该输入发送到一些python代码,它将对它做更多的工作。我的第一个想法是通过GAE部署nodejs代码,然后将python代码托管在python服务器中,然后从nodejs前端向python服务器后端发出发布请…

我可以在python中提供gcloud命令吗 - python

我正在尝试在python中执行gcloud命令。我有一个云功能,每月可能有不同的环境变量。我可以使用命令行来更改云函数中的环境变量。但是可以在python中使用它吗?先感谢您 参考方案 Google Cloud SDK的一部分gcloud的目的可能不适合Google Cloud Functions用例。例如,借助Google Cloud Functions,…

如果我的GAE应用程序应使用Analytics API,是否需要OAuth流程? - python

我想在我的GAE网站上显示我的android应用程序的日常用户(使用Google Analytics(分析)进行跟踪),他们都在同一帐户下。我想为此使用Analytics API。我正在阅读Hello Analytics API tutorial,看起来我需要OAuth授权我的应用才能从Google Analytics(分析)获取数据。它看起来很复杂,有没有…

App Engine,pymongo.errors.ServerSelectionTimeoutError:连接已关闭,连接已关闭,连接已关闭” - python

我正在使用Python 3.7和Flask 1.0.2 我将我的应用程序插入了mongoDB Atlas,在本地一切正常 客户端= pymongo.MongoClient(连接器)连接器是Atlas给我的标准连接字符串connector = "mongodb://xxx:<PASSWORD>@xxcluster-shard-00-00-…