Hilfe:Autorenliste generieren

Aus Wikibooks

Wechseln zu: Navigation, Suche

Hoch zum Lehrbuch
Wie man eine Seite verschiebt - Kapitel aufteilen - Englisches Wikibuch übersetzen - GFDL Material importieren - GFDL Material exportieren


Inhaltsverzeichnis


[Bearbeiten] Werkzeug auf Wikimedia Toolserver

Es werden hier zwei Möglichkeiten zum Erzeugen einer Autorenliste vorgestellt, wobei für die meisten Anwendungsfälle sicherlich das Werkzeug auf dem Wikimedia Toolserver vorzuziehen ist.

[Bearbeiten] Lizenzproblematik

Die Verwendung der GFDL als Lizenz 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 bis dahin 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.

[Bearbeiten] Autorennennung

Eine der Bestimmungen schreibt die Nennung der Autoren vor. In der Praxis wurde hier bestenfalls der Link auf die Versionsgeschichte angeführt. Dies ist jedoch unzureichend, da keine Gewähr besteht, dass der Artikel immer vorhanden sein wird. Besser ist es, die Autorenliste zum Exportzeitpunkt ebenfalls zu exportieren.

[Bearbeiten] Autorenliste generieren

Mittlerweile kann eine Autorenliste automatisch generiert werden. Ermöglicht wird das durch Duesentrieb's Contributers Tool auf dem Toolserver der Wikimedia Foundation. Die dort befindlichen Programme haben Zugriff auf die Datenbanken aller Projekte, was zahlreiche nützliche Werkzeuge ermöglicht.

Soll z.B. die Blender Dokumentation auf einer CD-ROM vertrieben werden, so ist in einem ersten Schritt für jede Seite des Buches die Autorenliste zu generieren. Wie in der Abbildung zu sehen, ist beim Export der Titelseite der Blender Dokumentation nur der Wikiseitenname, nicht aber die vollständige URL einzugeben. Die Ausgabe wird hier in einem Textformat erzeugt, welche sich im zweiten Schritt recht einfach mit den Autorenlisten der anderen Buchseiten zur Gesamtliste verarbeiten lassen lässt. Ob dadurch nun aber alle Bestimmungen der GFDL eingehalten worden sind, kann nicht garantiert werden.



Hier ist das Werkzeug zu erreichen.

[Bearbeiten] Unix

Die nachfolgenden Informationen sind für die Benutzung eines Unix-Betriebssystems oder eines Unix-Derivates wie Linux ausgelegt. Unter Windows kann das freie Cygwin installiert werden, um die gleichen Befehle so nutzen zu können.

[Bearbeiten] Saubere Liste von Autoren einer WikiMedia Wikiseite erhalten

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.

[Bearbeiten] Aktivität der Einzelautoren

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.

Persönliche Werkzeuge
Buch erstellen