美文网首页
百度模拟登录

百度模拟登录

作者: 王明明151 | 来源:发表于2018-04-02 18:41 被阅读0次

应用环境

python3.6+pycharm+windows7+requests

过程分析

1. 查看登录需要的参数

对比分析得知 : token:令牌 要获取 tt:时间戳 gid:也要获取 username: 用户名 password : 加密后的密码 rsakey: 密钥 verifycode :验证码 callback :随机的值 fp_uid ,fp_info , ppui_logintime都可以用第一次提交时的参数可以固定

2.参数获取

 token:

搜索token即可

    可以看出是返回值

tokenUrl ='https://passport.baidu.com/v2/api/?getapi&tpl=mn&apiver=v3&tt={}&class=login&gid={}&loginversion=v4&logintype=dialogLogin&traceid=&callback={}'.format(时间戳,gid,callback)

现在要获取gid和callback

gid:

会出来好几个js都下载到本地 然后再进行搜索

js中搜索到的再搜索guideRandom

可以看出是把xxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx 替换出来的

python方法

callback:

    callback和gid 是同一个js文件

再搜索 getUniqueId pytho模拟一下

    python方法:

python方法

获取token:

    已经有了 callback 和gid  去请求 token

正则匹配出来即可

密码加密:

    在第一步可以发现密码是加密后的 大多数都是用的rsa 加密

    那么要先获取pubkey,直接搜索

找到url 匹配出 pubkey,rsakey 密码加密

获取验证码

    获取验证码要先获取 vcodetype  这个值应该是决定验证码的类型 中英文

返回值:

找出 vcodetype 和 codeString

利用 codeString  去请求验证码 保存到本地 识别后输入验证码

识别验证码

登录:


不同返回值的意义:


相关文章

网友评论

      本文标题:百度模拟登录

      本文链接:https://www.haomeiwen.com/subject/xfixhftx.html