专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

有哪些有趣的爬虫与反爬虫手段?(爬虫常见的反爬手段)

ins518 2025-03-30 17:39:46 技术文章 17 ℃ 0 评论

一般而言,从特点上对反爬虫手段进行细分,可以有信息校验型反爬虫、动态渲染型反爬虫、文本混淆型反爬虫、特征识别型反爬虫,等等。

其中,文本混淆反爬虫最为有趣。

知识点植入:文本混淆可以有效地避免爬虫获取Web应用中重要的文字数据。反爬虫的前提是不能影响用户正常浏览网页和阅读文字内容,直接混淆文本很容易被看出来,开发者通常是利用CSS的特性来实现混淆。

找几个常见的文本混淆手段给大家康康。

  • CSS偏移反爬虫

CSS偏移反爬虫指的是利用CSS样式将乱序的文字,排版为人类正常阅读的顺序。

比如,去哪儿网的航班查询……

你以为所爬即所见?Too young too naive!



  • SVG映射反爬虫

SVG是用于描述二维矢量图形的一种图形格式。

由于SVG中的图形代表的也是一个个文字,所以在使用时必须在后端或者前端将真实的文字与对应的SVG图形进行映射和替换,因此,这种反爬虫手段被称为SVG映射反爬虫

举个大众点评网的例子。

打开浏览器并访问:
https://www.dianping.com/shop/14741057

我们可以看一看商家电话或评分的 HTML 代码。

嘿嘿嘿,标签占位警告!Surprise~

大众点评中的商家号码并不是全部使用标签代替,其中有部分使用了数字。但是仔细观察一下就可以发现商家号码的数量等于标签数量加上数字的数量,说明标签的class 属性值与数字也有可能是一一对应的映射关系。

继续往下看,大众点评的商家营业时间部分的 HTML 代码。

原来,除了数字映射之外,还对中文进行了映射!这就给爬虫造成了很大的难度。

面对这样的问题,爬虫工程师必须找到文字映射规律,并且能够实现映射算法才能绕过这种反爬手段哦!

————

爬虫技术和反爬虫技术在不断斗争的过程中变得越来越高深与复杂,从简单的 User-Agent 识别到混淆验证码加密,“花样”越来越多,破解难度也越来越大。

想知道这些反爬虫手段怎么绕过吗?更多爬虫与反爬虫技术请见《Python3反爬虫原理与绕过实战》。以上文本混淆反爬虫的案例,都出自这本书~

作者:韦世东

  • Python 3反爬虫原理大揭秘,常见爬虫手段大集合
  • 帮你从0到1理清爬虫与反爬虫的红蓝对抗

这本书对爬虫技术与反爬虫技术的对抗过程进行了深入的研究,并详细介绍了其中的原理和具体实现方法。

最重要的是,作者针对各类反爬虫给出了对应的绕过和破解方案!

书中还提到了浏览器的基本结构、网页渲染原理、加密和混淆规范,还有很多 RFC 文档。无论是开发者还是爬虫工程师,熟读常见的 RFC 文档对工作会有很大的帮助。

对于反爬虫工程师来说,动手实践很重要。这本书特别为读者准备了一个练习平台,其中包含 21 个示例,练习平台上的示例均为本书作者编写,且与本书示例一一对应。因此,示例内容不会改动,并且无须担心相关的法律问题,这保证了大家的学习能顺利进行。

干货满满,推荐给大家。

<script type="text/javascript" src="//mp.toutiao.com/mp/agw/mass_profit/pc_product_promotions_js?item_id=6830662231387013643"></script>

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表