Usuario:Ignacio Icke/ABajuste.py
Apariencia
# -*- coding: utf-8 -*- import wikipedia import re import codecs import sys import pagegenerators pagina=u"Wikipedia:Artículos buenos/Índice" re_start=re.compile(ur"Arquitectura==") re_end=re.compile(ur"FIN LISTA BUENOS") re_enlace=re.compile(ur"(?:\[\[)(?P<enlace>[^\]]*)") re_imagen=re.compile(ur"[Ii]mage") re_almo=re.compile(ur"#") re_wiki=re.compile(ur"Wikipedia:") re_sep=re.compile(ur"\|") es_site=(wikipedia.Site("es","wikipedia")) #Here we go! ap=wikipedia.Page(es_site,pagina ) texto=ap.get() texto=texto[re_start.search(texto).end():re_end.search(texto).start()] enlaces=re_enlace.finditer(texto) ab1=[] ab2=[] num=0 for enlace in enlaces: #print enlace.group("enlace") if not re_imagen.match(enlace.group("enlace")) and not re_almo.match(enlace.group("enlace")) and not re_wiki.match(enlace.group("enlace")): ab1.append(enlace.group("enlace")) num=num+1 gen = pagegenerators.ReferringPageGenerator(wikipedia.Page(wikipedia.getSite(),u"Plantilla:Artículo bueno"),followRedirects=True,onlyTemplateInclusion=True) for page in gen: ab2.append(page.title()) print "en indice:"+ repr(len(ab1)) +"\n" print "Con plantilla:"+ repr(len(ab2)) +"\n" file=codecs.open("ajustebuenos.txt", mode='wb', errors='strict', encoding='utf-8', buffering=1) file.write( u"==En índice sin plantilla==\n") for ab in ab1: if ab not in ab2: file.write( "*[["+ab+"]]\n" ) file.write( u"==Con plantilla pero no en índice==\n") for ab in ab2: if ab not in ab1: file.write( "*[["+ab+"]]\n") file.close()