Gebruiker:Bitbotje/logmovestomain.py

Uit Wikipedia, de vrije encyclopedie

Script voor Gebruiker:Bitbotje/Logboek verplaatsingen naar de hoofdnaamruimte.

# -*- coding: utf-8 -*-
"""
Searches the move logs for moves to the main namespace and generates a report.
"""
#
# (C) bdijkstra 2018
#
# Distributed under the terms of the MIT license.
#

import datetime
import locale
import pywikibot

from datetime import timedelta
from pywikibot.data import api


site = pywikibot.Site('nl')
locale.setlocale(locale.LC_ALL, 'nl')   # strftime()

now = site.server_time()
oneWeekAgo = now - timedelta(days=7)

wikistr = u"Hieronder staat een lijst van pagina's die zijn verplaatst naar de hoofdnaamruimte vanuit een andere naamruimte. Deze pagina wordt meerdere malen per week bijgewerkt door een bot. De tijden zijn in UTC.\n\n"

for item in api.LogEntryListGenerator(site=site, logtype='move', 
                                                letype='move', lelimit='500'):
    if item.target_ns == 0 and item.ns() != 0:
        if item.timestamp() <= oneWeekAgo:
            break
        if site.isBot(item.user()):
            continue
        day = int(u'%s' % item.timestamp().strftime("%d"))
        wikistr += u'* %d %s' % (day, item.timestamp().strftime("%b %Y %H:%M"))
        wikistr += u' [[Special:Contributions/%s|%s]]' % (
                                                    item.user(), item.user())
        wikistr += u' heeft pagina %s hernoemd naar %s' % (
            item.page().title(as_link=True, textlink=True), 
            item.target_page.title(as_link=True, textlink=True))
        if item.comment():
            wikistr += " ''(%s)''" % item.comment().replace('<', '&lt;')
        wikistr += u'\n'
    

pywikibot.Page(site, 
        u'User:Bitbotje/Logboek verplaatsingen naar de hoofdnaamruimte'
        ).put(wikistr, summary=u'update')