[Wikipedia-l] New version of Python Wikipediabot Framework

Andre Engels andreengels at gmail.com
Wed Jan 31 09:45:47 UTC 2007


A new issue of the Python Wikipediabot framework has been released, and can
be downloaded at http://sourceforge.net/project/showfiles.php?group_id=93107
. Everyone who does not update from CVS is advised to download this. Note
that this release does not include the wordlists, those who want to use
spellcheck.py should download a wordlist from
http://pywikipediabot.cvs.sourceforge.net/pywikipediabot/pywikipedia/spelling/(English
and Dutch wordlists are available, the French one is only small).
Note that one is advised to have the most recent version of Python (2.5) to
use with the bot.

The main changes since the previous release are:

new bots:
* clean_sandbox.py: empties the Sandbox (except for what should not be
removed)
* disambredir.py: goes through disambiguation pages to (ask whether to)
change redirect links on these pages
* inline_images.py: Searches and removes images that are linked inline
* isbn.py: Converts ISBN-10 to ISBN-13

category.py:
* Mode 'listify' added: gets a list of the pages that are in a specific
category.
* category.py remove can have customized edit summaries using the -delsum
option

commons_link.py:
* Can also be used to find categories rather than galleries
* Puts its template above categories and interwiki instead of all at the
bottom

copyright.py:
* Various fixes and improvements

delete.py:
* More options to decide which pages to delete: -ref (pages linking to a
specific page), -page (a single page), -file (a file with the pagenames),
-images (all images on a specific page)

featured.py:
* Now puts the template before categories and interwikis instead of after
the interwiki link
* Gives its command line options when -help is used

image.py:
* New option -loose: replaces the image new everywhere where it occurs. This
means that no occurences of the image are skipped, but also that there's
more risk of making errors.

interwiki.py:
* Quicker removal of links to different namespaces (they are removed when
there is a correct link or the option '-autonomous' is used)
* When the -ignore option is used, the page is also ignored if found as a
redirect
* It is now possible to combine -cat and -start to do a part of a category's
pages
* The -whenneeded option becomes slightly stricter (it does not change links
if the only problem was that there were links to be removed)
* Option -link renamed -links

movepages.py:
* Option -new to work on the new pages
* Options -from and -to to specify on the command line from and to which
title to move the page

pagefromfile.py:
* Option -notitle to not include the line containing the title in the page
to be created

replace.py:
* New options -allowoverlap and -recursive to change overlapping and
recursive occurences
* New option -nocase to make all regexes case insensitive
* New option -summary for custom edit summaries
* Does not crash on meeting the spam filter, but tells the problem and goes
on with the next page
* replace.py -fix:interproject has been deprecated

selflink.py:
* New option -xml to work from an XML dump

solve_disambiguation.py:
* The -primary option now works when the page is a disambiguation page (for
cases where [[X]] is a redirect to [[X (subject)]] with a disambiguation
page at [[X (disambiguation)]])
* More ignored pages for nl:

template.py:
* Now works on templates that have brackets in their name

touch.py:
* Does not do cosmetic changes, even when the bot normally does do so

upload.py:
* Is better (though possibly not yet perfect) in checking whether the upload
succeeded

weblinkchecker.py:
* Fakes being Firefox because some websites block unknown user agents

for programmers:
* Page objects now have a protect() method
* new method setUserAgent(). Uses the same user agent always.
* pagegenerators.py has a class CommandLineGenerator to automagically add
generator options to a bot
* Page.getReferences() gets a parameter

general:
* if a certain Mediawiki message is not found in the list the bot has, it
will first try reloading the messages before spawning an error
* many bugfixes
* large code refactoring in interwiki.py, pagegenerators.py
* namespace names updated
* more localization of edit summaries


-- 
Andre Engels, andreengels at gmail.com
ICQ: 6260644  --  Skype: a_engels


More information about the Wikipedia-l mailing list