Hilfe:Autorenliste generieren

Zurück zum Wikibooks-Lehrbuch

Wie man ein Kapitel verschiebt Kapitel aufteilen Kapitel löschenEnglisches Wikibuch übersetzen Material importierenAutorenliste generieren


Es werden hier mehrere Möglichkeiten zum Erzeugen einer Autorenliste vorgestellt, wobei für die meisten Anwendungsfälle sicherlich das Verfahren aus den Wikimedia-Tools vorzuziehen ist.

Lizenzproblematik

Bearbeiten

Die Verwendung (mindestens) einer der Lizenzen CC-BY-SA 3.0 und GFDL für die Inhalte der Projekte der Wikimedia Foundation geschah mit der Intention, frei veränderbares, verwendbares und verbreitbares Wissen zu schaffen. Die GFDL wurde früher vor allem für Softwarehandbücher verwendet und ist immer noch entsprechend abgefasst. Dies bedeutet, dass in Ermangelung klarer Aussagen vielfach mit rechtlich zweifelhaften eigenen Interpretationen gearbeitet werden muss. Ursächlich ist dafür auch, dass unterstützende technischen Mittel zur Einhaltung der GFDL nicht im erforderlichen Maße vorhanden sind. Alles in allem führt dies paradoxerweise dazu, die ursprüngliche Intention zu konterkarieren.

Autorennennung

Bearbeiten

Eine der Bestimmungen schreibt die Nennung der Autoren vor. In der Praxis wurde früher bestenfalls der Link auf die Versionsgeschichte angeführt. Dies ist jedoch unzureichend, da keine Gewähr besteht, dass der Artikel immer unter dem gleichen Namen vorhanden sein wird. Besser ist es, die Autorenliste zum Exportzeitpunkt ebenfalls zu exportieren und an einer passenden Stelle zu speichern.

Wikimedia-Tools

Bearbeiten

Mittlerweile kann eine Autorenliste automatisch generiert werden. Das früher übliche Duesentrieb's Contributers Tool wurde inzwischen deaktiviert und durch die XTools aus dem Techniklabor der Wikimedia Foundation ersetzt. Die dort befindlichen Programme haben Zugriff auf die Datenbanken aller Projekte, was zahlreiche nützliche Werkzeuge ermöglicht.

Für die Autorenliste sind die folgenden Maßnahmen auszuführen:

Schritt 1: Gehe auf die Seite der XTools für den Abruf der Artikelinformationen. Trage auf dieser Seite den Namen der gewünschten Seite und das WMF-Projekt ein.

 

Schritt 2: Durch Drücken von Absenden werden die Angaben zur Seite ausgewertet und angezeigt:

 

Schritt 3: Gehe auf dieser Seite etwas nach unten, bis der Abschnitt „Top Bearbeiter“ (auf Englisch "Top Editors") zu sehen ist:

 

Schritt 4: Durch Drücken auf Export as Wikitable werden die Artikelinformationen als Text dargestellt, der direkt übernommen werden kann:

 

Schritt 5: Wie mit den jetzt angezeigten Artikelinformationen weiter zu verfahren ist, wird bei der Vorlage „Autoren XTools“ beschrieben.

Das Ergebnis ist als Autorenliste auf dieser Seite zu sehen.

Wer mit einem Unix-Betriebssystem oder einem Unix-Derivat wie Linus arbeitet, kann gemäß den nachfolgenden Informationen ebenfalls eine Autorenliste erstellen. Unter Windows kann stattdessen das freie Cygwin installiert werden, um die gleichen Befehle so nutzen zu können.

Saubere Liste von Autoren einer WikiMedia-Wikiseite erhalten

Bearbeiten

Die folgenden Punkte geben der Reihe nach die durchzuführenden Schritte an. Sollten wider Erwarten Fragen zur Prozedur auftreten, so können diese auf der Diskussionsseite dieser Seite gestellt werden.

  1. betreffende Wikimedia-Seite im Web-Browser aufrufen
  2. history oder versionen aufrufen
  3. view 500, zeige 500 - Wenn immer noch nicht alle Editierungen zu sehen sind, in der Adressleiste limit einen höheren Wert zuweisen.
  4. Mit dem Mäuserich im Browserfenster nach dem compare selected versionen, bzw. Gewählte Versionen vergleichen durch Ziehen und gedrückt Halten der linken Maustaste nach unten die Historie markieren bis vor das untere compare selected versionen, bzw. Gewählte Versionen vergleichen
  5. Kopieren in einen Editor, z.B. mit Strg+C und Strg+V
  6. Sind es mehr Edits der Wikiseite? dann die Nächsten holen und mit in den Editor kopieren. Wiederholen bis fertig
  7. Speichern der Datei unter edits.txt

Im Folgenden ist ein Beispiel gegeben, wie die Daten in der edits.txt Datei in etwa aussehen könnten:

# (cur) (last)  12:51, 28 Sep 2004 Merkel M (Links updated)
# (cur) (last) 12:09, 29 Aug 2004 80.140.102.176 (Hinweis Link-Korrektur)
# (cur) (last) 12:05, 29 Aug 2004 80.140.102.176 (Link korrigiert)
# (cur) (last) 09:51, 28 Aug 2004 Moolsan
# (cur) (last) 14:55, 27 Aug 2004 80.140.108.198 (Redirect nach Seitentransfer in deutsche Wikibook subdomain)
# (cur) (last) 13:00, 27 Aug 2004 80.145.197.83 (Abseilen)
# (cur) (last) 01:12, 27 Aug 2004 Merkel M (Anmerkungen)
# (cur) (last) 00:39, 27 Aug 2004 Merkel (Autorenlistung und Anmerkungen)
# (cur) (last) 00:25, 27 Aug 2004 Merkel ( Referenzen)
# (cur) (last) 14:30, 26 Aug 2004 213.70.51.103 (HMS zum Abseilen)
# (cur) (last) 18:54, 25 Aug 2004 213.103.134.177 (Umlenker)

Jetzt noch nachbearbeiten:

  • In der Unix-Shell
sed 's/^.* \(199\|200\)[0-9] //' edits.txt > ersterstreich.txt

Die Daten in ersterstreich.txt sehen daraufhin in etwa folgendermaßen aus:

Merkel M (Links updated)
80.140.102.176 (Hinweis Link-Korrektur)
80.140.102.176 (Link korrigiert)
Moolsan
80.140.108.198 (Redirect nach Seitentransfer in deutsche Wikibook subdomain)
80.145.197.83 (Abseilen)
Merkel M (Anmerkungen)
Merkel (Autorenlistung und Anmerkungen)
Merkel ( Referenzen)
213.70.51.103 (HMS zum Abseilen)
213.103.134.177 (Umlenker)
  • Und
sed 's/\( [MK]\| [MK] .*\| \W.*\)$//' ersterstreich.txt > zweiterstreich.txt

Die Daten in zweiterstreich.txt sehen daraufhin in etwa folgendermaßen aus:

Merkel
80.140.102.176
80.140.102.176
Moolsan
80.140.108.198
80.145.197.83
Merkel
Merkel
Merkel
213.70.51.103
213.103.134.177
  • Schließlich
sort zweiterstreich.txt | uniq > ListeDerAutoren.txt

Die Daten in ListeDerAutoren.txt sehen daraufhin in etwa folgendermaßen aus:

80.140.102.176
80.140.108.198
80.145.197.83
213.70.51.103
213.103.134.177
Merkel
Moolsan

Unix-Gurus schreiben sich daraus ein Shell-Skript und pipen fröhlich vor sich hin. Ganz Harte können ja noch ein

sed ':a;/$/{N;s/\n/, /;b a}' ListeDerAutoren.txt > ListeDerAutorenEinzeilig.txt

machen. Dadurch erhält man die Autorenliste jeweils mit Komma getrennt.

Die Daten in ListeDerAutorenEinzeilig.txt sehen daraufhin in etwa folgendermaßen aus:

80.140.102.176, 80.140.108.198, 80.145.197.83, 213.70.51.103, 213.103.134.177, Merkel, Moolsan

Anzahl der Leerzeichen bei den Shell-Kommandos beachten! Computer können da kleinlich sein.

Sollte man auf die im Ergebnis enthaltenen IP-Editierungen keinen Wert legen, so können sie jetzt einfach in einem Editor gelöscht werden. Unter Windows sollte man WordPad anstatt des einfachen Editors verwenden, da hier sonst die Zeilenumbrüche falsch dargestellt werden könnten.

Aktivität der Einzelautoren

Bearbeiten

Es ist nicht gesagt, dass ein Autor, der häufiger in der Versionshistorie genannt wird, auch den größeren Beitrag zur Entstehung der Seite geleistet hat.

Möchte man dennoch die Anzahl der Editierungen eines bestimmten Autors erfahren, so kann dies aus der Datei zweiterstreich.txt des vorherigen Abschnittes bestimmt werden.

Dazu benutzt man folgendes Kommando in der Unix-Shell:

grep Merkel zweiterstreich.txt | nl | tail -1

Dabei steht 'Merkel' für den Autorennamen, der mich interessiert. Die Bildschirmausgabe ergibt im obigen Beispiel

4 Merkel

Also hat der Herr Merkel insgesamt 4 Editierungen am Dokument durchgeführt. Nicht gerade fleißig... :-) --Oliver Merkel 02:52, 19. Nov 2004 (UTC)

Aus der Datei zweiterstreich.txt kann mittels des folgenden PERL-Skriptes auch schnell eine komplette Übersicht aller Autoren in dieser Art erstellt werden:

#!/usr/bin/perl
#
# Zählt, wie häufig welche Zeile in der Datei zweiterstreich.txt enthalten ist.
# Die Häufigkeit des Vorkommens wird in der Ausgabe jeweils in der runden
# Klammer angegeben.
#
# Für MediaWiki Version 1.3.x
#
# (c) 11/2004, Oliver Merkel, Merkel.Oliver@web.de
#
# GNU GPL, GNU FDL
#
$ausgabe = "";
open(NAMEN, "sort zweiterstreich.txt | uniq |");
while(<NAMEN>){
  $zeile = $_;
  $zaehler = 0;
  open(ANZAHL, "<zweiterstreich.txt");
  while(<ANZAHL>){
    if ($zeile eq $_) { $zaehler ++ }
  }
  close(ANZAHL) or die "Die Autorennamen konnten nicht eingelesen werden.";
  chop($zeile);
  $ausgabe = $ausgabe."(".$zaehler.") ".$zeile.", ";
}
close(NAMEN) or die "Die Autorennamen konnten nicht eingelesen werden.";
chop($ausgabe);
chop($ausgabe);
print $ausgabe;

Die Bildschirmausgabe ergibt im obigen Beispiel

(2) 80.140.102.176, (1) 80.140.108.198, (1) 80.145.197.83, (1) 213.70.51.103, (1) 213.103.134.177, (4) Merkel, (1) Moolsan

Das Skript zählt hierbei, wie häufig welche Zeile in der Datei zweiterstreich.txt enthalten ist. Die Häufigkeit des Vorkommens wird in der Ausgabe jeweils in der runden Klammer angegeben.