#!/usr/bin/python
# -*- coding: utf-8 -*-
import wikipedia
import pagegenerators
import catlib
##################################################################
## Statistichemanutenzioni.py versione 0.5.1
## Elaborato da Yuma.
## Aggiorna le tabelle per le statistiche dei singoli progetti.
## Attenzione: assicurarsi che la tabella esista, il bot non è
## sempre in grado di capirlo da solo... :)
##
## Istruzioni:
## Inserire quando richiesto il nome del progetto in minuscolo
## (es: per il Progetto:Teatro inserire "teatro")
##
##################################################################
def main(nomeprogetto):
lettera=u'!'
tabella=wikipedia.Page('it', 'Progetto:'+nomeprogetto+ '/Statistiche manutenzioni')
print tabella
if tabella.exists():
progetto=nomeprogetto
else:
progetto=''
wikipedia.stopme()
prog=wikipedia.Page('it', 'Progetto:'+progetto)
titoloprog=prog.title()
commento=u'Bot: aggiorno statistiche del '+titoloprog
commento2=u'aggiorno log'
if prog.exists():
#stub
numerostub=''
categoryname = (u'Stub '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numerostub=str(count)
lenstub=len(numerostub)
stub=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Stub')
stub.put(numerostub, comment=commento)
#wikif
categoryname = (u'Da wikificare '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
wikif=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Wikificare')
wikif.put(numero, comment=commento)
#contr
categoryname = (u'Da controllare '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
contr=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Controllare')
contr.put(numero, comment=commento)
#trad
categoryname = (u'Da tradurre - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
trad=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Tradurre')
trad.put(numero, comment=commento)
#npov
categoryname = (u'Segnalazioni NPOV '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
npov=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/NPOV')
npov.put(numero, comment=commento)
#ctrlcopy
categoryname = (u'Da controllare per copyright - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
ctrlcopy=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Controlcopy')
ctrlcopy.put(numero, comment=commento)
#orfane
categoryname = (u'Pagine orfane - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
orfane=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Orfane')
orfane.put(numero, comment=commento)
#aiut
categoryname = (u'Da aiutare '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
aiut=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Aiutare')
aiut.put(numero, comment=commento)
#fonti
categoryname = (u'Voci mancanti di fonti - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
fonti=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Senza fonti')
fonti.put(numero, comment=commento)
#ency
categoryname = (u'Da verificare per enciclopedicità - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
ency=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Ency')
ency.put(numero, comment=commento)
#unire
categoryname = (u'Da unire - '+progetto)
cat = catlib.Category(wikipedia.getSite(), 'Categoria:%s' % categoryname)
gen = pagegenerators.CategorizedPageGenerator(cat, recurse = True, start=lettera)
count=len(gen)
numero=aggiusta(count, lenstub)
aiut=wikipedia.Page('it', titoloprog+'/Statistiche manutenzioni/Unire')
aiut.put(numero, comment=commento)
def aggiusta(count, lenstub):
numero=str(count)
lenght=len(numero)
if lenght < lenstub:
numero='0'+numero
lenght=len(numero)
if lenght < lenstub:
numero='0'+numero
lenght=len(numero)
if lenght < lenstub:
numero='0'+numero
lenght=len(numero)
if lenght < lenstub:
numero='0'+numero
lenght=len(numero)
return numero
try:
nomeprogetto=wikipedia.input('nome del progetto: ')
main(nomeprogetto)
finally:
wikipedia.stopme()