<syntaxhighlight lang=python>
# -*- coding: utf-8 -*-
#
# (c) 2010 Santoro Sergio
# Questo programma è software libero: puoi ridistribuirlo e/o modificarlo
# rispettando i termini della GNU General Public License pubblicata dalla
# Free Software Foundation, versione 3 o successive.
#
# Questo programma è distribuito nella speranza che possa essere
# utile, ma SENZA ALCUNA GARANZIA; senza neppure la garanzia
# implicita di COMMERCIABILITA' o IDONEITA' PER UN PARTICOLARE SCOPO.
# Per maggiori informazioni vedere la licenza completa su:
# http://www.gnu.org/licenses/
#TODO: aggiungere ulteriori commenti per rendere comprensibile il codice anche ai neofiti
import sys, re, time
import wikipedia as pywikibot
import pagegenerators
import editarticle
import webbrowser
day = time.localtime().tm_mday
month = time.localtime().tm_mon
intYear = time.localtime().tm_year
intYear = intYear+1 if month==12 else intYear
month = month % 12 + 1
year = str(intYear)
strMonth = str(month)
strMonth = '0'+strMonth if len(strMonth)==1 else strMonth
if not (day in range(27, 32)):
pywikibot.output(u'Lasso di tempo non valido per l\'esecuzione. Giorno rilevato: '+str(day))
sys.exit()
Oggetto="[[WP:Bot|Bot]]: Creazione categoria mensile"
cifreMesi={"01":"gennaio","02":"febbraio","03":"marzo","04":"aprile","05":"maggio","06":"giugno","07":"luglio","08":"agosto","09":"settembre","10":"ottobre","11":"novembre","12":"dicembre"}
monthName = cifreMesi[strMonth]
Elenco=[
u"Categoria:Aiutare - "+monthName+" "+year,
u"Categoria:Controllare - "+monthName+" "+year,
u"Categoria:Controllare copyright - "+monthName+" "+year,
u"Categoria:Verificare enciclopedicità - "+monthName+" "+year,
u"Categoria:Senza fonti - "+monthName+" "+year,
u"Categoria:Contestualizzare fonti - "+monthName+" "+year,
u"Categoria:Localismo - "+monthName+" "+year,
u"Categoria:Pagine orfane - "+monthName+" "+year,
u"Categoria:Voci non neutrali - "+monthName+" "+year,
u"Categoria:Tradurre - "+monthName+" "+year,
u"Categoria:Unire - "+monthName+" "+year,
u"Categoria:Wikificare - "+monthName+" "+year,
u"Categoria:Lavoro sporco - "+monthName+" "+year,
u"Categoria:Voci monitorate - "+monthName+" "+year,
u"Categoria:Voci entrate in vetrina nel mese di "+monthName+" "+year,
u"Categoria:Voci di qualità valutate nel mese di "+monthName+" "+year
]
parVariabili={
0:["A","Aiutare per mese","Aiutare"],
1:["C","Controllare per mese","Controllare"],
2:["Controlcopy","Controllare copyright per mese","Controllare copyright"],
3:["E",u"Verificare enciclopedicità per mese",u"Enciclopedicità"],
4:["F","Senza fonti per mese","Fonti"],
5:["NN","Contestualizzare fonti per mese","Fonti non contestualizzate"],
6:["L","Localismo per mese","Localismo"],
7:["O","Pagine orfane per mese","Orfane"],
8:["P","Voci non neutrali per mese","POV"],
9:["T","Tradurre per mese","Tradurre"],
10:["U","Unire per mese","Unire"],
11:["W","Wikificare per mese","Wikificare"],
}
##CREAZIONE DELLE CATEGORIE MENSILI
for i in range(12):
pagina = pywikibot.Page("it",Elenco[i])
if not pagina.exists():
Testo=u"""__HIDDENCAT__
{{categoria lavoro|"""+parVariabili[i][0]+"|data="+monthName+" "+year+u"""}}
{{Indice categoria}}\n
[[Categoria:"""+parVariabili[i][1]+u"| "+year+" "+strMonth+u"""]]
[[Categoria:Lavoro sporco - """+monthName+" "+year+u"|"+parVariabili[i][2]+"]]"
pagina.put(Testo, Oggetto)
else:
pywikibot.output(u'Pagina "'+Elenco[i]+u'" già esistente.')
##CREAZIONE DELLA CATEGORIA RIEPILOGATIVA MENSILE
pagina = pywikibot.Page("it",Elenco[12])
if not pagina.exists():
Testo=u"Questa categoria serve per coordinare il [[Aiuto:Lavoro sporco|lavoro sporco]] nel mese di "+monthName+" "+year+u""".\n
[[Categoria:Lavoro sporco per mese| """+year+" "+strMonth+u"]]"
pagina.put(Testo, Oggetto)
else:
pywikibot.output(u'Pagina di riepilogo già esistente.')
##CREAZIONE DELLA CATEGORIA PER LE VOCI MONITORATE
pagina = pywikibot.Page("it",Elenco[13])
if not pagina.exists():
Testo=u"[[Categoria:Voci monitorate per mese| "+year+" "+strMonth+u"]]"
pagina.put(Testo, Oggetto)
else:
pywikibot.output(u'Pagina per le voci monitorate già esistente.')
##CREAZIONE DELLA CATEGORIA PER LA VETRINA
pagina = pywikibot.Page("it",Elenco[14])
if not pagina.exists():
Testo=u"Questa categoria comprende le voci entrate in vetrina nel corso del mese di "+monthName+" "+year+""".
__HIDDENCAT__\n
[[Categoria:Voci in vetrina per mese| """+year+" "+strMonth+u"]]"
pagina.put(Testo, Oggetto)
else:
pywikibot.output(u'Pagina per la vetrina già esistente.')
##CREAZIONE DELLA CATEGORIA PER LE VOCI DI QUALITÀ
pagina = pywikibot.Page("it",Elenco[15])
if not pagina.exists():
Testo=u"Questa categoria comprende le voci riconosciute di qualità nel corso del mese di "+monthName+" "+year+u""".
__HIDDENCAT__\n
[[Categoria:Voci di qualità per mese| """+year+" "+strMonth+u"]]"
pagina.put(Testo, Oggetto)
else:
pywikibot.output(u'Pagina per le voci di qualità già esistente.')