User:GlanthorBot/napkepe.py

A Wikipédiából, a szabad lexikonból.

#!/usr/bin/python
# -*- coding: utf-8  -*-
"""
A huwiki nap képéhez másolja át a szükséges allapokat a commonsból,
és legyártja a havi archívum galériát.
v0.1
"""
import sys, wikipedia, datetime

honapok = {u'--január': ['01', 31], u'--február': ['02', 28],
           u'--március': ['03', 31], u'--április': ['04', 30],
           u'--május': ['05', 31], u'--június': ['06', 30],
           u'--július': ['07', 31], u'--augusztus': ['08', 31],
           u'--szeptember': ['09', 30], u'--október': ['10', 31],
           u'--november': ['11', 30], u'--december': ['12', 31]}

arg = wikipedia.handleArgs()
if len(arg) == 0:
    print u'Nem kaptam paramétert! Honnan tudjam melyik havi adagot másoljam?'
    sys.exit()
elif honapok.has_key(arg[0]):
    honap = honapok[arg[0]][0]
    meddig = honapok[arg[0]][1] + 1
else:
    print u'Hibás paraméter!'
    sys.exit()
    
try:
    
    wikipedia.activateLog('napkepe' + str(datetime.date.today()) + '.log')
    
    arch = u'== ' + honap + u'. havi képek archívuma ==\n\n<gallery>\n'
    
    for nap in range(1, meddig):
        mySite = wikipedia.getSite(code= u'commons', fam= u'commons')
        page = wikipedia.Page(mySite, 'Template:Potd/2006-' + honap \
                              + '-' + str(nap))
        pic = page.get()
        page = wikipedia.Page(mySite, 'Template:Potd/2006-' + honap \
                              + '-' + str(nap) + ' (hu)')
        text = page.get()

        mySite = wikipedia.getSite(code= u'hu', fam= u'wikipedia')
        page = wikipedia.Page(mySite, u'Sablon:Napképe/2006-' + honap \
                              + '-' + str(nap))
        page.put(pic, u'Robot: allap másolása a commonsból ' + \
                 '[Template:Potd/2006-' + honap + '-' + str(nap) + ']')
        page = wikipedia.Page(mySite, u'Sablon:Napképe/2006-' + honap \
                              + '-' + str(nap) + ' (hu)')
        page.put(text, u'Robot: allap másolása a commonsból' \
                 '[Template:Potd/2006-' + honap + '-' + str(nap) + ' (hu)]')

        arch += u'Kép:' + pic + '|' + str(nap) + u'. {{Napképe/2006-' + honap \
                + '-' + str(nap) + ' (hu)}}\n'
    
    arch += '</gallery>'
    mySite = wikipedia.getSite(code= u'hu', fam= u'wikipedia')
    page = wikipedia.Page(mySite, u"Wikipédia:A nap képe/2006-" + honap)
    page.put(arch, u'Robot: archívum galéria [' + honap + u'. hónap]')
    
finally:
    wikipedia.stopme()