it-swarm.com.de

Wie kann ich alle von Spammern erstellten Wiki-Seiten außer meinen in MediaWiki löschen?

Ich habe eine MediaWiki-Site implementiert, aber leider hat jemand Tausende von Seiten durch Tausende von Benutzern erstellt.

Welche Abfrage kann ich ausführen, um alle von diesen Benutzern erstellten Seiten außer meiner zu löschen?

MediaWiki-Seiten befinden sich in wiki_page und wiki_text in der MediaWiki-Datenbank, es gibt jedoch kein Feld darüber, wer diese Seiten erstellt hat.

Größter Tisch:

  • wiki_text: 682 MB
  • wiki_externallinks: 162,5 MB
  • wiki_recentchange: 95 MB
  • wiki_page: 43 MB

    hier , ich finde eine mögliche Antwort auf mein Problem, bin aber im ersten Schritt blockiert:

"Von Ihnen erstellte Artikel exportieren (vermutlich als WikiSysop-Benutzer oder ähnlich angemeldet)"

Wie kann ich einen von mir erstellten Artikel exportieren, wenn in der Tabelle kein Feld für den Benutzer vorhanden ist, der die Seiten erstellt hat?

3
Pitone

Wenn Sie Python kennen (oder keine Angst haben zu lernen), sollten Sie dies mit pywikibot angehen.

Sie können wiki.allpages() durchlaufen und eine Logik hinzufügen, um zu entscheiden, ob eine Seite gelöscht werden soll oder nicht. Gute Kriterien:

  • Enthält die Seite bestimmte Wörter? Z.B. im Zusammenhang mit Drogen oder Porno.
  • Hat die Seite Wikilinks zu anderen Seiten?
  • Verfügt die Seite über Links von anderen Seiten?

(Ich kann hier ein paar Python Zeilen einfügen, wenn Interesse besteht. Lass es mich einfach wissen.)

2
guaka