Benutzer:JuethoBot/ Interwiki-Links
Auf diesen Seiten stehen Links, mit denen in anderen Projekten auf Wikibooks-Seiten (überwiegend Bücher und Kapitel) verwiesen wird.
Wikipedia (deutsch) • Wikiversity (deutsch) • Wikibooks (englisch) • Beschreibung
Beschreibung
[Bearbeiten]Die Funktion „Links auf de-WB“ von Benutzer:JuethoBot registriert, welche Links von de-Wikipedia, de-Wikiversity und en-Wikibooks auf de-Wikibooks verweisen. (Auch weitere WMF-Projekte, in denen auf de-WB verwiesen wird, können einbezogen werden.) Diese Links werden in den Unterseiten (siehe Navigation oben) aufgelistet: links die Seite im „externen“ Projekt, rechts die Seite auf de-Wikibooks.
Mithilfe dieser Listen können bei Weiterleitungen oder Löschungen die ursprünglichen Links aktualisiert werden.
Hinweis: Die folgenden Punkte – WMF-Projekte, Suchbegriffe, ignorierte Namensräume und Links – können relativ problemlos erweitert werden. Bitte notiert Vorschläge auf der Diskussionsseite.
Quellen
[Bearbeiten]Wikimedia stellt etwa monatlich den vollständigen Datenbestand als xml-Dateien zur Verfügung. Über den jeweiligen Link ist eine passende Datei auszuwählen, vorzugsweise eine der Varianten "All pages, current versions only" (sofern vorhanden) oder "Recombine all pages, current versions only":
Kürzel (Link) | Projekt | Dateigrößen (komprimiert – extrahiert) | Seitenzahl |
---|---|---|---|
dewiki | de-Wikipedia | 5,3 GB – 22,5 GB | etwa 5 Mio. |
dewikiversity | de-Wikiversity | 24,5 MB – 130 MB | etwa 57.000 |
enwikibooks | en-Wikibooks | 153,5 MB – 750 MB | etwa 180.000 |
Es handelt sich um xml-Dateien, die mit dem Programm bzip2 komprimiert wurden und mit bunzip2
zu extrahieren sind.
Arbeitsweise
[Bearbeiten]Das Programm untersucht grundsätzlich alle Seiten: Auch auf Diskussionsseiten und in Archiven können sinnvolle Links vorhanden sein, die bei Bedarf geändert werden sollten. Nicht berücksichtigt wird der Namensraum Datei und außerdem einzelne sehr große Seiten, die unwichtig sind:
- w:Benutzer:Cäsium137/NGC IC (etwa 2 MB Wiki-Quelltext)
Aus praktischen Gründen wird nicht die xml-Struktur ausgewertet (dazu müsste eine Datei komplett vom Arbeitsspeicher verarbeitet werden), sondern eine Datei wird zeilenweise verarbeitet:
- Bei jeder Seite wird zunächst der gesamte Quelltext gelesen (bei sehr großen Seiten in Abschnitten von etwa 100 kB).
- Dann wird der Quelltext nach Begriffen durchsucht, die Links auf de-WB enthalten können (siehe den nächsten Abschnitt).
- Sofern vorhanden, wird der betreffende Link auf de-WB registriert; einzelne Links werden ignoriert (siehe den übernächsten Abschnitt). Manche Links sind genauer zu prüfen.
- Schließlich werden alle Kombinationen (Seitenname und vorhandene Links) sortiert und so gespeichert, dass sie als sortierbare Tabelle hochgeladen werden kann.
Suchbegriffe
[Bearbeiten]Da Vorlagen in den verschiedenen Projekten unterschiedlich definiert und genutzt werden, muss bei den Begriffen unterschieden werden. In allen externen Projekten wird nach möglichen Internet-Adressen gesucht:
//de.wikibooks.org/wiki/
– die normale Struktur einer Adresse[1]//de.wikibooks.org/w/index.php?title=
– eine erweiterte Adresse[[b:
– ein „normaler“ Interwiki-Link (sofern ein anderes Sprachkürzel alsde:
folgt, wird der Link ignoriert)[[:de:b:
– ein Interwiki-Link einschließlich Sprachkürzel
In de-Wikipedia wird außerdem gesucht:
{{Wikibooks|
– nach der Vorlage, die vor allem in den Abschnitten „Siehe auch“ vorkommt
In de-Wikiversity wird außerdem gesucht:
{{B|
sowie{{b|
– nach einer einfachen Vorlage für Fließtext{{Wikibook|
sowie{{Wikibooks|
– nach einer erweiterten Vorlage
In en-Wikibooks kann auf das Kürzel "b" verzichtet werden, deshalb wird außerdem gesucht:
[[:de:
– als Interwiki-Link nur mit Sprachkürzel[[de:
– als Link für die Rubrik „in anderen Sprachen“
In folgenden Situationen hat der gefundene Suchbegriff eine andere Bedeutung und wird deshalb nicht ausgewertet:
- Wenn unmittelbar davor
<nowiki>
steht, ist der Link als ungültig markiert; meistens handelt es sich um ein Beispiel (wie bei Vorlagen). - Wenn bei der Suche nicht nur
{{b
gefunden wird, sondern tatsächlich{{{b
, dann handelt es sich um einen Vorlagen-Parameter und nicht um einen Link nach de-WB. - Wenn unmittelbar danach etwas wie
|{{
folgt, wird nicht auf eine bestimmte Seite verwiesen.
In allen anderen Fällen wird der danach folgende Textteil bis zu einem möglichen Trennzeichen als Name der Seite bei de-WB interpretiert, auf die verwiesen wird.
Ignorierte Links
[Bearbeiten]Folgende Treffer werden nicht als Link nach de-WB registriert:
- Ein Eintrag wie
[[b:abc:Xxx]]
verweist auf Wikibooks der Spracheabc
. - Die Hauptseite und das Wikipedia-Lehrbuch werden sich vermutlich niemals ändern, also müssen Links darauf nicht notiert werden.
- Bei Links auf eine Spezialseite handelt es sich üblicherweise um spezielle Aufrufe; Änderungen eines Seitentitels auf de-WB dürften keine direkten Auswirkungen haben.
- Auch Benutzernamen ändern sich fast nie; also können Links auf eine Benutzerseite ignoriert werden.
Weitere Hinweise
[Bearbeiten]Vorlagen zur Darstellung
[Bearbeiten]- Benutzer:JuethoBot/ Interwiki-Links/ Navigation – Teil des Seitenkopfs zum Wechsel zwischen den Listen
- Benutzer:JuethoBot/ Interwiki-Links/ Seitenkopf – Vorspann mit Erläuterungen, TOC und Kopf der sortierten Tabelle
- Benutzer:JuethoBot/ Interwiki-Links/ Zeile – einzelne Zeile der Tabelle (als Parameter werden die einzelnen Bestandteile einfacher automatisch bestimmt)
- Benutzer:JuethoBot/ Interwiki-Links/ Seitenfuß – Abschluss der Tabelle
Ausblick und Alternativen
[Bearbeiten]Folgende Ergänzungen sind möglich:
- Listen aus weiteren WMF-Projekten erzeugen; bitte dazu auf der Diskussionsseite das Projekt und ein paar Beispiele vorhandener Links angeben.
- RegEx müsste die Prüfung vereinfachen und beschleunigen. Dafür sind meine RegEx-Kenntnisse aber noch nicht gut genug.
- Archiv-Seiten könnten in beiden Spalten ignoriert werden. Da aber die Bedeutung der Archiv-Einträge nicht automatisch beurteilt werden kann und es immer wieder einmal sinnvolle Verweise gibt, habe ich mich entschlossen, lieber zu viel als zu wenig Links zu berücksichtigen.
Nicht vorhandene Seiten
[Bearbeiten]Wikipedia wünscht, dass Diskussionsseiten und Archive nicht nachträglich geändert werden. Alle diese Seiten (z.B. WP-Löschdiskussionen oder Vorschläge, einen WP-Artikel als Wikibook fortzuführen) fehlen deshalb in der Aufstellung.
Die Vielzahl „roter Links“ sind (neben Programmierfehlern) auf verschiedene Gründe zurückzuführen:
- Schreibfehler im externen Projekt
- nicht durchgeführte Bearbeitung im externen Projekt bei Löschungen auf de-WB
- Beispiele, bei denen
<nowiki>
fehlt oder nicht erkannt wurde
In allen diesen Fällen empfiehlt es sich, nach und nach im externen Projekt aufzuräumen. Weil es verschiedene Gründe für die Fehler gibt, kann das sinnvollerweise nur manuell in mehreren Schritten erledigt werden:
- Suche über den roten Link in der rechten Spalte, ob es sich um eine mehrfache Weiterleitung handelt, ob es eine Seite mit ähnlicher Schreibweise gibt oder ob die Seite gelöscht wurde. Es ist keine komplizierte Suche notwendig, sondern die Links in den Logbüchern und die Direktsuche rechts oben führen eigentlich immer zum Ziel.
- Korrigiere über den Link in der linken Spalte den Wikipedia-Eintrag: Falsche Weiterleitungen oder Schreibfehler sind zu berichtigen – Zusammenfassung: "Linkfix nach Änderung bei Wikibooks". Löschungen sind zu entfernen – Zusammenfassung: "Buch wurde bei Wikibooks gelöscht".
- Bearbeite den Eintrag in der rechten Spalte: Notiere bei Weiterleitungen oder Aktualisierung das richtige Buch oder Kapitel; nach einer Löschung ist die ganze Tabellenzeile zu entfernen.
Vorhandene Fehler
[Bearbeiten]Ähnlich wie bei MichaelFreyTool enthalten die Listen Fehler:
- Auskommentierte Links und Vorlagen werden in vielen Fällen nicht also solche erkannt.
- Artikeltext und Bearbeitungskommentare werden nicht unterschieden.
- Die Software findet nur das, was sie sucht, also bestimmte Zeichenfolgen, die auf einen Link hindeuten. Nicht erfasste Vorlagen werden auch nicht gefunden.
Anmerkung
[Bearbeiten]- ↑ MichaelFreyTool hatte dies nicht ausgewertet, weil dafür w:Spezial:Weblink-Suche zur Verfügung steht. Mir geht es eher um eine möglichst vollständige Liste der Links.