反爬虫的重点:识别爬虫

简介: 我们在网站运营的时候,最大的问题就是:我们自己花费几个小时甚至是几天辛辛苦苦创作作的内容,被爬虫只需要 1s 就抓去了。为了保卫我们创作的成果,也为了网站的稳定运行,我们需要对爬虫说:No,我们在反爬虫的过程中最重要的就是如何识别爬虫。

我们在网站运营的时候,最大的问题就是:我们自己花费几个小时甚至是几天辛辛苦苦创作作的内容,被爬虫只需要 1s 就抓去了。为了保卫我们创作的成果,也为了网站的稳定运行,我们需要对爬虫说:No,我们在反爬虫的过程中最重要的就是如何识别爬虫

为了识别识别爬虫,常用的有以下几个方法:

真人检测

所谓的真人检测也就是出现一个验证码,让你输入验证码的内容,这些验证码对于人类来说很容易识别,但是对于机器来说却很难识别,例如这种验证码:

图像识别验证码

这种验证码只有人类很轻易识别,爬虫却很难识别。

滑块类验证码

这里验证码对于人类来说也很友好,我们只需要将滑块移到一个阴影的位置,例如下面这种:

滑块验证码

这类验证码对于人来来说轻而易举,但是对于爬虫来说有一定难度,但是也是可以破解的。

这些在一些特殊场合的确是可以防止爬虫对于你创作内容的抓取,但是你成功的防止了恶意爬虫,也成功的防止了搜索引擎爬虫来抓取你的内容。

我们为什么要允许搜索引擎爬虫来抓取我们的内容?

这个主要是由于搜索引擎可以给我带来流量,有了流量我们就可以想办法变现,有没有嗅到金钱的味道。

例如我们在百度搜索:爬虫识别,并点击了我的网站,就有访客访问网站,就给网站带来了流量。

百度搜索爬虫识别结果

那百度怎么知道我们网站上有什么内容呢?

百度搜索引擎每天有成千上万的爬虫在互联网上抓取内容,并将百度爬虫抓取的内容存入自己的索引之中,在根据一定的算法为每个网页排名,之后用户搜索相应的关键词之后,有可能会到达你网站,就会给你带来流量。

这就是为什么我们不能屏蔽搜索引擎爬虫的原因了,如果你像屏蔽其他爬虫一样屏蔽搜索引擎爬虫,那么搜索引擎爬虫将无法抓取你网站的内容,就不会在搜索结果中展示你的网站,也不会为你带来任何流量。

那现在有一个问题就是,我们既要屏蔽一些恶意爬虫,又不能屏蔽搜索引擎爬虫,我真的好难呀!

为了解决这个问题,我们可以使用爬虫识别这个网站来解决上面的问题。

首先我们需要根据 User-agent 先过滤掉一部分恶意爬虫,搜索引擎的 User-agent 我们可以在这里查看:搜索引擎爬虫

这里收集和整理了市面上大部分搜索引擎的 User-agent 与 IP 地址,例如下面是百度蜘蛛的 User-agent:

百度蜘蛛的 User-agent

通过比对 User-agent 我们可以初步判断是不是搜索引擎的爬虫,但是 User-agent 是可以轻易伪造的,所以我们还需要配合 IP 来识别爬虫是否是真实的。

我们只需要到爬虫 IP 查询输入 IP 就可以知道这个是不是伪造爬虫了。

总结

这篇文章首先从验证码开始如何防止爬虫抓取我们网站,但是我们又不能屏蔽所有爬虫抓取我们网站,我们如何通过 User-agent 与 IP 结合的方式判断是搜索引擎爬虫,并让其抓取我们网站。

相关文章
|
1月前
|
数据采集 机器学习/深度学习 安全
Python爬虫之极验滑动验证码的识别
了解极验滑动验证码、特点、识别思路、初始化、模拟点击、识别缺口、模拟拖动。
60 0
|
1月前
|
数据采集 Web App开发 文字识别
Python爬虫之点触验证码的识别
点触验证码识别思路,初始化,获取,识别。
56 0
Python爬虫之点触验证码的识别
|
1月前
|
数据采集 文字识别 开发者
Python爬虫之图形验证码的识别
python爬虫逆向图形验证码分析,处理和测试实战。
47 0
|
数据采集 人机交互 API
「Python」爬虫-7.验证码的识别
> 本文主要介绍如何处理一些网页中简单的验证码问题。~~(只提供简单的思路,随着技术的发展,一些验证码已经防范的非常好了,一般的解决方法可能过不了验证码这一关🤺~~
354 0
|
数据采集 算法 大数据
爬虫识别-总结及效果| 学习笔记
快速学习爬虫识别-总结及效果
171 0
爬虫识别-总结及效果| 学习笔记
|
数据采集 存储 消息中间件
爬虫识别-准备离线计算数据| 学习笔记
快速学习爬虫识别-准备离线计算数据
145 0
爬虫识别-准备离线计算数据| 学习笔记
|
数据采集 大数据 数据库
爬虫识别-指标碰撞-准备数据代码实现| 学习笔记
快速学习爬虫识别-指标碰撞-准备数据代码实现
139 0
爬虫识别-指标碰撞-准备数据代码实现| 学习笔记
|
数据采集 算法 大数据
爬虫识别-指标碰撞-准备数据 avi| 学习笔记
快速学习爬虫识别-指标碰撞-准备数据 avi
139 0
爬虫识别-指标碰撞-准备数据 avi| 学习笔记
|
数据采集 算法 NoSQL
爬虫识别-指标碰撞-实现思路| 学习笔记
快速学习爬虫识别-指标碰撞-实现思路
81 0
|
数据采集 算法 大数据
爬虫识别-指标碰撞-代码实现总结| 学习笔记
快速学习爬虫识别-指标碰撞-代码实现总结
71 0