开始下载,检查文件类型,取消下载

时间:2013-04-07 04:07:07

标签: python url http-headers mime-types

我想检查放置在某个URL上的文件的文件类型。现在我知道两种方法:

  1. 检查HTTP文件结尾(或至少Location的HTTP请求响应)
  2. 检查Content-Type(MIME类型)
  3. 从这两者中,第一个更不可靠,但第二个并不总是保证最好的结果。所以我想,在下载资源时发送GET请求并检查文件类型是不是可能,然后取消下载?

    如果我开始在浏览器中下载文件,我也可以看到文件扩展名。这在Python中可行吗?

1 个答案:

答案 0 :(得分:0)

如果您想要下载文件扩展名,可以查看Content-Disposition标题。一个典型的例子:

Content-disposition: attachment; filename=<downloadFilename>

如果响应中包含上述标题,则可以使用regexp获取文件名,然后执行操作。如果标题不存在,您将不得不回到您在问题中提到的方法。

如果您对下载的文件类型感兴趣,我建议坚持使用MIME类型 - 这更可靠(通常)

HTH