12

安装了 Google App Engine SDK.Python 2.6 完美。想进入图像,并在本地测试。安装 PIL

安装了 Python,然后运行了 PIL 安装,这次成功了。

事情看起来不错,但尝试进行 localhost 图像处理会给出:

"NotImplementedError: Unable to find the Python PIL library.  Please
 view the SDK documentation for details about installing PIL on your system."

系统:winxp

4

7 回答 7

11

我花了一段时间让 PIL 工作。主要是因为我忘了告诉应用引擎在 yaml 文件中加载它:

 libraries:
     - name:    PIL
     version: 1.1.7

也许这一步很明显,但我没有在谷歌文档上看到它有很好的记录,我在这里发现了各种消息,说明 PIL 在应用程序引擎上不可用。我想确认 PIL 正在应用引擎上运行。

于 2012-12-27T16:06:17.420 回答
4

据我所知,Google AppEngine 不允许直接使用 PIL,而是提供了有限的Images API

它可以调整大小/旋转/裁剪和翻转图像。Picasaweb 或多或少可以做些什么。但它不能创建新图像或做复杂的事情,如添加文本、绘图等。

于 2009-12-28T19:25:21.303 回答
4

我们可能需要更多信息,所以这里有一些问题和尝试的事情。

您如何尝试访问 PIL?您是尝试使用 google.appengine.api.images 模块,还是直接使用 PIL?听起来像前者,但不清楚。

您是否按照App Engine 的说明进行操作

可以的话发个码。

也许最重要的是要尝试:看看您是否可以从非 App Engine 脚本中使用 PIL。只需编写一个快速的 Python 脚本来访问它,看看它是如何进行的。就像是:

import Image
im = Image.open('filename.png')
im.show()

如果这不起作用,那么 Google App Engine 不能与 PIL 一起使用也就不足为奇了。

于 2009-07-23T10:40:21.713 回答
3

On Ubuntu with python2.5 the following helps:

new repo: ppa.launchpad.net/fkrull/deadsnakes/ubuntu

sudo apt-get install python2.5 python2.5-dev libjpeg62 libjpeg62-dev

untar: http://effbot.org/media/downloads/Imaging-1.1.6.tar.gz

cd Imaging-1.1.6

edit setup.py line 38: JPEG_ROOT = libinclude("/usr/lib")

sudo python2.5 setup.py install

Done

于 2010-11-21T12:28:37.643 回答
3

pyyaml对于 OSX 10.11.6 和 Python 2.7.13 ,除了Pillow 全局之外,我还需要安装,以便启动的 API 服务器能够获取它们:

sudo pip install Pillow pyyaml

在此之后,我必须专门将 PIL 版本添加1.1.7到 app.yaml 库中,即使 Pillow 版本不是 1.1.7

libraries:
- name: PIL
  version: 1.1.7

我发现我缺少yaml库的方式在此评论中有更详细的描述:

找不到 PIL

于 2017-07-18T20:03:56.483 回答
1

如果您清除 GAE 日志窗口(假设您正在使用启动器)然后重新启动服务器,您可能会在日志中看到一些内容。就我而言,我得到了

    警告 2011-01-27 21:04:11,856 dev_appserver.py:3698]
无法初始化图像 API;您可能缺少 Python “PIL” 模块。
ImportError:dlopen(/Library/Python/2.6/site-packages/PIL/_imaging.so,2):找不到符号:_jpeg_resync_to_restart
  引用自:/Library/Python/2.6/site-packages/PIL/_imaging.so

所以我可以说我与 JPEG 库的链接不够好。

于 2011-01-27T21:08:13.210 回答
0

我在 Windows 机器上遇到了同样的问题,然后我在 App Engine Docs 中注意到:

注意:除了图像 API,您还可以在 Python 2.7 应用程序中使用 Python 图像库 (PIL) 中提供的转换。您只需在 app.yaml 文件的库部分中声明该库。但是,如果您希望在本地环境中使用 PIL(使用开发服务器),您还必须在本地下载并安装 PIL或枕头。

所以只需下载 PIL就可以了。

于 2016-12-09T19:17:39.220 回答