【问题标题】:Using python (urllib) to download a file, how to get the real filename?使用python(urllib)下载文件,如何获取真实文件名?
【发布时间】:2011-09-21 17:37:01
【问题描述】:

所以我终于设法让我的脚本登录到一个网站并下载一个文件......但是,在某些情况下,我会有一个类似“http://www.test.com/index.php?act =附加&type=post&id=3345"。 Firefox 发现文件名正常...所以我应该可以。

我无法通过 remotefile.info()['Content-Disposition'] 之类的方式找到“Content-Disposition”标头

此外,remotefile.geturl() 返回相同的 url。

我错过了什么?如何获得实际的文件名?我更喜欢使用内置库。

【问题讨论】:

    标签: python url login download urllib2


    【解决方案1】:

    提供 content-disposition 标头是远程服务器/服务的任务。

    除非远程服务器/服务在您自己的控制之下,否则您无能为力..

    【讨论】:

    • 如果是这样,当我使用“将链接另存为”时,firefox如何知道文件的名称?这是不同类型的请求吗?可以模拟吗?
    • Firefox 有更多上下文信息,例如用作后备的链接文本。
    • 啊,好吧...看起来这就是通过文本链接给出的许多文件上发生的情况,而图像的缩略图链接正在通过内容配置。太糟糕了……为我创造了更多的工作。
    • 浏览器也有可能处理重定向,尽管 urllib2 也应该处理重定向
    • 不,似乎不是重定向...如果 Content-Disposition 不存在,我最终只是从链接的文本中解析出文件名。谢谢。
    猜你喜欢
    • 2012-07-31
    • 2011-06-13
    • 1970-01-01
    • 2017-08-26
    • 1970-01-01
    • 2011-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多