requests 返回的 Response 对象包含响应头属性 headers:
import requests as r
response = r.get("http://example.com")
print(response.headers)
访问response.headers
属性会得到一个类似于字典的对象;
这个类似于字典的对象实际上是requests.structures.CaseInsensitiveDict
的实例;
它的特点是字典的键不区分大小写。
你可以像访问字典一样访问response.headers
,因为HTTP头部是大小写不敏感的,我们可以使用任意大小形式作为键来访问这个字典:
以下方式作用相同:
response.headers['content-type']
response.headers['CONTENT-type']
response.headers.get('content-type')
response.headers.get('Content-type')
遍历所有 Headers 信息
import requests as r
response = r.get("http://example.com")
for key,value in response.headers.items():
print(f'{key}: {value}')
运行效果
Connection: close Content-Length: 648 Accept-Ranges: bytes Age: 369357 Cache-Control: max-age=604800 Content-Encoding: gzip Content-Type: text/html; charset=UTF-8 Date: Mon, 30 Sep 2024 12:09:48 GMT Etag: "3147526947+gzip" Expires: Mon, 07 Oct 2024 12:09:48 GMT Last-Modified: Thu, 17 Oct 2019 07:18:26 GMT Server: ECAcc (chd/072B) Vary: Accept-Encoding X-Cache: HIT