不确定这是否可行,但我想在不下载的情况下判断一个大文件的HTTP请求的状态码;我只是想看看服务器上是否有.
用Python的requests
能做到这一点吗?我已经知道如何判断状态码,但我只能在文件下载后才能判断.
我想我想问的是,你能发出一个GET请求并在收到响应头后立即停止它吗?
不确定这是否可行,但我想在不下载的情况下判断一个大文件的HTTP请求的状态码;我只是想看看服务器上是否有.
用Python的requests
能做到这一点吗?我已经知道如何判断状态码,但我只能在文件下载后才能判断.
我想我想问的是,你能发出一个GET请求并在收到响应头后立即停止它吗?
使用requests.head()
.这只返回请求的标题,而不是所有内容——换句话说,它不会返回消息的正文,但您可以从标题获取所有信息.
HEAD方法与GET相同,只是服务器不能
例如:
import requests
url = 'http://lmsotfy.com/so.png'
r = requests.head(url)
r.headers
输出:
{'Content-Type': 'image/png', 'Content-Length': '6347', 'ETag': '"18cb-4f7c2f94011da"', 'Accept-Ranges': 'bytes', 'Date': 'Mon, 09 Jan 2017 11:23:53 GMT', 'Last-Modified': 'Thu, 24 Apr 2014 05:18:04 GMT', 'Server': 'Apache', 'Keep-Alive': 'timeout=2, max=100', 'Connection': 'Keep-Alive'}
此代码不下载图片,但返回图片消息的标题,其中包含大小、类型和日期.如果图片不存在,则不会有此类信息.