Jump to content

User:EditCountBot/Code

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
# Completes a template containing the editcount of a user,
# so it can then be used by other templates/userboxes that
# take the edit count of a user as a parameter.

# Sandbox for testing, not a complete bot


import wikipedia, userlib, re

site = wikipedia.getSite()
templateLocation = 'User:EditCountBot/Counter'

for page in wikipedia.Page(site, templateLocation).getReferences(follow_redirects=False,onlyTemplateInclusion=True):
    text = page.get()
    for username in re.findall(r'\{\{.*?user=(.*?)\|.*?\}\}', text, re.I):
        user = userlib.User(site, username)
        editCount = str(user.editCount())
        newTemplate = '{{' + templateLocation + '|user=' + username + '|count=' + editCount + '}}'
        text = re.sub(r'\{\{User:EditCountBot/Counter\|.*?user=EdoDodo.*?\}\}', newTemplate, text)
    wikipedia.showDiff(page.get(), text)