Manual:Pywikibot/Crea tu propio script

This page is a translated version of the page Manual:Pywikibot/Create your own script and the translation is 87% complete.

Esta página enumera algunos consejos muy básicos para empezar a escribir tu propio bot. Asegúrate de haber configurado tu archivo user-config.py !

Puede utilizar los siguientes comandos en una shell o en un script.

Para abrir una shell, ejecuta python pwb.py shell;

Como script, por favor guarda el archivo como myscript.py en el directorio scripts/userscripts/, luego ejecuta python pwb.py myscript.

  • Para acceder a la biblioteca pywikibot desde tu script Python, usa:
import pywikibot
  • para recuperar una página, utiliza lo siguiente, donde pageName es el título de la página que deseas recuperar, por ejemplo, Wikipedia:Bots o India:
site = pywikibot.Site()
page = pywikibot.Page(site, "pageName")
text = page.text
  • para actualizar una página, usa:
page.text = "newText"
page.save("Edit comment")
  • mira algunos de los archivos de pywikibot para otras ideas -- scripts/basic.py es relativamente fácil de leer, incluso si eres nuevo en pywikibot.
  • puedes encontrar todos los métodos disponibles en el archivo pywikibot/page.py.
  • basic.py te da una configuración que puede ser usada para muchos bots diferentes, todo lo que tienes que hacer es definir la edición de la cadena en el texto de la página.
  • Para iterar sobre un conjunto de páginas, ver pywikibot/pagegenerators.py (véase también la documentación antigua) para algunos objetos que devuelven un conjunto de páginas. Un ejemplo del uso del CategoryPageGenerator que hace algo para cada página en la categoría Category:Living people:
import pywikibot
from pywikibot import pagegenerators
site = pywikibot.Site()
cat = pywikibot.Category(site,'Category:Living people')
gen = pagegenerators.CategorizedPageGenerator(cat)
for page in gen:
    #Do something with the page object, for example:
    text = page.text

Véase también


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