Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块,此外Python还提供了另外一种方法requests。

下面来看看三种方法是如何来下载文件的:

方法一:

import urllibprint ("downloading with urllib")url = 'http://download.redis.io/releases/redis-5.0.5.tar.gz'print "downloading with urllib"urllib.urlretrieve(url, "demo.zip")

方法二:

import urllib2print ("downloading with urllib2")url = 'http://download.redis.io/releases/redis-5.0.5.tar.gz'f = urllib2.urlopen(url)data = f.read()with open("demo2.zip", "wb") as code:code.write(data)

方法三:

import requestsprint ("downloading with requests")url = 'http://download.redis.io/releases/redis-5.0.5.tar.gz' r = requests.get(url)with open("demo3.zip", "wb") as code:code.write(r.content)

看起来使用urllib最为简单,一句语句即可。当然你可以把urllib2缩写成:

import urllib2f = urllib2.urlopen(url)with open("http://download.redis.io/releases/redis-5.0.5.tar.gz", "wb") as code:code.write(f.read())