从 gimpfu 插件访问 exif 数据

Access exif data from gimpfu plugin

我正在尝试从 gimpfu 插件中访问图像 exif 数据,特别是照片的拍摄日期,我可以使用 PIL 做到这一点,

from PIL import Image

date_taken = Image.open(file)._getexif()[36867]

但是当我尝试导入 PIL 时,该插件不再出现在 gimp 菜单中。没有产生任何错误,并且 GIMP 正常启动。 有没有办法用 gimpfu 获取 exif 数据?或者有没有办法将 PIL 导入插件?

如果该插件不再出现在 Gimp 菜单中,可能是因为其中存在一些问题,导致它无法 运行 结束注册。它可能是语法错误,或者在本例中是导入 PIL 的问题。如果您使用 Linux 或 OSX 这很容易调试,只需在终端会话中启动 Gimp,来自 python 解释器的错误消息将显示在那里。在 Windows 上,您可以使用 --verbose 参数启动 Gimp,使其 运行 具有用于消息的附加控制台 windows,但我不确定 Python错误出现在那里。如果他们不这样做,请将整个代码括在 try/except 中并将异常错误转储到文件中。您可以使用 traceback 模块获取更多信息(错误行号等),但它本身可能是其他导入错误的原因...

要回答您最初的问题,您可以使用以下方法从 Gimp 获取 EXIF 数据:

exifData=image.parasite_find('exif-data').data

然而,这只是一个字节数组,您必须自己进行解析(但我相信您会找到 python 个代码片段来提取您想要的数据)。