2017-02-18 2 views
0

Ich habe Probleme herauszufinden, wie man ein EXIF-Tag aus einem rohen Foto mit PyExifTool extrahieren. Ich möchte nur das Datum, an dem das Foto erstellt wurde, extrahieren und den Projektordner mit diesem Datum umbenennen. Ich habe eine Vielzahl von Dingen habe ich versucht, halte eine Reihe von Fehlern immer mit der Endung „Valueerror (“ No JSON-Objekt decodiert werden kann ")Wie EXIF-Tags mit PyExifTool zurückgeben

wie:.

import exiftool 
    files = "CRW_1368.CRW" 

    with exiftool.ExifTool() as et: 
     metadata = et.get_tag(DateTimeOriginal, files) 

    print execute_json(metadata) 

Es mir nicht klar ist, wie man legen Sie es richtig auf. ich scripting relativ neu bin.

Danke für die Hilfe!

+0

Diese Frage ist nicht mit Stackoverflow-Richtlinien entsprechend. 'Nichts scheint zu funktionieren' beschreibt das Problem nicht richtig. Was geschieht? Welche Fehlercodes erhalten Sie? Da es sich um eine rettungsfähige Frage handelt, werde ich zu diesem Zeitpunkt nicht dafür stimmen, sie zu schließen. Aber bearbeite es schnell, weil sonst jemand anderes diese Frage schließt. –

Antwort

0

Zuerst müssen Sie sicherstellen, dass der Tag vorhanden ist. In meinem Test gab es keinen DateTimeOriginal-Tag, also musste ich um ein Tag auszuwählen, das tatsächlich in meiner Datei war. Ich wählte "Datum" Erstellt '. Ich habe den Fehler, dass execute_json wurde nicht definiert. Als ich es zu et.execute_json änderte, konnte ich Ihren gleichen Fehler erhalten. Da Sie nur ein Tag ziehen, sollten Sie es einfach ausdrucken können. Durch eine schnelle Änderung Ihrer Druckanweisung erhielt ich das erwartete Datum/Uhrzeit.

import exiftool 
import os, errno 
files = file.jpg 

with exiftool.ExifTool() as et: 
    metadata = et.get_tag('DateCreated', files) 
    print(metadata) 
# or, (skipping those two lines) as per your actual question 
    new_folder = et.get_tag('DateCreated', files) 
    try: 
     os.makedirs(new_folder) 
    except OSError as e: 
     if e.errno != errno.EEXIST: 
      raise 

Und in meinem Fall mit der print-Anweisung, bekam die erwarteten zurück '2017: 04: 25 17.40.42' aus meiner Datei.

Aktualisierte Alternativen zum Verzeichnis Prüfung/Erstellung finden Sie unter: How can I create a directory if it does not exist?

Verwandte Themen