Pacix Labs

Fotos

Google Takeout JSON-Dateien mit Fotos zusammenführen (falsches Datum beheben)

Google Takeout speichert die Aufnahmedaten Ihrer Fotos in separaten JSON-Dateien. Vier kostenlose Tools führen sie wieder zusammen: was jedes behebt, die genauen Befehle und wie Sie prüfen.

· 7 Min. Lesezeit

Auch verfügbar auf: العربيةবাংলাespañolfrançaisગુજરાતીहिन्दीIndonesiaitaliano日本語ಕನ್ನಡ한국어EnglishमराठीpolskiportuguêsрусскийKiswahiliதமிழ்తెలుగుไทยTürkçeукраїнськаاردوTiếng Việt中文

Sie haben Ihre Google-Fotos-Bibliothek mit Google Takeout heruntergeladen. Jetzt liegen Tausende Fotos neben Tausenden .json-Dateien, und Ihr Bildbetrachter behauptet, ein Foto von 2019 sei gestern aufgenommen worden. Die Lösung: Sie führen die Google Takeout JSON-Dateien wieder mit ihren Fotos zusammen. Ein Tool liest das Aufnahmedatum aus der JSON-Datei und schreibt es in das Foto, sodass jede App wieder das richtige Datum anzeigt.

Diese Anleitung erklärt, warum es die JSON-Dateien gibt, warum das Zusammenführen manchmal scheitert und wie vier kostenlose Tools es erledigen. Sie bekommen für jedes Tool den genauen Befehl, erfahren, welches Datum es ändert, und lernen eine Methode, das Ergebnis zu prüfen, bevor Sie irgendetwas löschen.

Warum Ihre Fotos mit JSON-Dateien kommen

Für jedes Foto liefert Takeout zwei Dateien: das Bild, zum Beispiel IMG_1234.jpg, und eine JSON-Datei mit dem ursprünglichen Datum, den GPS-Koordinaten, der Beschreibung und der Albumzugehörigkeit. Eine Export-Anleitung beschreibt den typischen ersten Eindruck: Ein Foto von 2019 zeigte „gestern“ als Datum, ohne Ort und ohne Album, obwohl nichts verloren gegangen war. Die Informationen steckten in der JSON-Datei (PixelUnion). Illinois Tech erklärt auf dieselbe Weise, warum ein Export mehr Dateien enthält, als Ihre Bibliothek Bilder hat (Illinois Tech).

Die Fotodatei kann der JSON-Datei widersprechen. Der Autor von google-photos-exif hat bemerkt: Wenn Sie ein Datum in Google Fotos ändern, werden die Metadaten im Bild nicht aktualisiert, das neue Datum steht nur in der JSON-Datei. Manche Bilder, oft solche, die andere mit Ihnen geteilt haben, enthalten überhaupt kein Datum (google-photos-exif). Die README von gphotos-takeout-repair zeigt die andere Hälfte des Problems: In einem entpackten Export zeigen das Foto, seine bearbeitete Version und die JSON-Datei alle das Datum des Takeout-Exports als Erstellungsdatum (gphotos-takeout-repair).

Eine App, die nur die Fotodatei liest, sieht also entweder gar kein Datum oder den Tag Ihres Exports. Das richtige Datum steht in der JSON-Datei, und das Zusammenführen bringt es zurück.

Drei Dinge, an denen das Zusammenführen scheitert

Jedes Tool muss für jedes Foto die richtige JSON-Datei finden. Drei Eigenheiten von Takeout machen das schwieriger.

  1. Ein Foto und seine JSON-Datei können in verschiedenen ZIP-Dateien liegen. Die Migrations-FAQ von Ente nennt das Beispiel flower.jpeg in einer ZIP-Datei und flower.json in einer anderen, sodass die beiden nicht zugeordnet werden können (Ente). Die README von Porte führt denselben Fall als bekannte Einschränkung auf: Metadatendateien, die in einem anderen Archiv liegen als ihr Bild, findet das Tool nicht (Porte).
  2. Die Namen der JSON-Dateien sind nicht einheitlich. Zu IMG123.jpg bekommen Sie vielleicht IMG123.jpg.json oder nur IMG123.json, und manche Ordner enthalten JSON-Dateien ohne passendes Bild (google-photos-exif).
  3. Bearbeitete Fotos kommen doppelt. Takeout exportiert das Original und die bearbeitete Kopie als getrennte Dateien mit unterschiedlichen Hashes, deshalb erkennt ein Duplikatfinder, der Hashes vergleicht, sie nicht (Ente). Die bearbeitete Datei trägt das Suffix -edited, etwa IMG_0001-edited.jpg neben IMG_0001.jpg (gphotos-takeout-repair).

Die Lösung für den ersten Punkt ist bei allen Tools gleich: Laden Sie alle ZIP-Dateien herunter und entpacken Sie sie dann alle in einen gemeinsamen übergeordneten Ordner, wobei die Unterordner so bleiben, wie sie sind (Ente). Enthalten zwei ZIP-Dateien einen Ordner mit demselben Namen, führen Sie die Inhalte der Ordner zusammen, statt den einen durch den anderen zu ersetzen (google-photos-exif).

Ein Tipp von Illinois Tech zum Herunterladen: Lassen Sie das Takeout-Fenster im Vordergrund. Wenn Sie es minimieren oder in einem anderen Fenster arbeiten, brechen die Downloads nach 15 Minuten ab, weil Google Sie bittet, sich erneut anzumelden (Illinois Tech).

Vier kostenlose Tools für Google Takeout JSON-Dateien und welches Datum sie korrigieren

Ein Foto hat zwei Arten von Datum. Das EXIF-Datum (DateTimeOriginal) ist im Bild gespeichert und wandert mit ihm in jede App und jeden Dienst. Das Dateidatum (Änderung oder Erstellung) gehört zum Dateisystem. Es geht leicht verloren: Die README von gpth warnt, dass das Verschieben von Dateien auf einem Android-Handy es meist zurücksetzt (gpth). Prüfen Sie vor der Wahl eines Tools, welches der beiden es schreibt.

In allen Befehlen unten ist der erste Ordner Ihr entpacktes Takeout und der zweite ein neuer, leerer Ausgabeordner.

Porte: schreibt Datum und Ort in das Foto

Porte kopiert Zeitstempel und Geodaten aus der zugehörigen JSON-Datei in die EXIF-Daten des Bildes, ohne das Bild neu zu komprimieren. Findet es kein Datum, versucht es den Dateinamen, und es nimmt das früheste Datum, das es findet, damit ein Datei-Änderungsdatum nicht für das Aufnahmedatum gehalten wird. Es kopiert die Dateien in den Ausgabeordner, statt sie an Ort und Stelle zu ändern, legt fehlgeschlagene Dateien in einen eigenen Ordner und speichert ein Protokoll. Albumdaten behält es nicht. Ein fertiges Programm können Sie von der Releases-Seite des Projekts herunterladen (Porte):

porte srcpath destpath

google-photos-exif: ergänzt ein fehlendes EXIF-Datum

Dieses Node.js-Tool liest photoTakenTime aus jeder JSON-Datei. Es setzt das Änderungsdatum der Datei und füllt DateTimeOriginal nur dann aus, wenn das Foto noch keines hat. Dateien, die es nicht verarbeiten kann, landen in einem Fehlerordner (google-photos-exif). Der Autor von PixelUnion hat es benutzt und berichtet, dass es die ganze Bibliothek in etwa zwanzig Minuten verarbeitet hat (PixelUnion).

yarn start --inputDir ~/takeout --outputDir ~/output --errorDir ~/error

gpth: sortiert in einen Ordner oder nach Monaten und setzt dann das Dateidatum

Google Photos Takeout Helper ist interaktiv: Sie starten es und beantworten seine Fragen. Es sammelt alle Fotos in einem Ordner oder, mit der Option --divide-to-dates, in Ordnern nach Monat und setzt das Datum der letzten Änderung der Datei. Das Zurückschreiben der JSON-Daten in EXIF steht noch auf seiner To-do-Liste, deshalb nennt seine README einen zusätzlichen exiftool-Befehl, der bei Fotos ohne EXIF-Datum das Dateidatum in die EXIF-Daten kopiert. Führen Sie diesen Befehl aus, bevor Sie die Dateien wieder anfassen. Beachten Sie, dass gpth Dateien standardmäßig verschiebt; behalten Sie also Ihre ursprünglichen ZIP-Dateien (gpth).

exiftool -overwrite_original -r -if 'not defined DateTimeOriginal' -P "-AllDates<FileModifyDate" "your/output/folder/ALL_PHOTOS/"

gphotos-takeout-repair: entfernt die JSON-Dateien und bearbeitete Duplikate

Dieses Tool kopiert Ihre Fotos in einen neuen Ordner, behält die Ordnerstruktur bei und setzt das Erstellungsdatum jeder Datei anhand von photoTakenTime aus der JSON-Datei. Gibt es eine -edited-Kopie, behält es diese Version (meist die beste) und lässt das Original weg, sodass die Ausgabe weder JSON-Dateien noch bearbeitete Duplikate enthält (gphotos-takeout-repair). Installieren Sie es mit npm install -g gphotos-takeout-repair, dann:

gphotos-takeout-repair --src ./unzipped-takeout-dir --dest ./output-dir

Wenn Sie das Datum bei jedem Foto im Bild haben wollen, schreibt Porte es direkt hinein. Bei den anderen drei prüfen Sie das EXIF-Datum anschließend, wie unten gezeigt.

Prüfen, ob die Daten wirklich in den Fotos stehen

Verlassen Sie sich nicht auf die Spalte „Änderungsdatum“ im Dateibrowser. Prüfen Sie die Metadaten selbst.

  1. Ohne zusätzliche Software: Klicken Sie mit der rechten Maustaste auf ein Foto und wählen Sie auf dem Mac „Informationen“ oder unter Windows „Eigenschaften“. Nach einem gelungenen Zusammenführen sollten Sie das richtige Aufnahmedatum sehen, die GPS-Koordinaten, falls das Foto welche hatte, und das Kameramodell, wo verfügbar (PixelUnion).
  2. Für einen ganzen Ordner: ExifTool kann das Tag DateTimeOriginal für jede JPG-Datei in einem Ordner ausgeben. Diese Zeile beruht auf einem Beispiel aus seiner Dokumentation (ExifTool):
exiftool -DateTimeOriginal -S -s -ext jpg .

Eine leere Zeile oder ein Datum aus der Woche Ihres Exports bedeutet, dass dieses Foto nicht zusammengeführt wurde. Sehen Sie dann im Fehler- oder Failed-Ordner des Tools nach und prüfen Sie, ob die passende JSON-Datei aus einer anderen ZIP-Datei stammte.

  1. Anzahl vergleichen. Ausgabeordner und Fehlerordner zusammen sollten ungefähr so viele Fotos und Videos enthalten wie das entpackte Takeout, abzüglich der bearbeiteten Duplikate, falls Ihr Tool sie entfernt.

Eine Alternative mit einem Klick

Wenn Sie die Kommandozeile nicht benutzen möchten, kann eine Desktop-App dieselbe Arbeit erledigen. PHOTOK ist ein Produkt von Pacix Labs. Laut seiner Seite liest es die .json-Dateien, die Google überall verstreut, und setzt die echten Daten und Orte wieder ein; danach sortiert es die Fotos in Ordner nach Jahr / Monat / Ort und legt exakte Duplikate beiseite. Es läuft unter Windows 10 und 11 sowie auf Macs mit Apple-Chip, arbeitet, ohne etwas hochzuladen, und löscht nie Dateien. Die Vorschau ist kostenlos, die Vollversion kostet einmalig 49 € (PHOTOK).

Egal welchen Weg Sie wählen, die kostenlosen Tools oben oder eine App, es gelten dieselben Regeln: Arbeiten Sie mit einer Kopie, prüfen Sie eine Stichprobe und behalten Sie die ZIP-Dateien.

Checkliste

  • Laden Sie alle ZIP-Dateien herunter und bewahren Sie eine Kopie auf einem zweiten Laufwerk auf.
  • Entpacken Sie alle ZIP-Dateien in einen übergeordneten Ordner, behalten Sie die Unterordner bei und führen Sie gleichnamige Ordner zusammen.
  • Wählen Sie ein Tool und wissen Sie, welches Datum es schreibt: EXIF-Datum, Dateidatum oder beides.
  • Lassen Sie es auf einer Kopie laufen, in einen neuen Ausgabeordner.
  • Prüfen Sie DateTimeOriginal an einer Stichprobe aus verschiedenen Jahren und sehen Sie in den Fehlerordner.
  • Entscheiden Sie, was mit den -edited-Kopien geschehen soll.
  • Löschen Sie die JSON-Dateien und ZIP-Dateien erst nach der Prüfung und einem zweiten Backup.

Häufige Fragen

Warum liefert Google Takeout JSON-Dateien zu meinen Fotos?

Google speichert das Aufnahmedatum, den Ort, die Beschreibung und die Albuminformationen, die es zu jedem Foto kennt, in einer separaten .json-Datei neben dem Foto. Die Fotodatei selbst enthält diese Angaben nicht unbedingt, zum Beispiel wenn Sie das Datum in Google Fotos geändert haben.

Kann ich die JSON-Dateien löschen?

Erst wenn Datum und Ort in den Fotos stehen und Sie eine Stichprobe geprüft haben. Bis dahin ist die JSON-Datei der einzige Ort, an dem Googles Datum und Standort für das Foto gespeichert sind.

Welches Datum korrigiert ein Zusammenführungs-Tool?

Das hängt vom Tool ab. Manche schreiben das Datum in die EXIF-Metadaten des Fotos (DateTimeOriginal), die mit der Datei mitwandern. Andere setzen nur das Änderungs- oder Erstellungsdatum der Datei, das manche Kopiermethoden zurücksetzen. Lesen Sie die README des Tools, bevor Sie sich entscheiden.

Warum sind manche Fotos nach dem Zusammenführen immer noch falsch?

Meist lagen das Foto und seine JSON-Datei in verschiedenen ZIP-Dateien und wurden nie wieder zusammengebracht, oder die JSON-Datei heißt anders als das Foto. Entpacken Sie alle ZIP-Dateien in einen Ordner, lassen Sie das Tool erneut auf einer frischen Kopie laufen und sehen Sie im Fehler- oder Failed-Ordner des Tools nach.

Muss ich die ursprünglichen ZIP-Dateien behalten?

Ja, bis die zusammengeführte Bibliothek geprüft ist und Sie ein weiteres Backup haben. Manche Tools verschieben Dateien, statt sie zu kopieren, und die ZIP-Dateien sind Ihre einzige Möglichkeit, von vorn anzufangen.

Quellen