Biblioteca de lectura exif

¿Hay alguna biblioteca exif para Python 3.x? Parece que cada biblioteca exif con la que me topo es solo para Python 2.x. No necesito nada demasiado lujoso. Basta con leer los valores es suficiente.

Opción 1. Utilice pyexiv2. Ver: pyexiv2 Bug # 824440: Compatibilidad con Python 3 Necesita boost-python para py3k y también para aplicar manualmente el parche publicado al final del error anterior, pero aparte de eso, funciona. Probablemente la forma más fácil de ponerlo en funcionamiento con la última versión de Ubuntu.

Opción 2. Utilizar el lado negativo de PIL : esta twig / horquilla no parece estar desarrollada activamente.

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

Opción 3. Usar PythonMagick

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

Ver también: biblioteca de manipulación Exif para python.

Para referencia, la página de inicio de pyexiv2 ahora tiene una advertencia de desaprobación que apunta a Gexiv2 , un envoltorio basado en introspección GObject alrededor de libexiv2 (la misma biblioteca pyexiv2 wraps) específicamente para el propósito de la compatibilidad con Python 3.x.

Desafortunadamente, en el momento de escribir esto, la instalación de Gexiv2 sigue siendo dolorosa y hasta ahora no he podido hacer que funcione en Ubuntu Precise (parece que las librerías están desactualizadas, probablemente me sirva para quedarme en un LTS). ..), por lo que PIL sigue siendo la mejor opción para leer tags EXIF ​​en Python 3.