Python - Download de dados HTTP
Podemos baixar dados de um seridor usando o módulo python que manipula ftp ou protocolo de transferência de arquivos. Também podemos ler os dados e depois salvá-los no sistema local.
Precisamos instalar o módulo ftplib para conseguir isso.
pip install ftplib
Buscando os arquivos
Podemos buscar um arquivo específico usando o getfilemétodo. Este método move uma cópia do arquivo do sistema remoto para o sistema local de onde a conexão ftp foi iniciada.
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 executamos o programa acima, encontramos o arquivo README.nlug presente no sistema local de onde a conexão foi iniciada.
Lendo os dados
No exemplo abaixo, usamos o módulo urllib2 para ler a parte necessária dos dados que podemos copiar e salvá-los no sistema local.
Quando executamos o programa acima, obtemos a seguinte saída -
import urllib2
response = urllib2.urlopen('http://www.tutorialspoint.com/python')
html = response.read(200)
print html
Quando executamos o programa acima, obtemos a seguinte saída -
<!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