Utente:ItwikiBot/datiwikipedie.py: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
rimossa mo.wikipedia.org
formatto mesi senza librerie
Riga 5:
# (C) https://it.wikipedia.org/wiki/Utente:Rotpunkt, 2018, under the MIT License
# Aggiorna le statistiche di https://it.wikipedia.org/wiki/Template:Dati_Wikipedie/dati
#
 
import datetime
from pywikibot import date
from pywikibot.data.wikistats import WikiStats
import pywikibot
 
def formatStat(args):
return '''| {prefix} = {{{{#switch:{{{{{{2}}}}}}
| NUMBEROFARTICLES | ARTICLES = {good}
| NUMBEROFFILES | FILES = {images}
| NUMBEROFPAGES | PAGES = {total}
| NUMBEROFUSERS | USERS = {users}
| NUMBEROFACTIVEUSERS | ACTIVEUSERS = {activeusers}
| NUMBEROFADMINS | ADMINS = {admins}
| NUMBEROFEDITS | EDITS = {edits}
| 0 }}}}\n'''.format(**args)
 
def formatMonth(value):
month_name = {
1: 'gennaio',
2: 'febbraio',
3: 'marzo',
4: 'aprile',
5: 'maggio',
6: 'giugno',
7: 'luglio',
8: 'agosto',
9: 'settembre',
10: 'ottobre',
11: 'novembre',
12: 'dicembre'
}
return month_name[value]
 
def main():
ws = WikiStats()
stats = ws.sorted('wikipedia', 'good')
# rimuove mo.wikipedia.org redirect a ro.wikipedia.org
stats = [stat for stat in stats if stat['prefix'] != 'mo']
now = datetime.datetime.now()
text = '{{#switch:{{{1}}}\n'
text += '| data = %d %s %d\n' % (now.day, date.formats['MonthName']['it']formatMonth(now.month), now.year)
total = { 'good': 0, 'images': 0, 'total': 0, 'users': 0, 'activeusers': 0, 'admins': 0, 'edits': 0 }
for stat in stats:
text += formatStat(stat)
for key in total:
total[key] += int(stat[key])
 
total['prefix'] = 'total'
text += formatStat(total)
text += '| 0 }}\n'
 
pywikibot.handleArgs()
site = pywikibot.Site()
page = pywikibot.Page(site, 'Template:Dati Wikipedie/dati')
page.put(text, 'Bot: aggiornamento dati')
 
if __name__ == '__main__':
main()
</source>