PIL image.open()用于某些图像,但不用于其他图像

2024-04-25 16:40:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用PIL定期从NOAA打开区域文件。在我收到的最后一批图像中,image.open()命令根本不起作用。这是我写的一个简单的代码,产生了相同的结果。它将使用一个月前的文件打开、旋转和执行常规任务,而不是使用今天的文件。

from PIL import Image
im = Image.open("path/to/file")
im.show()

错误如下:

File "image_goes.py", line 2, in <module>
im = Image.open("path/to/file")
File "/usr/lib/python2.6/dist-packages/PIL/Image.py", line 1980, in open
raise IOError("cannot identify image file")
IOError: cannot identify image file

我试过的是:

  1. 在两台不同的机器上打开图像。
  2. 在出现权限问题时更改文件的文件夹
  3. 重新下载图像,以及其他两个批处理,都使用FTP手动和我们的自动脚本。

我的假设是我们的下载脚本有问题,它没有完全下载文件,但是这个假设被拒绝了,因为新文件的大小是正确的,我使用FTP客户端手动下载它们,得到了相同的结果。

我唯一的另一个理论是,no a a文件今天有问题,或者它们已经被改变了,以至于PIL无法再处理它们,但我觉得这不太可能。

非常感谢您的帮助, 谢谢


Tags: python
2条回答

可能内容实际上没有同步到磁盘。尝试Image.open(open("path/to/file", 'rb'))

为了

im = Image.open("path/to/file")

试试看

im = Image.open(r"path/to/file")

也就是说,在路径字符串前面放一个r

相关问题 更多 >