qiyeboy / SpiderBook

<<python爬虫开发与项目实战>>书籍配套源码和说明
MIT License
984 stars 520 forks source link

第十章 疑问 #78

Closed WhiskyHou closed 6 years ago

WhiskyHou commented 6 years ago

第十章模拟知乎登录的POST请求,感觉现在知乎变了 示例代码运行了一下,get_xsrf()函数运行失败,报错list溢出,我感觉是不是xsrf没有获得到

我用的是chrome自带的F12,在network里面尝试找请求,发现如果登录成功的话,并没有找到POST的请求,如果故意输错密码的话,会有一个401的叫sing_in的POST请求,里面参数如下: ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="client_id"

c3cef7c66a1843f8b3a9e6a1e3160e20 ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="grant_type"

password ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="timestamp"

1516865947510 ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="source"

com.zhihu.web ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="signature"

44d4fbf6cd462f3b34d178212c2418d60bb982cd ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="username"

+861500*** ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="password"

40*** ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="captcha"

------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="lang"

cn ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="ref_source"

homepage ------WebKitFormBoundary63032LhNo251rlyZ Content-Disposition: form-data; name="utm_source"

------WebKitFormBoundary63032LhNo251rlyZ--

我在web方法还是小白,不知道是不是弄错了,还希望作者能指点一下,万分感谢

qiyeboy commented 6 years ago

知乎登录确实变了

WhiskyHou commented 6 years ago

我按照书上的方法,尝试去登录gitee,发现gitee的请求和参数就明显很多,直接就找到了,通过session请求之后也能获得个人页面,感谢