解决Python中requests库的session无法保存cookie的问题
2021/11/10 11:40:40
本文主要是介绍解决Python中requests库的session无法保存cookie的问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
当我们在使用Python的requests库做接口自动化时,我们都知道只要使用session = requests.session()
就会自动保存cookie
但当我在做公司的接口自动化项目时,发现保存的cookie不生效,通过请求登录接口后打印cookie,又发现有cookie,这里就是我比较头大了o(╥﹏╥)o
查找多方资料后,终于找到了原因,原来requests只能保持 cookiejar 类型的cookie,而我们手动构建的cookie是dict类型的。所以我们需要把dict转为 cookiejar类型,转换方式如下:
# 将CookieJar转为字典: cookies_dict = requests.utils.dict_from_cookiejar(resp.cookies) # 将字典转为CookieJar: cookies = requests.utils.cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True) # 其中cookie_dict是要转换字典 # 转换完之后就可以把它赋给cookies 并传入到session中了: session = requests.Session() session.cookies = cookies
实际使用时需要观察cookie格式,比如我们公司目前是将cookie以key-value的形式放在请求头中,所以我这里的处理方式是将cookie转为字典,然后将字典里的内容拼接为字符串。
这篇关于解决Python中requests库的session无法保存cookie的问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-20Python编程入门指南
- 2024-12-20Python编程基础与进阶
- 2024-12-19Python基础编程教程
- 2024-12-19python 文件的后缀名是什么 怎么运行一个python文件?-icode9专业技术文章分享
- 2024-12-19使用python 把docx转为pdf文件有哪些方法?-icode9专业技术文章分享
- 2024-12-19python怎么更换换pip的源镜像?-icode9专业技术文章分享
- 2024-12-19Python资料:新手入门的全面指南
- 2024-12-19Python股票自动化交易实战入门教程
- 2024-12-19Python股票自动化交易入门教程
- 2024-12-18Python量化入门教程:轻松掌握量化交易基础知识