要防止爬虫爬你的网站,就必须区分出爬虫和正常用户的行为区别。单单就单次请求你是无法区分出来的,因为前端的所有用户行为,爬虫都可以模拟。所以比较通用的做法是统计单个IP在一定时间范围内的请求数量,超过了一定的量就认为是爬虫,把它阻断掉。也许你自己有压测程序,把他们加入白名单就可以了。当然,这样并不能就真的可以阻断爬虫了,因为道高一尺魔高一丈呀,就我知道的一个爬虫他们准备了200台手机和手机卡,同一时间100台同时爬,因为用的手机卡,你看到的IP基本都是不一样的,爬2分钟断网,另100台爬,IP就又变了,断网的手机卡再联网IP也基本会变,所以基本就是达到了一个IP爬两分钟就自动换了一个IP,他们也会根据你统计的时间限制来调整他们的时间,所以统计IP这一招再这个方法中就不行了。对于不需要登录的页面什么cookie,agent,jwt等等都是可以对付的,所以就必须加入其他因素,比如同一个IP在最近的N个独立页面的请求平均间隔时间,如果都是小于1秒就可以认定不是自然人在请求,因为自然人速度没这么快。再比如同一个IP在最近的N个请求里面不存在合理的请求顺序,因为爬虫一般是拿了一个页面以后按顺序再请求里面的链接,而自然人不会这样等等的规则,这些规则看上去就比较复杂了,需要根据自己的业务去指定,然后异步的去判断,防止影响正常的请求速度。
这里只提供一种思路,希望对你有帮助。
1、useragent模仿谷歌浏览器,获取十几个,爬的过程中不断轮换ip。2、通过注册等各种方法,获取一个真实账号,模拟登陆,每次请求携带登录产生的cookie。
3、设置定时器,直接爬取所有能爬取的数据。可以试试前嗅的ForeSpider采集系统。像很多重度反爬虫的网站都能采,比如企业信息公示系统、自然基金会网站、58同城的电话号码什么的。
ForeSpider数据采集系统具备全面的采集范围、精准的数据精度、绝佳的抓取性能、简易的可视化 *** 作、智能的自动化采集,使企业能够以很少的人工成本,快速获取互联网中结构化或非结构化的数据。
软件几乎可以采集互联网上所有公开的数据,通过可视化的 *** 作流程,从建表、过滤、采集到入库一步到位。软件首创了面向对象的爬虫脚本语言系统,如果有通过可视化采集不到的内容,都可以通过简单几行代码,实现强大的脚本采集。软件同时支持正则表达式 *** 作,可以通过可视化、正则、脚本任意方式,实现对数据的清洗、规范。
台式机单机采集能力可达4000-8000万,日采集能力超过500万。服务器单机集群环境的采集能力可达8亿-16亿,日采集能力超过4000万。并行情况下可支撑百亿以上规模数据链接,堪与百度等搜索引擎系统媲美。
一.软件可以采集的范围:
1登录和cookie
支持自动登录,自动获取cookie信息。
2验证码
接入第三方打码平台,最多3秒自动返回大码结果。
3搜索栏检索
支持各种搜索栏检索关键词,可批量导入数十万关键词。
4各种协议
支持>
爬虫网站没有,爬虫软件是有的。
之前用过前嗅ForeSpider采集系统,感觉还可以,你可以去他们官网上看一下。别的还有火车头,八爪鱼等,也都用过,但是老是感觉不太适合我。
反爬虫就是和爬虫抗衡,减少被爬取。
因为搜索引擎的流行,网络爬虫已经成了很普及网络技术,
相当部分国内爬虫不遵守robots协议。
所有有了保护自己内容不让别人抓取的反爬虫需求
--------------------------反爬虫方法
1、手工识别和拒绝爬虫的访问
2、通过识别爬虫的User-Agent信息来拒绝爬虫
3、通过网站流量统计系统和日志分析来识别爬虫
4、网站的实时反爬虫防火墙实现
5、通过JS算法,文字经过一定转换后才显示出来,容易被破解。某技术网站采用了这种方法
6、通过CSS隐藏技术,可见的页面样式和HTML里DIV结构不同,增加了爬虫的难度,同时增加自己的维护难度。
技术网站采用了这种方法
7、通过JS不让用户复制,这对非专业人员有效,对技术人员/工程师来说,没有任何效果。不少网站采用。
8、通过flash等插件技术(会被破解,同时对用户不友好,有流失用户的可能性)。早期网站用得多,移动互联网来后,这种方式对用户不友好,少有专业网站采用了。
9、化
A:将文字化,增加了维护成本,和移动端的可读性
B:将标点符号化,再适当增加CSS混淆,这是一种较好的办法,不影响搜索引擎收录,不影响用户使用。但影响爬虫,是一种较好的反爬虫方式,某著名的文学网站采用了这种方法
10、交给专业反爬虫公司来处理
流程
1反爬虫混淆设计器 ---->产生反爬虫混淆素材
2混淆素材--->将服务器端文字变成不可阅读文字
3网络传输--->不可阅读文字+混淆素材
4浏览器-->绘制阶段显示可读文字
5浏览者能看见内容
但是无能有效复制,无法通过底层协议抓取
6混淆算法随时改变,只需要放入新素材就可以了,不需要工程师参与。
特点
依靠文字矩阵变换来提高蜘蛛爬虫软件抓取的代价
由发布人员,而不是技术人员来更新混淆算法
保护方:内容保护的方法素材易复制,易部署和运营
抓取/窃取方:面对对方快速变化,增加了成本
首先了解爬虫的突破方式:
防爬虫的基本理念:增加爬虫成本
防爬虫的几种方法 参考( >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)