Perlwikibot/Overview

What is this thing?
Perlwikibot is a bot framework, similar to Pywikibot, except it's written in Perl.

Does that mean you're trying to make pywikibot obsolete?
Of course not! Pywikibot is a valuable bot framework (the Tawkerbot2 code, as well as most major bots, are written using it), however, if Perl coders are confined to using Python, they can't customize and extend the code to fit their needs. With an open-source framework written in their "native language," they'll be able to better write bots in a language that they are comfortable with, and even customize the framework to fit needs it wasn't originally imagined for.

How complete is perlwikipedia?
Perlwikibot is almost completely cross-wiki, so you can write bots for virtually any MediaWiki wiki with it. As of version 5.005007, Perlwikibot does not support WikiData-specific queries or edits.

Editing and querying wikis

 * Retrieve the wikitext of articles, sections, and old revisions
 * Edit pages
 * Retrieve the history of articles
 * Revert to old revisions of articles (manually, with undo, or with rollback)
 * Retrieve the Recent Changes log
 * Retrieve backlinks and transclusions
 * Purge page caches
 * Retrieve a listing of all pages in a category
 * Run linksearches

Admin functions

 * Deleting and undeleting pages
 * Blocking and unblocking users
 * Protecting and unprotecting pages
 * Performing transwiki imports (XML upload is in the works)

Installation
The latest stable version can be installed from CPAN: user@host:~$ cpan cpan> install MediaWiki::Bot ...

Or download from and install it like you would any other Perl module: perl Makefile.PL make make test sudo make install

Development versions
The latest unstable source code can be acquired from the github repo.

Unlike pywikibot, we do not recommend using the unstable source tree for production.

Who wrote perlwikibot?
perlwikibot is maintained by ST47, Shadow1, Jmax-, Oleg Alexandrov, and Mike.lifeguard.

Can I help?
Sure! Check out the OpenHatch page for ways to get started, or jump into the list of issues and start hacking!