爬虫逆向学习(六):补环境过某数四代

声明:本篇文章内容是整理并分享在学习网上各位大佬的优秀知识后的实战与踩坑记录

引用博客:
https://blog.csdn.net/shayuchaor/article/details/103629294
https://blog.csdn.net/qq_36291294/article/details/128600583
https://blog.csdn.net/weixin_58584029/article/details/125286386
https://blog.csdn.net/randy521520/article/details/135304045
https://blog.csdn.net/weixin_44862184/article/details/125302589

前言

某数的反爬机制和大致的破解流程已经是被摸透了,某数小白可以根据上面提供的引用博客从上往下逐一阅读,相信看完能让你对它有个整体的了解。下文是在博客爬虫瑞数4案例:网上房地产下进行实战讲解的,本身作者已经讲解的很到位了,在这我就不献丑了。只是在使用作者最后提供的代码调试了很久才通过,便再次记录下踩坑过程,希望对大家有所帮助。

实战

目标网址:aHR0cDovL3d3dy5mYW5nZGkuY29tLmNuL29sZF9ob3VzZS9vbGRfaG91c2UuaHRtbA==
在无痕模式下打开浏览器,开启开发者模式,然后在源代码/来源那开启脚本调试,如下图:
在这里插入图片描述

前奏设置好后直接打开网址,它会在外链js中断住
在这里插入图片描述

这时看一下cookie,然后F8或者点击继续执行按钮,让调试继续执行下去
在这里插入图片描述

这是就拿到自执行函数了,这里就大概重复下作者的讲解
在这里插入图片描述

之所以讲解这一个其实还有一个目的,就是有些人会对最终生成的cookie长度217有所怀疑,这里说一下某数能增加最终cookie长度的其实还有两个地方
在这里插入图片描述

但是它并不是一定需要执行这两个地方,这里我们在_$Du('aEAA');下断点,让程序执行到这一步
在这里插入图片描述

然后再看一下cookie,发现这时已经生成了目标cookie值,我们拿这个cookie去发包请求发现是能拿到数据的,也就是说按作者的代码最终生成的cookie长度为217也是能拿到数据的,至少对于这个网址来说。
在这里插入图片描述在这里插入图片描述

踩坑

外链js引入执行报错:SyntaxError: Unexpected token ‘)’

一开始按作者讲解的,把调试拿到的ts代码直接copy到文件中执行是没问题的,但是后面我直接保存外链链接的内容时便出现问题了,由此操作是我想使用require的方式引入外链js代码require('./c.FxJzG50F.dfe1675');
这里给大家看看两种格式差异:
调试拿到的外链js:
在这里插入图片描述
源码拿到的外链js:
在这里插入图片描述
最后还是直接使用调试拿到js就没问题了

编码异常

外链js的编码是ISO-8859-1,直接本地运行会报'gbk' codec can't decode byte 0x80 in position 41: illegal multibyte sequence,这时需要设置本地编码环境,如下设置就能成功了。
在这里插入图片描述

运行结果

我这边最终使用作者提供的代码是可以运行成功的,下面附上我的代码截图
在这里插入图片描述
fdc.py
在这里插入图片描述
fdc.js
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅谈Spring Cloud:认识微服务

SpringCloud就是分布式微服务架构的一站式解决方案,是微服务架构落地的多种技术的集合。 目录 微服务远程调用 Eureka注册中心 搭建Eureka Server 注册组件 服务拉取 当各种各样的服务越来越多,拆分的也越来越细,此时就会出现一个服务集…

【Vue】2

1 Vue 生命周期 Vue生命周期:一个 Vue 实例从 创建 到 销毁 的整个过程 创建(create)阶段:组件实例化时,初始化数据、事件、计算属性等挂载(mount)阶段:将模板渲染并挂载到 DOM 上更新(update)阶段:当数据发生变化时…

Python基础语法(3)上

函数 函数是什么 编程中的函数和数学中的函数有一定的相似之处. 数学上的函数,比如 y sin x,x 取不同的值,y 就会得到不同的结果 编程中的函数是一段可以被重复使用的代码片段 代码示例:求数列的和,不使用函数 …

【计算机网络 - 基础问题】每日 3 题(六)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏&…

C++:STL详解(一)string类的基本介绍与使用方式

✨ Blog’s 主页: 白乐天_ξ( ✿>◡❛) 🌈 个人Motto:实践是检验真理的唯一标准!!!敲代码需要勤快点!!!! 💫 欢迎来到我的学习笔记&#xff0…

docker-01 创建一个自己的镜像并运行容器

docker-01 创建一个自己的镜像并运行容器 前言 我们都知道使用Docker的镜像可以快速创建和部署应用,大大的节约了部署的时间。并且Docker 的镜像提供了除内核外完整的运行时环境,确保代码的环境一致性,从而不会在出现这段代码在我机器上没问…

用于遥感深度学习的7种高光谱遥感图像和标签

数据介绍 此数据集来自于GIC(GRUPO INTELIGENCIA COMPUTACIONAL )官网 直达链接,采用MATLAB存储为矩阵形式,数据集后缀为.mat形式。每一个数据分为原始图像数据和标签数据,标签对应码请参考官网。注:此数据为公开数据&#xff0c…

国产视频转换HDMI1.4转单/双MIPI DSI/CSI LT6911C芯片方案,带音频输出,QFN64封装 Lontium

LT6911C:HDMI 1.4 TO MIPI DSI/CSI 芯片简介: LT6911C是一款高性能的HDMI1.4转换器MIPI DSI/CSI芯片用于VR/智能手机/显示应用。对于MIPI DSI/CSI输出,LT6911C功能可配置单端口或双端口MIPIDSI/CSI 1高速时钟通道和1~4个高速数据通道最大1.5Gb/s/lane&am…

网络工程师学习笔记——网络互连与互联网

互联网的定义 由多个网络相互连接组成更大的网络称为互联网 常见的网络设备(是网络拓扑结构和网络的基础) 物理层 中继器(是将传输的信号进行放大,延长传输的距离),集线器也是这样,但是有更多…

如何获取MySQL数据表的列信息

在数据库管理中,了解表的结构是至关重要的。在MySQL中,我们可以通过几种方式来获取数据表的列信息。这不仅可以帮助我们更好地理解表的结构,还可以在编写查询时提供便利。以下是三种常用的方法来获取MySQL数据表的列信息。 使用 SHOW COLUMN…

C++速通LeetCode简单第10题-翻转二叉树

递归法: class Solution { public:TreeNode* invertTree(TreeNode* root) {if (root nullptr) {return nullptr;}TreeNode* left invertTree(root->left);TreeNode* right invertTree(root->right);root->left right;root->right left;return roo…

AtCoder ABC369 A-D题解

比赛链接:ABC369 省流&#xff1a;A<B<D<C&#xff08;题解是按照该顺序写的&#xff09; Problem A: #include <bist/stdc.h> using namespace std; int main(){int A,B;cin>>A>>B;if(AB)cout<<1<<endl;else if(abs(A-B)%20)cout&l…

一个软件分发和下载的网站源码,带多套模板

PHP游戏应用市场APP软件下载平台网站源码手机版 可自行打包APP&#xff0c;带下载统计&#xff0c;带多套模板&#xff0c;带图文教程 代码下载&#xff1a;百度网盘

饿了么基于Flink+Paimon+StarRocks的实时湖仓探索

摘要&#xff1a;本文整理自饿了么大数据架构师、Apache Flink Contributor 王沛斌老师在8月3日 Streaming Lakehouse Meetup Online&#xff08;Paimon x StarRocks&#xff0c;共话实时湖仓架构&#xff09;上的分享。主要分为以下三个内容&#xff1a; 饿了么实时数仓演进之…

C语言-整数和浮点数在内存中的存储-详解-上

C语言-整数和浮点数在内存中的存储-详解-上 1.前言2.整数2.1无符号整数2.2原码、反码、补码符号位最大值转换过程补码的意义简化算术运算易于转换方便溢出处理 1.前言 在C语言的使用中&#xff0c;需要时刻关注数据的类型&#xff0c;不同类型交替使用可能会发生错误&#xff…

算子级血缘在金融数据环境的实践应用

在企业的数据管理领域&#xff0c;算子级血缘极大优化了脚本内部字段口径的理解与追踪。面对几十、几百乃至几千行代码的复杂脚本&#xff0c;并且有着各种函数调用、数据转换等复杂的加工逻辑&#xff0c;如果通过传统的 ETL 工作模式&#xff0c;开发人员就不得不采用“盲人摸…

【H2O2|全栈】关于CSS(2)CSS基础(二)

目录 CSS基础知识 前言 准备工作 选择器的组合 盒模型 示例网页代码 后代选择器 亲代选择器 相邻兄弟选择器 后续兄弟选择器 多个元素选择器 通配符选择器 优先级 其他应用 伪类 锚链接的属性 列表的属性 list-style-type list-style-position list-style…

a√斗地主之顺子

题目描述 在斗地主扑克牌游戏中&#xff0c;扑克牌由小到大的顺序为:3,4,5.6,7.8,9,10,J,Q,K,A,2&#xff0c;玩家可以出的扑克牌阵型有:单张、对子、顺子、飞机、炸弹等。 其中顺子的出牌规则为:由至少5张由小到大连续递增的扑克牌组成&#xff0c;且不能包含2。 例如:(3.4.…

【JavaEE】IP协议 应用层协议

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 &#x1f576;️一.IP地址 IP协议&#xff08;Internet Protocol&#xff09;是TCP/IP协议族中最核心的协议之一&#xff0c;它定义了数据包在网络中传输的标准…

快速使用react 全局状态管理工具--redux

redux Redux 是 JavaScript 应用中管理应用状态的工具&#xff0c;特别适用于复杂的、需要共享状态的中大型应用。Redux 的核心思想是将应用的所有状态存储在一个单一的、不可变的状态树&#xff08;state tree&#xff09;中&#xff0c;状态只能通过触发特定的 action 来更新…