[发明专利]基于Web的爬虫识别方法有效
申请号: | 201610262526.6 | 申请日: | 2016-04-25 |
公开(公告)号: | CN105930727B | 公开(公告)日: | 2018-11-09 |
发明(设计)人: | 李兴涛;王儒敬;王伟 | 申请(专利权)人: | 无锡中科富农物联科技有限公司;安徽中科物联科技有限公司;江苏物联网研究发展中心 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F17/30 |
代理公司: | 无锡市大为专利商标事务所(普通合伙) 32104 | 代理人: | 殷红梅;屠志力 |
地址: | 214135 江苏省无锡市新区菱*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种基于Web的爬虫识别算法,设置陷阱,并通过线上分析用户访问的行为特征判断是爬虫的概率;对于爬虫可能性大的访问者,要求验证码验证,减少误判;线下分析一天的数据通过大量数据正确的识别出隐藏性好的爬虫;对于识别出的爬虫加入到确定名单库中。本发明结合了线上的实时识别和线下的正确识别,在保证识别实时性的同时,提高了识别的准确性,降低了误判。 | ||
搜索关键词: | 基于 web 爬虫 识别 算法 | ||
【主权项】:
1.一种基于Web的爬虫识别方法,其特征在于,至少包括一种在线识别方法;在线识别方法通过:S1)设置陷阱,根据访问者请求陷阱中的信息来初步判定为疑似爬虫;S2)对于每一个访问者维护访问信息,通过对访问者的访问行为分析进一步判断是否为疑似爬虫;S3)对于上述S1和S2识别出为疑似爬虫的行为,最后通过验证码验证的方法确定是否为爬虫;步骤(S2)中对于每一个访问者维护访问信息,具体包括:从访问者的访问请求中提取关键字段,关键字段包括id、访问时间、引用字段、访问类型;为每个id维护一个滑动窗口,用这个滑动窗口记录访问者最近访问的n次记录,n为窗口的大小;每来到一个请求,首先分析该请求,提取关键字段;如果没有该id对应的滑动窗口,创建该id的滑动窗口;如果该id的滑动窗口满了,删除滑动窗口内最早的一次记录;将新请求的信息存入滑动窗口内;定期扫描所有的滑动窗口,对于最新一次请求距离当前时间超过设定时间阈值的滑动窗口直接删除;步骤(S2)中,所述通过对访问者的访问行为分析进一步判断是否为疑似爬虫,具体包括:提取访问行为中的特征向量,然后对各特征向量加权求和后得到一个评估得分,该评估得分超过设定阈值则判断访问者为疑似爬虫;所述特征向量包括:滑动窗口内的错误响应百分比作为一个特征向量;通过滑动窗口提取访问类型,将head请求访问类型的占比作为一个特征向量;通过滑动窗口提取出引用字段为空的占比,作为一个特征向量;滑动窗口内,对请求的资源分类;统计请求每一种资源的访问次数占比;然后将各个资源的访问次数占比平方后相加,作为一个特征向量;滑动窗口内请求资源的速率特征向量:生成一个请求资源的链表并且记录资源被请求的情况,将所有请求的相邻时间差大于设定阈值的次数统计出,并与请求的相邻时间差个数相除得到速率特征向量;访问时间间隔特征向量,访问时间间隔特征向量的值越大则表示疑似爬虫的可能性越大;所述访问时间间隔特征向量:访问时间间隔特征向量需要计算一个访问时间间隔得分score;a)将滑动窗口中相邻访问之间的时间相减得到一个时间间隔序列;b)对于时间间隔序列中时间间隔小于设定最小时长的,累加到后面的时间间隔,得到一个处理后时间间隔序列;c)对score初始化一个得分score=0;遍历这个处理后时间间隔序列,每有一个数字在设定最小时长~设定最大时长之间,则score加一个数值,每有一个数字大于设定最大时长将score减去一个数值;d)最后得出的score为访问时间间隔特征向量。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡中科富农物联科技有限公司;安徽中科物联科技有限公司;江苏物联网研究发展中心,未经无锡中科富农物联科技有限公司;安徽中科物联科技有限公司;江苏物联网研究发展中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610262526.6/,转载请声明来源钻瓜专利网。