Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/spamblaster.py
diff options
context:
space:
mode:
Diffstat (limited to 'spamblaster.py')
-rw-r--r--spamblaster.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/spamblaster.py b/spamblaster.py
new file mode 100644
index 0000000..5cbd2af
--- /dev/null
+++ b/spamblaster.py
@@ -0,0 +1,39 @@
+#!/bin/env python3
+
+import mwapi
+
+host = "http://pe.sugarlabs.org/" # can be any mediawiki,
+api_path = "wiki/api.php" # just point to its API
+
+pages = mwapi.MWApi( host, api_path )
+pages.login ("YOURUSER", "YOURPASS")
+edittoken = pages.get_tokens()['edittoken']
+
+offset = 0
+
+while offset>-1:
+
+ print ("Here is a batch of lonely pages")
+ result = pages.get ( action="query",
+ list="querypage",
+ qppage="Lonelypages",
+ qplimit=500,
+ qpoffset=offset)
+
+ for page in result['query']['querypage']['results']:
+ print (page['value'])
+
+ print ('delete all (y/[n])?')
+ response = input()
+
+ offset = result['query-continue']['querypage']['qpoffset']
+
+ if response=='y':
+ for page in result['query']['querypage']['results']:
+ pages.post ( action='delete',
+ title=page['value'],
+ reason='Spamblaster',
+ token=edittoken)
+ print ("deleted " + page['title'])
+
+ print ("\n\n")