Abrir menu principal

Ajuda:Pywikibot

(Redirecionado de Ajuda:Como utilizar robôs)
Out of date clock icon.svg
Esta página pode conter informações desatualizadas.

Se sabe algo sobre o tema abordado, edite a página e inclua informações mais recentes, citando fontes válidas. Utilize o campo de resumo para uma breve explicação das alterações e, se achar necessário, apresente mais detalhes na página de discussão.

Robôs
Wikipedia Bots.png
In other languages: de - en - fr - hu - it - ja - ko - nl - pl - pt - ru - sv - zh-hant

Um dos softwares mais usados para gerar os robôs dos projectos Wikimedia é o Python Wikipedia Robot Framework (pywikibot). O pywikibot é uma colecção de ferramentas que trabalham automaticamente na Wikipédia ou em outros sites que usam o software MediaWiki. Ele é escrito em Python, que é uma plataforma de programação livre. O bot foi inicialmente escrito por Rob Hooft em 2003 em linguagem Python. Os bots da Wikipédia em português organizam-se na Coordenação robótica. Esta página irá ajudá-lo a instalar e usar este software.

Índice

DownloadEditar

Instalação do PythonEditar

No WindowsEditar

Primeiro é necessário o interpretador do programa Python.[1] Depois de extraído é necessário testar se o Python está funcionando corretamente, então digite python dentro do prompt de comando.

Se aparecer o inicializador do interpretador ">>>" então está tudo certo, mas se aparecer a seguinte mensagem:

'python' não é reconhecido como um comando interno ou externo, um
programa operável ou um arquivo em lotes.

Então execute, na mesma janela do MS-DOS (supondo que o python está instalado em C:\Python2.6):

C:\Python2.6\python.exe

se aparecer ">>>", está tudo certo, para sair digite Ctrl+Z.

No LinuxEditar

A maioria das distribuições do Linux já veêm com o interpretador do Python nativos em seus sistemas. Depois de fazer o download dos módulos do PyWikipediaBot (ver secção abaixo), entre no Console ou em algum Terminal e vá até o diretório onde o PyWikipediaBot está, digite seu login acessando o módulo:

login.py. Digite: >>> python login.py

E está logado. Para sair do python digite Ctrl+D.

No CygwinEditar

O cygwin criado e mantido pela Red Hat Linux é uma alternativa de usar Linux dentro do Windows, o uso do bot no cygwin é semelhante a do Linux precisando pegar o pacote do Python aqui.

Instalação do PyWikipediaBotEditar

Instalação directaEditar

Todos os módulos do projecto podem ser encontrados no repositório SVN, e podem ser instalados um a um se assim quiseres.

Instalação usando um SCVEditar

Uma forma mais fácil de fazer a instalação é usando um sistema de controle de versão como o TortoiseSVN[2] (para Windows) ou o pacote Subversion[3] (para Windows e Linux).

Uma vez tendo tal programa, crie uma pasta no directório C:\ (no Windows) com o nome, por exemplo, de "pywikibot". Uma vez feito isso, se estiver a usar o TortoiseSVN, basta clicar com o botão direito do mouse sobre a pasta recém criada, clicar em "svn checkout", e usar o link de download http://svn.wikimedia.org/svnroot/pywikipedia/trunk/pywikipedia/. Se estiveres a usar o Subversion, vá até o prompt de comando (no Windows) ou o GNOME Terminal (no Linux) e digitar:

cd C:\Wikipedia\pywikibot

(assumindo que o nome da pasta é pywikibot) e após isso digitar:

no Windows
svn checkout http://svn.wikimedia.org/svnroot/pywikipedia/trunk/pywikipedia/
no Linux
$ svn checkout http://svn.wikimedia.org/svnroot/pywikipedia/trunk/pywikipedia/ pywikibot

Configuração GeralEditar

Agora você precisa configurar seu bot, então entre na pasta do PyWikipediaBot e procure o módulo generate user files.py, clique nele. Irá abrir uma tela de prompt de comando, com as seguintes opções:

1: Create user_config.py file
2: Create user_fixes.py file
3: The two files
What do you do?

O primeiro ficheiro é obrigatório, o segundo opcional. Uma vez feita sua escolha (que tem que ser ou 1 ou 3), aparecerá uma lista de todas as famílias de wikis e a pergunta:

Select family of sites we are working on:

A Wikipédia está seleccionada por default, e actualmente é a opção 40. Uma vez escolhida a família, aparecerá a seguinte mensagem:

The language code of the site we're working on:

Para o português basta usar "pt", para outras línguas, pode-se ver esta página. Uma vez escolhida a língua, aparecerá:

Username:

Onde deves inserir o nome do teu robô. A seguir aparecerá a seguinte mensagem:

Which variant of user_config.py:
[S]mall or [E]xtended (with further informations)?

Escolha a sua versão, e em seguida o programa criará o seu user_config.py. Para adicionar uma conta do seu robô em outro projecto ou idioma, basta adicionar ao seu user_config.py as linhas de configuração para cada língua[4]. Por exemplo, para o usuário Rei-bot:

usernames['wikipedia']['pt'] = 'Rei-bot'
usernames['wikipedia']['en'] = 'Rei-bot'
usernames['wikisource']['pt'] = 'Rei-bot'
usernames['wikiquote']['en'] = 'Rei-bot'

E para fazer login em todas as contas em simultâneo use o comando:

python login.py -all

MódulosEditar

Uma lista completa dos módulos pode ser encontrada nesta página do MediaWiki.org.

interwiki.pyEditar

 
Bot de Interwiki trabalhando

Para procurar as ligações para outras wikipédias para uma determinada página (digamos, nome da página), basta rodar:

python interwiki.py nome_da_página

O programa irá então procurar as ligações para outras wikipédias que já existirem em nome da página. Então ele irá acessar cada uma das páginas a que correspondem estas ligações a fim de procurar mais ligações e assim sucessivamente, até que cada ligação já tenha sido investigada.

-hintEditar

Percebe-se que se nome da página não possuir ligação alguma, o programa não irá achar mais nenhuma ligação para outra wikipédia. Deveremo então achar uma página correspondente em outra wikipédia (que no nosso exemplo vai ser achada em nome da página em inglês na en.wp). O comando a ser dado é então:

python interwiki.py nome da página -hint:en:nome_da_página_em_inglês

-yearsEditar

Para fazer os interwikis de todas as paginas de anos de ano_de_início até 2050 o comando é:

python interwiki.py -years:ano_de_início

Este processo deve apenas ser realizado periodicamente, definido em Wikipédia:Coordenação robótica.

-daysEditar

Para fazer os interwikis de todas as paginas de dias do ano do mês_de_início (um número de 1 a 12) até o mês 12 o comando é:

python interwiki.py -days:mês_de_início

Este processo deve apenas ser realizado periodicamente, definido em Wikipédia:Coordenação robótica.

-startEditar

O comando -start pode-se combinar com o comando -continue. O -start funciona adicionando o nome da página no comando para o interwiki fazer as ligações em todas as páginas que estão dentro dela. O comando é:

python interwiki.py -start:nome_da_página

Imagetransfer.pyEditar

Módulo que serve para transferir imagens de um projeto como a wikipédia para o commons, o que é mais sensato, mas pode transferir para outros projetos.

  • Transferência simples para o commons:
python imagetransfer.py Imagem:XX.ext
  • Multiplas transferências para o commons, obtendo o nome das imagens em um arquivo externo do computador.
python imagetransfer.py -file:tocommons.py

table2wiki.pyEditar

Este programa transforma tabelas do formato html para o formato wiki que é mais simples para a edição. O comando a ser usado é:

python table2wiki.py nome da página

As páginas a serem alteradas também podem ser lidas em um arquivo texto (lista.txt para o nosso exemplo):

python table2wiki.py -file:lista.txt

category.pyEditar

O programa category.py serve a muitas utilidades.

Movendo (ou renomeando) categoriasEditar

Se todos os artigos que estiverem em categoria 1 deveriam estar em categoria 2, basta rodar:

python category.py rename

Então o programa irá perguntar primeiro qual categoria a ser abandonada (categoria 1) e depois a categoria a ser enchida (categoria 2).

Categorizando uma listaEditar

O programa também pode categorizar uma lista de páginas ou todas as páginas que apontam para algum artigo. Bastará rodar:

python category.py add

e informar onde buscar a lista. Nota: o programa categoriza todas as páginas da lista em apenas uma categoria informada pelo usuário.

solve_disambiguation.pyEditar

Serve para desambiguar páginas rapidamente.

RedirecionamentosEditar

Se todos os artigos que apontam para um redirecionamento (artigo 1) deveriam apontar para o artigo-alvo do redirecionamento (artigo 1), basta rodar:

python solve_disambig.py -just -always:0 -pos:artigo_1 artigo 1

Todas os ambiguamentosEditar

Para rodar o bot em todas as páginas com ambiguamento no domínio principal:

python solve_disambiguation.py -start:! -main

Catall.pyEditar

Categoriza todos os artigos. O bot pede a categoria para cada artigo.

catall.py -onlynewEditar

categoriza somente os artigos que não contém categorias.

Marcação dos botsEditar

Os robots podem ser marcados, i.e., identificados ao nível do software como bots, para que as suas intervenções sejam escondidas da página de Mudanças Recentes por defeito (mediante a opção hidebots=0 no endereço).

No entanto, esta medida carece da aprovação da comunidade existente na Wikipédia. Os passos a tomar para a marcação de bots são:

  • Inscrição das funções e âmbito do bot na página: Wikipédia:Robôs/Pedidos de aprovação
  • Prestar atenção a alterações da página supracitada, pois será nela que será discutida a marcação do bot.

AjudaEditar

Se você precisa de ajuda sobre os comandos do pywikibot ou sobre a instalação do mesmo, podes usar o canal #pywikibot (em inglês), a pywikipediabot mailing list (em inglês) ou fazer uma pergunta na coordenação robótica

Notas

  1. O link para download do Python é este. Tenha em atenção que é necessário baixar a versão 2.6, pois a versão 3.1 é incompatível com o pywikibot.
  2. Para fazer o download do TortoiseSVN, é só clicar neste link.
  3. Para fazer o download do Subversion, é só clicar neste link. Tenha em atenção estas observações.
  4. Para editar o user_config.py, basta clicar com o botão direito do rato sobre ele e escolher a opção "edit with IDLE"

Ligações externasEditar