Estoy usando PIL. ¿Cómo convierto los datos EXIF en un diccionario de cosas?En Python, ¿cómo leo los datos exif de una imagen?
Respuesta
Prueba esto:
import PIL.Image
img = PIL.Image.open('img.jpg')
exif_data = img._getexif()
Esto debe darle un diccionario indexado por EXIF etiquetas numéricas. Si desea que el diccionario indexado por las cadenas de nombres de etiqueta reales EXIF, intentar algo como:
import PIL.ExifTags
exif = {
PIL.ExifTags.TAGS[k]: v
for k, v in img._getexif().items()
if k in PIL.ExifTags.TAGS
}
¿Alguna alternativa de Python 3? –
Python 2.7.2: el objeto 'AttributeError: 'module' no tiene el atributo 'ExifTags'' – 2rs2ts
@ 2rs2ts: prueba' import ExifTags' (sin el prefijo 'PIL'). –
también puede utilizar el módulo ExifRead:
import exifread
# Open image file for reading (binary mode)
f = open(path_name, 'rb')
# Return Exif tags
tags = exifread.process_file(f)
Puede probar esto en esta pregunta, descargar las imágenes y tratar de obtener la ImageDescription. http://stackoverflow.com/questions/22173902/how-to-get-image-title-in-python-django – Clayton
@Clayton para ambas imágenes, exifread devuelve el diccionario vacío. Pero probé en mis fotos y funciona bien. – tnq177
utilizo este:
import os,sys
from PIL import Image
from PIL.ExifTags import TAGS
for (k,v) in Image.open(sys.argv[1])._getexif().iteritems():
print '%s = %s' % (TAGS.get(k), v)
o para obtener un campo específico:
def get_field (exif,field) :
for (k,v) in exif.iteritems():
if TAGS.get(k) == field:
return v
exif = image._getexif()
print get_field(exif,'ExposureTime')
- 1. ¿Cómo agrego datos exif a una imagen?
- 2. ¿Cómo leo los datos de imagen de una URL en Python?
- 3. Copia de una imagen, pierde los datos Exif
- 4. ¿Cómo leo los datos de cx_Oracle.LOB en Python?
- 5. ¿Cómo leo una imagen base64 en WPF?
- 6. ¿Cómo puedo leer los datos EXIF de una imagen tomada con un iPhone de Apple?
- 7. Cómo editar datos EXIF en .NET
- 8. Manipular una imagen sin eliminar sus datos EXIF
- 9. Cómo recuperar información EXIF de una imagen en Rails
- 10. ¿Cómo leo un archivo de imagen usando Python?
- 11. ImageIO - obtener el tipo de imagen y datos EXIF
- 12. escribiendo datos exif en php
- 13. ¿Cómo eliminar los datos EXIF (cámara) de la imagen con carrierwave?
- 14. Cómo obtener los datos EXIF de un archivo usando C#
- 15. datos Exif Android en archivo JPEG
- 16. ¿Cómo puedo extraer datos EXIF usando PerlMagick?
- 17. ¿Cómo leo una línea aleatoria de un archivo en Python?
- 18. ¿Cómo leo una fecha en formato Excel en Python?
- 19. C# Recuperar Canon específico Datos EXIF
- 20. Cómo detener las imágenes auto-rotatorias de PHP iMagick basadas en los datos de orientación EXIF
- 21. Calcular el hash de solo los datos de imagen del núcleo (excluyendo los metadatos) para una imagen
- 22. Extracto PHP Datos GPS EXIF
- 23. Datos de exif de imagen en el motor de la aplicación de google
- 24. Cómo leo un archivo de texto en R cuando los datos no están en una tabla
- 25. Cambiar el tamaño de una imagen con .NET sin perder datos EXIF
- 26. ¿Cómo leo samples de una AudioBufferList?
- 27. Copie una imagen y conserve sus datos EXIF / IPTC con PHP imageCreateFromJpeg?
- 28. Eliminar datos EXIF de JPG usando PHP
- 29. PHP/(malo) exif datos/advertencias, ¿qué hacer?
- 30. Los datos EXIF modificados no se guardan correctamente
Pregunta más reciente aquí: http://stackoverflow.com/questions/14009148/exif-reading-library –
Consulte las respuestas aquí: http://stackoverflow.com/questions/765396/exif-manipulation-library-for-python –
http://tilloy.net/dev/pyexiv2/tutorial.html Este es el más fácil y completo. –