This page is a translated version of the page Manual:Pywikibot/BotPasswords and the translation is 39% complete.
Other languages:

As a simpler (but less secure) alternative to OAuth MediaWiki allows bot users to use Bot passwords to limit the permissions given to a bot.

When using BotPasswords each instance gets a login_name of the form <username>@<bot suffix> and a password. この組み合わせでは、通常のウェブ インターフェイスではなく、API にしかアクセスできません。


  • ボットを使用するウィキには、MediaWiki > 1.27 が必要です。
  • ほとんどのインストレーションでは、クライアント ソフトウェアは https プロトコルを使用するように設定されているはずです。
  • ログインは正常に動作しているように見えますが、生成された Cookie が不完全で、権限に依存する pywikibot の操作が失敗することがありました。 Phab:T150645 を参照してください。


  1. Log in as your bot account (if it is different from your main account).
  2. Generate a bot password under Special:BotPasswords (or the corresponding page on another wiki):
    1. Fill in a 'bot name', which is the suffix which will be added to your username. For example 'replace-on-tools'.
    2. Grant the relevant rights. For most Pywikibot scripts High-volume editing, Edit existing pages and Create, edit, and move pages are enough. If you also want to upload files with the bot, include Upload new files and Upload, replace, and move files. Leave the usage restrictions as-is. Click 'create'.
    3. You will receive a message like The new password to log in with Valhallasw@my-botpassword-name is mysupersecretbotpassword Do not close this window until you saved the password in your password file (see below) スクリプトの使用
  1. This script can manage for you the creation of a file. Simply run python generate_user_files, and follow the prompts. After the choice of a wiki, and entering your username, you'll be able to enter the name/pass couple created on Special:BotPasswords at the previous step. The name is the one you've chosen, the pass is the one given by the website.
または ファイルを手動作成
  1. In the directory where your is, create a file called, and make it unreadable for others (chmod 600
  2. In the file, add a line ('Valhallasw', BotPassword('my-botpassword-name', 'mysupersecretbotpassword'))
  3. In, add the line password_file = "". Note that you should only have you username in that file and leave out the suffix "@my-botpassword-name".
  1. python login を実行します。 Pywikibot は、ボットのパスワードを使用して自動的にログインするようになるはずです:
Logging in to meta:meta as Valhallasw@my-botpassword-name
Logged in on meta:meta as Valhallasw.

password_file エントリの書式

The entries in should be tuples with 2, 3, or 4 items:

  • ('Username', BotPassword('BotPasswordName', 'Password'))
  • ('FamilyName', 'Username', BotPassword('BotPasswordName', 'Password'))
    Used when the entry should only be used on a specific FamilyName, e.g. wikipedia or wikisource.
  • ('SiteCode', 'FamilyName', 'Username', BotPassword('BotName', 'Password'))
    Used when the entry should only be used on a specific FamilyName and SiteCode, e.g. wikipedia and en.
Entries that come later override those that come before them. 例えば、パスワード ファイルが以下を含む場合:
('Username', 'AccountPassword')
('en', 'wikipedia', 'Username', BotPassword('BotName', 'Password'))
BotPassword エントリは に使用されます。