使用Python请求库[复制]将一个大文件使用Python请求库[复制]将一个大文件(Save a

2019-05-13 00:06发布

可能重复:
如何使用请求下载图像

我知道,提取网址是非常简单requests.get ,我可以在原始响应身体得到,并将其保存到一个文件,但对于大文件,有没有办法直接流到文件? 就像如果我下载电影与它的东西?

Answer 1:

奇怪的是,要求并没有什么简单的这一点。 你必须遍历响应和写那些块到一个文件:

response = requests.get('http://www.example.com/image.jpg', stream=True)

# Throw an error for bad status codes
response.raise_for_status()

with open('output.jpg', 'wb') as handle:
    for block in response.iter_content(1024):
        handle.write(block)

我通常只是用urllib.urlretrieve() 它的工作原理,但如果你需要使用一个会话或某种身份验证,在上面的代码工作为好。



文章来源: Save a large file using the Python requests library [duplicate]