防爬规则介绍+爬虫特点|学习笔记

简介: 快速学习防爬规则介绍+爬虫特点

开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第一阶段防爬规则介绍+爬虫特点】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/669/detail/11592


防爬规则介绍+爬虫特点

 

内容介绍

一.防爬目标

二.数据源

三.防爬规则

 

一.防爬目标

1. 目标

反爬虫的目的是识别爬虫了解反爬虫识别的八项指标

利用八项指标判断是否是爬虫

 

二.数据源

1.行程相关

出发地、目的地、出发时间、预公时间

2.出行人相关

身份信息(乘机人名、乘机人类型、乘机人证件类型、乘机人证件号)、出行人数(得不到此信息,如果得到即用户信息泄露)

3.预定相关

购票人信息(登录 1D、登录类型、操作 IP、浏览器 UA、手机设备信息)联系人信息(联系人名、联系人手机号、联系人邮箱)

其他信息( 销售单位)

4.机票防爬关键字段

bookuser 购票人 ID,即登求 1D, 例如明珠会员卡号、非会员手机号等

bookip 购票人 IP

psgname 乘机人名(用户敏感信息)

psgtype 乘机人类型,例如成人、儿童、婴儿

利用2,3,4信息做防占座功能

 

三. 防爬规则

1.爬虫规则

1.按 IP 段聚合- 5分钟内的 IP 段( IP 前两位)访问量

(反爬虫项目中采集的数据。存在用户的 IP, 次 ip 为192.168.36.56等)

用处:通过 IP 段可以查找到来源

2. 按 IP 地址聚合-某个 IP, 5分钟内总访问量

(具体 ip 的指标)5分钟访问500次以上爬虫可能性较大。

3. 按 IP 地址聚合-某个 IP, 5分钟内的关键页面访问总量

关键页面:专门配置的表

URL 与正则匹配成功是关键页面

如下图

图片1.png

4. 按 IP 地址聚合-某个 IP, 5分钟内的 UA 种类数统计

(浏览器数量) ip 确定,UA 反复变换,爬虫可能性较大

5. 按 |P 地址聚合-某个 IP, 5分钟内查询不同行程的次数

(不断访问形成次数爬虫可能性较大)

6. 按 IP 地址聚合一某个 IP,5分钟内关键页面的访问的 Cookie

(去重)访问不同形成的次数

7. 按 IP 地址聚合-某个 IP,5分钟内的关键页面最短访问间隔

每两个关键页面访问间隔(若时间较短,爬虫可能性较大)

8. 按 IP 地址聚合-某个 IP,5分钟内小于最短访问间隔(自设)的关键页面查询次数

例如20个查询关键页面中有19个访问间隔,需查看访问间隔的最小时间<2秒,统计次数

通过八个指标综合来判定是否是爬虫。

2.作弊者数量多的规律

1.热门航线(找黄牛抢票)

2.春节、暑假

3.会员日(低价专卖票)

3.作弊者特点:

1.长期、重复爬取数据

2.使用多个代理(隔几分钟自动切换 UA、IP) 爬取 数据

3.每个 IP 短时间内爆发较高流量

4.每个 IP 白天和夜晚的请求次数均衡(程序)

5.热门航线的查询频率更快

6.浏览路径不完整(-次命中会话为其典型代表)

(来源固定/跳转)

目的:尽量避免被发现

4. 总结

防爬规则:

按 IP 段聚合- 5分钟内的 IP 段 (IP 前两位)访问量

按 IP 地址聚合-某个 IP, 5分钟内总访问量

按 IP 地址聚合-某个 IP,5分钟内的关键页面访问总量

按 IP 地址聚合-某个 IP,5分钟内的 UA 种类数统计

按 |P 地址聚合-某个 IP,5分钟内查询不同行程的次数

按 IP 地址聚合一某个 IP,5分钟内关键页面的访问的 Cookie 数

按 IP 地址聚合-某个 IP,5分钟内的关键页面最短访问间隔

按 IP 地址聚合-某个 IP,5分钟内小于最短访问间隔(自设)的关键页面查询次数

规律:

热门航线,春节、暑假,会员日

特点:一次命中,短期流量高,UA 和 ip 频繁切换,访问频次比较均衡(白天黑天)。

相关文章
|
数据采集 SQL 消息中间件
数据预处理-历史爬虫判断-实现代码及效果|学习笔记
快速学习数据预处理-历史爬虫判断-实现代码及效果
109 0
数据预处理-历史爬虫判断-实现代码及效果|学习笔记
|
数据采集 监控 前端开发
数据预处理-历史爬虫判断-需求与实现思路|学习笔记
快速学习数据预处理-历史爬虫判断-需求与实现思路
89 0
数据预处理-历史爬虫判断-需求与实现思路|学习笔记
|
数据采集 算法 大数据
爬虫识别-总结及效果| 学习笔记
快速学习爬虫识别-总结及效果
171 0
爬虫识别-总结及效果| 学习笔记
|
数据采集 存储 消息中间件
爬虫识别-准备离线计算数据| 学习笔记
快速学习爬虫识别-准备离线计算数据
145 0
爬虫识别-准备离线计算数据| 学习笔记
|
数据采集 大数据 数据库
爬虫识别-指标碰撞-准备数据代码实现| 学习笔记
快速学习爬虫识别-指标碰撞-准备数据代码实现
139 0
爬虫识别-指标碰撞-准备数据代码实现| 学习笔记
|
数据采集 算法 大数据
爬虫识别-指标碰撞-准备数据 avi| 学习笔记
快速学习爬虫识别-指标碰撞-准备数据 avi
139 0
爬虫识别-指标碰撞-准备数据 avi| 学习笔记
|
数据采集 算法 NoSQL
爬虫识别-指标碰撞-实现思路| 学习笔记
快速学习爬虫识别-指标碰撞-实现思路
81 0
|
数据采集 算法 大数据
爬虫识别-指标碰撞-代码实现总结| 学习笔记
快速学习爬虫识别-指标碰撞-代码实现总结
71 0
|
数据采集 存储 算法
爬虫识别-指标碰撞-代码实现| 学习笔记
快速学习爬虫识别-指标碰撞-代码实现
116 0
爬虫识别-指标碰撞-代码实现| 学习笔记
|
数据采集 分布式计算 NoSQL
爬虫识别-爬虫写入 Redis-效果及总结| 学习笔记
快速学习爬虫识别-爬虫写入 Redis-效果及总结
102 0
爬虫识别-爬虫写入 Redis-效果及总结| 学习笔记