Szerkesztő:GlanthorBot/napkepe.py

A Wikipédiából, a szabad enciklopédiából

Újabb változata: Szerkesztő:Tgr/napkepe.py

#!/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.19b
"""
import sys, wikipedia, datetime, re
 
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]}
 
honapoki = {u'--január': u'Januári', u'--február': u'Februári',
           u'--március': u'Márciusi', u'--április': u'Áprilisi',
           u'--május': u'Májusi', u'--június': u'Júniusi',
           u'--július': u'Júliusi', u'--augusztus': u'Augusztusi',
           u'--szeptember': u'Szeptemberi', u'--október': u'Októberi',
           u'--november': u'Novemberi', u'--december': u'Decemberi'}
 
arg = wikipedia.handleArgs()
if len(arg) == 0:
    print u'Nem kaptam paramétert! Honnan tudjam melyik havi adagot másoljam?'
    sys.exit()
elif arg[0] in honapok:
    honap = honapok[arg[0]][0]
    meddig = honapok[arg[0]][1] + 1
else:
    print u'Hibás paraméter!'
    sys.exit()
 
try:
 
    rx = re.compile(r'<noinclude>\[\[Category:Potd templates\]\]</noinclude>')
    arch = u'== ' + honapoki[arg[0]] + u' 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/2008-' + honap \
                              + '-' + str(nap).zfill(2))
        pic = page.get()
        page = wikipedia.Page(mySite, 'Template:Potd/2008-' + honap \
                              + '-' + str(nap).zfill(2) + ' (hu)')
        text = page.get()

        arch += u'Kép:'+pic+'|'+str(nap).zfill(2)+u'. {{Napképe/2008-'+honap+'-' \
                +str(nap).zfill(2)+u' (hu)}} {{szerkeszt|Sablon:Napképe/2008-'+honap \
                +'-'+str(nap).zfill(2)+u' (hu)|<sub>(javít)</sub>}}\n'                

        pic = rx.sub(u'<noinclude>[[Kategória:Napképe sablonok|{{SUBPAGENAME}}]]</noinclude>', pic)
        text = rx.sub(u'<noinclude>[[Kategória:Napképe sablonok|{{SUBPAGENAME}}]]</noinclude>', text)
 
        mySite = wikipedia.getSite(code= u'hu', fam= u'wikipedia')
        page = wikipedia.Page(mySite, u'Sablon:Napképe/2008-' + honap \
                              + '-' + str(nap).zfill(2))
        page.put(pic, u'allap másolása a Commonsból ' + \
                 '[Template:Potd/2008-' + honap + '-' + str(nap).zfill(2) + ']', minorEdit = False)
        page = wikipedia.Page(mySite, u'Sablon:Napképe/2008-' + honap \
                              + '-' + str(nap).zfill(2) + ' (hu)')
        page.put(text, u'allap másolása a Commonsból ' + \
                 '[Template:Potd/2008-' + honap + '-' + str(nap).zfill(2) + ' (hu)]', minorEdit = False)

    arch += '</gallery>'
    arch = rx.sub('', arch)  

    mySite = wikipedia.getSite(code= u'hu', fam= u'wikipedia')
    page = wikipedia.Page(mySite, u"Wikipédia:A nap képe/2008-" + honap)
    page.put(arch, honapoki[arg[0]] + u' archívum galéria', minorEdit = False)
 
finally:
    wikipedia.stopme()