Exif阅读库

时间:2012-12-23 06:33:46

标签: python image python-3.x exif

Python 3.x有没有exif库?似乎我遇到的每个exif库都只适用于Python 2.x.我不需要任何太花哨的东西。只需阅读这些数值即可。

2 个答案:

答案 0 :(得分:14)

选项1.使用pyexiv2。请参阅:pyexiv2 Bug #824440: Python 3 support您需要针对py3k的boost-python以及手动应用上面错误末尾发布的补丁,但除此之外它可以正常工作。可能最容易在最新的Ubuntu下运行。

选项2.使用PIL下行:此分支/分支似乎没有积极开发。

from PIL import Image
from PIL.ExifTags import TAGS

image = Image.open("test.jpg")
exif = image._getexif()
# decode exif using TAGS

选项3.使用PythonMagick

from PythonMagick import Image

img = Image("image.jpg")
print img.attribute("EXIF:Orientation")

另请参阅:Exif manipulation library for python

答案 1 :(得分:5)

作为参考,pyexiv2 homepage现在有一个弃用警告,指向Gexiv2,一个基于GObject-introspection的libexiv2包装器(相同的库pyexiv2包装)专门用于Python 3.x的目的支持。

不幸的是,在撰写本文时,Gexiv2的安装仍然很痛苦,到目前为止,我一直无法让它在Ubuntu Precise上运行(看起来lib已经过时了 - 可能是我正确的选择一个LTS ...),所以PIL仍然是在Python 3中读取EXIF标签的最佳选择。