Manual:Pywikibot/PAWS/de


 * Siehe PAWS für weitere Details.

Dieses Dokument bietet eine schnelle, interaktive Übersicht von  mithilfe eines Notebooks, das auf der Wikimedia Cloud Services-Umgebung unter Verwendung von PAWS gehostet wird.



Erstellen eines Wikimedia-Benutzerkontos
Um dieser schnellen Demonstration zu folgen, benötigst du lediglich ein Benutzerkonto bei einem Wikipedia/Wikimedia-Projekt. Benutze Special:CreateAccount, um eines anzulegen.

Wenn du ein Benutzerkonto erstellt hast, besuchen bitte https://test.wikipedia.org/ und stelle sicher, dass dein Benutzername in der oberen rechten Ecke auftaucht.

Wenn du ein neuer Wikimedia-Benutzer bist, logge dich mit deinem Konto auf Meta-Wiki, Wikipedia, Wikidata oder Wikimedia Commons ein. Lese und lösche in jedem dieser Projekte alle ausstehenden Nachrichten (ganz oben).



Einschreiben in ein Notebook
Um ein gehostetes Notebook zu starten, besuche bitte https://hub.paws.wmcloud.org/hub

Drücke auf "Sign in with MediaWiki" und anschließend auf "Allow", wenn du um die Erlaubnis für "Use OAuth for Authentication" gebeten wirst. Beim ersten Besuch von PAWS musst du einen Server erstellen. Klicke auf den grünen "Start my Server"-Button. Es ist normal, wenn es ein paar Minuten dauert, bis der neue Server hochgefahren ist.

Wenn dies abgeschlossen ist, wirst du zu einer URL umgeleitet, die wie https://paws.wmflabs.org/paws/user/ /tree aussieht.



Eine Konsole starten
Um eine neue interaktive Konsole zu öffnen,
 * 1) Gehe zu deiner PAWS Startseite
 * 2) Klicke auf "New" auf der rechten Seite
 * 3) Wähle "Terminal"
 * 4) Klicke: File > New > Terminal

Das wird ein neues Fenster mit der Linux-Eingabeaufforderung "$" öffnen.

Diese Konsole ist kein Emulator. Es ist eine echte Bash Shell, wie sie Teil einer Linux-Installation basierend auf einem Docker-Container ist. Also kann jeder Bash-Befehl und jeder auf Linux verfügbare und installierte Befehl verwendet werden.

Um einige der verfügbaren Befehle zu sehen, verwende.

To see them all, press TAB twice.



Im Wiki einloggen
Dies wird dein Konto auf dem Server einrichten und dir erlauben, dich von der Kommandozeile aus einzuloggen. Der folgende Befehl sollte bestätigen, dass du sich auf https://test.wikipedia.org/ einloggen kannst. Da OAuth verwendet wird, wird kein Passwort benötigt.

Du kannst Pywikibot mit einem anderen Wiki verbinden, indem du eine Datei namens user-config.py in deinem  directory  erstellst und die Variablen mylang und family hinzufügst:



Eine Seite erstellen
Um eine Seite zu erstellen, gib den folgenden Befehl in die Konsole ein, wobei du " " mit deinem Benutzernamen ersetzen und anschließend "Y" drücken musst, wenn du gefragt wirst, ob deine Änderungen übernommen werden sollen:

Nun hast du das Wiki bearbeitet. Schau dir deine Änderungen an, indem du https://test.wikipedia.org/wiki/User_talk: in deinem Browser öffnest.

Mit der Befehlszeilenoption '-help' kannst du mehr über jedes dieser Skripte erfahren.



Eine Seite holen
Das Holen vieler Seiten wird durch den "listpages"-Befehl ermöglicht.

Um die Inhalte der erstellten Seite anzuzeigen, gib folgenden Befehl ein:

Wenn du jetzt  laufen lässt, sollte die gespeicherte Seite sichtbar sein.



Ein echtes Skriptbeispiel
Wenn ein Website, die in der Wikipedia verwendet wird, ihre URL ändert, veralten die Links in der Wikipedia und werden möglicherweise auch unzugänglich, wenn die Website nicht von den alten URLs auf die neuen URLs umlenkt. So hat beispielsweise die Encyclopedia Britannica (EB) ihre Links geändert und die Seiten von http://www.britannica.com/EBchecked/media/ auf http://www.britannica.com/topic/[topic name]/images-videos/* umgestellt. Du findest eine Liste der Verwendungen der alten URL in der englischen Wikipedia unter w:Special:LinkSearch/http://www.britannica.com/EBchecked/media. All diese Links manuell zu aktualiseren wäre sehr zeitaufwändig. Glücklicherweise hat die EB Weiterleitungen von den alten URLs zu den neuen URLs eingerichtet, so dass dies nicht sofort behoben werden muss.

Ein einfacheres Beispiel wäre, dass das englische Wikipedia zurzeit Links zu http://britannica.com/EBchecked/ statt http://www.britannica.com/EBchecked/ enthält; es fehlt also das "www." als Subdomain in der URL.

Es gibt derzeit 14 Fälle in der englischen Wikipedia: w:Special:LinkSearch/http://britannica.com/EBchecked/

Wikipedia hat dieses Problem auch in anderen Sprachen. Zum Beispiel gibt es einen Fall in der deutschen Wikipedia: w:de:Spezial:Weblinksuche/http://britannica.com/EBchecked/

Um diese Links zu reparieren, können wir das Pywikibot--Skript verwenden. In dieser Demonstration werden wir das "-simulate"-Argument verwenden, um keine echten Änderungen im Wiki vorzunehmen, da es strenge Regeln für das automatisierte Bearbeiten beim englischen Wikipedia gibt.

Zuerst betrachten wir alle Seiten, die zu http://britannica.com/EBchecked/ verlinken.

Nun schauen wir, ob die Seiten tatsächlich die wörtliche URL enthalten, also keine Vorlage verwenden.

Nun nutzen wir "replace", um das fehlende "www." hinzuzufügen.

In PAWS wird bei jeder Konsole, die farbliche Darstellungen unterstützt, der Unterschied grün dargestellt, in unserem Fall das "www.", was uns das Finden der Änderungen erleichtert.



In Pywikbot
Als nächstes werden wir die PAWS-Python-Sitzung verwenden.


 * 1) Gehe zur Startseite home
 * 2) Klicken auf "New" auf der rechten Seite
 * 3) Wähle 'Python 3' aus

Dies wird ein neues Fenster öffnen.

Gib folgendes in die Textbox ein und wähle im "Cell"-Menü den Befehl "Run" (oder alternativ Umschalt+Eingabe).

Eine neue Textbox wird darunter erscheinen. Starte folgendes, um ein APISite-Objekt zu erschaffen, das mit https://test.wikipedia.org/ verbunden ist:

Beschreibe "site", indem du es in die neue Textbox eingibst und "Run" wählst.

Es sollte folgendes anzeigen

Out[3]: APISite("test", "wikipedia")

Erzeuge ein Seitenobjekt:

Prüfe durch Aufrufen, ob es vorhanden ist:

Es sollte folgendes ausgeben

VERBOSE:pywiki:Found 1 wikipedia:test processes running, including this one. Out[5]: True

Zeige den Text auf der Seite:

Ändere den Seitentext in dem Objekt:

Speichere die Seite im Wiki:

Die Antwort sollte folgendermaßen lauten:

Das interaktive Python 3-Notbook erlaubt es, viele Befehle zusammen auszuführen. Der obere Text kann auch in eine einzige Textbox eingegeben werden.

Der Log der interaktiven Python-Sitzung kann für zukünftige Nachfrage gespeichert oder heruntergeladen werden.



Auf die Online-Dokumentation in PAWS zugreifen
Die Pywikibot-Dokumentation kann unter https://doc.wikimedia.org/pywikibot/ gefunden werden. Sie basiert hauptsächlich auf docstrings, die im interaktiven Python 3-Notebook mithilfe der eingebauten Funktion help geladen werden können.

Um zum Beispiel die Argumente für die Save-Methode oben anzusehen, führe entweder aus:

or



Pywikibot-Skripte bearbeiten
Die Pywikibot-Bibliothek und die Skripte befinden sich in /srv/paws und sind nur lesbar. Die installierte Pywikibot-Bibliothek kann nicht in PAWS bearbeitet werden.

Skripte können nach dem Kopieren in Ihr PAWS home modifiziert werden.

Um eine modifizierte Datei "checkimages.py" zu bearbeiten:
 * 1) Geben Sie in der Konsole "cp /srv/pwb/scripts/checkimages.py ~" ein
 * 2) Klicken Sie auf Ihre Datei "checkimages.py" in Ihrem PAWS home
 * 3) Verändern sie den Quelltext und speichern Sie Ihre Modifikationen.
 * 4) Geben Sie in der Konsole "pwb.py ~/checkimages.py -simulate" ein

Edit the code -- for instance, just after the  code on line 1775, add a new line 1776 that will print out your name: (If no '-limit:x' defined, the program would run until all images checked, it may take long time.)
 * 1) In the terminal, enter
 * 1) In a browser, go to your PAWS home and click on the file.
 * 1) In the browser, you can edit the file.
 * 1) In the editing interface, use the File menu and click Save to save your modifications.
 * 1) In the terminal, enter



Siehe auch

 * PAWS/PAWS and Pywikibot
 * Using Pywikibot with PAWS notebook based tutorial - A tutorial that helps users get started with using Pywikibot and PAWS
 * Example notebooks using Pywikibot - A list of notebooks hosted on PAWS that use Pywikibot
 * PAWS cheatsheet by one user (e.g. about API and database access)
 * Source code on GitHub