Usuari:VriuBot/tdc.py

De Viccionari
#/usr/bin/python2.5
#-*- encoding: utf-8 -*-

#OPCIONS PERSONALITZABLES
primera = "!" #en cas d'aturar el bot poseu aquí el darrer article analitzat
resum   = u"Bot: afegint plantilla {{tdc}}"
edit    = False #per a que el bot edite canvieu el valor d'esta variable a True
informa = True #per a visualitzar els canvis el valor ha de ser True
 
#A PARTIR D'ACÍ NO MODIFIQUEU RES
import wikipedia, pagegenerators, re
 
site = wikipedia.getSite("ca", "wiktionary")
gen = pagegenerators.AllpagesPageGenerator(site=site, start=primera, namespace=0)
preloadingGen = pagegenerators.PreloadingGenerator(gen, pageNumber = 100)

def toc():
    pags=vistes=0
    for pag in preloadingGen:
        vistes+=1
        try:
            if not pag.exists():
                continue
            txt=pag.get()
            nou_txt=re.sub(ur"^(\{\{-.{2,3}-\}\})", "{{tdc}}\n\\1", txt, 1)
            if nou_txt != txt:
                if not edit:wikipedia.output("[["+pag.title()+"]]")
                if informa: wikipedia.showDiff(txt, nou_txt)
                if edit: pag.put(nou_txt, resum)
                pags+=1
        except wikipedia.IsRedirectPage:
            continue
        except KeyboardInterrupt:
            break
    wikipedia.output(u"S'han fet canvis en %i pàgines de %i llegides.\nEl darrer article analitzat ha estat [[%s]]."
                     % (pags,vistes,pag.title()))
toc()
wikipedia.stopme()