netzwerk-organisatorische formen
von Benjamin Wittorf

Feature: Ein praktisches Beispiel von einfachstem Datamining: die Nadel im Heuhaufen finden

Ein Freund fragte explizit nach diesem alten Eintrag (und nach einem noch kommenden) — da tue ich ihm gerne den Gefallen. Er erschien ursprünglich im Herbst 2009 bei Immersion I/O.

Bei Expedition Ego (damals noch 1ung7a) tauchte in den Statistiken ein interessanter Verweis von einem Gästebuch auf. Da Tim und ich den Link aber in dem Gästebuch nicht auf die Schnelle bei der Menge an Einträgen und Seiten finden konnten (nicht nur, dass keine genaue Quelle gab – es wurde auf einen nicht mehr existierenden Inhalt bei Expedition Ego verwiesen, und die Statistik gab nicht her, welcher das war), beschloss ich, das ganze mal ein wenig professioneller anzugehen: mit Datamining.

Dafür musste ich mir zu erst einmal das Gästebuch genauer ansehen:

Die verlinkende Seite
Zum Bild: Das Gästebuch, von dem der Link stammt.

Auch wenn der Inhalt auf eigene Art und Weise sehr interessant war, war die Struktur (um genau zu sein: das HTML) der Seite und ihrer Folgeseiten zur Analyse doch wichtiger. Um alle Seiten des Gästebuches automatisiert durchforsten zu können, hatte ich mir angesehen, welche und wie die Seiten des Gästebuchs geladen wurden. Mit dieser Information würde ich später eine automatisch generierte Liste von abzuarbeitenden Seuten erstellen können. Also schaute ich mir dazu die Navigation unten auf der Seite an, und hatte dann die zweite Seite der Gästebucheinträge laden lassen.

Dann hatte ich mir in der Adresszeile des Browsers angesehen, wie sich die URL der Seite verändert. Leider gar nicht! Da würden also Inhalte wahrscheinlich dynamisch mit JavaScript nachgeladen. Um festzustellen, wie die Seiten nachgeladen wurden, reichte ein Blick in den Quelltext (eben das HTML) an der Stelle, bei der die Navigation war.

In der eben erwähnten Navigation fanden sich also die Seiten, die tatsächlich geladen wurden. Nun musste ich nur noch wissen, wie viele Seiten es in dem Gästebuch insgesamt gab: 140.

Mit dieser kleinen Vorarbeit war es nun möglich, mit einem Datamining-Programm (ich benutze Anthracite — wird leider nicht mehr weiter entwickelt) eine Analyse zu erstellen. Dazu hatte ich einen einfachen Workflow gebaut:

Anthracite: Ablaufdiagramm
Zum Bild: Der einfache Ablauf benötigt nur eine Quelle, einen Suchparameter, eine Auswertung und eine Ausgabe.

Die Quelle sollte die automatisch generierte Liste sein. Dafür hatte ich das Schema der URL eingegeben, und definiert, welcher Teil davon mit (Seiten-)Zahlen in einer Reihe geladen werden soll. Wonach gesucht werden sollte, war ganz einfach: nach 1ung7a. Um den Kontext direkt einordnen zu können, hatte ich eingestellt, nicht nur zu sagen, auf welcher Seite der Suchbegriff auftaucht, sondern auch, was um ihn herum zu lesen ist.

Aufgrund der wirklich einfachen Art der Suche mussten die Auswertung und die Ausgabe nicht detailliert eingestellt werden. Interessant war ja nur, auf welcher Seite der Link sein würde. Nach Starten des minings wurde dann auch das Ergebnis (in Rohform) präsentiert.

Auf Seite 16 also sollte ich den Link finden, und in der Tat:

…und auf der verlinkenden Seite
Zum Bild: Die Seite in dem Gästebuch, aus dem der Link stammt.
Der Link war also nicht nur ein Link, sondern auch ein eingebundenes Bild, dass es bei Expedition Ego nicht mehr gab. Und weil's so schön ist und nicht mehr (so schnell) verloren geht: Ein Hut, ein Stock, ein Regenschirm….