我正在使用Python从网站下载多个CSV文件。我希望能够检查每个请求的响应代码。
我知道如何使用wget
下载文件,但不知道如何检查响应代码:
os.system('wget http://example.com/test.csv')
我看到很多人建议使用请求,但我不确定我保存CSV文件的用例是否正确。
r = request.get('http://example.com/test.csv')
r.status_code # 200
# Pipe response into a CSV file... hm, seems messy?
最好的方法是什么?
答案 0 :(得分:0)
您可以使用stream
参数 - 以及iter_content()
将响应内容直接流式传输到文件(docs)中:
import requests
r = None
try:
r = requests.get('http://example.com/test.csv', stream=True)
with open('test.csv', 'w') as f:
for data in r.iter_content():
f.write(data)
finally:
if r is not None:
r.close()