Dieser Benutzer ist ein Bot mit gültigem Bot-Flag. Er wird von Cactus26 betrieben.

Auf Basis des DotNetWikiBot-Frameworks habe ich verschiedene Bot-Programme implementiert, die situationsbedingt eingesetzt werden können.

Allgemeine Bots

Die folgenden Bot-Programme sind für den konkreten Anwendungsfall parametrisierbar.

WikiBotFindRepl

Suchen und Ersetzten in Artikeln, mit regulären Ausdrücken, mehrere Ausdrücke in einem Durchgang verarbeitbar, ggf. nur Suchen.

Parameter:

  1. Name einer Datei, die zeilenweise die zu bearbeitenden Artikel enthält
  2. Name der Datei, die zeilenweise Suchtext, Ersetztungstext und Editkommentar enthält, durch Tab getrennt. Wenn nur gesucht werden soll (Option /findonly) muss nur eine Spalte (Suchtext) angegeben werden.

B.a.w. wird der Suchstring immer als regulärer Ausdruck interpretiert (insbesondere markierbar mit "(?<name>xxxxx)"), der Ersetzungsstring kann Platzhalter der Form "${name}" enthalten, um die Stellen zu kennzeichnen, wo welcher ursprüngliche Text platziert werden soll (weiteres siehe .Net "Sprachelemente für reguläre Ausdrücke").

Wenn die Datei mit den zu suchenden Ausdrücken ganz leer ist, wird in allen angegebenen Dateien ein Nulledit durchgeführt.

Ersetzen eines Links auf einen Artikel.

Parameter:

  1. Name einer Datei, die zeilenweise die zu bearbeitenden Artikel enthält
  2. Alter Link
  3. Neue Link

Alter und neuer Link können dabei in Quotes gesetzt werden. Umlaute sind möglich. Es wird sichergestellt, dass der dargestellte Text derselbe bleibt. Dabei wird auch unterstützt, dass ein bisher angegebener Alternativtext sich erübrigt.

Der einzige Fall, indem sich der dargestellte Text ändert, ist bislang, wenn ein Anchor angegeben war, aber kein Alternativtext (z.B. [[AlterLink#Anchor]] wird zu [[NeuerLink#Anchor]] und nicht zu [[NeuerLink#Anchor|AlterLink#Anchor]].

WikiBotChgTplPrm

Ersetzen von einem oder mehreren Parameterbezeichnern einer Vorlage in den Vorlagenverwendungen. Es können damit auch Parameter entfernt werden (neuer Name leer).

Parameter:

  1. Name einer Datei, die zeilenweise die zu bearbeitenden Artikel enthält
  2. Name der Vorlage
  3. Name der Datei, die zeilenweise die alten und neuen Parameternamen enthält (durch Tab. getrennt)

Die Vorlagenkodierung wird frisch formatiert. Grundsätzlich wird vor und nach dem Gleichheitszeichen ein Blank verwendet. Die Reihenfolge der Parameter bleibt unverändert. Dann werden zwei Fälle unterschieden: Wenn die Vorlage einzeilig war, bleibt sie dies. War sie mehrzeilig (ein Linefeed innerhalb der Codierung), wird ein Parameter pro Zeile dargestellt, zudem wird versucht die Gleichheitszeichen bündig anzuordnen.

Geschachtelte Vorlagen werden unterstützt.

WikiBotSetTplPrm

Explizites Setzen von Vorlagenparametern auf tabellarisch vorgegebene Werte. Es kann sich hierbei um zusätzliche oder um anzupassende Vorlagenparameter handeln. Die einzuhaltende Reihenfolge der Angabe der Vorlagenparameter kann optional definiert werden (für alle Parameter). Es ist auch möglich, keinen Parameter zu verändern und lediglich die Reihenfolge der Parameter entsprechend dieser Vorgabe anzupassen. Auch die Vorlage selbst kann im Rahmen der Parameteranpassung gewechselt werden, z.B. bei Umstellung auf eine neue Vorlage.

Insbesondere in Verbindung mit WikiBotGetTplPrm (siehe unten) ein wirkungsvolles Werkzeug, dass eine "Offline-Bearbeitung" aller Vorlagenaufrufe einer Vorlage in einer Textdatei oder Tabellenkalkulation ermöglicht.

Parameter:

  1. Name der (bisherigen) Vorlage
  2. Name der Definitionsdatei mit den zu setzenden Parameterwerten. Diese hat folgenden Aufbau (Spalten innerhalb einer Zeile jeweils durch Tab getrennt):
    • Erste Zeile: Name der Vorlage (ggf. abweichend von obigem Parameter), gefolgt von den Namen der zu setzenden Parameter
    • Folgende Zeilen: Lemma des Artikels gefolgt von den zu setzenden Parameterwerten entsprechend der Reihenfolge in der ersten Zeile
      Ist eine Vorlage mehrfach im Artikel enthalten, ist für die weiteren Verwendungen an das Lemma (erste Spalte) die Nummer des Auftretens angehängt, durch das Nummernzeichen getrennt (nicht für das erste Auftreten, also z.B. "Lemma", "Lemma#2", "Lemma#3"). Eine Linefeed und Tab[1] im Parameterwert sind durch "|LF|" bzw. "|TAB|" angebbar. Wenn der Parameterwert "|NULL|" entspricht, wird der Parameter ganz aus der Vorlage entfernt (also nicht leer gesetzt).
  3. Name der Datei zur Festlegung der Parameterreihenfolge (optional). Enthält zeilenweise die Parameternamen in der einzuhaltenden Reihenfolge

Spezielle Optionen:

  • /pagelist:<Dateiname>
    Name einer Datei, die zeilenweise die zu bearbeitenden Artikel (Seiten) enthält. Wird die Option nicht angegeben, werden alle Seiten bearbeitet, die in der Definitionsdatei (erste Spalte) eingetragen sind.

Das Wirkung des Bot auf die Formatierung der Vorlagenparametrisierung entspricht WikiBotChgTplPrm (siehe oben). Geschachtelte Vorlagen werden ebenfalls unterstützt.

Wenn für einen Parameter kein Inhalt angegeben ist, wird er nicht entfernt, sondern leer gesetzt (zum Entfernen eines Parameters ist der Wert "|NULL|" zu verwenden, s.o.). Bisherige Vorlagenparameter bleiben unangetastet, wenn sie nicht als Spalte in der Definitionsdatei existieren. Wird die Parameterreihenfolge nicht spezifiziert, wird die im Artikel bestehende Reihefolge der Parameter nicht verändert. Ein zusätzlicher in der Definitionsdatei angegebener Parameter wird am Ende ergänzt. Wird die einzuhaltende Parameterreihenfolge spezifiziert, werden Parameter protokolliert, die in der Reihenfolgendefinition nicht auftauchen, diese werden dann ans Ende der Vorlagenparameter platziert.

WikiBotGetTplPrm

Tabellarische Auswertung aller Parameterangaben für eine Vorlage in einer Liste[2] (Gegenstück zu WikiBotSetTplPrm). Welche Parameter ausgewertet werden, kann angegeben werden. Wird es nicht angegeben, werden alle Parameter ausgewertet (auf diese Weise sind Fälle erkennbar, wenn ein Vorlagenparameter falsch geschrieben wurde). Parameter:

  1. Name der Vorlage
  2. Name der Ausgabedatei. Das Format entspricht exakt WikiBotSetTplPrm (siehe oben). Eine so erstellte Datei kann direkt als Definitionsdatei für WikiBotSetTplPrm werden.
  3. Name der Datei mit Liste der auszuwertenden Parameter (optional). Enthält zeilenweise die auszuwertenden Parameter. Damit kann die Zahl der ausgegebenen Parameter eingeschränkt werden. Die Spaltenreihenfolge der Parameters orientiert sich bei Angabe ebenfalls an dieser Vorgabe.

Spezielle Optionen:

  • /pagelist:<Dateiname>
    Name einer Datei, die zeilenweise die zu bearbeitenden Artikel (Seiten) enthält. Wird die Option nicht angegeben, werden alle die Vorlage verwendenden Seiten über das API ermittelt.

Geschachtelte Vorlagen werden ebenfalls unterstützt.

Spezielle Bots

Prüft und korrigiert die Systematik der in der Vorlage:Taxobox eingetragenen höheren Taxa anhand einer zentralen (redundanzfreien) Definitionsseite. Der Bot eignet sich auch für den dauerhaften Einsatz, um die Konsistenz der Systematik langfristig sicherzustellen. Implementiert wurde der Bot, um die Systematik des Pflanzenreichs auf den neuesten Stand zu bringen (siehe hier, die zentrale Definitionsseite findet sich hier). Der Bot wäre in der Lage, ein solches Verfahren auch auf andere Bereiche der Lebewesen anzuwenden.

Einweg-Bots

Die folgenden Bots wurden für ein konkretes Problem primär für den einmaligen Gebrauch implementiert:

  • WikiBotAllmusic (2010/10)
    Die URLs auf der Seite www.allmusic.com wurden umgestellt. Das bisher bei Nutzung der Vorlage:Allmusic als Parameter angegebene URL-Fragment war nun ungültig, der alte Link wurde (bisher) aber auf der Allmusic-Seite automatisch weitergeleitet, so dass durch Aufruf des alten Links der neue ermittelbar war (eine direkte Ermittlung des neuen Links aus dem alten war nicht möglich). Zudem existierten viele direkte Weblinks, die ebenfalls transformiert werden mussten und dabei gleich auf Vorlagenverwendung umgestellt wurden.
  • WikiBotFilaProfil (2010/06)
    Bestehende Weblinks zur Wrestling-Datenbank des IAT wurden auf die neue Vorlage:FilaProfil umgestellt und damit korrigiert.
  • WikiBotFaunaEur (2010/02)
    Diverses rund um Weblinks zur Systematik von Fauna Europaea (http://www.faunaeur.org). Auslöser war, dass Fauna Europaea die IDs verändert hat (2010/01, zunächst teilweise). Zunächst ging es darum, bestehende Weblinks auf Vorlage umzustellen (Modus MigWeb). Hierzu war der wissenschaftliche Name zu ermitteln. Dieser wurde entweder von der Fauna-Seite geholt, wenn der Weblink nicht funktionierte, sonst wurde versucht, ihn aus der Taxobox zu ermitteln, was aber nur eindeutig ist, wenn der Artikel nur einen Weblink zur Fauna-Seite hatte. Nachdem die fehlenden wissenschaftlichen Namen manuell ergänzt waren, wurde überprüft, ob der angegebene wissenschaftliche Name zur verlinkten Fauna-Seite passt (falls der Link noch funktionierte). Ungütige Links wurden dann korrigiert, sofern dies möglich war (Modus CheckID). Die Implementierung erfolgte in der Weise, dass ein späterer Einsatz zur wiederholten Verifikation der Weblinks möglich ist. Grund: Nach Aussage von Fauna Eruopaea sind die Umstellungen noch im Gange und erst nach dem Sommer 2010 abgeschlossen).
  • WikiBotMigInfoboxUSA (2009/12)
    Diverse Umstellungen für Vorlage:Infobox Ort in den Vereinigten Staaten:
    • Eine County-Liste im Parameter "County" wurde auf mehrere Parameter ("County2" etc) aufgeteilt. County ist dabei nun "pur" (unverlinkt, ohne Klammerlemma) anzugeben, damit der Prm. für eine automatische Kategorisierung verwendet werden kann.
    • Der Parameter Website ist nun "pur" anzugeben
    • Automatische durch die Vorlage generierte Kategorien für Bundesstaat und County waren zu entfernen, falls sie explizit angegeben waren.
    • Im ersten Schritt war zu protokollieren, welcher County wie oft verwendet wird (d.h. wie viele Ortsartikel existieren).
    • Fehlende County-Kategorien mit mehr als 10 Orts-Artikeln wurden angelegt. Die Liste der anzulegenden Kats. war aus dem Logfile des 1. Schritts und Catscan (existierende Cats) zu gewinnen. Übergeordnete Kategorien waren ebenfalls anzulegen, falls diese fehlten.
  • WikiBotTaxobox (2009/11)
    Abhandlung spezieller Belange im Kontext der Vorlage:Taxobox. Bislang nur die Abarbeitung der Wartungsliste für Lemmas, die wissenschaftlichen Namen entsprechen und Klammerlemmas sind.
  • WikiBotMigInfoboxOrtTR (2009/10)
    Die Vorlage:Infobox Ort in der Türkei wurde umgestellt, es ging dabei primär um eine saubere Trennung der Parameter für Ort und Landkreis, die in der Türkei vorwiegend in einem Artikel abgehandelt werden. Für Einwohner- und Flächendaten war zu entscheiden, ob diese sich auf den Landkreis oder auf den Ort beziehen. Hierzu wurden Einwohner- und Flächendaten aus verschiedenen Quellen ausgewertet, diese Quellen wurden auch verwendet, um fehlende Daten ggf. zu ergänzen.
  • WikiBotMigIUCN (2009/04)
    Die Parametrisierung der Vorlage:IUCN wurde grundlegend umgestellt, der Bot setzte diese Anpassung um.
  • WikiBotFixIUCN (2009/03)
    Nach Umstellung der IUCN-Seite (www.iucnredlist.org) im Oktober 2008 waren die IDs aller Vögel angepasst worden. Der Bot ermittelte für alle Verwendungen der Vorlage:IUCN bei Vögeln über die Suchfunktion der IUCN-Seite die neue ID und setzte sie in die Vorlage ein.

Anmerkungen

  1. Wozu Tab gut sein soll, ist unklar, es gibt aber tatsächlich Artikel, bei denen ein Tab im Parameterwert enthalten ist und damit WikiBotGetTplPrm mit diesen umgehen kann, braucht es eine Regel.
  2. Die Ausgabe ähnelt der, die mit dem Templatetiger zu erhalten ist. Im Unterschied zum Templatetiger basiert die Ausgabe aber nicht auf einem alten Datenbankstand, außerdem kann die Menge der ausgewerteten Parameter (die Spalten) eingeschränkt werden. Die Umsetzung von Linefeeds ist auch anders gelöst, zudem wird leerer Inhalt und keine Angabe unterschieden.