pillow/PIL无法通过getexif()准确识别图像的创建时间

2024-05-20 23:25:29 发布

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

我正在写一个小的python脚本,根据拍摄的年份来组织我的照片集

我使用Python的枕头库解析图像来提取DateTime。对于大多数照片来说,这似乎是可行的。我注意到了,但是有两张照片被确认是1980年拍摄的,这是完全错误的。我检查了这两张图片的标签,它们比正常的要少得多——只有四张:

ExifVersion              : 0230
ComponentsConfiguration  : 
FileSource               : 
FlashPixVersion          : 0100

通常,标签号应该是几十个,如本文How to Extract Image Metadata in Python所示,当我为DateTime选择特定标签时,它确实返回了一个日期字符串,日期为1980年:

Image.open(img_path).getexif()[36867]

这就返回了{},这在1980年就像石器时代的意义上是荒谬的,数码相机是未来派的:-)

不用说,这很麻烦,因为尽管1980年可以被认为是不可能的,但如果图书馆错误地确定了创建日期,但该日期看起来仍然合理,该怎么办

我在Linux中使用了Python3.x。枕头库版本:7.0.0


Tags: 图像image脚本datetime错误图片标签照片