Manual:Pywikibot/replace.py/it

Replace.py è uno script appartenente al framework di pywikipedia bot.

Questo script permette al bot di eseguire sostituzioni di testo. Il bot raccoglierà informazioni dalle pagine che potrebbero necessitare di essere modificate come un file dump XML o un file di testo, o solo una pagina indicata.

Puoi eseguire il bot con i seguenti parametri:
 * -xml
 * Prende informazioni da un dump XML locale (pages_current, vedi http://download.wikimedia.org). Il comando può essere digitato anche così:.


 * -file
 * Lavora in tutte le pagine date in una file di testo locale (dentro il tuo pc). Leggerà ogni wiki link e utilizzerà questi articoli. Il comando può essere digitato anche così: "


 * -cat
 * Lavora in tutte le pagine di una specifica categoria. Il comando può essere dato anche così:.


 * -page
 * Questo comando serve per far scansionare al bot una sola pagina, utile per fare dei test in sandbox. Il comando può essere dato anche così:.


 * -ref
 * Lavora su tutte le pagine che linkano ad una certa pagina. Il comando piò essere dato anche così:.


 * -filelinks
 * Lavora in tutte le pagine che linkano ad una certa immagine. Il comando può essere dato così:


 * -links
 * Lavora in tutte le pagine che sono linkate da una certa pagina.


 * -start
 * Serve per far partire lo script da una certa pagina per tutta la wiki. Scrivi start:! per iniziare dall’inizio. NOTA: è consigliato usare  invece che questa opzione; essa serve per quei casi in cui non c’è un XML dump recente.


 * -regex
 * Fa sostituzioni utilizzando le regex (espressioni regolari). Se non è dato questo comando, il bot farà semplici sostituzioni di testo


 * -summary:XYZ
 * Inserisce il messaggio XYZ nell'oggetto quando il bot fa delle modifiche, bypassando il messaggio predefinito che dovrebbe apparire.


 * -except:XYZ
 * N.B.: solo vecchia versione. Ignora pagine che contengono XYZ. Se è dato il comando –regex, XYZ sarà considerato come una regex.


 * --excepttitle:XYZ
 * N.B.: solo nuova versione. Ignora pagine che contengono XYZ nel titolo. Se è dato il comando –regex, XYZ sarà considerato come una regex.


 * -excepttext:XYZ
 * N.B.: solo nuova versione. Ignora pagine che contengono XYZ nel testo. Se è dato il comando –regex, XYZ sarà considerato come una regex.


 * -exceptinside:XYZ
 * N.B.: solo nuova versione. Ignora le occorrenze del testo da sostituire contenute nel testo XYZ. Se è dato il comando –regex, XYZ sarà considerato come una regex.


 * -exceptinsidetag:XYZ
 * N.B.: solo nuova versione. Ignora le occorrenze del testo da sostituire contenute nel tag XYZ. Se è dato il comando –regex, XYZ sarà considerato come una regex.


 * -fix:XYZ
 * Esegue uno delle sostituzioni predefinite che sono presenti nel dizionario 'fixes' definito dentro il file replace.py. Il comando –regex e le sostituzioni date saranno ignorate se utilizzi il comando -fix
 * HTML – converte i tag HTML in sintassi wiki e sistema i XHTML


 * -namespace:n
 * Numero dei namespace da eseguire.


 * -always
 * Serve per dare [a]ll come scelta predefinita e quindi per non dover scegliere ogni volta.


 * -recursive
 * Ripete le sostituzioni finché è possibile


 * -nocase
 * Nelle regex non usa il "Case Sensitive" (ovvero Abba e abba per il bot saranno uguali.)


 * -allowoverlap
 * Quando le occorrenze del pattern si sovrappongono, le sostituisce tutte ma attenzione! Non usare questa opzione se non sai quello che stai facendo, perché può facilmente dar luogo a cicli infiniti


 * Le sostituzioni
 * Dopo i comandi si deve inserire il vecchio testo fra due virgolette, mettere uno spazio e inserire tra altre due virgolette il testo nuovo (“vecchio testo” “nuovo testo”). Se è stato dato il comando –regex precedentemente, il primo testo sarà considerato come una espressione regolare e il secondo potrebbe contenere espressioni come \1 o \g.

NOTA BENE: Utilizza o  o   o , ma non utilizzarli in contemporanea. Esempi:

Se vuoi cambiare i template dalla vecchia sintassi, come, alla nuova sintassi, come  , scaricare un file XMP dump (cur table) da http://download.wikimedia.org, e poi utilizza questo comando:

python replace.py -xml -regex "" ""

Se tu hai un dump chiamato foobar.xml e vuoi sistemare alcuni errori di digitazione, come: Errrore -> Errore, scrivi così:

python replace.py -xml:foobar.xml "Errrore" "Errore"

Se hai una pagina chiamata 'John Doe' e vuoi convertire i tag HTML alla sintassi wiki, utilizza:

python replace.py -page:John_Doe -fix:HTML