【爬虫】某某查cookie逆向

代码仅供技术人员进行学习和研究使用,请勿将其用于非法用途或以任何方式窃取第三方数据。使用该代码产生的所有风险均由用户自行承担,作者不对用户因使用该代码而造成的任何损失或损害承担任何责任。

加密参数

加密参数主要是cookie ,其中只有三个cookie最重要,BAIDUID BAIDUID_BFESS 和一个ab开头的cookie

cookie获取

BAIDUID和BAIDUID_BFESS在访问百度系的产品时会由服务器返回,可以通过访问百度搜索引擎或者网站的首页进行获取,建议使用Session

ab开头的cookie

这个ab开头的cookie是绑定了你的UA的,所以不能用同一个cookie而使用不同的UA,UA和cookie和必须绑定

python 复制代码
    def get_cookie(self, baidu_id, user_agent):
        s = '{}AIA{}'.format(user_agent, baidu_id)
        m = hashlib.md5(s.encode())
        a = m.hexdigest()
        time_str = str(time.time()).replace('.', '')[:13]
        i = a + time_str
        JS1 = '''
                              function a () { 
                                return "ab" + ("" + +new Date((new Date).getFullYear(),(new Date).getMonth(),(new Date).getDate(),(new Date).getHours())).substring(0, 9)
                              }
                              '''
        JS2 = '''
                              function a (i) {
                                s = [i[0], i[1], i.substring(2, i.length - 2), i[i.length - 2], i[i.length - 1]]
                                o = s[0] + s[3] + s[2] + s[1] + s[4]
                                return o
                              }
                              '''
        ctx1 = execjs.compile(JS1)
        ABname = ctx1.eval('a()')

        ctx2 = execjs.compile(JS2)
        ABvaule = ctx2.call('a', i)
        return {
            'BAIDUID': baidu_id,
            str(ABname): ABvaule,
            'BAIDUID_BFESS': baidu_id,
        }

通过这个cookie的生成逻辑可以看出他的值是由UA组成的 然后进行了MD5再进行了一些移位操作。

到现在网站需要的三个cookie已经全部拿到了

JA3指纹

到这里,其实代理IP的质量高一些,已经可以进行正常的采集,但是大多数情况下会出现采集一段时间后会疯狂的出现302跳转到旋转滑块,这是因为他检测了我们的JA3指纹

JA3指纹绕过

关于JA3指纹绕过可以看一下我之前的文章
python JA3指纹绕过

最后的一些思路

1、可以为BAIDUID搭建一个cookie池

2、不知道BAIDUID是否在服务端绑定了IP,即便突破了JA3还是会出现一些验证的情况

相关推荐
用户8356290780512 小时前
Python 实现 PDF 文件加密与解密方法
后端·python
用户8356290780512 小时前
使用 Python 冻结与拆分 Excel 窗格教程
后端·python
你好潘先生10 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
Agent_大师11 小时前
WebSocket 行情重连成功,K线缺口不会自动消失
python
荣码11 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
copyer_xyf11 小时前
FastAPI 如何连接 MySQL
后端·python
apocelipes1 天前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
用户8356290780511 天前
使用 Python 在 PDF 中创建与管理书签
后端·python
MeixianAgent1 天前
Python 回测数据入口怎么验?历史 K 线入库前先做 5 个检查
后端·python
咕白m6251 天前
用 Python 实现一键批量查找与替换 Excel 数据
后端·python