Manual:Pywikibot/delete.py

From MediaWiki.org
Jump to navigation Jump to search

This script can be used to delete and undelete pages en masse. You will need an admin account on the relevant wiki. Also add:

usernames['wikipedia']['en'] = 'adminname'

to user-config.py, where ['wikipedia'] is the name of the the family in which you are working on, and 'adminname' is the username.

Syntax:

$ python pwb.py delete [-cat:categoryName|-page:pageName|...] [-summary:"text"] [-undelete] [-always]

Arguments[edit]

  • -page: Delete specified page
  • -ref: Delete all pages referring from a given page.
  • -images: Delete all images used on a given page.
  • -cat: Delete all pages in the given category.
  • -links: Delete all pages linked from a given page.
  • -always Don't prompt to delete pages, just do it.
  • -summary: Supply a custom edit summary.
  • -undelete: Actually undelete pages instead of deleting. Works only with -page and -file.
  • -file: Delete all pages listed in a given text file. The list should be of the format
    • # [[page1]]
    • # [[page2]]
    • etc.

Examples[edit]

  • Delete everything in the category "To delete" without prompting.
$ python pwb.py delete -cat:"To delete" -always
  • Delete everything in the pages linked to the page, without prompting.
$ python pwb.py delete "deletepage" -always
  • Delete everything in the speedy deletion category on the English Wikibooks.
$ python pwb.py delete -lang:en -family:wikibooks -cat:"Candidates for speedy deletion"
  • Delete pages inside a text file:
$ python pwb.py delete -file:nuke.txt -always -summary:"Because I feel like it"

The format of the text file should be as the following:

# [[Main Page]]
# [[Talk:Main Page]]
  • Restore pages:
$ python pwb.py delete -undelete -file:respawn.txt -summary:"It was a foolish mistake"

Global arguments available

These options will override the configuration in user-config.py settings.

Global options
ParameterDescriptionConfig variable
-dir:PATH Read the bot's configuration data from directory given by PATH, instead of from the default directory.  
-lang:xx Set the language of the wiki you want to work on, overriding the configuration in user-config.py. xx should be the language code. mylang
-family:xyz Set the family of the wiki you want to work on, e.g. wikipedia, wiktionary, wikitravel, ... This will override the configuration in user-config.py. family
-user:xyz Log in as user 'xyz' instead of the default username. usernames
-daemonize:xyz Immediately return control to the terminal and redirect stdout and stderr to file xyz. (only use for bots that require no input from stdin).  
-help Show the help text.  
-log Enable the log file, using the default filename 'script_name-bot.log' Logs will be stored in the logs subdirectory. log
-log:xyz Enable the log file, using 'xyz' as the filename. logfilename
-nolog Disable the log file (if it is enabled by default).  
-maxlag Sets a new maxlag parameter to a number of seconds. Defer bot edits during periods of database server lag. Default is set by config.py maxlag
-putthrottle:n
-pt:n
-put_throttle:n
Set the minimum time (in seconds) the bot will wait between saving pages. put_throttle
-debug:item
-debug
Enable the log file and include extensive debugging data for component "item" (for all components if the second form is used). debug_log
-verbose
-v
Have the bot provide additional console output that may be useful in debugging. verbose_output
-cosmeticchanges
-cc
Toggles the cosmetic_changes setting made in config.py or user-config.py to its inverse and overrules it. All other settings and restrictions are untouched. cosmetic_changes
-simulate Disables writing to the server. Useful for testing and debugging of new code (if given, doesn't do any real changes, but only shows what would have been changed). simulate
-<config var>:n You may use all given numeric config variables as option and modify it with command line.