本文主要介绍下cookie的作用:
用于传输部分验证参数以及类似get、post的请求参数,常用于反爬策略验证用户信息。
实战分析:
1、用于分页page、经纬度。。。参数传递
其他参数就不解析比较复杂,很明显我所在地区是杭州, __mta所对应经纬度信息,如果更换可能返回信息就更换了。
这样好处主要是为了隐藏信息,区别与get、post请求。
2、作为用户登入后信息存储
常见我们通常登入后使用cookie,进行后续页面爬取,这样可以不用模拟登入,更为方便。
3、cookie时效性
有时候我们用已保存的cookie进行爬取,但是当下一次爬取就失败,很有可能就是因为cookie失效了,从而要重新去获取cookie,这样不适用与实际生产,所以后续我还是要通过模拟登入获取新鲜的cookie,这样更通用。
4、session
赤狐为例,通常我们可以从cookie里面看到jsessionid这个参数通常用于记录session。
所以经常我们会遇到关闭浏览器或者一段时间,然后这个值变化导致请求失败。
形象的描述下,类似于自助餐厅门票,当我们出门或者过了时间段,就要重新买票了。
而且我们要保证这后续爬取正常,这个session要保持一致不能关闭。
比如我们可能犯的错误把session关闭或者一段时间后还是拿着被废弃的门票想去吃霸王餐
当然不会认可你。
还有个类似的token基本类似不再重复了。
重点:总有人问为什么浏览器访问一个网页总是带cookie,但是我没有登入啊,而且我写请求没这个参数不可以啊,因此我画一张图,看看就好了。
一般做1-3次请求就可以成功了。