解决了文件下载过程中的原始名称保留问题,通过获取response的header信息得到文件名,当然,需要看具体返回值包含的内容来决定取值。
下面以一个mp4文件下载链接来进行测试
import requests
import json
import random
import datetime
def downloadfile(url,filepath):
response=requests.get(url)
print(type(response.headers))
# argname为存储filename信息的key值
filename=response.headers.get("argname")
# 如果header里不包含文件名就赋值日期
if filename is None:
filename=datetime.datetime.now().strftime("%Y%m%d%H%M%S")
print(filename)
filelocal=filepath+filename
f=open(filelocal,"wb")
for chunk in response.iter_content(chunk_size=512):
if chunk:
f.write(chunk)
print ("done")
if __name__ == '__main__':
url="https://www.w3school.com.cn/example/html5/mov_bbb.mp4"
filepath="D:/download/"
downloadfile(url,filepath)
谷凑是凑到了,但是要到第二批和第三批发出。心痛。都说灯光画不买不买,一上线秒无,痛心疾首。可以把我书架上单片机编程拿下来开整了。