Python PIL图像模块ImportError:没有名为PIL的模块,没有名为Image的模块

时间:2012-05-30 06:46:03

标签: python shell python-2.7 python-imaging-library

我按照指示here安装了Python 2.7和Python 2.4。通过连接到服务器的 Mac OSX终端运行测试以确认安装正在运行时,我执行此测试:

import Image
img = Image.open("/directory/image.jpg")
img.load()
print img

结果:

<PixelAccess object at 0x2b97d4c25110>
<JpegImagePlugin.JpegImageFile image mode=RGB size=75x75 at 0xFEF4050>

但是,当使用PHP exec()或通过Coda扩展Run Script执行此操作时,我收到错误:

ImportError: No module named Image

我也试过from PIL import Image这没有什么区别。还有一点要注意的是,当我检查以确保支持位于那里时,我得到了这表明正确的图像支持可用:

*** TKINTER support not available
--- JPEG support available
--- ZLIB (PNG/ZIP) support available
--- FREETYPE2 support available
*** LITTLECMS support not available

问题:关于如何解决这个问题的想法?

3 个答案:

答案 0 :(得分:0)

PHP正在运行错误版本的Python。指定python可执行文件的完整路径。

答案 1 :(得分:0)

@stwhite我建议你使用virtualenv(http://www.virtualenv.org/en/latest/index.html)让多个项目在他们自己的环境中生活。

virtualenv http://www.doughellmann.com/projects/virtualenvwrapper/

的有用包装器

我自己的项目生活在他们自己的virtualenvs中,真的很棒。

以下是关于使用特定python版本Use different Python version with virtualenv

创建virtualenv的问题

注意 将PIL安装到virtualenv

时可能会遇到问题

解决方案

First install XCode with gcc support,
deactivate <virtualenv_name>
cd ../ (virtualenvs root)
pip install -E <virtualenv_name/> PIL

希望这也适合你,

谢谢,

苏丹

答案 2 :(得分:0)

通过exec()调用运行时,确保您的PYTHONPATH正确。

Import sys
print sys.path
sys.path.append ("<path of Image>")

您也可以在运行时动态加载模块以确保其可用,只要它在标准位置可用。