python+requests——高级用法——处理cookie——重点
Posted 小白龙白龙马
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python+requests——高级用法——处理cookie——重点相关的知识,希望对你有一定的参考价值。
参考网址:https://www.cnblogs.com/xiaobaibailongma/p/12346091.html
import requests url = \'http://www.baidu.com\' resp = requests.get(url) print(resp.cookies) print(\'============================================================\') for k,v in resp.cookies.items(): print(k,\'=\',v)
执行结果:
<RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>
============================================================
BDORZ = 27315
===================================================================================================================
使用python的requests开发爬虫程序的时候,经常需要将之前请求返回的cookie值作为下一个请求的cookie进行调用,
比如模拟登录之后的返回的sessionID,就是需要作为后续请求的cookie参数
分成三步走:
1、通过requests模块导入 from requests.cookies import RequestsCookieJar
2、进行实例化:jar = RequestsCookieJar()
3、进行设置: jar.set(cookie[\'name\'], cookie[\'value\'])
完成之后就可以在直接在请求网页源文件的时候,将这个cookie带上一起发送请求了
import requests from requests.cookies import RequestsCookieJar url = \'http://www.baidu.com\' resp = requests.get(url) print(resp.cookies) print(\'============================================================\') for k,v in resp.cookies.items(): print(k,\'=\',v) print(\'============================================================\') jar = RequestsCookieJar() jar.set(\'BDORZ\', \'27315\') r = requests.get(url,cookies=jar) print(r.status_code)
执行结果:
<RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>
============================================================
BDORZ = 27315
============================================================
200
===========================================================================================
以上是关于python+requests——高级用法——处理cookie——重点的主要内容,如果未能解决你的问题,请参考以下文章
python+requests——高级用法——会话——重点源码
python+requests——高级用法——代理和认证——重点