Archiv der Kategorie: OS X

Daten aus Webdiensten mit wget sichern (OS X, Firefox)

Für den Seelenfrieden gibt es doch nichts besseres als ein Backup. Für meine lokalen Daten erledigt das unter OS X 10.4 Leopard Time Machine von Apple ohne viel Aufhebens. Übrig bleiben aber die ganzen Daten, die ich im Web pflege, wie z.B. Delicious-Bookmarks und Bloglines-Subscriptions. Manuell kann man diese Daten auf die lokale Festplatte exportieren, und genau das wollte ich heute automatisieren. Das geht nach einigen kleinen Hürden mit wget problemlos.

1. Beispiel Bloglines

Die Seite, die alle Subscriptions als OPML liefert, lautet http://www.bloglines.com/export. Einzige Hürde: man muss eingeloggt sein. Im Browser klappt der Export nach dem Login dann dank Cookies. Und diese kann man auch wget übergeben, und zwar mit dem Parameter "--load-cookies cookies.txt". Cookies.txt ist eine Datei mit Cookies im Netscape-Format. Mein Lieblingsbrowser Firefox speichert die Cookies allerdings seit Version 3 in einer Sqlite-Datenbank. Zum Glück steht hier, wie man die Daten leicht daraus extrahieren kann – und zwar mit folgendem Script (von mir leicht vereinfacht):

#!/usr/bin/python
import sqlite3 as db
import sys
cookiedb = ‚/Users/<username>/Library/Application Support/Firefox/Profiles/<profilename>/cookies.sqlite‘
connection = db.connect(cookiedb)
cursor = connection.cursor()
contents = „host, path, isSecure, expiry, name, value“
cursor.execute(„SELECT “ +contents+ “ FROM moz_cookies“)
file = open(„./cookies.txt“, ‚w‘)
index = 0
for row in cursor.fetchall():
file.write(„%s\tTRUE\t%s\t%s\t%d\t%s\t%s\n“ % (row[0], row[1],
str(bool(row[2])).upper(), row[3], str(row[4]), str(row[5])))
index += 1
file.close()
connection.close()

Der Aufruf zum Sichern sieht dann so aus:

wget –load-cookies cookies.txt „http://www.bloglines.com/export“ -O bloglines.opml

2. Beispiel delicious

Hier lautet die URL zum Export https://secure.delicious.com/settings/profile/export. Wieder braucht man die cookies.txt. Aber es gibt noch ein weiteres Problem: Die export-URL verlangt einige Parameter als POST-Request. Zum Glück kann wget auch diesen Trick mittles „–post-data“. Die Parameter sehen so aus: „.crumb=<ID>&include_tags=yes&include_notes=yes&submit=submit“. Die „<ID>“ muss man aus dem Quelltext der Webseite „https://secure.delicious.com/settings/bookmarks/export“ auslesen (nach .crumb suchen), denn ich denke, die ist variabel (und ich hoffe aber, sie bleibt für mich stabil…). Ausserdem gibt es noch den wget-Parameter „–no-check-certificate“, der Probleme mit dem SSL-Zertifikat ignoriert. Insgesamt sieht der Aufruf dann so aus:

wget –no-check-certificate –load-cookies cookies.txt „https://secure.delicious.com/settings/profile/export“ –post-data „.crumb=<ID>&include_tags=yes&include_notes=yes&submit=submit“ -O delicious.html

Jetzt nur noch das Ganze in ein Script packen, um es via cron-job oder sowas regelmäßig und ohne weiteres Zutun anzustoßen.

Insekten im Äpfelchen

Ich habe angefangen, die Bugs in meinem Äpfelchen zu sammeln. Wozu? Erstens um die ergoogleten Lösungen für die Problemchen nicht zu vergessen und zweitens, um den Apple-Mitarbeitern, die meine Seite lesen, die Chance zu geben, die Fehler auch in ihr Bug-Tracking-System aufzunehmen und zum nächsten Release zu beseitigen.

Tja, die Windows-Fans wird es vielleicht zunächst freuen, dass auch bei Apple nicht alles perfekt ist. Aber dazu möchte ich anmerken, dass ich im praktisch täglichen Vergleich (tagsüber Windows bei der Arbeit, abends und am Wochenende OS X) über fast 10 Monate hinweg sagen kann: OS X ist eine riesige Erleichterung. Für Windows eine Fehlerliste aufzustellen wäre wesentlich mehr Arbeit, wahrscheinlich ein Fulltime-Job.

1. Bug: Dock wabbert nicht mehr nach mehrtägigem rebootfreiem Gebrauch – Lösung hier.

Apple-Tastaturbelegung und Kurzbefehle Mac OS X

Auch Apple macht Gebrauch von unerwarteten und schwer zu merkenden Tastenkombinationen. Ich muss z.B. jedes Mal nachgucken, wie man einen Screenshot macht (es ist z.B. Shift-Apfel-4 für einen wählbaren Ausschnitt – was mich übrigens beim Umstieg von Windows sehr gefreut hat – wo man für solche fancy Funktionen immer irgendwelche Zusatzsoftware installieren muss). Zu den Tastenkombinationen wollte ich mir mal eine Liste anlegen, aber es gibt ja alles schon. Hier eine hübsch gestylte Zusammenfassung:

Apple-Tastaturbelegung und Kurzbefehle Mac OS X