一种爬虫识别方法、系统、装置及可读存储介质制造方法及图纸

技术编号:37082869 阅读:15 留言:0更新日期:2023-03-29 19:58
本发明专利技术提出的一种爬虫识别方法、系统、装置及可读存储介质,属于计算机技术领域,所述方法包括:通过对用户请求信息进行识别,先通过多维度名单库过滤用户;通过对所有访问用户的请求频率、请求时段进行统计分析,设置对应点阈值,访问频率超过正常阈值或访问时段异常则认为用户行为异常;访问行为异常的用户,进行验证码验证,触发预设的防机器识别自动生成验证码程序,若多次验证码验证失败,可再对验证失败的用户再进行短信上行验证,若多次未通过短信上行验证,则判定该用户为爬虫,将其IP地址列入多维度名单库。通过名单库数据和正常用户数据建立逻辑回归识别模型,代替请求频率、时段阈值的识别,提高了识别精度。提高了识别精度。提高了识别精度。

【技术实现步骤摘要】
一种爬虫识别方法、系统、装置及可读存储介质


[0001]本专利技术涉及计算机
,更具体的说是涉及一种爬虫识别方法、系统、装置及可读存储介质。

技术介绍

[0002]爬虫指的是网络爬虫(又被称为网页蜘蛛,网络机器人等),是一种按照一定的规则,自动地抓取互联网上网络信息的程序或者脚本。爬虫在抓取一个网页后,若这个网页中具有指向各个其它网页的超链接,那么就可以爬到另一张网上来获取其它数据。
[0003]爬虫是一种根据预定规则模拟浏览器行为,自动化发出网络请求,接收请求响并解析提取万维网信息的软件程序。爬虫也可被视作一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。以往的爬虫识别技术通常是通过访问信息识别,如通过浏览器请求参数的特征来识别用户是否为爬虫,或者通过统计用户访问频率是否超过预设阈值来判断用户是否为爬虫,但随着爬虫技术的不断发展,这类单一的识别手段对爬虫的识别准确度日益降低,会产生漏报,而且容易误伤真实用户,降低用户的使用体验。
[0004]现有的反爬虫技术在识别爬虫的方法上过于单一化,只用一种判定方法来判断访问的用户是否为爬虫,这样的识别方法在精度上不够准确,而且容易漏过真正的爬虫,还可能误伤真实用户。

技术实现思路

[0005]针对以上问题,本专利技术的目的在于提供一种爬虫识别方法、系统、装置及可读存储介质,通过访问信息识别、访问频率统计、逻辑回归模型识别、用户访问验证技术的整合与创新,建立多维立体的爬虫识别模式,在提高识别精确度的同时最大限度降低误伤真实用户的可能性。
[0006]本专利技术为实现上述目的,通过以下技术方案实现:一种爬虫识别方法,包括如下步骤:
[0007]S1:接收到用户资源请求时识别其请求信息;
[0008]S2:判断是否有用于识别爬虫的逻辑回归识别模型;若否,则执行步骤S3,若是,则执行步骤S6;
[0009]S3:根据请求信息中的请求频次信息和请求时段信息识别出行为异常的用户;S4:对行为异常的用户进行用户验证,根据验证结果确定用户为爬虫,并将爬虫信息加入多维度明单库;
[0010]S5:当多维度明单库中的爬虫信息达到预设阈值时,通过正常用户和爬虫的请求信息建立用于识别爬虫的逻辑回归识别模型;当多维度明单库爬虫信息的增长量达到增长阈值时,使用新增的爬虫信息进行逻辑回归识别模型的迭代;
[0011]S6:使用逻辑回归识别模型识别出行为异常的用户,并执行步骤S4。
[0012]进一步,步骤S1包括:
[0013]识别请求信息中的请求行信息和请求头信息;
[0014]请求行信息包括:请求方式信息和统一资源定位符;
[0015]请求头信息包括:源IP和User

Agent。
[0016]进一步,步骤S3包括:
[0017]根据请求频次信息和请求时段信息计算出用户请求频率,当用户请求频率小于设定阈值时,认定用户行为无异常;当用户请求频率大于等于设定阈值是,认定用户行为存在异常。
[0018]进一步,步骤S3具体为,通过以下公式计算出用户请求频率:
[0019][0020]其中,ht表示用户请求的时间间隔,ht
f
表示用户的请求频率,ht
N
表示用户发起请求的时间,设定阈值为30,用户每隔30次请求的时间为ht2、ht3、

、ht
N

[0021]每记录一次ht
N
计算一次ht
f
,当ht
f
<30时认定用户行为无异常,当ht
f
>=30时认定用户行为存在异常。
[0022]进一步,步骤S4包括:
[0023]随机生成防机器识别验证码,并要求行为异常的用户输入并验证;
[0024]当该用户连续N次验证失败后,对该用户发起短信上行验证,由后端生成验证码,将生成的验证码和接收号码发给用户,让用户向接收号码发送指定的验证码;
[0025]当该用户进行n次短信验证仍未通过,则判断该用户为爬虫,将其TP地址加入多维度名单库。
[0026]进一步,所述通过正常用户和爬虫的请求信息建立用于识别爬虫的逻辑回归识别模型,包括:
[0027]从正常用户和爬虫的请求信息中提取参数,参数包括请求时段T、请求频率F、请求量M和请求比B;
[0028]通过以下公式建立用于识别爬虫的逻辑回归识别模型:
[0029][0030]其中,S(θ)是一个(0,1)之间的数,表示模型计算的结果;e是自然对数的底数;θ(x)的结果用于表示当前用户是否为爬虫,0表示正常用户,1表示爬虫;β0表示系统残差;β
1、
β2、β3、β4为四个参数项的对应的系数。
[0031]进一步,所述请求时段T,由TP的请求时间戳中获取,读取时间戳中的小时部分,将24小时等分为12份,分别计1到12;
[0032]所述请求频率F为用户在单位时间内向服务器发起请求的次数;
[0033]所述请求量M为用户在预设时长内向服务器发起请求的总次数;
[0034]所述请求比的生成过程包括:记录一定时间内用户向服务器请求不同URL的次数,
对它们按照请求频率由高到低排序后取前五个URL,前五个高频请求的URL的次数比即为请求比。
[0035]相应的,本专利技术还公开了一种爬虫识别系统,包括:
[0036]信息识别模块,用于接收到用户资源请求时识别其请求信息;
[0037]判断模块,用于判断是否有用于识别爬虫的逻辑回归识别模型;
[0038]异常识别模块,用于根据请求信息中的请求频次信息和请求时段信息识别出行为异常的用户;
[0039]用户验证模块,用于对行为异常的用户进行用户验证,根据验证结果确定用户为爬虫,并将爬虫信息加入多维度明单库;
[0040]模型组建及迭代模块,用于当多维度明单库中的爬虫信息达到预设阈值时,通过正常用户和爬虫的请求信息建立用于识别爬虫的逻辑回归识别模型;当多维度明单库爬虫信息的增长量达到增长阈值时,使用新增的爬虫信息进行逻辑回归识别模型的迭代;
[0041]模型识别模块,用于使用逻辑回归识别模型识别出行为异常的用户。
[0042]相应的,本专利技术公开了一种爬虫识别装置,包括:
[0043]存储器,用于存储爬虫识别程序;
[0044]处理器,用于执行所述爬虫识别程序时实现如上文任一项所述爬虫识别方法的步骤。
[0045]相应的,本专利技术公开了一种可读存储介质,所述可读存储介质上存储有爬虫识别程序,所述爬虫识别程序被处理器执行时实现如上文任一项所述爬虫识别方法的步骤。
[0046]对比现有技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种爬虫识别方法,其特征在于,包括如下步骤:S1:接收到用户资源请求时识别其请求信息;S2:判断是否有用于识别爬虫的逻辑回归识别模型;若否,则执行步骤S3,若是,则执行步骤S6;S3:根据请求信息中的请求频次信息和请求时段信息识别出行为异常的用户;S4:对行为异常的用户进行用户验证,根据验证结果确定用户为爬虫,并将爬虫信息加入多维度明单库;S5:当多维度明单库中的爬虫信息达到预设阈值时,通过正常用户和爬虫的请求信息建立用于识别爬虫的逻辑回归识别模型;当多维度明单库爬虫信息的增长量达到增长阈值时,使用新增的爬虫信息进行逻辑回归识别模型的迭代;S6:使用逻辑回归识别模型识别出行为异常的用户,并执行步骤S4。2.根据权利要求1所述的爬虫识别方法,其特征在于,所述步骤S1包括:识别请求信息中的请求行信息和请求头信息;请求行信息包括:请求方式信息和统一资源定位符;请求头信息包括:源IP和User

Agent。3.根据权利要求2所述的爬虫识别方法,其特征在于,所述步骤S3包括:根据请求频次信息和请求时段信息计算出用户请求频率,当用户请求频率小于设定阈值时,认定用户行为无异常;当用户请求频率大于等于设定阈值是,认定用户行为存在异常。4.根据权利要求3所述的爬虫识别方法,其特征在于,所述步骤S3具体为,通过以下公式计算出用户请求频率:其中,ht表示用户请求的时间间隔,ht
f
表示用户的请求频率,ht
N
表示用户发起请求的时间,设定阈值为30,用户每隔30次请求的时间为ht2、ht3、

、ht
N
;每记录一次ht
N
计算一次ht
f
,当ht
f
<30时认定用户行为无异常,当ht
f
>=30时认定用户行为存在异常。5.根据权利要求3所述的爬虫识别方法,其特征在于,所述步骤S4包括:随机生成防机器识别验证码,并要求行为异常的用户输入并验证;当该用户连续N次验证失败后,对该用户发起短信上行验证,由后端生成验证码,将生成的验证码和接收号码发给用户,让用户向接收号码发送指定的验证码;当该用户...

【专利技术属性】
技术研发人员:李献福吴一非赖成宾张少校
申请(专利权)人:中孚安全技术有限公司
类型:发明
国别省市:

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

1