Python 2.6 + PIL + Google App Engine 问题

3 投票
5 回答
1356 浏览
提问于 2025-04-15 23:00

我正在使用 OS X 1.6 雪豹系统,并且成功安装了 PIL(Python Imaging Library)。我可以打开终端,输入 import Image 也没有任何错误。

不过,当我使用应用引擎时,还是出现了图像错误,提示说 PIL 没有安装。我想知道有没有人能给我一些建议,帮我解决这个问题。

- 马修

5 个回答

0

你不能在Appengine上使用PIL库,因为它需要一些C语言的扩展,而这些扩展在沙盒环境中是无法运行的。不过,如果你想在本地的dev_appserver上使用图片API,你需要在你的电脑上安装PIL,因为SDK版本的图片API本身是依赖PIL的。但这并不意味着你可以通过图片API使用PIL的所有功能,因为图片API的功能是比较有限的。

另外,开发时最好使用Python 2.5版本,因为生产环境使用的是2.5.2版本,而不是所有Python 2.6的语法在生产环境中都能正常工作(比如“except FooError as bar”这种写法),开发服务器的目的是为了测试你的代码在生产环境中能否正常运行。

1

我也遇到过同样的问题,后来在GoogleAppEngineLauncher的设置里发现,我需要把Python的路径设置为/usr/local/bin/python2.5。

设置好之后,它就开始正常工作了。

3

显然,谷歌在 google.appengine.api.images 这个模块里提供了PIL(Python Imaging Library)。你可以在这个链接中查看如何使用它的例子:App Engine文档 - 使用Images Python API

撰写回答