反爬虫记录

简介: 问题网络黑产猖獗,爬虫便是其手段之一。爬虫爬取你辛苦运营的用户、客户数据,以低廉的价格将其出售。这会极大伤害用户隐私,更让用户对产品失去信任,危害绝对不容小觑。

问题

网络黑产猖獗,爬虫便是其手段之一。爬虫爬取你辛苦运营的用户、客户数据,以低廉的价格将其出售。这会极大伤害用户隐私,更让用户对产品失去信任,危害绝对不容小觑。对于很多互联网公司,信息甚至是其核心资产。所以无论是为保护用户隐私,亦或自身利益,防爬虫都志在必行。

不那么有效的手段

  1. 针对请求的useragent,refer等做限制。这些字段可以通过抓包工具随意修改,对于有心之人基本无效

比较有效的手段

反爬虫没有确定的方法,但有相对确定的原则:在对正常用户干扰最小的情况下最大限度地提高爬虫成本

需要明确爬虫和人类的区别,并针对这些区别制定方案。通常的做法有(成本从低到高):

后端:

  1. 限制ip、账号、接口频率,尤其是敏感数据接口(用户信息、客户信息、订单、收藏夹等),限制维度要多。
  2. 返回假数据迷惑爬虫
  3. 设置爬虫陷阱,如正常访问看不到的链接
  4. 维护一份账号、ip、代理等的黑名单
  5. 根据具体业务分析访问行为是否合理

前端:

1.前端代码安全的情况下(如app混淆),做相关加密(MD5,nonce防重复攻击),验证请求
2.各种验证码

当然,反爬逻辑越复杂,成本也越高,需要酌情考虑。

参考

https://www.zhihu.com/question/26221432

目录
相关文章
|
1月前
|
数据采集 存储 XML
给你一个具体的网站,你会如何设计爬虫来抓取数据?
【2月更文挑战第23天】【2月更文挑战第75篇】给你一个具体的网站,你会如何设计爬虫来抓取数据?
|
1月前
|
数据采集 开发者
如何编写有效的爬虫代码来避免网站的反爬虫机制?
如何编写有效的爬虫代码来避免网站的反爬虫机制?
35 1
|
1月前
|
数据采集 数据库
爬虫增量抓取
爬虫增量抓取
119 3
|
1月前
|
数据采集 机器学习/深度学习 安全
如何有效防爬虫?一文讲解反爬虫策略
如何有效防爬虫?一文讲解反爬虫策略
279 0
|
1月前
|
数据采集 Web App开发 搜索推荐
突破目标网站的反爬虫机制:Selenium策略分析
突破目标网站的反爬虫机制:Selenium策略分析
|
1月前
|
数据采集 前端开发 数据挖掘
Fizzler库+C#:从微博抓取热点的最简单方法
本文介绍如何使用Fizzler库和C#构建微博热点信息爬虫。通过Fizzler的CSS选择器定位关键信息,提取热点标题和排名,实现微博内容的智能挖掘。示例代码展示单线程和多线程采集方法,并涉及代理IP使用。
Fizzler库+C#:从微博抓取热点的最简单方法
|
1月前
|
数据采集 JavaScript 前端开发
如何判断一个网站是否采取了反爬虫措施
通过观察请求响应、分析请求频率限制和检测JavaScript动态加载来初步判断网站是否使用反爬虫措施。使用Python `requests` 发送请求并检查响应头和内容,寻找验证码、限制信息。尝试短时间内多次请求,看是否被限制。使用Selenium模拟浏览器行为,获取动态加载内容。注意,这些方法仅为初步判断,实际可能需更深入分析,并确保爬取行为合法合规。
|
1月前
|
数据采集 JavaScript 前端开发
常见的反爬虫策略有哪些?
常见的反爬虫策略有哪些?
83 1
|
10月前
|
数据采集 存储 搜索推荐
Python爬虫实战:如何避免被禁止请求
爬虫是一种自动从互联网上获取数据的程序,它可以用于各种目的,例如搜索引擎、数据分析、网络安全等。然而,爬虫也可能遇到一些困难和挑战,例如被目标网站禁止请求。禁止请求是指网站通过一些技术手段,阻止或限制爬虫访问其内容,例如返回403 Forbidden或503 Service Unavailable等状态码,或者重定向到其他页面,或者要求输入验证码等。禁止请求的情况会影响爬虫的正常运行和数据获取,因此,我们需要了解如何应对和解除禁止请求的情况。
119 0
Python爬虫实战:如何避免被禁止请求
|
10月前
|
数据采集 存储 数据库连接
Python爬虫中的数据存储和反爬虫策略
Python爬虫中的数据存储和反爬虫策略