Meeting 2024-11-08

From wiki
Jump to navigation Jump to search

Meeting 2024-10-30

Teilnehmer

  • Robert
  • Wolfgang

Agenda

  • Fragen
  • MUDCon Fall 2024

Fragen

  • Was passiert bei unterschiedlicher Version des Mediawiki?
  • Wie werden User migriert?

Was passiert bei unterschiedlicher Version des Mediawiki?

Das wikipush-Verfahren kopiert ja nur das Wiki Markup d.h. es geht darum ob das Zielwiki das gleiche Rendering in HTML unterstützt. Oft ist es sogar gewollt, dass sich das rendering ändert! Beispiel: es sollen andere Skins verwendet werden, oder es soll eine verbesserte Extension genutzt werden.

Wenn zunächst einmal volle Kompatibilität gewünscht ist, kommt es auf die Liste der extensions an. Diese ist normalerweise nur über Special:Version sichtbar. Beispiel: http://playground-mw.bitplan.com/Zeus/index.php?title=Special:Version siehe Abschnitt Installed Skins und Installed Extensions versus https://wiki.genealogy.net/Spezial:Version - Installierte Benutzeroberflächen/Installierte Erweiterungen

https://www.mediawiki.org/wiki/Extension:SimpleTable ist z.B. Archived und es wird Ersatz benötigt. https://www.mediawiki.org/wiki/Extension:UseResource ist z.B. unter https://www.wikidata.org/wiki/Q130533868 zu finden

https://github.com/WolfgangFahl/pymediawikidocker/blob/main/mwdocker/resources/extensions.yaml ist ein Format das Extensions so beschreibt, dass sie automatisch installiert werden können. Auf der MUDCon wurden weitere Werkzeuge vorgestellt, die ähnlich arbeiten, z.B. Canasta und Wikibase4Research

Wie werden User migriert?

  • Zunächst gar nicht - das Ziel der wikipush - Experimente ist lediglich den richtigen Satz von Extensions zu finden und zu entscheiden welche Seiten 1:1 erhalten bleiben bzw. verändert werden müssen.
  • Wenn die User "getrennt" migriert werden sollen muss die User-Tabelle aus dem SQL genutzt werden bzw. ein Single-Sign On Mechanismus - externe User Validation.

Migration

Übernahme von Templates installation neuer Templates

wikipush -l -s wiki -t zeus -p "Template:PageSequence"
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Template:PageSequence✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Template:Link"      
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Template:Link✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Template:Link"      
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Template:Link✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Property:Link target"
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Property:Link target✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Property:Link targetPage"
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Property:Link targetPage✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Property:Link targetUrl"
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Property:Link targetUrl✅
wf@fixit .mediawiki-japi % wikipush -l -s wiki -t zeus -p "Property:Link title"
copying 1 pages from wiki to zeus
1/1 ( 100%): copying ... Property:Link title✅

Auswerten von Templates im Source Wiki

wikiquery -s genwiki -q "[[Category:Aachen]]"  --template "Rückverweis"
wikiquery -s genwiki -q "[[Kategorie:Adressbuch_fertig]]"    
# Timeouts !!!
# daher
wikiquery -s gensmw -q "[[Category:AddressBook]]" --template AddressBook

Das Json lässt sich dann speichern und z.B. mit jq weiterverarbeiten siehe zB. https://www.devtoolsdaily.com/jq_playground/

{
         "image": "File:Cover Zw\u00f6lfst\u00e4dte-Adressbuch 1933.jpg",
         "title": "",
         "subtitle": "enthaltend die St\u00e4dte: Neustettin, Rummelsburg, Bad Polzin, Bublitz, Falkenburg, Jastrow, Schlochau, Tempelburg, Hammerstein, Ratzebuhr, B\u00e4rwalde (Pom.) und Baldenburg nach Einwohnerzahlen geordnet",
         "author": "Norddeutsche Presse",
         "year": "1933",
         "pageCount": "",
         "location": "RUMURGJO84LA",
         "publisher": "",
         "govSource": "source_1326366\n<!-- Informationen zur Bearbeitung im DES -->",
         "onlineSource": "{{BBC|849}} </br> {{MOB|BOOKID=0458643-1933|Kat=Lit}}",
         "des": "zwoelfstaedte_1933",
         "id": "Zw\u00f6lf-St\u00e4dte-Adressbuch_1933",
         "genwikiurl": "https://wiki.genealogy.net/Zw\u00f6lf-St\u00e4dte-Adressbuch_1933",
         "at": "PL/22/Miastko"
      }

Mit KI hilfe z.B: Erzeuge in jq script zur Umwandlung in eine github tabelle

jq -r '[
    "Field | Details",
    "--- | ---",
    "**Image** | \(.image)",
    "**Title** | \(.title)",
    "**Subtitle** | \(.subtitle)",
    "**Author** | \(.author)",
    "**Year** | \(.year)",
    "**Page Count** | \(.pageCount)",
    "**Location** | \(.location)",
    "**Publisher** | \(.publisher)",
    "**Gov Source** | \(.govSource | gsub("\n"; "<br>"))",
    "**Online Source** | \(.onlineSource | gsub("</br>"; "<br>"))",
    "**DES** | \(.des)",
    "**ID** | \(.id)",
    "**GenWiki URL** | [\(.id)](\(.genwikiurl))",
    "**AT** | \(.at)"
] | join("\n")' data.json

MUDCon Fall 2024