📜  请求从响应中获取 cookie - Python (1)

📅  最后修改于: 2023-12-03 15:28:10.895000             🧑  作者: Mango

请求从响应中获取 cookie - Python

在使用Python发送请求时,服务器可能会在响应头中返回一些cookie,这些cookie可以在后续的请求中进行使用。本文将介绍如何从响应中获取cookie。

1. 使用requests库发送请求

我们可以使用Python的requests库发送HTTP请求,示例代码如下:

import requests

url = 'http://www.example.com/'
response = requests.get(url)
2. 获取响应中的cookie

在响应头中,会有一些Set-Cookie字段,这些字段表示服务器要设置的cookie。我们可以使用response.cookies属性来获取这些cookie,代码如下:

cookies = response.cookies
print(cookies)

该代码会输出一个RequestsCookieJar对象,表示所有的cookie。我们可以使用requests.utils.dict_from_cookiejar()方法将其转换为字典,示例代码如下:

cookies_dict = requests.utils.dict_from_cookiejar(cookies)
print(cookies_dict)

该代码会输出一个字典对象,表示所有的cookie及对应的值。

3. 在后续的请求中使用cookie

在后续的请求中,我们可以将获取到的cookie添加到请求头中,示例代码如下:

cookies = {'cookie_name': 'cookie_value'}
response = requests.get(url, cookies=cookies)

我们可以使用requests.utils.cookiejar_from_dict()方法将之前获取到的字典转换为RequestsCookieJar对象,示例代码如下:

cookies = {'cookie_name': 'cookie_value'}
cookies_jar = requests.utils.cookiejar_from_dict(cookies)
response = requests.get(url, cookies=cookies_jar)
总结

使用Python可以方便地发送HTTP请求,并从响应中获取cookie。获取到的cookie可以在后续的请求中使用,方便管理和控制登录状态等信息。