Wiki script - Dump sorgenti delle guide (Python 3): differenze tra le versioni

file scritto con codifica UTF8 e modifiche minori
mNessun oggetto della modifica
(file scritto con codifica UTF8 e modifiche minori)
Riga 37: Riga 37:
             # decodifica risposta
             # decodifica risposta
             risposta_dec = risposta.read().decode('utf-8')
             risposta_dec = risposta.read().decode('utf-8')
             # decodifica in JSON  
             # decodifica in JSON e converte gli interi in stringhe
             dati_json = json.loads(risposta_dec)
             dati_json = json.loads(risposta_dec, parse_int=str)


             return (dati_json)
             return (dati_json)
Riga 52: Riga 52:
         # esempio:
         # esempio:
         # {
         # {
         #    pageid1 : ['titolo1', ''],
         #    'pageid1' : ['titolo1', ''],
         #    pageid2 : ['titolo2', ''],
         #    'pageid2' : ['titolo2', ''],
         #    pageid3 : ['titolo3', ''],
         #    'pageid3' : ['titolo3', ''],
         #    ...
         #    ...
         #    ...
         #    ...
Riga 95: Riga 95:
     # e restituisce il dizionario completo, cioè qualcosa del tipo:
     # e restituisce il dizionario completo, cioè qualcosa del tipo:
     # {
     # {
     #    pageid1 : ['titolo1', 'contenuto1'],
     #    'pageid1' : ['titolo1', 'contenuto1'],
     #    pageid2 : ['titolo2', 'contenuto2'],
     #    'pageid2' : ['titolo2', 'contenuto2'],
     #    pageid3 : ['titolo3', 'contenuto3'],
     #    'pageid3' : ['titolo3', 'contenuto3'],
     #    ...
     #    ...
     #    ...
     #    ...
Riga 122: Riga 122:


     for elem in listFifty:
     for elem in listFifty:
         # separatore tra gli elementi della lista (interi) è "|"
         # separatore tra gli elementi della lista è "|"
         # es. 1234, 5678, 9012 -> 1234|5678|9012
         # es. 1234, 5678, 9012 -> 1234|5678|9012
         listaid = "|".join(map(str,elem))
         listaid = "|".join(elem)
         # inserisce questa stringa in una coda
         # inserisce questa stringa in una coda
         q.put(listaid)
         q.put(listaid)
Riga 139: Riga 139:
             for subelem in mystr.split('|'):             
             for subelem in mystr.split('|'):             
                 mycontent = d_reply['query']['pages'][subelem]['revisions'][0]['*']
                 mycontent = d_reply['query']['pages'][subelem]['revisions'][0]['*']
                 dizionario[int(subelem)][1] = mycontent
                 dizionario[subelem][1] = mycontent
              
              
             q.task_done()   
             q.task_done()   
Riga 166: Riga 166:


print('Scrittura sul file...')
print('Scrittura sul file...')
with open(NOMEFILE, 'w') as f:
with open(NOMEFILE, 'w', encoding='utf8') as f:
     for k,v in mydict.items():
     for k,v in mydict.items():
         # parsing di caratteri non consentiti in URL (i.e. il carattere "+")
         # parsing di caratteri non consentiti in URL (i.e. il carattere "+")
6 999

contributi