Tool zum Zitieren von Wikipedia-Artikeln

Du hast eine Idee für ein Projekt?
Antworten
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Ziel ist erstmal, dass der Name des Artikels eingegeben wird und man den Rohtext ohne Formatierungen und Bildern erhält. Nachdem ich mich ein bißchen in die Wikipedia-API eingelesen habe, erhalte ich zumindest schonmal den eigentlichen Wikitext eines Artikels. Der nächste Schritt wäre das Parsen. Als am vielversprechendsten sah für mich hier der Creoleparser aus, aber leider ist auch dort, wie bei ähnlichen Projekten, die Zielsetzung zu stark auf eine HTML-Ausgabe gelegt. Was ich gerne hätte, wäre der Zugriff auf einen Parse-Tree, so wie man das von den gängigen HTML-Parsern kennt. Kann mir da jemand einen Tip geben? :)

Die Unterteilung in Abschnitte (sonst macht das Zitieren wenig Sinn) folgt entsprechend danach. Ich dachte mir eine Syntax wie "1,3,2" = 1. Hauptabschnitt, davon der 3. Unterabschnitt und dort der 2. Absatz. Außerdem wäre eine Suchfunktion nach Überschriften gut, z.B. "Nebenwirkungen" bei einem Medikament oder "Discografie" für Bands. Erstmal müsste aber die Sache mit dem Parser gelöst werden. Vielleicht fällt ja jemandem noch was ein...

Achso, hier der Weg, den ich gegangen bin, um an das besagte Markup zu kommen.
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Also ich würde einfach das Inhaltsverzeichnis auf der HTML Seite parsen. ;)

Das kannst du dann immer noch in einen Baum schreiben und dir den Text von der API holen, falls du den benötigst
„Lieber von den Richtigen kritisiert als von den Falschen gelobt werden.“
Gerhard Kocher

http://ms4py.org/
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Die Idee mit dem Inhaltsverzeichnis ist gar nicht mal so doof. Vor allem bietet lxml doch meines Wissens Möglichkeiten, um den Text in Reinform zu erhalten.
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Was kann denn besagtes Tool besser, als wenn ich auf der Webseite den relevanten Textabschnitt mit der Maus markiere und mit Copy&Paste übernehme?

Stefan
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Ich dachte an:

1. Automatisches Rauslöschen der eckigen Klammern für Verweise im Text, weil ich das persönlich echt nervig finde.

2. Automatische Formatierung. Es wird normalerweise ein Tupel `(text, url_zum_absatz)` ausgegeben. Mit einer Formatter-Funktion wäre z.B. BB-Code mit `[url]` + `[quote]` möglich. Wahlweise Bilder als Links oder `[img]`-Tag. "Verweiswörter" auf andere Wikipedia-Artikel entweder wie normalen Text behandeln oder als Link formatieren, je nach Anwendungsgebiet. Tabellen könnten mit ein paar Strichen verziert werden, so dass sie wirklich wie Tabellen aussehen (wäre wohl eher was für Monospace-Schrift, sprich: dicktengleiche Ausgabe). Ausgabe in HTML Zitierungs-Tags und halt `<a>` für die Links. Dasselbe im Latex-Format, usw.

3. Syntax in dieser Art: `wikicite "auto" --subheading "sicherheit" --paragraph 4 --sentence 1,3` oder kürzer: `wikicite "auto" -h "sicherheit" -p4 -s1,3`. Wobei `-h` für "Subheading" (wegen der Kollision mit "sentence") und `-H` für "Heading" steht. Zwischen Satz 1 und 3 würden automatisch Auslassungspunkte (wahlweise umgeben von runden oder eckigen Klammern) eingefügt werden, usw. Einige der (auch oben schon) genannten Punkte schreien natürlich nach einem Conf-File.

Ich hätte da also durchaus ein paar Ideen. Das Programm soll am Ende natürlich nicht einen an sich einfachen Sachverhalt verkomplizieren. Ich nehme an, das war der Hintergedanke bei deiner Frage. Übrigens gibt es bekanntlich auch Leute, die keine Mausbedienung zur Verfügung haben (aus welchem Grund auch immer).
Antworten