Manual:Pywikibot/user-config.py

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Pywikibot/user-config.py and the translation is 100% complete.
Other languages:
Bân-lâm-gú • ‎English • ‎Tiếng Việt • ‎Türkçe • ‎dansk • ‎français • ‎português • ‎русский • ‎українська • ‎العربية • ‎中文 • ‎日本語 • ‎한국어

Configuração

Antes de executar qualquer um dos programas, você precisa criar um arquivo chamado user-config.py no diretório pywikibot. Você o cria de duas maneiras:

  1. Crie o arquivo manualmente. Ele precisa de pelo menos duas ou três variáveis configuradas e colocadas no local correto.
  2. Execute o script generate_user_files.py digitando python pwb.py generate_user_files.py em um shell de comando, o que gerará interativamente o arquivo no estilo "assistente" interativo e o armazenará no local de configuração padrão.

Localização

Pywikibot procura user-config.py nos seguintes locais, em ordem:

  • Especificado pelo argumento -dir: (por exemplo: -dir:/foo/bar)
  • O conteúdo da variável de ambiente PYWIKIBOT_DIR
  • O diretório em que o ficheiro pwb.py é
  • No núcleo, ele verifica o diretório .pywikibot no diretório de dados do aplicativo (Windows) ou diretório inicial (esse diretório é criado automaticamente)

(Veja também: get_base_dir().)

Abaixo estão as instruções para editar manualmente esse ficheiro.

Para projetos Wikimedia

Abra um editor de texto (por exemplo, Bloco de notas no Windows) e salve o arquivo de texto como user-config.py na pasta pywikibot.

Se seu idioma usa caracteres não ASCII, você deve usar um editor compatível com Unicode, como o Notepad++, e salvar sua configuração de usuário com a codificação Unicode sem marcas de BOM. Não esqueça de inserir

# -*- coding: utf-8 -*-

como a primeira linha.

Adicione as seguintes linhas a user-config.py:

Código Explicação
family = 'wikipedia'
mylang = 'en'

xx is the code for the language you are working on, for example 'en' is English.[1] Family is the project name.[2]

usernames['wikipedia']['en'] = 'ExampleBot'

Your user-config.py file needs to specify the bot's username.

In this example, the user is working on English Wikipedia, and has created a bot account with the username "ExampleBot". [3]

(Optional)

authenticate['*.wikipedia.org'] = ('<consumer_key>','<consumer_secret>', '<access_key>', '<access_secret>')

This replaces password-based authentication with OAuth, which is more secure (especially for bots with shared ownership). See Manual:Pywikibot/OAuth on how to obtain the keys/secrets.

(Optional)

usernames['wikipedia']['de'] = 'BeispielBot'
usernames['wikipedia']['en'] = 'ExampleBot'
usernames['wiktionary']['de'] = 'BeispielBot'

If you are working on more than one Wikimedia project, you can also add several usernames.

(Optional, and rarely needed)

console_encoding = 'utf-8'
textfile_encoding = 'unicode_escape'

If this is the encoding used by your system. Always try without first.

(Optional)

sort_ignore_case = True

Some scripts may use this for sorting, e.g. solve_disambiguation.py. Default is False. Capitalized titles will preceed uncapitalized ones if this key is False or omitted, and capitalization will be disregarded by sorting if True.

(Optional)

usernames['wikiproject']['languagecode'] = 'YourSysopUsername'

Define a sysop account for actions that require additional privileges, e.g. deleting pages.

(Optional)

password_file = "user-password.py"

Define a password file. The lines of the file should be tuples in any of the following formats:

(code, family, username, password)
(family, username, password)
(username, password)

For BotPasswords, refer to Manual:Pywikibot/BotPasswords.

Now save user-config.py again.

user-config.py examples

EksempelBot on no.wikipedia

mylang = 'no'
usernames['wikipedia']['no'] = 'EksempelBot'

console_encoding = 'utf-8'
use_api_login = True

ExampleBot on Commons

mylang = 'commons'
family = 'commons'
usernames['commons']['commons'] = 'ExampleBot'

console_encoding = 'utf-8'
use_api_login = True

ExampleBot on Wikidata

mylang = 'wikidata'
family = 'wikidata'
usernames['wikidata']['wikidata'] = 'ExampleBot'

console_encoding = 'utf-8'
use_api_login = True

ExampleBot on Test wiki

mylang = 'test'
family = 'test'
usernames['test']['test'] = 'ExampleBot'

ExampleBot on Test2 wiki

mylang = 'test2'
family = 'wikipedia'
usernames['wikipedia']['test2'] = 'ExampleBot'

BeispielBot on de.wikipedia and de.wikibooks, with de.wikipedia as main wiki

mylang = 'de'
usernames['wikipedia']['de'] = 'BeispielBot'
usernames['wikibooks']['de'] = 'BeispielBot'

console_encoding = 'utf-8'
use_api_login = True

Para wikis que não são da Wikimedia

Main Page: Manual:Pywikibot/Use on third-party wikis

Veja também

  • config2.py (the source code of the module that loads and interpretes user-config.py)

Notas

  1. If you want to work with more than one language, choose the most common one. You can override this on the command line by using -lang:zh parameter.
  2. Meta uses 'meta' for both language code and wiki family, Commons uses 'commons' for both, and Testwiki uses 'test' for both, the multilingual wikisource uses '-' for the language. You can override this on the command line by using -family:wikibooks.
  3. Note that on Linux/Unix hosts username capitalization matters! While logging in may not be an issue, testing the log in or attempting to use a bot will not use the correct cookie file and may result in anonymous access to the API. This can cause problems for private wikis that do not allow anonymous access or use third party authentication. Default usernames for mediawiki and those pulled via LDAP or other third party authentication schemes will have an uppercase character for the first letter, thus 'user' becomes 'User'.


If you need more help on setting up your Pywikibot visit the #pywikibot IRC channel ligar or pywikibot@ mailing list.