User:SilverBot
From WoWWiki
I am a Maintenance bot run by ℑilver§ℑide
If you wish to have me run an action, leave a note on the talk page with the exact text specified under the Syntax section of the action you wish to run. Please sign your requested action on the *NEXT* line, so I can parse the page, thanks!
I can do, at this point:
Contents |
Change categories
Syntax:
python ./category.py action [-option]
If you specify a range of pages in a wikipage, I can add a certain category, remove a category, remove *ALL* categories, etcetra.
where action can be one of these:
- add - mass-add a category to a list of pages
- remove - remove category tag from all pages in a category
- move - move all pages in a category to another category
- tidy - tidy up a category by moving its articles into subcategories
- tree - show a tree of subcategories of a given category
and option can be one of these:
- person - sort persons by their last name (for action 'add')
- rebuild - reset the database
For the actions tidy and tree, I will store the category structure locally in category.dump. This saves time and server load, but if it uses these data later, they may be outdated; use the -rebuild parameter in this case.
For example, to create a new category from a list of persons, type:
python category.py add -person
You will need to create a wikipage with a list of pages for me to edit, it should be in the format:
Exactly. * for bullet, a single space, then a NON-PIPED link to the page to be categorized. Alternately, I can edit all pages linked from a given page (hint, a non-correctly-formated list). Alternately, I can edit all pages linking TO a given page.
In all the above cases, make sure to specify the category name below the command line, and whether you want *A pages linked from the page or *B pages linking to the page! Thanks (-:
Redirects
I can resolve double redirects, and to delete broken redirects. I require access to MediaWiki's maintenance pages or to a XML dump file. I could delete broken redirects if I was an admin.
Syntax:
python redirect.py action [-argument]
where action can be one of these:
- double - fix redirects which point to other redirects
- broken - delete redirects where targets don't exist. Requires adminship.
and argument can be:
- xml - retrieve information from a local XML dump. Argument can also be given as "-xml:filename.xml". If this argument isn't given, info will be loaded from a special page of the live wiki.
NOTE: For resolving redirects, please use solve_disambiguation.py -redir.
Find / Replace
I will make direct text replacements. I will retrieve information on which pages might need changes either from an XML dump or a text file, or only change a single page.
You can run me with the following commandline parameters:
-xml - Retrieve information from a local XML dump (pages_current) Argument can also be given as "-xml:filename".
-file - Work on all pages given in a local text file. Will read any wiki link and use these articles. Argument can also be given as "-file:filename".
-cat - Work on all pages which are in a specific category. Argument can also be given as "-cat:categoryname".
-page - Only edit a single page. Argument can also be given as "-page:pagename". You can give this parameter multiple times to edit multiple pages.
-ref - Work on all pages that link to a certain page. Argument can also be given as "-ref:referredpagename".
-start - Work on all pages in the wiki, starting at a given page. Choose "-start:!" to start at the beginning.
-regex - Make replacements using regular expressions. If this argument isn't given, the bot will make simple text replacements.
-except:XYZ - Ignore pages which contain XYZ. If the -regex argument is given, XYZ will be regarded as a regular expression.
-fix:XYZ - Perform one of the predefined replacements tasks, which are given in the dictionary 'fixes'. The -regex argument and given replacements will be ignored if you use -fix. Currently available predefined fixes are:
- HTML - convert HTML tags to wiki syntax, and fix XHTML
-namespace:n - Number of namespace to process.
-always - Don't prompt you for each replacement
other: - First argument is the old text, second argument is the new text. If the -regex argument is given, the first argument will be regarded as a regular expression, and the second argument might contain expressions like \\1 or \g<name>.
NOTE: Only use either -xml or -file or -page, but don't mix them.
Examples:
If you want to change templates from the old syntax, e.g. {{msg:Stub}}, to the new syntax, e.g. {{Stub}}, then use this command:
python replace.py -xml -regex "{{msg:(.*?)}}" "{{\\1}}"
If you have a dump called foobar.xml and want to fix typos, e.g. Errror -> Error, use this:
python replace.py -xml:foobar.xml "Errror" "Error"
If you have a page called 'John Doe' and want to convert HTML tags to wiki syntax, use:
python replace.py -page:John_Doe -fix:HTML
Other
Other things I can do:
- Remove old templates, by A) checking the list of pages that link to that template, B) changing occurrence of {{templatename}} to {{subst:templatename}} C) saving the pages - thus it will substitute the template text into the page and remove all links to the template so it can be deleted.
- Change old templates, by A) checking the list of pages that link to the old template, B) changing occurrence of {{oldtemplatename}} to {{newtemplatename}} C) saving the pages
- Touch a range of page names without editing them, for instance, to update category lists or template lists