User:Alex brolloBot

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
  1. Bot driven by User:Alex brollo, mostly working into it.source: it:s:Utente:Alex brollo. Please use Special:EmailUser/Alex brollo for a quick reply.
  2. Tasks: scope: nsFile information pages for djvu files linked to it.wikisource Index: pages only and related pages (Creator, illustrations uploaded as single images files)
    1. Converting {{Information}} into {{Book}}
    2. Creating pages into nsCreator.
  3. The bot will run automatically..
  4. The bot will be run intermittently.
  5. 4 edit/min are needed (it would needed to fix large illustration collections, hundreds in some works).
  6. The bot uses pywikipedia framework scripts only.

The bot runs too into it.source both locally and from toolserver as it:s:User:Alebot.

(updated sept, 2012)

Test edits begin now[edit]

Now tests of Commons pages edit start.

First test task
  1. a list of all nsIndice pages into wikisource is downloaded by a prefixGen() personal script and a dictionary of Commons nsFile pages:wikitext is built and saved locally.
  2. dictionary will be browsed to find mistakes (focusing first on Pd templates);
  3. to-do-lists will be written by bot on User:Alex brolloBot pages.
  4. a comment "Test edit by unflagged bot" will be added to any edit.

There are 255 djvu/pdf files tagged with deprecated PD template {{PD-old}}. In 180 cases there's no other PD template; I'll write the list of titles into /Todo by bot, then I'll replace {{PD-old}} with {{PD-old}} {{PD-1923}} for some of them.

Second task
a request by Judithcomm
for i in generatore:
    i.put(i.get().replace("[[Category:Book illustrations]]\n",""),comment="Test edit by unflagged bot. See User:Judithcomm request into [[User talk:Alex brollo]]")
Bot launched, now. Stopped once, to slow down throttle; relaunched; ok.
Third test task
  1. a collection of metadata coming from it.wikisource, en.wikipedia and it.wikipedia is posted into File: djvu pages used by it.wikisource as a JSON coded object, wrapping it into a html comment. Such an object is intended to be parsed by js and used to update Book template if needed. Some days are needed to write and test scripts. See User talk:Jarekt to understand current tests about similar jobs.

Tagging File page for deletion[edit]

Here a script to support tagging files for deletion.

Script reads names of pages, takes a look to ImagePage and loads into a dictionary three items:

  • users, list of creators;
  • free, list of ImagePage objects where page.globalUsage==0;
  • problem, list of ImagePage objects where page.globalUsage!=0.

Dict is both returned for immediate use and locally saved as toDelete.pcl file.


# -*- coding: utf-8 -*-
from scripts import * # personal collection of common scripts & modules 
import os    # not used here
import json  # not used here
commons=wikipedia.Site("commons","commons")

def imagepage(nome):
    pagina=wikipedia.ImagePage(commons,nome)
    creator=pagina.getCreator()
    l=[]
    for i in pagina.globalUsage():
        l.append(i)
    return (pagina,creator,l)
    
def deleteRequest(l):
    users,free,problem=[],[],[]
    for i in l:
        page,user,used=imagepage(i)
        print page,user[0],len(used)
        if not user[0] in users:
            users.append(user[0])
        if len(used)==0:
            free.append(page)
        else:
            problem.append(page)
    result={"users":users,"free":free,"problem":problem}
    salva_pcl(result,"toDelete","")
    return result