Usuari:TronaBot/Python/Taxobox.py
Aparença
< Usuari:TronaBot | Python
# -*- coding: utf8 -*-
# 12-10-07 by w:ca:User:Pasqual
import wikipedia, category, re, codecs
from pagetext import pageText
site=wikipedia.getSite()
def whatLinksTo(element):
quehienllaca=wikipedia.Page(site, element)
quehienllaca=pageText('http://ca.wikipedia.org/w/index.php?title=Special:Whatlinkshere/'+
quehienllaca.urlname()+'&limit=5000&from=0').decode('utf-8')
elements=quehienllaca.split('<ul>')[1]
pags=re.findall(ur'<li><a href=".*">(.*?)<\/a> \(',elements)
print u"S'ha trobat %d pàgines."% len(pags)
return pags
pags = whatLinksTo("Template:Taxobox")
pagsSnsBinom=[]
pagsSnsWikispAmbBinom=[]
for pag in pags:
pagina=wikipedia.Page(site, pag)
text=pagina.get()
if "{{wikispecies|" not in text:
envia = u"%s no conté {{wikispecies}}" % pag
binomial=re.search("\|\s*binomial\s*=\s*('')?([a-zA-Z ]*)('')?\s*",text)
if binomial:
binomial=binomial.group(2)
pagsSnsWikispAmbBinom.append("# [[%s]] binomial: %s"%(pag,binomial) )
#pagina.put(
envia += u"\nbinomial trobat: %s"%binomial
else:
envia += u"\nno s'ha especificat el nom binomial"
pagsSnsBinom.append("# [[%s]]"%pag)
else:
envia = u"%s, conté la plantilla"%pag
print "%d/%d %s\n"%(pags.index(pag)+1,len(pags),envia)
print "==articles sense {{tl|wikispecies}} ni binomial=="
pagsSnsBinom.sort()
for pag in pagsSnsBinom:
print pag
pagsSnsWikispAmbBinom.sort()
print "\n==articles sense {{tl|wikispecies}} amb binomial=="
for pag in pagsSnsWikispAmbBinom:
print pag