Facebookdaten/Freunde in JSON exportieren und weiter verarbeiten

Manchmal kann es notwendig sein das man z.B. seine Freundesliste in Face wo bequem weiterbarbeiten möchte. Hierfür hat Facebook eine etwas versteckete Funktion wo man seine Daten im JSON und HTML Format exportieren kann. Der HTML Export ist für diese Zwecke unbrauchbar, deshalb verwenden wir hier JSON.

Als erstes muss man die gewünschte Datei anfordern. Hierfür begibt man sich zu volgenden Punkten:

  1. Rechts oben Account „Pfeil nach unten“ klicken
  2. Einstellungen
  3. Linke Spalte, dritter Punkt „Deine Facebook Informationen“
  4. Dann auf der Seite auf „Deine Informationen herunterladen“ auf „Ansehen“ klicken.

Auf der darauf folgenden Seite können jegliche Listen exportiert werden. Wir machen hier nur bei „Freunde“ ein Häckchen.

Weiters wählen wir wie am Screehshot ersichtlich „Format: JSON“ aus. Nund noch auf den rechten blauen Button „Datei erstellen“ klicken. Ihr werden von Facebook benachrichtigt wenn die Datei zum Download bereit ist.

Der Export sieht nun so aus und kommt bereits sortiert nach hinzugefügt.

{
  "friends": [
    {
      "name": "Maxi Test1",
      "timestamp": 1533448433
    },
    {
      "name": "Peter Test2",
      "timestamp": 1233446851
    },
    {
      "name": "Michael Test3",
      "timestamp": 1133245024
    },
    {
      "name": "Klaudia Test4",
      "timestamp": 1333152001
...

So sind die Namen gelistet. Um das ganze nun zu sortieren bedient man sich dem Bordwerkzeug „grep“. Eine brauchbare Liste bekommt man wenn man nur den Namen raus filtert.

grep name friends.json > freundeslist.txt

Raus kommt dann eine Textdatei:

"name": "Maxi Test1",
"name": "Peter Test2",
"name": "Michael Test3",
"name": "Klaudia Test4",
...

Kann man natürlich noch bliebig weiter filtern und sortieren. Z.B. nach Timestamp umgekehrte Reihefolge. Hilfe schafft das kleine Phytonscript von Simon, vielen Dank dafür.

sort.py
import json
import sys
 
data = open(sys.argv[1], 'r')
 
j_content = json.load(data)
j_sorted = sorted(j_content["friends"], key=lambda x: x["timestamp"])
prettyjson = json.loads(json.dumps(j_sorted))
print(json.dumps(prettyjson, indent=4))

Beispiel der Anwendung:

python sort.py friends.json

Um die generierte Liste am schnellsten und effizientesten zu bedienen nimmt man den CMDeditor nano. Mit der Tastenkombination STRG+k löscht man eine Zeile. Mit ALT+TAB wieder zurück zum Einladungsfenster mit Facebook oder gleich mit Rambox. Mit STRG+o speichert man mit STRG+x verlässt man den Editor. Steht auch alles in der untersten Hilfezeile des Programms.

Rambox Homepage, Programm gibt es auch für Windows: https://rambox.pro