xPath-Generierung als Wrapper-Funktion für Content-Extraktion

Um Internetdaten besser analysieren zu können, ist es wichtig an die relevanten Seiteninhalte heranzukommen. Das ist bei Weblogs dank RSS-Feed extrem einfach. Bei Foren wird es schon schwieriger.

Nun hat mein Kollege im Rahmen seiner Staatsexamensarbeit ein recht nützliches System entwickelt, das auf Basis sogenannter “Site Style Trees” herausfindet, wo die relevanten Inhalte zu finden sind. Die Grundidee ist dabei wie bei vielen Algorithmen: Template-basierte Systeme wiederholen auf allen Seiten die Template-Elemente, womit der Content-Bereich durch Änderungen gefunden werden können. Natürlich muss das mit gewisser Toleranz wegen Werbung und veränderter Navigation gemacht werden. Das Ergebnis ist aber: der SST-Algorithmus funktioniert auf Foren sehr gut.

Das dumme ist nun: SSTs sind zwar toll, aber wenn ich das für jede Seite machen muss, dann brauch ich nen guten Rechner. Das schöne ist jetzt, dass ich das gar nicht muss. Wir generieren derzeit für 50 Seiten die SSTs und versuchen auf deren Basis vollautomatisch xPath-Ausdrücke zu generieren. Da sich bei 50 Seiten das Rauschen bereits ausgleichen sollte, erwarte ich dadurch, die korrekten xPath-Ausdrücke generieren zu können.

In bisherigen Versuchen hat das ganz gut für “altmodische” Forentemplates auf Tabellenbasis funktioniert. Heute hab ich es endlich geschafft, dass es auch auf semantisch sauberen Foren wie z.B. dem Strohhalm funktioniert. Inkl. class und id-Kennzeichnungen in der xPath-Struktur. Nur reguläre Ausdrücke hab ich nicht geschafft (geht das in Java überhaupt per “matches”-Funktion?).

Nächste Herausforderung: Es werden leider nicht nur die korrekten xPath-Ausdrücke gefunden, um an den relevanten Seitenbereich zu kommen. Oft sind die Ausdrücke zu speziell – gerade wenn nur ein Beitrag in einem Thread existiert. Das System muss also erkennen können, dass es hier zu speziell ist. Stell mir hier derzeit irgendwie den Editier-Abstand vor. Denn wenn ich sehe, dass der “korrekte” xPath-Ausdruck kaum weniger als der “zu spezielle” Ausdruck extrahiert, dann kann ich ja gleich den allgemeinen nehmen: getreu dem Motto: so allgemein wie möglich, so speziell wie nötig.

Falls jemand noch ne Idee hat: her damit, probier es gerne aus.

Ein Gedanke zu „xPath-Generierung als Wrapper-Funktion für Content-Extraktion

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.