gpt4 book ai didi

不提供文件名的Python下载

转载 作者:太空狗 更新时间:2023-10-29 22:01:46 24 4
gpt4 key购买 nike

如何在不提供文件名的情况下使用 python 下载带有进度报告的文件。

我试过 urllib.urlretrieve 但我似乎必须为下载的文件提供文件名才能另存为。

例如:

我不想提供这个:

urllib.urlretrieve("http://www.mozilla.com/products/download.html?product=firefox-3.6.3&os=win&lang=en-US", "/tmp/firefox.exe")

就是这样:

urllib.urlretrieve("http://www.mozilla.com/products/download.html?product=firefox-3.6.3&os=win&lang=en-US", "/tmp/")

但如果我这样做,我会得到这个错误:

IOError: [Errno 21] Is a directory: '/tmp'

也无法从某些 URL 获取文件名示例:

http://www.mozilla.com/products/download.html?product=firefox-3.6.3&os=win&lang=en-US

最佳答案

这是使用 python3 完成此操作的完整方法,并且没有在 url 中指定文件名:

from urllib.request import urlopen
from urllib.request import urlretrieve
import cgi

url = "http://cloud.ine.ru/s/JDbPr6W4QXnXKgo/download"
remotefile = urlopen(url)
blah = remotefile.info()['Content-Disposition']
value, params = cgi.parse_header(blah)
filename = params["filename"]
urlretrieve(url, filename)

在结果中你应该得到 cargo_live_animals_parrot.jpg 文件

关于不提供文件名的Python下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2795331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com