Python - Download dati HTTP

Possiamo scaricare i dati da un server utilizzando il modulo di python che gestisce ftp o File Transfer Protocol. Possiamo anche leggere i dati e successivamente salvarli nel sistema locale.

Dobbiamo installare il modulo ftplib per ottenere questo.

pip install ftplib

Recupero dei file

Possiamo recuperare un file specifico utilizzando il getfilemetodo. Questo metodo sposta una copia del file dal sistema remoto al sistema locale da cui è stata avviata la connessione ftp.

import ftplib
import sys
 
def getFile(ftp, filename):
    try:
        ftp.retrbinary("RETR " + filename ,open(filename, 'wb').write)
    except:
        print "Error"
 
 
ftp = ftplib.FTP("ftp.nluug.nl")
ftp.login("anonymous", "ftplib-example-1")
 
ftp.cwd('/pub/')          change directory to /pub/
getFile(ftp,'README.nluug')
 
ftp.quit()

Quando eseguiamo il programma precedente, troviamo il file README.nlug presente nel sistema locale da cui è stata avviata la connessione.

Leggere i dati

Nell'esempio seguente utilizziamo il modulo urllib2 per leggere la parte richiesta dei dati che possiamo copiare e salvare nel sistema locale.

Quando eseguiamo il programma sopra, otteniamo il seguente output:

import urllib2
response = urllib2.urlopen('http://www.tutorialspoint.com/python')
html = response.read(200)
print html

Quando eseguiamo il programma sopra, otteniamo il seguente output:

<!DOCTYPE html>
<!--[if IE 8]><html class="ie ie8"> <![endif]-->
<!--[if IE 9]><html class="ie ie9"> <![endif]-->
<!--[if gt IE 9]><!-->  <html> <!--<![endif]-->
<head>
<!-- Basic -->
<meta charset="ut