Wie kann ich herausfinden, wer einen bestimmten Abschnitt eines Artikels in Wikipedia geschrieben hat?

14

Versionskontrollsysteme nennen diese Funktion normalerweise "Jemanden beschuldigen". Für jede Zeile wird angezeigt, wer sie wann geändert hat.

Update: Ich suche auch nach einer Lösung für Artikel mit Tausenden von Bearbeitungen (dh das Navigieren im Versionsverlauf und das Überprüfen jeder einzelnen ist nicht praktikabel).

Sinnvoll
quelle
1
Spezifische Anweisungen zur Verwendung von WikiBlame (um herauszufinden, wer eine bestimmte Phrase geschrieben hat) finden Sie hier: webapps.stackexchange.com/questions/35906/…
Anderson Green

Antworten:

4

Wenn Sie auf den View HistoryLink für einen Artikel klicken, sehen Sie die Liste der Änderungen, die an dem Artikel vorgenommen wurden, an welchem ​​Datum und von wem. Eine kurze Zusammenfassung der Änderungsbeschreibung wird ebenfalls angezeigt. Sie können dann auf die Compare selected versionSchaltfläche klicken , um den Text zu vergleichen.

Leider ist mir keine Beschuldigungsfunktion bekannt , mit der Sie direkt sehen können, wer die Änderungen an einer bestimmten Zeile, einem bestimmten Satz oder einem bestimmten Absatz vorgenommen hat.

BEARBEITEN: Vielleicht möchten Sie Greg Hewills Website besuchen , er arbeitet (anscheinend) gerade an einer solchen Schuld-Funktion.

LBuschkin
quelle
Dies ist einfach für kurze Artikel. Wenn Sie jedoch einen Artikel mit Hunderten oder Tausenden von Bearbeitungen haben, wird es viel schwieriger. Ich suche das Gegenteil. Sie geben eine Zeile ein und sie teilt Ihnen den Benutzer mit.
Sinnvolle
Dieser Link, den Sie gepostet haben, ist genau das, wonach ich gesucht habe.
Sinnvolle
Ich bin froh, dass Sie gefunden haben, was Sie brauchten: D
LBushkin
0

Klicken Sie dazu "View History"in der oberen rechten Ecke jedes Wikipedia-Artikels auf. Dort finden Sie eine Liste der Revisionen eines Artikels. Wenn Sie von jedem Benutzer speziell festgelegt werden möchten, können Sie "cur"neben jeder Revision auf klicken , und Wikipedia hebt hervor, was geändert wurde.

Oren Hizkiya
quelle
Ich habe die Frage aktualisiert, die erklärt, warum diese Methode für Artikel mit Tausenden von Versionen nicht geeignet ist.
Sinnvolle
Es scheint, dass die Antwort von OpenBSDWiki dann richtig ist. Suchen Sie das nicht?
Oren Hizkiya
0

Eine Möglichkeit besteht darin, den Artikelverlauf zu exportieren und die Überarbeitungen dann mit einem lokalen Tool wie dem folgenden zu verarbeiten git blame. Dies kann mithilfe eines Skripts erfolgen.

Um den Artikel zu Geschichte zu exportieren, verwendenSpecial:Export , insbesondere: https://en.wikipedia.org/w/index.php?title=Special:Export&history=1&action=submit&pages=Blinkenlights.

Um die Schuld zu generieren, fügen Sie zuerst die Revisionen einem temporären Git-Repository hinzu (in Python 3 gezeigt):

import tempfile
import subprocess
with tempfile.TemporaryDirectory() as repo:
    os.chdir(repo.name)
    subprocess.check_call(['git', 'init'])

Laden Sie dann das exportierte Verlaufs-XML herunter, analysieren Sie es mit so etwas wie lxml.etreeund durchlaufen Sie die Revisionen (xpath //revision). Schreiben Sie für jede Revision den Text in eine Datei (etwa article.wiki), lesen Sie den Autor und führen Sie ihn aus

subprocess.check_call(['git', 'commit', '-a', '-m', 'blah', '--author=' + str(author)])

Nachdem alle Revisionen zum Repo hinzugefügt wurden, führen Sie den Befehl aus, um git blame article.wikiden Autor jeder Zeile anzuzeigen .

Hinweis: Special:ExportMöglicherweise wird die Anzahl der exportierten Revisionen eingeschränkt. In Seiten mit langem Verlauf müssen Sie die XML-Datei daher möglicherweise mehrmals abrufen.

Mechanische Schnecke
quelle