Manual:Pywikibot/add text.py

This is a script which helps to add a text at the end of the page but above categories, interwiki and template for the stars of the interwiki (default setting), or add a text at the top of the page.

This needs Python with at least v2.4 (not v2.3) as stated on Manual:Pywikibot/Installation.

Parameters
These command line parameters can be used to specify which pages to work on:  -cat               Targets entries within a specific category -page              Use a page as generator -file              Read a list of pages to treat from the named text file. Page titles in the file must be                    enclosed with brackets or separated by newlines. Argument can also be given as "-file:filename". Furthermore, the following command line parameters are supported:



-text              Define which text to add -summary           Define the summary to use -except            Use a regex to check if the text is already in the page * -excepturl         Use the html page as text where you want to see if there's the text, not the wiki-page. -newimages         Add text in the new images -untagged          Add text in the images that don't have any license template -always            If used, the bot won't ask if it should add the text specified -up                If used, put the text at the very top of the page *

For more command line parameters, run the bot help command for example:

Adding a template to specific pages
It will add the text " " at the very top of the pages with "Category:Template documentation", except for those which already include it.

 add_text.py -cat:template_documentation -text:"" -except:"\{\{([Tt]emplate:|)[Dd]ocumentation [Ss]ubpage" -up


 * : only target entries categorized in the page of "Category:Template documentation"
 * : add the template " " (excluding the quotes)
 * To insert return code, use "\n". But, if you use "-up" option, it becomes invalid.
 * : regex commands to exclude entries which have this template already in the page
 * : Put the text at the top of the page instead

Another example:  python add_text.py -cat:catname -summary:"Bot: Adding a template" -text:"" -except:"\{\{([Tt]emplate:|)[Ss]omething" -up

Adding category to pages without any category
This is a real instance that is used on it.wikipedia to put the template in the page without any category, because if there are any hidden categories, the page will be defined as categorized.

 python add_text.py -excepturl:"class='catlinks'>" -uncat -text:"" -except:"\{\{([Tt]emplate:|)[Cc]ategorizzare" -summary:"Bot: Aggiungo template Categorizzare"