0

我正在为 MacOS 上的 Google App Engine 开发 Python 应用程序,但在尝试为本地开发设置 PIL 时遇到了麻烦。我在 virtualenv 中运行 Python 2.5,我还使用 pip 在 vi​​rtualenv 中安装了 PIL 1.1.7:

pip install PIL

我可以在 python 解释器中导入它,一切似乎都很好,但是当它被 App Engine SDK 使用时,会引发以下错误:

File "/Users/user/Development/src/virtualenv/lib/python2.5/site-packages/PIL/PngImagePlugin.py", line 564, in _save
SystemError: Parent module 'PIL' not loaded

PIL导入ICCProfile时似乎会出现此错误,但它也应该被except捕获并正确处理。这是来自 PngImagePlugin.py 的代码:

try:
    import ICCProfile
    p = ICCProfile.ICCProfile(im.info["icc_profile"])
    name = p.tags.desc.get("ASCII", p.tags.desc.get("Unicode", p.tags.desc.get("Macintosh", p.tags.desc.get("en", {}).get("US", "ICC Profile")))).encode("latin1", "replace")[:79]
except ImportError:
    name = "ICC Profile"

在搜索解决方案时,我得到的建议是我应该创建带有 PIL 路径的 PIL.pth 文件,但是该文件已经存在于 site-packages 文件夹中的 virtualenv 中,并且文件的内容是:

PIL

有没有人对如何修复它有任何建议,或者我还能尝试什么?

4

1 回答 1

2

尝试使用Pillow而不是 PIL。

更新 1

请参阅此线程http://code.activestate.com/lists/python-image-sig/6543/

于 2012-06-20T09:55:37.630 回答