Jump to content

Manual:Pywikibot/Compat/Basic use

From mediawiki.org

Use

See Create a shortcut for Windows users.

Select and run a bot script

Now that you have installed python and Pywikibot, you need to get to a textual interface to your Operating System.

Accessing pywikibot

After you have created the file that is named user-config.py , you can access pywikibot.

On Windows this is done by opening the start menu, and clicking on 'Run'. You are asked to give the name of a program, type "cmd.exe".

  • Change the root to C: by typing chdir C:\
  • Type chdir \"name of the folder where pywikibot has been downloaded" (For example: chdir \"pywikibot" if the file is in the C: folder.)

The following steps might need to be done:

  • Move the folder httplib2 that is in the subfolder externals one level up.
  • All scripts that you would like to use need to be copied from the scripts subfolder to the main folder. This includes login.py.

On Mac, find Terminal.app in /Applications/Utilities, see Mac Installation.

On Linux or any other Unix, use any terminal application such as gnome-terminal, konsole, xterm, or simply the text-mode console.

In compat, run the script login.py by typing "python login.py". If you don't have user-config.py yet, this command will interactively create it.

In core, from the core directory, run the script login.py by typing "python pwb.py login". If you don't have user-config.py yet, this command will interactively create it.

pwb.py does add the core directory to the `PATH` variable so that python sees the pywikibot directory. There are other ways to fix this like adding the core directory (or any directory containing the pywikibot directory) to `PATH` or `PYTHONPATH`.
Entering password

Python will then return:

Password for user your_bot on your_site:en:

Use the password you used for the bot's login name. Note that your input will not be visible for privacy reasons. The bot can't work anonymously. Unless you change your password, you normally need to run this program only once, the bot usually does not get logged off.

Using a bot

The bots are in the main pywikibot folder when downloaded.

If necessary, use the command cd to go to the directory where the bot files are saved.

Now run any of the bots here by typing "python botname.py" (If you are using Windows, you can leave out "python").

Scripts

Main page: Manual:Pywikibot/Scripts

Command-line arguments

Although many bot scripts have their own command line arguments, which should be documented on their respective pages (or in their source code), all bots unless specifically stated to the contrary recognize the following command line arguments:

(full list here: Manual:Pywikibot/Global Options )

-help
Print a list of global bot arguments (this list), followed by bot-specific help if available.
-lang:xx
Set the language of the wiki you want to work on to language code xx, overriding the configuration in user-config.py.
-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.
-user:xyz
Log in as user 'xyz' instead of the default username.
-log
Enable the logfile. Logs will be stored in the logs subdirectory.
-log:xyz
Enable the logfile, using xyz as the filename.
-nolog
Disable the logfile (if it's enabled by default).
-putthrottle:nn
Set the minimum time (in seconds) the bot will wait between saving pages. The default value is 10.

For example, python scriptname.py -family:wiktionary will run the "scriptname" bot on wiktionary articles, overriding the default family setting in your user configuration.

Permission on Wikimedia projects

Make sure that your bot is approved by the wiki community where you are going to use it: see the global Bot policy for guidance. Strictness differs greatly between various projects.

Using your normal browser, create a login name and password for the bot. It is best to use a name that makes clear that it is a bot, and preferably also who is operating it. A common method is to use your own login name and add the word 'bot' to it, but several other forms also exist.