Ayuda:Bots

De 15Mpedia
Saltar a: navegación, buscar

Los bots (o robots) son programas que hacen tareas repetitivas y tediosas. Sirven para agregar nuevo contenido al wiki, hacer modificaciones o hacer mantenimiento, entre otras cosas.

Atención: los bots son herramientas que usadas mal pueden causar destrozos en las páginas del wiki. Aunque todo se puede revertir usando los historiales, es mejor buscar el consenso antes de hacer muchos cambios en muchas páginas.

Contenido

[editar] Requisitos

Para hacer bots necesitarás lo siguiente:

  • Conocer algún lenguaje de programación, preferiblemente Python, aunque sea a nivel básico
  • Instalar un framework para trabajar con MediaWiki. Para Python existe pywikibot, aunque hay otros para otros lenguajes. El fichero de configuración 15mpedia_family.py deberás guardarlo en el directorio pywikibot/families
  • Programar el bot (ver más abajo un ejemplo de bot sencillo)
  • Contar con el consenso antes de lanzar los cambios en el wiki. Si son cambios triviales o son cambios consensuados anteriormente, no es necesario volver a debatirlos. Si quieres agregar mucho contenido nuevo con el bot o usarlo para hacer cambios en muchas páginas, mejor coméntalo antes en Portal de la Comunidad. Eso ayudará a que tu idea sea mejorada con las aportaciones de otros.
  • Pedir el flag bot para tu cuenta de bot (así los cambios no saldrán en Special:Recentchanges por defecto, evitando inundar la página)

[editar] Instalación

Primero necesitas instalar Python 2.7 en tu sistema:

  • Si estás en Windows, puedes descargarlo de aquí
  • En GNU/Linux seguramente ya lo tengas instalado, sino escribe en la consola: sudo apt-get install python

Segundo, necesitas descargar el framework pywikibot (core) y descomprimirlo.

Tercero, debes configurar el framework para que sea compatible con 15Mpedia, descargando el fichero 15mpedia_family.py en el directorio pywikibot/families del pywikibot que has descomprimido en el paso anterior.

Cuarto, tienes que crear un fichero user-config.py dentro del directorio core con el siguiente contenido:

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

family = '15mpedia'
mylang = '15mpedia'

usernames['15mpedia']['15mpedia'] = u'NICKDELBOT'

Donde NICKDELBOT es el nombre de la cuenta de usuario de tu bot. Debes registrar una cuenta de usuario para el bot, no se recomienda correr el bot con tu cuenta de usuario personal.

Por último debes hacer login del siguiente modo (te pedirá que escribas la contraseña): python pwb.py login

[editar] Un primer bot

Estudia el siguiente código para comprender cómo funciona. Cópialo a un fichero, por ejemplo primerbot.py y guárdalo en el directorio de pywikipediabot.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import datetime #necesario en este ejemplo porque vamos a trabajar con fechas
import pywikibot #necesario siempre

#creamos variable site para trabajar sobre 15mpedia (no poner la m en mayúscula)
site = pywikibot.Site("15mpedia", "15mpedia")

#creamos variable page indicándole en qué página de qué wiki vamos a trabajar
page = pywikibot.Page(site, u"15Mpedia:Zona de pruebas")

#leemos lo que haya en esa página
text = page.text

#añadimos la fecha de hoy
newtext = u"%s\n\nHola, hoy es %s" % (text, datetime.datetime.today())
page.text = newtext

#guardamos los cambios e indicamos un resumen de edición
page.save(u"BOT - Haciendo prueba")

Para ejecutarlo, escribe lo siguiente en la consola: python primerbot.py

[editar] Bots comunes

El framework pywikibot incluye algunos bots para tareas comunes. Uno de los más usados es el que arregla redirecciones que quedan rotas después de hacer traslados de páginas.

Para utilizarlo, copia el fichero scripts/redirect.py al directorio principal, y ejecútalo así: python redirect.py double

[editar] Usuarios bot

Estos son algunos de los usuarios con flag bot en este wiki (ver lista automática):

[editar] Véase también

[editar] Enlaces externos

v · d · e         15Mpedia
Ayuda

Básica · Avanzada · Guías · Videotutoriales · Bots

Búsquedas

Explorar artículos · Páginas por prefijo · Reemplazar texto en artículos · Todos los mensajes

Configuración

MediaWiki:Common.css · MediaWiki:Common.js · MediaWiki:Newarticletext · MediaWiki:Noarticletext · MediaWiki:Sidebar · MediaWiki:Sitenotice · Special:Version

Coordinación

Categoría:15Mpedistas · Artículo de la semana · Artículos solicitados · Portal de la comunidad · WikiProyectos

Difusión

Subproyecto "Difusión" · Extensión para navegadores

Estadísticas

Estadísticas (api· Estadísticas de semántica

Mantenimiento

Cambios recientes · Incidencias · Páginas nuevas · Plantillas · Páginas con hashtags por crear · Páginas con vídeos por indexar · Páginas que requieren referencias

Políticas

15Mpedia:About · Lo que 15Mpedia no es

Portada

Acampada aleatoria · Artículo de la semana · Centro social aleatorio · Imagen aleatoria · Plataforma aleatoria · Streaming aleatorio · Vídeo aleatorio · Sitenotice portada · Vídeo portada

Otros

Backups · Páginas especiales · Subir archivo · Subir archivo (desde URL) · Zona de pruebas

Véase también: Categoría:15Mpedia (Allpages)