如何在Python中将字典列表转换为RequestsCookieJar用于GET请求
要把你手中的字典列表Cookie转换成requests.get()所需的RequestsCookieJar对象,有两种简单可行的方法:
方法一:使用RequestsCookieJar.set()手动添加
遍历每个Cookie字典,提取name和value作为核心参数,其余字段以关键字参数形式传入set()方法:
import requests # 你的Cookie字典列表 cookie_list = [ { "domain": "x.com", "httpOnly": True, "name": "Username_COOKIE", "path": "/", "sameSite": "Lax", "secure": False, "value": "some value" }, # 其他Cookie字典... ] # 创建空的CookieJar对象 jar = requests.cookies.RequestsCookieJar() for cookie in cookie_list: # 提取name和value,剩余字段作为额外参数 jar.set( cookie['name'], cookie['value'], **{k: v for k, v in cookie.items() if k not in ['name', 'value']} ) # 发送带Cookie的GET请求 response = requests.get('https://x.com', cookies=jar)
方法二:使用add_dict_to_cookiejar工具函数
requests.utils模块提供了add_dict_to_cookiejar函数,可直接将单个Cookie字典添加到Jar中,代码更简洁:
import requests from requests.utils import add_dict_to_cookiejar cookie_list = [ # 你的Cookie字典列表 ] jar = requests.cookies.RequestsCookieJar() for cookie in cookie_list: add_dict_to_cookiejar(jar, cookie) # 发送请求 response = requests.get('https://x.com', cookies=jar)
两种方法都会自动处理Cookie的domain、expiry、httpOnly等属性,确保Cookie符合请求要求。
内容的提问来源于stack exchange,提问作者RezA
相关产品推荐
相关产品推荐

