我使用Requests(2.2.1)来登录一个url http://tx3.netease.com/logging.php?action=login,但是这个url的登录逻辑不同于Django的csrf令牌机制,即:当您得到这个url时,html文本中有两个导入值formhash和{},这两个值都将用于js函数do_encrypt(在文件http://tx3.netease.com/forumdata/cache/rsa/rsa_min.js)中)。这很好,我可以很容易地抓住他们通过re。在
html文本的关键部分是:
...
...
2。在输入email和原始密码ori_password后,单击submit按钮将调用do_encrypt,它将使用formhash、sts和{}来设置post dict的真实密码password。问题就出来了——似乎没有办法直接获得password字符串。(为了对比,在Django的情况下,可以直接从session_client.cookies['csrftoken']得到{})
代码如下:
^{pr2}$