Wikibooks:Elenchi generati offline/Libri non linkati nei ripiani: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
creo |
(Nessuna differenza)
|
Versione delle 17:23, 17 ago 2012
Questo elenco generato il da una query su una copia del database di Wikibooks raccoglie tutte le pagine che sono libri non linkati in alcun ripiano.
Query
Alternative
- Apri [1], scorri fino al dump più recente, scarica il dump "List of page titles"; scompattalo.
- Esegui su terminale (Unix/Linux):
echo 'titoli = [' > titoli.txt grep -v '/' < list_of_page_titles | sed 's/\"/\\"/g ; s/^/"/ ; s/$/",/' >> titoli.txt echo '];' >> titoli.txt
- Apri una pagina di Wikibooks, e la console Javascript del browser che stai usando.
- Copia tutto il testo del file titoli.txt ed eseguito nella console come una sola istruzione JS.
- Incolla questo codice nella console ed eseguilo:
console.log("Libri che non sono linkati dai ripiani:"); for(i = 0, j = 10; i < titoli.length; i+= 10, j+= 10) { analizza(titoli.slice(i, j)); } console.log("Fine elenco."); // @param titoli Un array di non più di 10 titoli. function analizza(titoli) { query = $.ajax({ url: mw.util.wikiScript('api'), // Questa API non supporta più di 10 titoli alla volta... data: { action: 'query', prop: 'info', titles: titoli.join("|"), format: 'json' }, type: 'POST', async: false }); pagine = JSON.parse(query.responseText).query.pages; for(id in pagine) { if (pagine[id].redirect != undefined) // è un redirect continue; query = $.ajax({ url: mw.util.wikiScript('api'), data: { action: 'query', list: 'backlinks', blnamespace: 102, bltitle: pagine[id].title, format: 'json' }, async: false }); backlinks = JSON.parse(query.responseText).query.backlinks; if (backlinks.length == 0) console.log("# [[" + pagine[id].title + "]]"); } }