2014-04-14 10 views

risposta

24

trovato la risposta alla fine, il tag cui avevo bisogno era 36867:

from PIL import Image 
def get_date_taken(path): 
    return Image.open(path)._getexif()[36867] 
+0

http://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif.html Questo collegamento fornisce le informazioni sul valore per ogni tag. –

+0

un altro approccio sta usando GExiv2 come mostrato qui: http://coreygoldberg.blogspot.com/2014/01/python-fixing-my-photo-library-dates.html – Sandeep

1

Dal codice restituito da _getexif() utilizzando il tasto "DateTimeOriginal"?

+1

No, non ha funzionato, non tale chiave, sono tutti i numeri. In realtà, sono appena arrivato alla soluzione, lo pubblicherò a breve. Comunque, grazie. – sashoalm

9

Mi piace usare exif-py perché è pura-python, non richiede la compilazione/installazione, e funziona sia con 2.x pitone e 3.x lo rende ideale per il bundling con piccole applicazioni portatili python.

Link: https://github.com/ianare/exif-py

Esempio per ottenere la data e l'ora di una foto è stata scattata:

import EXIF 
with open('image.jpg', 'rb') as fh: 
    tags = EXIF.process_file(fh, stop_tag="EXIF DateTimeOriginal") 
    dateTaken = tags["EXIF DateTimeOriginal"] 
    return dateTaken 
Problemi correlati