Vorrei scaricare il file tramite il protocollo HTTP
utilizzando urllib3
. Sono riuscito a fare questo seguente codice utilizzando:Qual è il modo migliore per scaricare il file utilizzando urllib3
url = 'http://url_to_a_file'
connection_pool = urllib3.PoolManager()
resp = connection_pool.request('GET',url)
f = open(filename, 'wb')
f.write(resp.data)
f.close()
resp.release_conn()
ma mi chiedevo che cosa è la corretta modo di fare questo. Ad esempio, funzionerà bene per i file di grandi dimensioni e se non c'è alcuno da fare per rendere questo codice più tollerante ai bug e scalabile.
Nota. Per me è importante usare la libreria urllib3
non urllib2
perché voglio che il mio codice sia sicuro per i thread.
Bene. Grazie per la risposta. –
E un'altra domanda. Funzionerà con il metodo POST se aggiungo 'r = http.request ('POST', url)'? –
@ running.t Err, è stato un errore nel mio codice. Hai ragione, il metodo dovrebbe andare per primo e il tuo frammento funzionerà. (Aggiornato la mia risposta.) – shazow