介绍几种常见的反爬机制和破解方法(一)
评论
收藏

介绍几种常见的反爬机制和破解方法(一)

经验分享
二乔
2024-03-19 20:48·浏览量:4408
二乔
发布于 2024-01-30 17:14更新于 2024-03-19 20:484408浏览

近期接触到一些关于反爬的问题,如字体图标加密、CSS偏移、逆向抓取,下面和大家分享几种常见的反爬策略及解决思路。

什么是反爬?“反爬”是指网站为了保护自己的数据不被无限制地复制和使用,采取的一些措施。这些措施可以防止或者至少降低网络爬虫(也称为蜘蛛、机器人)对网站进行深度爬取的能力---来自GPT的官方回答

简而言之,反爬是保护数据安全的一种策略,可以减少恶意请求占用服务器资源,保护用户隐私和版权不被侵犯。


         

一、图像伪装

1.1 原理

某些网站会将价格、联系方式、数量等数据伪装成图片的形式,和文本形式的数据混合展示在网页上,这对用户是无感的。对于爬虫程序来说无法直接获取到这些敏感信息。

网站链接:

https://www.gxrc.com/

1.2 破解方法

该反爬手段是直接用图片替换了原来的内容, 所以爬虫程序是无法直接获取内容的, 唯一的破解手段就是将图片下载下来, 然后使用 OCR(文字识别) 技术对图片内容进行一个识别。

二、CSS偏移

2.1 原理

在HTML中将文本的顺序打乱,通过CSS的绝对定位还原文本的真实顺序,这样子爬虫获取到的只是html中打乱后的文本信息

网站链接:

https://antispider3.scrape.center/page/9

https://flight.qunar.com/site/oneway_list.htm?searchDepartureAirport=%E5%8C%97%E4%BA%AC&searchArrivalAirport=%E4%B8%8A%E6%B5%B7&searchDepartureTime=2024-02-01&searchArrivalTime=2024-02-03&nextNDays=0&startSearch=true&fromCode=BJS&toCode=SHA&from=flight_dom_search&lowestPrice=null

2.2 破解方法

需要找到偏移规律, 一般是偏移量的大小然后根据规律排列出正确的数据! 如上例子, 根据观察是通过 left 进行偏移的, 那么这里就可以提取出每个标签中 left 的值, 然后根据规律来排列出真实的数据。

三、字体反爬

3.1 原理

字体反爬也就是自定义字体反爬,通过调用自定义的ttf文件或woff文件来渲染网页中的文字,而网页中的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容。

网站链接:

https://www.maoyan.com/films/1458876?requestCode=674e0052c338ca665999141899f196c85tdlh

3.2 破解方法

  • 找到规律: 反爬内容对应的字体文件
  • 获取字体: 将相关字体进行下载, 并保存为 xml 格式
  • 创建映射关系: 解析 xml, 并创建 unicode 和文字的映射关系
  • 转换: 遍历爬到的数据, 将反爬的内容进行还原

四、SVG图形映射

4.1原理

和上文提到的 图⽚伪装 和 字体反爬 其实有点类似, 通过 SVG 来展示页面上一些敏感信息, 在不影响用户正常阅读同时, 让爬虫程序无法像读取文字那样获得 SVG 图形中的内容; 由于 SVG 中的图形代表的也是一个个文字, 所以在使用时必须在后端或前端将真实的文字与对应的 SVG 图形进行映射和替换


4.2 破解方法

方法其实很简单,SVG可以被当成图片使用,也可以被当作字体被使用这里需要找到源网站使用 SVG 的使用方式, 然后找到其规律进行破解,如果不想麻烦也可以通过OCR识别来识别内容。

收藏17
全部评论1
最新
发布评论
评论