Python模拟登录第一弹见:【Python数据分析】Python模拟登录(一) requests.Session应用
上次的登录是最基本的,全部是明文,而且在浏览器中就可以看到POST的数据。接下来我们来个稍微难一点的–模拟登录博客园
登录特点
用户名密码都进行了RSA加密,且在浏览器中无法看到POST数据
如上图,在post数据中不能显式看到POST内容。
模拟登录步骤
既然浏览器调试功能无法探测到POST数据,那么采用Fiddler试试看,这是一款网络抓包工具,很好用。登录后看到
POST的数据是input1,input2和remember,这和分析signin页面的源代码所得结果一致。
其中input1是加过密的用户名,input2是加过密的密码,remember表示记住还是不记住用户名。由于RSA的原理,加过密后的内容可以不一样,但是解密后的数据是一样的,那么我们就可以采用重放方式登录,即复制这些内容到我们的POST data中。
还要注意一个cookies的问题,cookies一定要选择正确,不要选下面的:
因为这是登录页面的cookies,我们要用下面的cookies:
即包含.CNBlogCookies的cookie,这也是主页的cookies。
为了验证登录是否成功,我们登录后打开followers页面,因为未登录前是无法看到任何用户的粉丝页面的。
还是利用requests.Session,写出如下代码:
1 | import requests |
然后运行有:
显示成功登录。
这样,就可以登录这种用RSA加密的用户名密码的非https且不需要验证码的网站了。希望对需要的人有所帮助。