一种基于检测浏览器特征及事件监听的爬虫检测方法技术

技术编号:24010951 阅读:67 留言:0更新日期:2020-05-02 01:43
本发明专利技术公开了一种基于检测浏览器特征及事件监听的爬虫检测方法。该方法通过在网站所有页面嵌套相似的代码,并将代码自动运行生成的结果传回服务器检测进行防爬。其中,代码功能包括:1.对浏览器特征的属性判断;2.通过延时加载JavaScript代码对部分标签进行添加、删除、修改;3.判断窗口是否为顶层窗口以及计算窗口大小;4.监听鼠标和键盘事件;5.通过特定的加密算法生成双向加密的cookies值。通过本发明专利技术在有效防止爬虫程序的暴力爬取的同时,保持了用户访问的流畅性,并且还避免引入其他复杂的人机验证操作。

A crawler detection method based on detecting browser features and event monitoring

【技术实现步骤摘要】
一种基于检测浏览器特征及事件监听的爬虫检测方法
本专利技术涉及防爬虫领域,具体为一种基于检测浏览器特征及事件监听的爬虫检测方法。
技术介绍
目前市面上常使用IP请求频率限制或人机验证码来对爬虫进行限制,具体做法如下。1.设置IP请求频率。在WEB服务器收到网络请求时记录请求来自的IP地址,通过计算此IP的请求频率进行爬取限制,若频率超过网站预设的阈值时返回特定的错误页面。但是,爬虫可以使用代理IP来绕过IP的访问限制,防护效果并不理想。2.设置人机验证码。网站通过文字图片验证码、滑块验证码、文字点选验证码、图形点选验证码等验证码来限制脚本爬虫的访问,由于普通的爬虫脚本无法通过代码正确地识别验证码,从而达到拦截大部分的爬虫脚本的目的。但是随着大数据的发展,出现了模拟浏览器的爬虫,它们可以通过预设的轨迹和点击位置来突破这种限制。如今这种防护措施不但不能高效地拦截爬虫,反而会给使用的用户带来不必要的麻烦。
技术实现思路
针对上述问题,本专利技术提供了一种基于检测浏览器特征及事件监听的爬虫检测方法。让网络爬虫工作者无本文档来自技高网...

【技术保护点】
1.一种基于检测浏览器特征及事件监听的爬虫检测方法,其特征在于:/n步骤1:通过对浏览器特有属性检测,判断人机访问对象,检测浏览器的window对象是否存在浏览器特定属性,来判断访问页面是正常浏览器还是爬虫脚本;/n步骤2:延时加载特定的JavaScript代码执行DOM操作;/n步骤3:通过检查浏览器窗口的长宽,和浏览器窗口是否为顶层窗口;/n步骤4:通过鼠标点击、移动和键盘输入,以及通过对鼠标的移动轨迹进行判断,区分人机行为;/n步骤5:通过更换变量名称生成多套代码;/n步骤6:通过加密算法,将各函数生成的结果进行加密处理,并通过cookies传输返回给服务器进行结果验证。/n

【技术特征摘要】
1.一种基于检测浏览器特征及事件监听的爬虫检测方法,其特征在于:
步骤1:通过对浏览器特有属性检测,判断人机访问对象,检测浏览器的window对象是否存在浏览器特定属性,来判断访问页面是正常浏览器还是爬虫脚本;
步骤2:延时加载特定的JavaScript代码执行DOM操作;
步骤3:通过检查浏览器窗口的长宽,和浏览器窗口是否为顶层窗口;
步骤4:通过鼠标点击、移动和键盘输入,以及通过对鼠标的移动轨迹进行判断,区分人机行为;
步骤5:通过更换变量名称生成多套代码;
步骤6:通过加密算法,将各函数生成的结果进行加密处理,并通过cookies传输返回给服务器进行结果验证。


2.根据权利要求1所述的基于检测浏览器特征及事件监听的爬虫检测方法,其特征在于:步骤1中涉及的浏览器特有属性包括__driver_evaluate,__webdriver_evaluate,__selenium_evaluate,__fxdriver_evaluate,__driver_unwrapped,__webdriver_unwrapped,__selenium_unwrapped,__fxdriver_...

【专利技术属性】
技术研发人员:梁协君唐杰曹钰钢汤斯亮蒋建军
申请(专利权)人:杭州有数金融信息服务有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1