web-gelistirme-sc.com

PIL image.open () bazı görüntüler için çalışıyor ancak diğerleri için değil

AREA dosyalarını NOAA'dan düzenli aralıklarla açmak için PIL kullanıyorum. Aldığım son görüntü kümesinde, image.open () komutu çalışmıyor. İşte yazdığım aynı sonuçları veren basit bir kod. Bir ay öncesinden bir dosyayla ve bugünden bir dosyayla değil, normal görevleri açar, döndürür ve gerçekleştirir.

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

İşte hata:

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

İşte ne denedim: 

  1. Görüntüyü iki ayrı makinede açmak.
  2. İzin sorunu olması durumunda dosyanın klasörünü değiştirme
  3. Hem el ile FTP kullanarak hem de otomatik komut dosyasını kullanarak görüntünün yanı sıra iki gruba yeniden indirilmesi.

Hipotezim, indirme betiğimizde bir sorun olduğu ve dosyanın tam olarak indirilmediği, ancak hipotezin, yeni dosyaların doğru boyutta olduğu ve bunları bir FTP istemcisi kullanarak elle indirdiğim ve edindiğim gerçeği ile reddedildi. aynı sonuçlar.

Diğer tek teorim, bugün NOAA dosyalarında bir sorun olduğu veya PIL'in artık onları idare edemeyeceği şekilde değiştirildikleridir, ancak bunun olası olmadığını düşünüyorum.

Herhangi bir yardım büyük takdir, Teşekkürler

10
Sam Creamer

Belki de içerik aslında diske senkronize edilmemiş olabilir. Image.open(open("path/to/file", 'rb')) öğesini deneyin

7
wonder

İçin 

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

Deneyin

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

Yani, yol dizesinden önce r koyun.

0
A G