QQ空间登录问题
因为qq空间的cookie没多久就过期了,所以想用python登录qq空间获取cookie。用账号密码登录的话,在c_login_2.js中会生成一个url(3839行结束的getSubmitUrl函数中的变量o)(大概是这个样子https://ssl.ptlogin2.qq.com/login?u=.......................)
再用get来请求这个url获得如下的response:
ptuiCB('0','0','https://ptlogin2.qzone.qq.com/check_sig?pttype=1&uin=............................','0','********', '***')
之后用get来请求上一步response中的url就可以302重定向到登录成功的页面(https://qzs.qzone.qq.com/qzone/v5/loginsucc.html?para=izone),进入qq空间。
在浏览器上我每个url都用新建标签页打开,最后成功进入到了qq空间。可是我用requests来get最后那个url(https://ptlogin2.qzone.qq.com/check_sig?pttype=1&.......)requests会报如下错误:
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
我感觉是被反爬虫机制发现了。但是我请求的url和headers都是从浏览器复制的,搞不懂为什么会报那个错误。
ps url都太长了,用省略号省略了;***也是出于隐私来代替真实的字符。
pps 等级太低,发不了图片,大佬们将就着看吧 最后那个链接提交的是固定参数?还是变动的参数 现在都不研究了,在以前3G的时候,QQ一切业务只要一个SID就够了 1q23w31 发表于 2022-5-1 08:13
最后那个链接提交的是固定参数?还是变动的参数
有一个很长的查询字符串是会变的
ptsigx=217fb18bd9fcd0a8ff3ab5827777f5464387bd2d00610fd89861be96774d3......
这个url响应里面有设置p_skey的cookie,有了以后就基本上可以进qq空间了。所以我觉得可能这个url的响应会对爬虫比较严格 qq1151985918 发表于 2022-5-1 09:28
现在都不研究了,在以前3G的时候,QQ一切业务只要一个SID就够了
这种登录的反爬虫措施会不会比较严格?
报这种错误的话应该是服务器那边把我当爬虫处理了,可是我的请求头都是从浏览器上面复制下来的,服务器除了请求头和url还可以靠什么东西分辨出来我是爬虫啊
页:
[1]