我编辑了这个问题,因为它过于基于意见。
我正在拼命寻找一个库来在 Mac OS X El Capitan 上使用 Python 3.6 操作(读/写)图像元数据。我试过GExiv2。大约两个小时后,我能够安装它并让它运行,但它在 Python3 中不断产生更多错误,我无法解决。我根本无法安装py3exiv2。我找不到提到的两个库的更多替代方案(对于 Python3)。
GExiv2的问题:
我首先导入模块:
>>> import gi
>>> gi.require_version('GExiv2', '0.10.04')
>>> from gi.repository.GExiv2 import Metadata
然后我生成一个元数据对象并打开图像:
>>> m = Metadata()
>>> m.open_path('Abb_WS_di-34_561_01.jpg')
True
但是,当我尝试使用 Metadata-Objects 方法时,例如m.get_tags()
. 我得到一个错误:
>>> m.get_tags()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Metadata' object has no attribute 'get_tags'
.get_tags()
总结“较低”的get_XYZ_tags()
方法并返回由这些方法产生的串联列表。调用类似m.get_iptc_tags()
作品的“较低”方法:
>>> m.get_iptc_tags()
['Iptc.Application2.Byline', 'Iptc.Application2.City', 'Iptc.Application2.CountryCode', … ]
>>> m.get_tag_string('Iptc.Application2.CountryName')
'Deutschland'
我查看了模块并确保方法在那里。也许有人可以给我一个线索......</p>
提前致谢!