20221216星期五:
在Python爬虫使用中,常常涉及到需要登陆,才能爬取到数据的场景:
以下是本人在工作中,处理登陆的实战操作,供大家参考:
方式1:在init函数中,设置了参数username,password,但是在类的实例化中,传入""引号,照样可以获取到系统前端页面数据
方式2:直接写一个登陆的函数,通过抓包,拿到登陆请求的data数据,这个数据就是用户名密码,当然,密码是加密形式的字符;有了这个登陆函数,即保持了的登陆状态(使用这种方式需要两个条件:1,cookie的场景;2,登陆以后,访问其他的接口,请求头没有表示身份权鉴的字段)
方式3:登陆以后,进行其它接口请求时,拿到请求头的那个表示身份权鉴的字段;
然后去反推,从登陆开始,通过几个接口,最终得到了服务器返回的这个表示身份权鉴字段,这一段反推的几个接口请求写到init函数中;
最终拿到的权鉴,添加到请求头中,然后后面的接口使用这个请求头,就可以获取到系统前端页面数据
方式1:在init函数中,设置了参数username,password,但是在类的实例化中,传入""引号,照样可以获取到系统前端页面数据
方式2:直接写一个登陆的函数,通过抓包,拿到登陆请求的data数据,这个数据就是用户名密码,当然,密码是加密形式的字符;有了这个登陆函数,即保持了的登陆状态
方式3:登陆以后,进行其它接口请求时,拿到请求头的那个表示身份权鉴的字段;
然后去反推,从登陆开始,通过几个接口,最终得到了服务器返回的这个表示身份权鉴字段,这一段反推的几个接口请求写到init函数中;
最终拿到的权鉴,添加到请求头中,然后后面的接口使用这个请求头,就可以获取到系统前端页面数据
如下三张图,就是拿到服务器返回的身份权鉴的过程,有了这个身份权鉴,请求头header加上这个权鉴,后面的接口就可以请求成功,拿到想要的数据
创业项目群,学习操作 18个小项目,添加 微信:jjs406 备注:小项目!
如若转载,请注明出处:https://www.xmjzwang.com/11613.html