【爬虫】某某查cookie逆向

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

加密参数

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

cookie获取

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

ab开头的cookie

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

    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还是会出现一些验证的情况

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/956521.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flink(八):DataStream API (五) Join

1. Window Join Window join 作用在两个流中有相同 key 且处于相同窗口的元素上。这些窗口可以通过 window assigner 定义,并且两个流中的元素都会被用于计算窗口的结果。两个流中的元素在组合之后,会被传递给用户定义的 JoinFunction 或 FlatJoinFunct…

数据结构漫游记:队列的动态模拟实现(C语言)

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的pa…

计算机毕业设计Python+卷积神经网络租房推荐系统 租房大屏可视化 租房爬虫 hadoop spark 58同城租房爬虫 房源推荐系统

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

基于 Spring Cloud 、Spring Boot、 OAuth2 的 RBAC 企业快速开发平台

系统说明 基于 Spring Cloud 、Spring Boot、 OAuth2 的 RBAC 企业快速开发平台, 同时支持微服务架构和单体架构提供对 Spring Authorization Server 生产级实践,支持多种安全授权模式提供对常见容器化方案支持 Kubernetes、Rancher2 、Kubesphere、EDA…

TOSUN同星TsMaster使用入门——3、使用系统变量及c小程序结合panel面板发送报文

本篇内容将介绍TsMaster中常用的Panel面板控件以及使用Panel控件通过系统变量以及c小程序来修改信号的值,控制报文的发送等。 目录 一、常用的Panel控件介绍 1.1系统——启动停止按钮 1.2 显示控件——文本框 1.3 显示控件——分组框 1.4 读写控件——按钮 1.…

【威联通】FTP服务提示:服务器回应不可路由的地址。被动模式失败。

FTP服务器提示:服务器回应不可路由的地址。被动模式失败。 问题原因网络结构安全管理配置服务器配置网关![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1500d9c0801247ec8c89db7a44907e4f.png) 问题 FTP服务器提示:服务器回应不可路由的地址…

动手学大数据-3社区开源实践

目录 数据库概览: MaxComput: HAWQ: Hologres: TiDB: Spark: ClickHouse: Apache Calcite 概览 Calcite RBO HepPlanner 优化规则(Rule) 内置有100优化规则 …

【云岚到家】-day02-客户管理-认证授权

第二章 客户管理 1.认证模块 1.1 需求分析 1.基础概念 一般情况有用户交互的项目都有认证授权功能,首先我们要搞清楚两个概念:认证和授权 认证: 就是校验用户的身份是否合法,常见的认证方式有账号密码登录、手机验证码登录等 授权:则是该用…

html全局遮罩,通过websocket来实现实时发布公告

1.index.html代码示例 <div id"websocket" style"display:none;position: absolute;color:red;background-color: black;width: 100%;height: 100%;z-index: 100; opacity: 0.9; padding-top: 30%;padding-left: 30%; padding-border:1px; "onclick&q…

Mysql 主从复制原理及其工作过程,配置一主两从实验

主从原理&#xff1a;MySQL 主从同步是一种数据库复制技术&#xff0c;它通过将主服务器上的数据更改复制到一个或多个从服务器&#xff0c;实现数据的自动同步。 主从同步的核心原理是将主服务器上的二进制日志复制到从服务器&#xff0c;并在从服务器上执行这些日志中的操作…

C++的auto_ptr智能指针:从诞生到被弃用的历程

C作为一种功能强大的编程语言&#xff0c;为开发者提供了众多便捷的特性和工具&#xff0c;其中智能指针是其重要特性之一。智能指针能够自动管理内存&#xff0c;有效避免内存泄漏等常见问题。然而&#xff0c;并非所有智能指针都尽善尽美&#xff0c;auto_ptr便是其中的一个例…

Spring Security 6.X + JWT + RBAC 权限管理实战教程(上)

前言 本教程基于 Spring Boot 3.x Spring Security 6.x 实现&#xff0c;采用 JWT Redis 的认证方案&#xff0c;结合 RBAC 权限模型&#xff0c;实现了一个完整的权限管理系统。 一、项目依赖配置 关键依赖说明&#xff1a; <!-- SpringWeb --><dependency><…

flutter 常用UI组件

文章目录 1. Toast 文本提示框oktoastbot_toast2. loading 加载窗flutter_easyloading3. 对话框gex dialog4.下拉刷新pull_to_refresh5. pop 窗custom_pop_up_menu6. pin code 密码框pinput7. 二维码qr_flutter8. swiper 滚动组件carousel_sliderflutter_swiper_view9. Badge 角…

《汽车维修技师》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答&#xff1a; 问&#xff1a;《汽车维修技师》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知网收录的正规学术期刊。 问&#xff1a;《汽车维修技师》级别&#xff1f; 答&#xff1a;省级。主管单位&#xff1a;北方联合出版传媒&#xff08;…

大语言模型的语境中“越狱”和思维链

大语言模型的语境中“越狱”和思维链 越狱(Jailbreaking) 含义:在大语言模型的语境中,“越狱”是指用户试图绕过语言模型的安全限制和使用规则,让模型生成违反伦理道德、包含有害内容(如暴力、歧视、恶意软件代码等)的输出。这些安全限制是由模型开发者设置的,目的是确…

【Rust自学】13.2. 闭包 Pt.2:闭包的类型推断和标注

13.2.0. 写在正文之前 Rust语言在设计过程中收到了很多语言的启发&#xff0c;而函数式编程对Rust产生了非常显著的影响。函数式编程通常包括通过将函数作为值传递给参数、从其他函数返回它们、将它们分配给变量以供以后执行等等。 在本章中&#xff0c;我们会讨论 Rust 的一…

Spring篇 解决因为Bean的循环依赖——理论篇

Spring Bean 循环依赖 循环依赖是指两个或多个 Bean 互相依赖&#xff0c;形成一个闭环。例如&#xff0c;A 依赖 B&#xff0c;B 又依赖 A。Spring则 提供了几种方式来解决这种循环依赖问题。 常见的几类 Bean 循环依赖场景 场景1&#xff1a; 解释&#xff1a;由于Bean A依…

三天急速通关Java基础知识:Day1 基本语法

三天急速通关JAVA基础知识&#xff1a;Day1 基本语法 0 文章说明1 关键字 Keywords2 注释 Comments2.1 单行注释2.2 多行注释2.3 文档注释 3 数据类型 Data Types3.1 基本数据类型3.2 引用数据类型 4 变量与常量 Variables and Constant5 运算符 Operators6 字符串 String7 输入…

Excel 技巧10 - 如何检查输入重复数据(★★)

本文讲了如何在Excel中通过COUNTIF来检查输入重复数据。 当输入重复数据时&#xff0c;显示错误提示。 1&#xff0c;通过COUNTIF来检查输入重复数据 比如下面是想检查不要输入重复的学号。 选中C列&#xff0c;点 Menu > 数据 > 数据验证 在数据验证页面&#xff0c…

请求响应-

一.DispatcherServlet 前端控制器 二.HttpServletRequest 请求:获取请求数据 三.HttpServletResponse 响应:设置响应数据 四.简单参数接收 简单参数:参数名与形参变量名相同,定义形参即可接收参数。 如果参数对应不上需要通过RequestParam完成映射,注意事项:加上了参数就必须…