Utente:TauerBot/CategorieMensili.py

<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.')