ArchWiki:Bots (Português)

Status de tradução:
Esse artigo é uma tradução de
ArchWiki:Bots
. Data da última tradução: 2023-10-31. Você pode ajudar a sincronizar a tradução, se houver
alterações
na versão em inglês.
Artigos relacionados
Help:Procedimentos
Bots
são uma ferramenta importante da
equipe de manutenção
que permite executar facilmente tarefas repetitivas, desde a rotina diária até atualizações complicadas de uma só vez. As edições de bots constituem mais de 8% de todas as contribuições para o wiki - todas essas edições teriam sido muito entediantes de se fazer manualmente.
Há atualmente duas contas de bots ativas:
Kynikos.bot
(operado por
Kynikos
)
Lahwaacz.bot
(operado por
Lahwaacz
)
Software
Os bots usam a
API do MediaWiki
para se comunicar com o servidor wiki. Existem muitos bots desenvolvidos pela
Fundação Wikimedia
usando essa API, mas geralmente não são gerais o suficiente para trabalhar em outras wikis ou mesmo entrar em conflito com nossas diretrizes de estilo. Portanto, temos trabalhado em nossas próprias ferramentas de bot específicas do ArchWiki, que têm as mesmas falhas quando avaliadas por terceiros.
Wiki Monkey
O objetivo do projeto
Wiki Monkey
é facilitar a edição eficiente, aprimorando diretamente as páginas wiki no navegador da web. Ele é executado como um script de usuário, permitindo executar tarefas repetitivas de maneira semiautomática nas páginas do editor de artigos ou de forma totalmente automática a partir de páginas da lista de artigos, como
Categorias
ou
WhatLinksHere
. O Wiki Monkey também adiciona alguns auxiliares, como filtros para
Special:RecentChanges
e
Special:NewPages
. Consulte a
documentação
para obter detalhes.
Edições feitas pela interface do bot do Wiki Monkey são marcados com a
etiqueta
wiki-monkey
, que pode ser
filtrada
na lista de alterações recentes.
wiki-scripts
O projeto
wiki-scripts
contém muitos scripts Python criados em torno de uma pequena abstração semelhante a uma biblioteca para a API do MediaWiki. O objetivo dos scripts incluídos varia de coletar informações sem editar o wiki até executar edições automatizadas complexas, descritas em
#Tarefas
. As edições feitas pelos scripts wiki, de forma automática ou interativa, são marcadas com a
etiqueta
wiki-scripts
, que pode ser
filtrada
na lista de alterações recentes.
Tarefas
Esta seção descreve as tarefas que são executadas repetidamente pelos bots do ArchWiki. Ele serve como uma visão geral e documentação dos recursos dos scripts de bot operados. Observe que, por padrão, as edições de bot estão ocultas de
Special:RecentChanges
, pois sua inclusão tornaria muito mais difícil acompanhar e participar com contribuições regulares.
Redirecionamento duplos
A correção de
redirecionamentos duplos
é a tarefa automatizada mais antiga. Isso pode ser feito, por exemplo, com um
script Python
ou com o plugin dedicado do
Wiki Monkey
.
Tabelas de conteúdo
A página
Table of contents
e suas "traduções" são mantidas usando o script
toc.py
. O script pode ser executado diariamente, sua execução leva alguns segundos.
A página precisa ser inicializada manualmente com a seguinte tabela de ponto de entrada:
{| id="wiki-scripts-toc-table"
...
|}
O conteúdo desta tabela é substituído por uma versão atualizada gerada pelo script, o restante da página é deixado intacto. O script reconhece os seguintes atributos opcionais para configuração:
data-toc-languages
especifica os idiomas a serem mostrados na página. É uma lista separada por vírgula de etiquetas de idioma, no máximo 2 podem ser especificadas. O padrão é o idioma da página atual, ou seja,
ru
para
Table of contents (Русский)
.
data-toc-alsoin
especifica a tradução da frase "also in". O formato é
tag1:text, tag2:text, ...
.
Por exemplo (de
Table of contents (Русский)
):
{| id="wiki-scripts-toc-table" data-toc-languages="ru,en" data-toc-alsoin="ru:Также в"
...
|}
Os usuários também podem traduzir os nomes das categorias na tabela editando os links na página wiki e o script os preservará nas atualizações.
Estatísticas
A página
ArchWiki:Statistics
é mantida pelo script
Statistics.py
. Atualmente, apenas a seção
User statistics
é gerada automaticamente, o restante é atualizado manualmente. A atualização leva cerca de 15 segundos e deve ser executada diariamente.
O script funciona obtendo metadados de todas as revisões e contas de usuário da API e armazenando em cache localmente para obter melhor desempenho. As contagens de edição são determinadas contando manualmente as contribuições do usuário sem depender dos contadores do MediaWiki.
Nota
Algumas melhorias são discutidas em
ArchWiki talk:Statistics#Improvements
].
Templates de pacote
O script
update-package-templates.py
analisa o conteúdo de todas as páginas e atualiza os templates
Pkg
,
Grp
e
AUR
. O nome do pacote não é realmente alterado pelo script, mas, por exemplo, para pacotes que foram movidos recentemente do AUR para os repositórios oficiais, o link é atualizado de
Template:AUR
para
Template:Pkg
. Links de pacote inválidos são marcados com
Template:Broken package link
junto com uma dica algumas vezes útil mostrando o status do pacote.
O script usa versões localizadas de
Template:Broken package link
quando elas existem e retornam às versões em inglês. Fora isso, não há configuração do lado do servidor.
Após cada execução, mas no máximo uma vez a cada sete dias, o script cria um relatório detalhado de links quebrados em
User:Lahwaacz.bot/Reports/archpkgs
.
Interlíngua
O script
interlanguage.py
faz o seguinte:
Verifica se o idioma das categorias atribuídas a cada página corresponde ao idioma da própria página.
Cria categorias localizadas ausentes, espelhando a árvore de categorias em inglês.
Atualiza os
links interlínguas
em todas as páginas de conteúdo usando
este algoritmo
.
O tempo de execução depende da quantidade de atualizações, geralmente é de menos de um minuto e cerca de 30 segundos quando não há atualizações.
Idioma da página
O script
update-page-language.py
determina o idioma de cada página com base no título (veja
Help:i18n (Português)#Títulos de páginas
) e define o código de idioma no banco de dados da wiki. Isso é possível com a configuração
$wgPageLanguageUseDB
do MediaWiki
[1]
.
Verificação de links
extlink-checker.py
tenta verificar o status de links externos e aqueles que estão definitivamente quebrados são com
Template:Dead link
. Muitos links ainda passavam sem verificação por esta ferramenta, principalmente por causa de sites que exigem JavaScript e servidores retornando um código de status HTTP inconclusivo.
url-replace.py
realiza várias substituições em links externos, tal como atualizar URLs de HTTP para HTTPS ou substituir links externos para o wiki.archlinux.org com links internos.
link-checker.py
realiza várias verificações e substituições em links internos, links para páginas de manual e links externos (usando o mesmo código que
url-replace.py
).
mark-archived-links.py
marca links internos que levam para
ArchWiki:Archive
com
Template:Archived page
.