如何使用reportlab与谷歌应用程序引擎

dre*_*ker 2 python google-app-engine reportlab

我无法在谷歌应用引擎下正确导入reportlab.根据以下指南(以及网络上的其他几个地方):

"您所要做的就是下载它并将'reportab'目录复制到您应用的根目录中."

当我这样做时(我从这里下载reportlab-3.0.zip )并将其解压缩到我的应用程序的根目录中,因为我尝试使用以下行导入reportlab:

from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A4
Run Code Online (Sandbox Code Playgroud)

我收到导入错误

ImportError: No module named reportlab.pdfgen
Run Code Online (Sandbox Code Playgroud)

我试过谷歌搜索但无济于事.任何有关这方面的帮助将不胜感激,因为我不确定我还能尝试什么.非常感谢!


我尝试的另一件事是复制我的应用程序的根目录下的下载zip的src目录中的内容,但这也无效.我使用它的错误是:

ImportError: Cannot re-init internal module __main__
Run Code Online (Sandbox Code Playgroud)

似乎版本2.7导入没问题,只有3.0问题

Tim*_*man 6

如果您只是在应用程序的根目录中解压缩reportlab zip,那么它将无法工作,因为reportlab zip用于本地设置setup.py,您不在appengine中使用.

你应该看看zip目录里面的src目录,里面是一个reportlab目录 - 在我的例子中,zip文件内容将被reportlab-3.0/src/reportlab 复制/移动reportlab到你的应用程序的根目录.

您可能还应该了解导入和模块如何在python中工作.如果你熟悉这个,你可以自己研究一下拉链内容的结构.

如果你想处理图像,也要注意先决条件.如果这样,您将需要在本地安装PIL,并在app.yaml中启用它,但是您不需要部署PIL代码.您可以在appengine第3部分库文档中阅读更多相关信息.