使用urllib2将大型二进制文件流式传输到文件

我使用以下代码将大型文件从Internet流化为本地文件:


fp = open(file, 'wb')

req = urllib2.urlopen(url)

for line in req:

    fp.write(line)

fp.close()

这可行,但下载速度很慢。有没有更快的方法?(文件很大,所以我不想将它们保留在内存中。)


沧海一幻觉
浏览 888回答 3
3回答

噜噜哒

您还可以使用shutil:import shutiltry:    from urllib.request import urlopen # Python 3except ImportError:    from urllib2 import urlopen # Python 2def get_large_file(url, file, length=16*1024):    req = urlopen(url)    with open(file, 'wb') as fp:        shutil.copyfileobj(req, fp, length)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python