python 下载文件汇总

来源:互联网 发布:2016网络作家排名 编辑:程序博客网 时间:2024/04/30 15:26

http://blog.csdn.net/w122079514/article/details/16864851

简单文件下载 使用htttplib2:

[python] view plain
  1. h = httplib2.Http()          
  2. url = 'http://www.xxx.com/xxxx.zip'  
  3. resp, content = h.request(url)  
  4.           
  5. if resp['status'] == '200':  
  6.     with open(filename, 'wb') as f:  
  7.         f.write(content)  

urllib: 简单文件下载

[python] view plain
  1. filename = urllib.unquote(url).decode('utf8').split('/')[-1]  
  2. urllib.urlretrieve(url, filename)  


较大文件下载

[python] view plain
  1. def down_file():  
  2.     url = "http://192.168.1.151/download.abc"  
  3.   
  4.     file_name = url.split('/')[-1]  
  5.     u = urllib2.urlopen(url)  
  6.     f = open(file_name, 'wb')  
  7.     meta = u.info()  
  8.     file_size = int(meta.getheaders("Content-Length")[0])  
  9.       
  10.     file_size_dl = 0  
  11.     block_sz = 8192  
  12.     while True:  
  13.         buffer = u.read(block_sz)  
  14.         if not buffer:  
  15.             break  
  16.       
  17.         file_size_dl += len(buffer)  
  18.         f.write(buffer)  
  19.     f.close()  

在获取下载文件名的过程中,可以解析url
[python] view plain
  1. scheme, netloc, path, query, fragment = urlparse.urlsplit(url)  
  2. filename = os.path.basename(path)  
  3. if not filename:  
  4.    filename = 'downloaded.file'  

0 0
原创粉丝点击