最初模拟登录的时候,遇到了err_no=100023的问题。后来发现是没有携带cookie导致,而且经过查看js,代码为100023的错误原因就在于cookie。
到来又遇到了err_no=4的问题,当我post数据(密码为明码)到https://passport.baidu.com/v2/api/?login的时候,返回err_no=4,这是密码与账号不匹配的错误代码。
这个怎么都搞不定,百度后,发现这篇文章《模拟登陆百度做一些事》,里面作者的第一步的第3小步,在post数据的时候并不是将所有的都post,而是只摘取部分,其中最重要的就是没有携带rsakey。带着疑问看了一下评论,说是接口自动加密之类,尝试去掉这一项后,果然返回了err_no=0,即没有错误。
好吧,这个登录的问题就解决了。
其实上接《上接解决《err_no=100023》》,要是有什么方法能够获取到那个js里面加密后的密文,也是可以登录百度的。只不过我还没有找到。。欢迎留言讨论。