User:MurphBot

It is likely to be an instance of pywikipediabot, although it may use additional Unix scripting, if required.

MurphBot will try to stick to non-controversial and occasional automatic edits for things such as category cleanups, deprecating templates, etc. Any large or significant changes will be published and documented here, on relevant talk pages, the bot requests page, and the village pump, as appropriate to the situation.

Requests
If you have any requests for MurphBot, please feel free to add them here. If the request is in any way large or controversial, I would prefer to see it discussed on the village pump or an appropriate talk page before it is considered for MurphBot. Please link to any relevant discussion and sign your requests in the usual manner. If the request isn't something I feel I can confidently and relatively easily automate with MurphBot, I will probably move it to the bot requests page for someone else to consider.

Proposed

 * Proposal to adopt WoW as the category prefix. Vote called, no action will be taken without consensus.


 * Discussing standardisation of tooltip usage, similar to what has successfully been done for achievementbox. Only a discussion at this stage, but it looks like a prime candidate for eliminating inconsistent usage.  See Template talk:Tooltip.

Periodic

 * Template talk:Achievementbox. Update the usage of achievementbox to include a   wrapper around the type parameter, and ensure the mode, arg, and type parameters are in standard form per the template doc.  First run complete 22 Dec 2008, keeping as periodic until the achievements categories have most of their articles.


 * Spotted a few examples where the  wrapper is missing.  Pattern matching for this is a little complex, so might not catch every case.  First run complete 23 Dec 2008, periodic until the achievements categories have most of their articles.

Active

 * Deprecating renamed templates (redirects resulting from moves within the Template namespace which are still used in articles). Only redirects which are clearly the result of a move for the purpose of naming cleanup will be considered.  Redirects which exist for convenient shorthand (e.g. Template:Sd) will not be touched.  See discussion on the village pump.  This will be done one at a time, and will take a little while.  It will only occur when I'm available to supervise the bot, so lack of activity in recent changes / contributions does not mean it's finished.  Using pywikipediabot template.py script.

Completed

 * Deprecated  for   (they had been redirects for quite a while).  Used pywikipediabot template.py script.


 * Removed from all articles.


 * Deprecating  for.


 * Cleanup of Category:Users via liberal sprinkling of  to improve the appearance and coherency of the category.

Pywikipediabot
I use a slightly modified version of pywikipediabot, based on the SVN trunk. Here's the diff against SVN. The change to wikipedia.py to ignore  is required due to non-standard changes to MediaWiki by Wikia - without this change, their credits footer may be added to the source of any pages changed by pywikipediabot. Index: wikipedia.py

=
====================================================== --- wikipedia.py	(revision 6219) +++ wikipedia.py	(working copy) @@ -691,6 +691,7 @@            except SectionError: self._getexception = SectionError raise +       self._contents = re.sub(' .* ', '', self._contents) return self._contents def _getEditPage(self, get_redirect=False, throttle=True, sysop=False, @@ -5374,10 +5375,12 @@            api_url = self.api_address             startEncoded = urllib.quote(start.encode(self.encoding))             api_url += 'action=query&format=xml&list=allpages&apfrom=%s&aplimit=%i&apnamespace=%i' % (startEncoded, config.special_page_limit, namespace) -            # TODO: support includeredirects="only" like in the old method             if not includeredirects:                 api_url += '&apfilterredir=nonredirects' +            elif includeredirects == 'only': +                api_url += '&apfilterredir=redirects' +             if throttle:                 get_throttle             text = self.getUrl(api_url) Index: replace.py

=
====================================================== --- replace.py	(revision 6219) +++ replace.py	(working copy) @@ -376,7 +376,7 @@                        % page.aslink)                     break                 new_text = self.doReplacements(new_text) -                if new_text == original_text: +                if new_text.strip.replace('\r\n', '\n') == original_text.strip.replace('\r\n', '\n'):                     wikipedia.output('No changes were necessary in %s' % page.aslink)                    break

Scripts

 * Achievementbox
 * Category:Users
 * ListRedirects