Spieglein, Spieglein auf der Platte: Mediawiki-Mirror zum Offline-Lesen

Der Zugriff aufs Netz im digitalen Entwicklungsland

NetzIn Deutschland ist es immer noch ein wenig Glückssache, ob am Ort der körperlichen Anwesenheit Internet überhaupt oder in brauchbarer Performance angeboten wird.  Ob in öffentlichen Verkehrsmitteln, auf öffentlichen Plätzen oder in der Gastronomie: nirgends ist WLAN selbstverständlich oder funktioniert, wenn es angeboten wird. Und Mobilfunk- Internet ist teuer, beschränkt und auch nicht immer verfügbar, so lange man sich nicht ein komplettes SIM-Kartenspiel leisten kann oder will, und selbst dann nicht.

Das kann man schon so machen, aber …

kannstemachenSo entblödet sich die Versammlungsleitung der „Partei des digitalen Wandels“ nicht, zur Vorbereitung des kommenden Wochenende stattfindenden Bundesparteitags zu twittern:  „ProTipp: Alle Anträge aus dem Wiki als PDF Speichern und auf dem BPT lokal auf dem Gerät oder USB-Stick bereit halten.“ (Tweet).

Abgesehen vom „WTF“-Faktor, freien Netzzugang und freien Zugang zur Infrastruktur zu fordern, diesen aber auf dem wichtigsten Event für die, die zu entscheiden haben, nicht geregelt zu kriegen (darüber habe ich mich an anderer Stelle ausgelassen), nehme ich das zum Anlass, mich auf den Worst Case vorzubereiten.

Workaround statt Workflow: Doing other Peoples Job

Der Vorschlag, einfach mal alle Anträge als PDF abzuspeichern, dürfte mich einen halben Tag beschäftigen – sorry, Leute, ihr wollt, dass die Dinger gelesen werden, ich will dafür auch noch Zeit haben. Ich brauche keine Beschäftigungstherapie. Warum baut ihr keinen lokalen Mirror, kein Intranet?

Getting Things Done

Was brauche ich im schlimmsten Fall: eine Möglichkeit, die Anträge offline auf meinem Rechner lesen zu können, eine Übersicht, sie auch zu finden. Schön wäre auch ein Zugriff auf Tagesordnung, Geschäftsordnung und anderen Foo. Besser als die Idee, den Kram einzeln als PDF zu speichern (wo ich mir dann für jedes einzelne File noch einen Dateinamen ausdenken darf), erscheint mir ein lokaler Mirror des BPT-Krams aus dem Wiki. Die Offline-Fassung müsste eine statische Kopie sein, damit sie auch ohne lokalen Webserver benutzbar ist, und das Ganze soll mich nicht stundenlang beschäftigen. Schön wären auch funktionierende Links. Ein wenig Overhead würde ich dafür in Kauf nehmen.

Swiss Knife

Maulschlüssel
Maulschlüssel

Spontan dachte ich an wget als Werkzeug für diese Aufgabe – ein robustes, schnelles Tool, was mir schon öfter auch knifflige Dinge heruntergeladen hat und eine überbordende Optionsvielfalt bietet. Für den Einsatz fürs Wiki suchte ich nach Optionen, die die Besonderheiten der Wiki-Software behandeln können und mir ein Rudel sauber aufgebauter HTML-Seiten auf die Platte spült, ohne gleich das ganze Internet herunterzuladen. Im Blog von Dale Lane wurde ich fündig: Making an offline copy of a wiki pickt diejenigen der Optionen aus dem reichen wget-Angebot heraus, welche aus einem Wiki eine statische Offline-Kopie machen sollen.

Getting real

Wer wget noch nicht hat, muss es sich zuerst installieren. Dann muss man eine .wgetrc anlegen, um robots.txt auszuschalten (robots = off), geht mit dem Browser auf die herunterzuladende Seite und holt sich über die Cookie-Verwaltung des Browsers Schlüssel und Wert des Session-Cookies.

Dann startet man via

wget --mirror --convert-links --html-extension --no-parent --wait=5 --header "Cookie: wiki2_piratenpartei_de_session=COOKIEWERT" http://wiki.piratenpartei.de/Bundesparteitag_2015.1

den Download.

Die Optionen im Einzelnen:

  • –mirror: spiegelt eine Website
  • –convert-links: soll die Links auf der Seite anpassen, so dass sie auch offline funktionieren
  • –html-extension: schreibt die Dateiendung auf .html um, dass man die Dateien anklicken und so im Browser lesen kann
  • –no-parent: verhindert, dass darüberliegende Dateien heruntergeladen werden.
  • –wait=5: wartet nach jeder Seite 5 Sekunden. Dann dauert es zwar etwas, aber man beansprucht den Server nicht so stark
  • –header: sendet den entsprechenden Hearder, hier das Cookie, mit.

Und was kommt raus?

Your Mileage May Vary

Und was bringt das Ganze am Ende?
Die Links werden nicht auf die HTML-Endung umgeschrieben, funktionieren also lokal nicht. Das Wiki wird aber in eine überschaubare Ordnerstruktur abgelegt, so dass man die gesuchten Informationen auch so findet.
Es gibt sehr viel Overhead: die Linkstruktur scheint nicht so eindeutig zu sein, dass wirklich nur Seiten unterhalb der Parteitagsseite heruntergeladen werden. Man bekommt also eher das gesamte Wiki als nur die Anträge.
Zumindest beim Piratenpartei-Wiki funktioniert die Sache also leider maximal mittelgut, Immerhin läuft das Ganze im Hintergrund, und ich kann dabei etwas anderes machen …

Disclaimer

Immerhin hat das Bundesparteitags-VL-Team inzwischen das Gerücht dementiert, so dass ich hoffe, auf das Backup nicht angewiesen zu sein …