Ich verwende derzeit PIL.Wie überprüft man, ob eine Datei eine gültige Image-Datei ist?
from PIL import Image
try:
im=Image.open(filename)
# do stuff
except IOError:
# filename not an image file
Doch während dies ausreichend meisten Fällen deckt, einige Bilddateien wie, xcf, svg und psd nicht entdeckt zu werden. Psd-Dateien löst eine OverflowError-Ausnahme aus.
Gibt es eine Möglichkeit, die ich auch aufnehmen könnte?
Es ist nicht besonders gängige Praxis Duplikate in verschiedenen Sprachen zu schließen. Wenn Sie keine anderen Python-Fragen finden können, lassen Sie es offen, da es Python-spezifische Lösungen geben könnte, die die Leute veröffentlichen möchten, die es nicht zu der von Ihnen geposteten Frage geschafft haben. –
Ja, zuerst hatte ich wirklich auf eine Python-Lib gehofft, die ich nicht kannte: P und dann, wie ben aufgezeigt wurde, validieren nur die magischen Zahlen nicht das gesamte Bild. – Sujoy
@Sujoy, ein ganzes Bild zu validieren ist fast unmöglich, es sei denn, Sie haben bereits eine Kopie davon, weil der Computer nicht den Unterschied zwischen einem richtigen Farbpixel und einem verstümmelten Satz von 1s und 0s erkennen kann, solange alle Kontrolle (magische Zahlen) sind korrekt. – DevinB