用Python下载多个带请求的文件
目前我面临以下问题: 我在一个列表中有3个下载链接。只有列表中的最后一个文件被完全下载。 其他的文件大小为1 KB 代码: 结果如下所示:用Python下载多个带请求的文件,python,python-3.x,download,python-requests,Python,Python 3.x,Download,Python Requests,目前我面临以下问题: 我在一个列表中有3个下载链接。只有列表中的最后一个文件被完全下载。 其他的文件大小为1 KB 代码: 结果如下所示: links = ["http://ipv4.download.thinkbroadband.com/20MB.zip", "http://ipv4.download.thinkbroadband.com/10MB.zip", "http://ipv4.download.thinkbroadband.com/5M
links = ["http://ipv4.download.thinkbroadband.com/20MB.zip",
"http://ipv4.download.thinkbroadband.com/10MB.zip",
"http://ipv4.download.thinkbroadband.com/5MB.zip"]
如何确保正确下载所有文件?
所有链接都是直接下载链接
提前谢谢
编辑:
我发现只有当我从.txt中读取链接时才会发生这种情况
如果我用python创建列表,如下所示:
links = ["http://ipv4.download.thinkbroadband.com/20MB.zip",
"http://ipv4.download.thinkbroadband.com/10MB.zip",
"http://ipv4.download.thinkbroadband.com/5MB.zip"]
。。。问题没有出现
可复制示例:
from requests import get
def download(url, filename):
with open(filename, "wb") as file:
response = get(url, stream = True)
file.write(response.content)
f = open('links.txt','r')
for link in f:
url = link
split_url = url.split("/")
filename = split_url[-1]
filename = filename.replace("\n", "")
download(url,filename)
links.txt的内容:
http://ipv4.download.thinkbroadband.com/20MB.zip
http://ipv4.download.thinkbroadband.com/10MB.zip
http://ipv4.download.thinkbroadband.com/5MB.zip
url=url。替换(“\n”,”)
解决了 url=url.replace(“\n”和“”)
解决了 在
download
中,当您打印/检查内容和文件名时,这些内容和文件名是否正确?是否有您不尝试的原因?这是否回答了您的问题?1:所有3个文件的文件名都正确。只有文件3的内容是正确的。其他文件似乎是空的2,3:我尝试过这些,同样的问题:(当我切换列表中的链接时,我仍然存在相同的问题-只有最后一个文件被正确下载请在打印/检查内容和文件名时提供一个。在<代码>下载代码>中,它们是否正确?您没有尝试的原因是否回答了您的问题?1:所有3个文件的文件名都正确。只有内容正确。)其他文件似乎是空的2,3:我尝试了这些,同样的问题:(当我切换列表中的链接时,我仍然有同样的问题-只有最后一个文件被正确下载,请提供一个。