Wow4j Wow4j
首页
个人使用说明书
后端开发
前端开发
测试开发
运维开发
大数据开发
产品&UI交互
团队管理
软技能
他山之石
开源产品
敬请期待
GitHub (opens new window)
首页
个人使用说明书
后端开发
前端开发
测试开发
运维开发
大数据开发
产品&UI交互
团队管理
软技能
他山之石
开源产品
敬请期待
GitHub (opens new window)
  • 概要
  • 面试八股文

  • 服务端小技巧合集

  • Java基础

  • MySQL 相关

  • Redis 最佳实践指南

  • 文本搜索Elasticsearch

  • Kafka 最佳实践指南

  • 网络相关

  • 架构相关

  • 监控告警

  • 防爬风控

    • 如何应对爬虫的流量并进行有效狙击?
      • 背景
      • 常规的爬虫手段
      • 爬虫请求的特点
      • 爬虫治理的难点
      • 反扒的一些措施
      • 推荐优秀的开源反扒风控系统
      • 总结
  • 稳定性 checklist

  • 效能工具

  • 后端开发
  • 防爬风控
timchen525
2023-03-20

如何应对爬虫的流量并进行有效狙击?

# 背景

随着移动互联网的兴起,各大电商平台的竞争越来越激烈。主流电商通过爬虫技术来获取友商的信息,从而凭借信息时差来获取商业竞争的优势。在不断的进攻获取友商的数据,各大主流电商 也在尽力不让自身的数据被友商爬取(即反扒),从而达到我有人无,让自己占领制高点。本文主要跟大家介绍下,爬虫的常用手段以及我们该如何针对这些爬虫采取有效的措施。

# 常规的爬虫手段

常规的爬虫手段有:

(1)直接通过接口

# 爬虫请求的特点

某个 ip,单位时间内总访问量
某个 ip,单位时间内的关键页面访问总量
某个 ip,单位时间内的 userAgent 种类统计
某个 ip,单位时间内的关键页面最短访问间隔
某个 ip,单位时间内小于最短访问间隔(自设)的关键页面查询次数
某个 ip,单位时间内查询不同行程的次数
某个 ip,单位时间内关键页面访问次数 

# 爬虫治理的难点

(1)业务对爬虫流量不铭感,只有系统出问题后,才发现爬虫流量影响系统
(2)即使知道有爬虫流量,认为爬虫治理的投入和产出不成正比
(3)能够肉眼识别出爬虫的流量,但是没办法用程序自动化手段将这部分流量自动识别出来
(4)在反扒时,开发人员可能在Java应用层通过限制ip或者用户id频率,来限制非法流量,加大了系统的复杂度,也降低了系统的稳定性
(5)在技术方案上,懂反爬虫技术的人,不懂实际一线爬虫场景,缺少业务驱动力;一线业务的人员由于涉及到不同领域的技术栈,又不好推进
(6)爬虫的流量情况各有各的不同,相关人员在用一些离线统计分析的手段时,将反爬虫规则进行硬编码,导致每抓一只爬虫都要编写N次代码,抓取成本高
(7)没有一个通用的平台能力,让业务方能够根据业务规则,通过平台能力,自动将爬虫抓取,并提供能力给业务方
(8)反爬虫的治理,缺少长期对抗的心理准备,本质原因还是投入和产出不高

# 反扒的一些措施

# 推荐优秀的开源反扒风控系统

# 总结

上次更新: 2023/03/22, 15:21:20
后端可观测性体系架构设计
常见 Java 编码故障 Checklist

← 后端可观测性体系架构设计 常见 Java 编码故障 Checklist→

Theme by Vdoing | Copyright © 2022-2023 timchen525 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×