knuspermagier.de
Hallo. Ich bins! Philipp!

Links aus Messages extrahieren

Zum Glück speichert MacOS alle iMessages in einer Sqlite-Datenbank. Will man nun zum Beispiel alle Links exportieren, die von einem bestimmten Kontakt geschickt wurden, um sie… irgendwo zu speichern, wo sie besser durchsuchbar sind, zum Beispiel, kann man sie mit einer einfachen Query rausholen:

sqlite3 ~/Library/Messages/chat.db "select datetime(message.date/1000000000 + strftime('%s', '2001-01-01') ,'unixepoch','localtime'), text from message where handle_id = 1 and text LIKE '%http%' order by date limit 100;"

Natürlich müsst ihr vorher mit einem SELECT * FROM handle herausfinden, welche handle_id verwendet werden muss, oder man lässt das einfach weg, um sich alle Links herauszufischen. Die kuriose Datetime-Geschichte am Anfang ist natürlich, weil die Daten als Nanosekunden seit dem 1.1.2001 gespeichert werden, oder so. Warum auch nicht.


Achja, damit das funktioniert braucht eure Terminal-App natürlich Full Disk Access, was man in den System Preferences unter Security einstellen muss