You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
959 B
Python
29 lines
959 B
Python
5 years ago
|
import os, argparse, sys, re, json
|
||
|
from mwclient import (Site,
|
||
|
errors)
|
||
|
|
||
|
# API CALL
|
||
|
# https://hub.xpub.nl/sandbox/itchwiki/api.php?action=smwbrowse&browse=pvalue¶ms={ "limit": 1500, "offset": 0, "property" : "Organization", "search": "" }&format=json
|
||
|
# generated orgs.json
|
||
|
|
||
|
# login
|
||
|
site = Site(host='hub.xpub.nl/sandbox', path='/itchwiki/')
|
||
|
|
||
|
wd =os.path.dirname(os.path.abspath(__file__)) # parent working directory
|
||
|
with open(os.path.join(wd, 'login.txt'), 'r') as login: # read login user & pwd
|
||
|
loginlines = login.read()
|
||
|
user, pwd = loginlines.split('\n')
|
||
|
site.login(username=user, password=pwd) # login to wiki
|
||
|
|
||
|
|
||
|
with open('orgs.json', 'r') as f:
|
||
|
orgs = json.load(f)
|
||
|
|
||
|
for pagename in orgs['query']:
|
||
|
if pagename != 'League of Filipino Students (LFS)':
|
||
|
# print(pagename)
|
||
|
page = site.pages[pagename]
|
||
|
print(page)
|
||
|
# text = page.text()
|
||
|
page.save('[[Category:Organization]]')
|