RequestsCookieJar

自动保存并传递cookie

 from requests.cookies import RequestsCookieJar

 1、通过requests模块导入  from requests.cookies import RequestsCookieJar

 2、进行实例化:jar = RequestsCookieJar()

 3、进行设置: jar.set(cookie['name'], cookie['value'])

完成之后就可以在直接在请求网页源文件的时候,将这个cookie带上一起发送请求了

requests只能保持 cookiejar 类型的cookie,而我们手动构建的cookie是dict类型的。所以要把dict转为 cookiejar类型,方法如下:

#将CookieJar转为字典:

cookies=requests.utils.dict_from_cookiejar(r.cookies)

#将字典转为CookieJar:

cookies=requests.utils.cookiejar_from_dict(cookie_dict,cookiejar=None,overwrite=True)

#其中cookie_dict是要转换字典转换完之后就可以把它赋给cookies 并传入到session中了:

s=requests.Session()

s.cookies=cookies

其实requests组件确实具有自动处理cookie的能力,而且一句update代码就能搞定:

def__init__(self):

        self.cookies = requests.cookies.RequestsCookieJar()

    def go(self, url, method, post_data):

            response = requests.request(method, url

                                        , data=post_data

                                        , headers=info.headers

                                        , cookies=self.cookies)#传递cookie            self.cookies.update(response.cookies) # 保存cookie

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容