Python HTTP数据下载

可以使用处理ftp或文件传输协议的python模块从serer下载数据。还可以读取数据,然后将其保存到本地系统。需要安装模块ftplib来实现此目的。

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25pip install ftplib
 

提取文件

可以使用getfile方法获取特定文件。此方法将文件的副本从远程系统移动到启动ftp连接的本地系统。

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25import 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()
 

当运行上述程序时,发现文件README.nlug存在于启动连接的本地系统中。

读取数据

在以下示例中,使用模块urllib2读取数据的必需部分,可以将其复制并保存到本地系统中。当我们运行上面的程序时,得到以下输出 :

 
# Filename : example.py# Copyright : 2020 By Aizws# Author by : www.aizws.net# Date : 2020-08-25import urllib2 response = urllib2.urlopen('https://www.aizws.net/python/spider-test.html') html = response.read() print html
 

执行上面示例代码,得到类似以下结果:

 
<html lang="en"> <head>    <meta charset="UTF-8">    <title>python spider </title> </head> <body>    Hello,I am aizws    Welcome to Python spider </body> </html>  
 

下一章:Python 连接重用

当客户端向服务器发出有效请求时,它们之间将建立一个临时连接以完成发送和接收过程。但是在某些情况下,由于正在通信的程序之间需要自动请求和响应,因此需要保持连接状态。以一个交互式网页为例。加载网页后,需要提交表单数据或下 ...