Pywikibot

Wikimedia automation scripts.

Clone

git clone --recursive https://github.com/wikimedia/pywikibot

Perform all future operations inside the pywikibot repository directory.

cd pywikibot

Install

python3 -m venv ~/.venvs/pywikibot
~/.venvs/pywikibot/bin/python -m pip install -r requirements.txt

Config

First create a family file.

~/.venvs/pywikibot/bin/python pwb.py 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.

~/.venvs/pywikibot/bin/python pwb.py login -v -v

Examples

~/.venvs/pywikibot/bin/python pwb.py <script_name>
source ~/.venvs/pywikibot/bin/activate.csh
./pwb.py welcome.py
deactivate

Resources

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies