Sto cercando un modo semplice per salvare un file csv proveniente da un documento di Fogli Google pubblicato? Dal momento che è pubblicato, è accessibile tramite un collegamento diretto (modificato di proposito nell'esempio sotto).Come si salva un file Fogli Google come CSV da Python 3 (o 2)?
Tutti i miei browser mi chiederanno di salvare il file csv non appena lancio il collegamento.
Né:
DOC_URL = 'https://docs.google.com/spreadsheet/ccc?key=0AoOWveO-dNo5dFNrWThhYmdYW9UT1lQQkE&output=csv'
f = urllib.request.urlopen(DOC_URL)
cont = f.read(SIZE)
f.close()
cont = str(cont, 'utf-8')
print(cont)
, nè:
req = urllib.request.Request(DOC_URL)
req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1284.0 Safari/537.13')
f = urllib.request.urlopen(req)
print(f.read().decode('utf-8'))
stampa tutt'altro che contenuti HTML.
(provato la seconda versione dopo aver letto questo altro post: Download google docs public spreadsheet to csv with python.)
Qualche idea su quello che sto facendo male? Sono disconnesso dal mio account Google, se questo vale tutto, ma funziona da qualsiasi browser che ho provato. Per quanto ho capito, l'API di Google Docs non è ancora stata trasferita su Python 3 e vista la grandezza "giocattolo" del mio piccolo progetto per uso personale, non sarebbe nemmeno troppo logico utilizzarlo fin dall'inizio, se Posso aggirarlo.
Nel 2 ° tentativo, ho lasciato l''User-Agent', poiché stavo pensando che forse le richieste pensate come provenienti dagli script (b/c non sono presenti informazioni di identificazione) potrebbero essere ignorate, ma non ha reso una differenza.
Grazie per la risposta, lo apprezzo davvero! –