Table of Contents

Social Media Meta-Daten

Ziel: Graphen erstellen, die die Anzahl Zugriffe in der Zeit aufzeigen, z.B.

Dazu müssen erst mal die Daten eingelesen und in ein Format gebracht werden, womit gearbeitet werden kann.

JSON-Dateien

Kurz-Übersicht

JSON-Dateien sind sehr gut maschinenlesbar und auch einfach zu produzieren. JSON kann verschiedene Datenstrukturen enthalten, u.a.

Einlesen einer JSON-Datei in Python

import json
 
with open('name_meiner_datei_im_gleichen_verzeichnis.json', encoding="utf-8") as f:
    data = json.load(f)

Ausgabe in JSON-Datei

import json
 
with open('datei_wird_ueberschrieben.json', 'w') as f:
    json.dump(data, f)                  # Kompakte Datei
    # json.dump(data, f, indent=2)      # Indentierte Datei mit Zeilenumbrüchen

Zugriff auf die Daten in Python

Wir betrachten als Beispiel folgenden JSON Eintrag {"name":"Vreni", "alter":27, "pets":["dog", "cat", "rat"]}

# Daten in der Variable data eingelesen
print(f"Name ist {data["name"]})
print(f"Zweites pet ist {data["pets"][1]}")

Datenstrukturen anlegen

data = {}  # Leerer dictionary (JSON Object)
data["name"] = "Vreni"
# Oder obige zwei Zeilen in einer:   data = {"name":"Vreni"}
data["pets"] = ["dog", "cat"]
data["pets"].append("rat")        # Liste vergrössern
data["alter"] = 3**3

Umgang mit Datum/Zeit-Angaben

Dokumentation https://docs.python.org/3/library/datetime.html

Datum/Zeit in ISO-Format

from datetime import datetime
zeit = datetime.fromisoformat("2026-02-03T13:55:38.223Z")
print(zeit)
print(f" hour={zeit.hour} weekday={zeit.weekday()} timestamp={zeit.timestamp()}")

Andere Formate

2026-02-06 15:12:18

zeit = "2026-02-06 15:12:18"
time = datetime.strptime(zeit, "%Y-%m-%d %H:%M:%S")

Instagramm liefert einen Timestamp. Versuchen Sie datetime.fromtimestamp(ts)

Eventuell gibt es für das vorliegende Format bereits einen Parser, sonst Format selbst beschreiben und mit datetime.strptime umwandeln.

Beispielcodes und -Daten

Alte Seiten mit Konvertierungsprogrammen