Pywikibot: Difference between revisions
From charlesreid1
No edit summary |
|||
| Line 64: | Line 64: | ||
You can now run the pwb using your own custom actions, or using a set of scripts that come bundled with pwb. Here is a list of all such scripts: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Pywikibot/Scripts | You can now run the pwb using your own custom actions, or using a set of scripts that come bundled with pwb. Here is a list of all such scripts: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Pywikibot/Scripts | ||
===Removing Double Redirects=== | |||
You can run a quick test of pwb by looking for any duplicate redirects (pages that redirect to a redirect) and fixing them: | You can run a quick test of pwb by looking for any duplicate redirects (pages that redirect to a redirect) and fixing them: | ||
| Line 71: | Line 73: | ||
</pre> | </pre> | ||
===Marking Orphan Pages=== | |||
You can mark orphan pages on the wiki with an Orphan template. Note that the Orphan template must be defined first. | |||
[[Category:MediaWiki]] | [[Category:MediaWiki]] | ||
[[Category:Bots]] | [[Category:Bots]] | ||
Revision as of 03:20, 16 April 2017
Setting this up is confusing as hell, mainly because the documentation is lacking.
Getting, Configuring, Installing
Code for pywikibot on Github: https://github.com/wikimedia/pywikibot-core/
Start by checking it out:
$ git clone https://github.com/wikimedia/pywikibot-core/ pwb $ cd pwb
Install all the pip stuff that you may need:
$ pip install -r requirements.txt
Update git submodules:
$ git submodule update --init
Add a custom family file to the big directory of family files:
$ ls pywikibot/families ... wikivoyage_family.py wiktionary_family.py wowwiki_family.py
This is where you will put your custom family file. Here's what the custom family file looks like:
from pywikibot import family
class Family(family.Family):
def __init__(self):
family.Family.__init__(self)
self.name = 'charlesreid1'
self.langs = {
'en': 'charlesreid1.com',
}
Copy and paste this into pwb/pywikibot/families/charlesreid1_family.py (where pwb is the name of the directory where you checked out the git repository).
Now you should be able to log into the wiki as your bot:
$ python pwb.py login Password for user Bleep bloop on charlesreid1:en (no characters will be shown): Logging in to charlesreid1:en as Bleep bloop WARNING: /Users/charles/codes/pywikibot/pywikibot/tools/__init__.py:1717: UserWarning: File /Users/charles/codes/pywikibot/pywikibot.lwp had 644 mode; converted to 600 mode. Logged in on charlesreid1:en as Bleep bloop.
Running
You can now run the pwb using your own custom actions, or using a set of scripts that come bundled with pwb. Here is a list of all such scripts: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Pywikibot/Scripts
Removing Double Redirects
You can run a quick test of pwb by looking for any duplicate redirects (pages that redirect to a redirect) and fixing them:
$ python pwb.py redirect double
Marking Orphan Pages
You can mark orphan pages on the wiki with an Orphan template. Note that the Orphan template must be defined first.