Python EXIF 找不到 HEIC 文件的拍摄日期,但在其他工具中可见

标签 python python-imaging-library exif heic

这类似于 this question ,除了那里的解决方案对我不起作用。

在 Windows 资源管理器中查看 HEIC 文件,我可以看到多个日期。与我所知道的相符的是我拍摄照片的日期标题为“日期”和“拍摄日期”。其他日期不是我想要的。

Image in Windows Explorer

我尝试了两种方法来从 Python 中的这个文件中获取 EXIF 数据:

from PIL import Image
_EXIF_DATE_TAG = 36867

img = Image.open(fileName)
info = img._getexif()
c.debug('info is', info)
# If info != None, search for _EXIF_DATE_TAG

这适用于许多其他图像,但对于我的 HEIC 文件,信息为无。

我找到了上面链接的问题,并在那里尝试了答案(exifread):
import exifread

with open(filename, 'rb') as image:
  exif = exifread.process_file(image)

并且这里的exif是None。所以我想知道日期是否以其他方式编码在文件中,而不是 EXIF,但这两个工具似乎另有说明:

http://exif.regex.info/exif.cgi显示:
EXIF Site

exiftool显示:
exiftool

所以我彻底糊涂了!我是否在 Windows 资源管理器和这些工具中看到 EXIF 数据?如果是这样,为什么 Python 工具都没有看到它?

谢谢你的帮助!

Windows 10,Python 2.7.16。如果相关,这些照片是在 iPhone XS 上拍摄的。

更新:将 HEIC 文件转换为 jpg,两种方法都可以正常工作。

最佳答案

这是一个 HEIC 文件问题 - 它显然不受支持,我认为在许可方面存在一些困难。

关于Python EXIF 找不到 HEIC 文件的拍摄日期,但在其他工具中可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58088175/

相关文章:

python - PIL 使用转义序列在图像上写入文本

python-3.x - Python 枕头 Gif 人工制品/背景

iphone - ALAsset ,将照片发送到网络服务,包括其 exif 数据

python - PIL 中的 PNG 图像质量

youtube - 如何从 mp4 视频中删除或编辑 Exif?

CSS对象适合: cover does not work with JPEG img with EXIF orientation more 1

python - 从 CSV 文件中的邻接矩阵绘制 NetworkX 图

python - ./stack.sh 安装 Openstack 失败

python - 打印 SelectKBest 的特征名称,其中 k 值位于 GridSearchCV 的 param_grid 内

python - 如何在 python tkinter 中分离 View 和 Controller ?