我如何检查文件是否在使用python的网站上传

时间:2013-07-01 22:09:08

标签: python file web urllib

我有一个网站,我想从中下载文件。每隔一天上传一个新文件。如何检查新文件是否已启用?

例: url1 = website.com/file_2013-06-27.zip< - 已上传

url2 = website.com/file_2013-06-29.zip< - 未上传

如果我转到网址2,在5秒后重定向回到website.com 它的源代码是:<meta http-equiv="refresh" content="5;url=http://website.com" /> Error: 2 [ Not Allowed ]

文件大小为100mb +,如果我尝试通过urllib.urlopen("website.com/file_2013-06-27.zip").read()查看来源,如果文件存在则需要一段时间。

有什么方法可以快速检查是否上传了新文件?

由于

1 个答案:

答案 0 :(得分:1)

Python的Requests库非常适合检查HTTP状态代码(不下载文件,只是获取响应)

例如:

import requests

r = requests.get('website.com/file_2013-06-27.zip')
if r.status_code == 200:
    print ("File uploaded.")

那不下载文件(只是尝试使用1GB文件),只检查Web服务器是否会提供它以及HTTP响应是什么。使用HTTP,200表示文件存在且可访问。有关HTTP响应代码的详细信息,请参阅下文。

  

更多信息:
  http://docs.python-requests.org/en/latest/ - 请求库
  http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html - HTTP响应代码指南