requests模块高级操作之cookie
一、cookie
存储在客户端的键值对,可以让服务端记录客户端相关状态。
如何处理cookie?
手动处理: 将抓包工具中的请求头信息中的cookie键值拷贝到header中
自动处理:session对象
session对象:该对象和requests有类似的功能,也可以想requests一样调用get/post进行请求发送, 如果使用seesion进行请求发送的过程中产生了cookie,cookie会被自动存储到session对象中。
#爬取雪球网中的新闻标题和内容 https://xueqiu.com/ import requests #获取seesion对象 session = requests.session() header={ 'User-Agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1' } #将cookie存储到session中 session.get(url='https://xueqiu.com/',headers=header) #捕获cookie url = 'https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=20353474&count=15&category=-1' data = session.get(url=url,headers=header).json() print(data)
We are down, but not beaten. tested but not defeated.