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

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

引用博客:

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

相关推荐
Tech Synapse12 小时前
Python网络爬虫实践案例:爬取猫眼电影Top100
开发语言·爬虫·python
数据小爬虫@13 小时前
利用Python爬虫获取淘宝店铺详情
开发语言·爬虫·python
B站计算机毕业设计超人19 小时前
计算机毕业设计SparkStreaming+Kafka新能源汽车推荐系统 汽车数据分析可视化大屏 新能源汽车推荐系统 汽车爬虫 汽车大数据 机器学习
数据仓库·爬虫·python·数据分析·kafka·数据可视化·推荐算法
易辰君21 小时前
【Python爬虫实战】深入解析 Scrapy 爬虫框架:高效抓取与实战搭建全指南
开发语言·爬虫·python
风动也无爱21 小时前
Java的正则表达式和爬虫
java·爬虫·正则表达式
数据小爬虫@1 天前
如何利用Python爬虫精准获得1688店铺的所有商品信息
开发语言·爬虫·python
好看资源平台1 天前
动态网站数据爬取——Selenium的使用
爬虫·python
兆。2 天前
python实战案例----使用 PyQt5 构建简单的 HTTP 接口测试工具
爬虫·python·qt
吖吖耶3332 天前
【Python爬虫】Scrapy框架实战
爬虫·python·scrapy
Token_w2 天前
Python爬虫进阶实战项目:使用青果网代理高效爬取某手办网详情数据
大数据·网络·爬虫·python·tcp/ip·tcp