Pywikibot
Mediawiki automation scripts.
Clone
git clone --recursive https://github.com/wikimedia/pywikibot
Perform all future operations inside the pywikibot repository directory.
cd pywikibot
Install
Environment
python3 -m venv ~/.venvs/pywikibot
Activate
TCSH
source ~/.venvs/pywikibot/bin/activate.csh
Requirements
python -m pip install -r requirements.txt
Tool
python -m pip install .
TCSH
rehash
Config
First create a family file.
pwb generate_family_file.py
Enter the URL and name to create a family file for the private site. Select no when asked about interwiki links.
Eg.
from pywikibot import family
class Family(family.Family): # noqa: D101
name = 'MySite'
langs = {
'en': 'www.example.com',
}
def version(self, code):
return "1.4.3" # The MediaWiki version used.
def scriptpath(self, code):
return {
'en': '/w',
}[code]
def protocol(self, code):
return {
'en': 'https',
}[code]
Next a user configuration is needed.
cp user-config.py.sample user-config.py vi user-config.py
Eg.
mylang = 'en' family = 'MySite' usernames['MySite']['en'] = 'Mybot'
Lastly run the login script to enter the password.
pwb login -v -v
Example
pwb <script_name>

