网络爬虫检测方法、装置、存储介质及电子设备与流程

文档序号:20780292发布日期:2020-05-19 21:10阅读:178来源:国知局
网络爬虫检测方法、装置、存储介质及电子设备与流程
本申请涉及互联网技术,特别是涉及一种网络爬虫检测方法、装置、存储介质及电子设备。
背景技术
:网络爬虫起始于搜索引擎领域,搜索引擎用网络爬虫收集网站信息,将收集的网站信息组合后确定检索关键词,方便用户使用检索关键词进行搜索。遵守robots协议的网站会在根目录下创建robots.txt文件,在robots.txt文件中明确规定允许使用网络爬虫的搜索引擎名称和允许网络爬虫爬取的目录。但是,现在出现了越来越多不遵守robots协议的网络爬虫,对网站信息进行肆意的爬取和公开展示,因此,为了保护网站信息的独有性,研究反爬虫策略十分重要。现有的反爬虫策略主要根据访问请求的统计数据或特征数据,确定发出访问请求的目标请求端是否为网络爬虫。现有的反爬虫策略仅能识别出大部分采用低端爬虫技术的网络爬虫,但是现在越来越多的网络爬虫采用控制访问频率、利用分布式请求端、基于浏览器解析等方式来绕过传统的反爬虫策略,现有的反爬虫策略对网络爬虫检测能力较低。技术实现要素:有鉴于此,本申请的主要目的在于提供一种网络爬虫检测方法,该方法可以有效检测采用低端爬虫技术至高端爬虫技术的网络爬虫,有效提升对网络爬虫的检测能力。为了达到上述目的,本申请提出的技术方案为:第一方面,本申请实施例提供一种网络爬虫检测方法,包括以下步骤:获取目标请求端对受保护网站的当前访问请求产生的当前访问数据;获取所述目标请求端的历史访问数据,并根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率;根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值;根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率;根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求。一种可能的实施方式中,所述获取目标请求端对受保护网站的当前访问请求产生的当前访问数据的步骤,包括:将所述目标请求端对所述受保护网站的所述当前访问请求产生的数据流进行镜像,得到第一镜像数据;将所述第一镜像数据作为所述当前访问数据获取。一种可能的实施方式中,所述获取目标请求端对受保护网站的当前访问请求产生的当前访问数据的步骤,包括:将对所述受保护网站所在的网络端口的访问请求产生的数据流进行镜像,得到第二镜像数据;根据所述受保护网站的域名和所述目标请求端的地址,从所述第二镜像数据中确定所述当前访问数据。一种可能的实施方式中,所述获取目标请求端对受保护网站的当前访问请求产生的当前访问数据的步骤之后,所述获取所述目标请求端的历史访问数据的步骤之前,所述方法还包括:基于所述当前访问数据的统计数据或特征数据,确定所述目标请求端是否是网络爬虫;当所述目标请求端不是网络爬虫时,执行所述获取所述目标请求端的历史访问数据的步骤。一种可能的实施方式中,所述根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率的步骤,包括:根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问总次数;根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站的同一页面进行两次以上访问的重复访问次数;根据所述访问总次数和所述重复访问次数,确定所述访问重复率。一种可能的实施方式中,所述至少一种访问策略包括:第一访问策略:当所述目标请求端不是网络爬虫时所述网站服务端通过所述当前访问请求;第二访问策略:当所述目标请求端不是网络爬虫时所述网站服务端禁止所述当前访问请求;第三访问策略:当所述目标请求端是网络爬虫时所述网站服务端通过所述当前访问请求;第四访问策略:以及当所述目标请求端是网络爬虫时所述网站服务端禁止所述当前访问请求;所述根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值的步骤,包括:针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值;根据该访问策略的当前收益值,确定该访问策略的收益值。一种可能的实施方式中,所述根据该访问策略的当前收益值,确定该访问策略的收益值的步骤,包括:将该访问策略的当前收益值,确定为该访问策略的收益值。一种可能的实施方式中,所述根据该访问策略的当前收益值,确定该访问策略的收益值的步骤,包括:根据所述当前访问数据,确定所述当前访问请求为所述当前收益值带来的增益;针对所述至少一种访问策略,根据该访问策略的当前收益值及所述增益,确定该访问策略的收益值。一种可能的实施方式中,所述爬虫概率为正常访问概率;所述预设爬虫概率阈值为预设爬虫访问阈值;所述根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率的步骤,包括:根据所述至少一种访问策略的收益值,确定所述当前访问请求是正常访问请求的概率,作为正常访问概率;所述根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求的步骤,包括:当所述正常访问概率小于预设爬虫访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,所述爬虫概率为允许访问概率;所述预设爬虫概率阈值为预设允许访问阈值;所述根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率的步骤,包括:根据所述至少一种访问策略的收益值,确定所述网站服务端允许所述当前访问请求的概率,作为允许访问概率;所述根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求的步骤,包括:当所述允许访问概率小于预设允许访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,所述确定所述当前访问请求的爬虫概率的步骤之后,所述根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求的步骤之前,所述方法还包括:确定所述预设爬虫概率阈值。一种可能的实施方式中,所述确定所述预设爬虫概率阈值的步骤,包括:根据受保护网站的保护强度,确定预设爬虫概率阈值的取值范围;从所述预设爬虫概率阈值的取值范围中,确定所述预设爬虫概率阈值。第二方面,本申请实施例提供一种网络爬虫检测装置,包括:请求获取模块,用于获取目标请求端对受保护网站的当前访问请求产生的当前访问数据;历史获取模块,用于获取所述目标请求端的历史访问数据;重复率确定模块,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率;收益值确定模块,用于根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值;概率确定模块,用于根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率;爬虫确定模块,用于根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求。一种可能的实施方式中,请求获取模块,包括:镜像单元,用于将所述目标请求端对所述受保护网站的所述当前访问请求产生的数据流进行镜像,得到第一镜像数据;数据确定单元,用于将所述第一镜像数据作为所述当前访问数据获取。一种可能的实施方式中,请求获取模块,包括:镜像单元,用于将对所述受保护网站所在的网络端口的访问请求产生的数据流进行镜像,得到第二镜像数据;数据确定单元,用于根据所述受保护网站的域名和所述目标请求端的地址,从所述第二镜像数据中确定所述当前访问数据。一种可能的实施方式中,网络爬虫检测装置,还包括:基础检测模块,用于基于所述当前访问数据的统计数据或特征数据,确定所述目标请求端是否是网络爬虫;当所述目标请求端不是网络爬虫时,执行所述获取所述目标请求端的历史访问数据的步骤。一种可能的实施方式中,重复率确定模块,包括:总次数确定单元,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问总次数;重复次数确定单元,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站的同一页面进行两次以上访问的重复访问次数;重复率确定单元,用于根据所述访问总次数和所述重复访问次数,确定所述访问重复率。一种可能的实施方式中,所述至少一种访问策略包括:第一访问策略:当所述目标请求端不是网络爬虫时所述网站服务端通过所述当前访问请求;第二访问策略:当所述目标请求端不是网络爬虫时所述网站服务端禁止所述当前访问请求;第三访问策略:当所述目标请求端是网络爬虫时所述网站服务端通过所述当前访问请求;第四访问策略:以及当所述目标请求端是网络爬虫时所述网站服务端禁止所述当前访问请求;收益值确定模块,包括:当前收益值确定单元,用于针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值;收益值确定单元,用于根据该访问策略的当前收益值,确定该访问策略的收益值。一种可能的实施方式中,收益值确定单元,用于:将该访问策略的当前收益值,确定为该访问策略的收益值。一种可能的实施方式中,收益值确定单元,包括:增益确定子单元,用于根据所述当前访问数据,确定所述当前访问请求为所述当前收益值带来的增益;收益确定子单元,用于针对所述至少一种访问策略,根据该访问策略的当前收益值及所述增益,确定该访问策略的收益值。一种可能的实施方式中,所述爬虫概率为正常访问概率;所述预设爬虫概率阈值为预设爬虫访问阈值;概率确定模块,用于:根据所述至少一种访问策略的收益值,确定所述当前访问请求是正常访问请求的概率,作为正常访问概率;爬虫确定模块,用于:当所述正常访问概率小于预设爬虫访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,所述爬虫概率为允许访问概率;所述预设爬虫概率阈值为预设允许访问阈值;概率确定模块,用于:根据所述至少一种访问策略的收益值,确定所述网站服务端允许所述当前访问请求的概率,作为允许访问概率;爬虫确定模块,用于:当所述允许访问概率小于预设允许访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,网络爬虫检测装置,还包括:阈值确定模块,用于确定所述预设爬虫概率阈值。一种可能的实施方式中,阈值确定模块,包括:范围确定单元,用于根据受保护网站的保护强度,确定预设爬虫概率阈值的取值范围;阈值确定单元,用于从所述预设爬虫概率阈值的取值范围中,确定所述预设爬虫概率阈值。第三方面,本申请实施例还提供一种计算机可读存储介质。具体方案为:一种计算机可读存储介质,存储有计算机指令,所述指令被处理器执行时可实现上述第一方面及第一方面中任一种可能的实施方式的步骤。第四方面,本申请实施例还提供一种电子设备。具体方案为:一种电子设备,该电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述第一方面及第一方面中任一种可能的实施方式的步骤。综上所述,本申请提出一种网络爬虫检测方法、装置、存储介质及电子设备。本申请根据当前访问数据及历史访问数据确定对受保护网站中的页面的访问重复率,对于网络爬虫来说,对受保护网站的页面进行重复访问会降低网络爬虫爬取网站信息的效率,因此,使用访问重复率可以区别网络爬虫发出的访问请求和正常访问请求。进而根据访问重复率确定网站服务端执行至少一种访问策略各自的收益值,提升了至少一种访问策略计算的收益值的准确度,有效提升对网络爬虫的检测能力。进一步的,有别于现有技术中根据访问请求的统计数据或特征数据,确定发出访问请求的目标请求端是否是网络爬虫,对是网络爬虫的目标请求端进行封禁的方法,本申请实施例根据至少一种访问策略的收益值,判断当前访问请求的爬虫概率,根据爬虫概率确定当前访问请求是否是网络爬虫发出的访问请求,进而拒绝网络爬虫发出的当前访问请求,从而提高了对采用高端爬虫技术的网络爬虫的检测能力,降低了对正常访问请求产生误判的概率。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例应用的架构示意图;图2为本申请实施例提供的一种网络爬虫检测方法的流程示意图;图3为本申请实施例提供的另一种网络爬虫检测方法的流程示意图;图4为本申请实施例提供的一种网络爬虫检测装置的结构示意图;图5为网络爬虫检测装置中请求获取模块的结构示意图;图6为网络爬虫检测装置中重复率确定模块的结构示意图;图7a为网络爬虫检测装置中收益值确定模块的结构示意图;图7b为网络爬虫检测装置中收益值确定单元的结构示意图;图8为网络爬虫检测装置中阈值确定模块的结构示意图;图9为本申请实施例提供的一种电子设备的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例,例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。网络爬虫起始于搜索引擎领域,搜索引擎用网络爬虫收集网站信息,将收集的网站信息组合后确定检索关键词,方便用户使用检索关键词进行搜索。现有的反爬虫策略主要根据访问请求的统计数据或特征数据,确定发出访问请求的目标请求端是否为网络爬虫。现有的反爬虫策略仅能识别出大部分采用低端爬虫技术的网络爬虫,但是现在越来越多的网络爬虫采用控制访问频率、利用分布式请求端、基于浏览器解析等方式来绕过传统的反爬虫策略,现有的反爬虫策略对网络爬虫检测能力较低。有鉴于此,本申请实施例的核心发明点在于:根据当前访问数据及历史访问数据确定对受保护网站中的页面的访问重复率,对于网络爬虫来说,对受保护网站的页面进行重复访问会降低网络爬虫爬取网站信息的效率,因此,使用访问重复率可以区别网络爬虫发出的访问请求和正常访问请求。进而根据访问重复率确定网站服务端执行至少一种访问策略各自的收益值,提升了至少一种访问策略计算的收益值的准确度,有效提升对网络爬虫的检测能力。进一步的,有别于现有技术中根据访问请求的统计数据或特征数据,确定发出访问请求的目标请求端是否是网络爬虫,对是网络爬虫的目标请求端进行封禁的方法,本申请实施例根据至少一种访问策略的收益值,判断当前访问请求的爬虫概率,根据爬虫概率确定当前访问请求是否是网络爬虫发出的访问请求,进而拒绝网络爬虫发出的当前访问请求,从而提高了对采用高端爬虫技术的网络爬虫的检测能力,降低了对正常访问请求产生误判的概率。进一步的,本申请实施例采用镜像技术,将所述目标请求端对所述受保护网站的所述当前访问请求产生的数据流进行镜像,将得到的第一镜像数据作为当前访问数据获取;或者,将对所述受保护网站所在的网络端口的访问请求产生的数据流进行镜像,从得到的第二镜像数据中确定所述当前访问数据。目标请求端发送当前访问请求产生的当前访问数据为超文本传输协议(hypertexttransferprotocol,http)请求报文,并且http请求报文是由至少一个传输控制协议(transmissioncontrolprotocol,tcp)数据包组成的,使用镜像技术获取当前访问数据,可以有效降低由于网络延迟、处理速度缓慢等问题造成的tcp数据包丢失的概率,从而避免当前访问数据无法成功获取的情况。本申请实施例提供的网络爬虫检测可以应用于如图1所示的实现网络爬虫检测功能的检测电子设备101,例如,可以使用服务器实现上述检测电子设备101。实现本申请实施例方法的检测电子设备101与网络设备1021连接,检测电子设备101从网络设备1021获取当前访问请求产生的当前访问数据。具体例如,网络设备1021可以采用当前访问请求访问受保护网站1022使用的路由器、交换机或服务器。网络设备1021及受保护网站1022构成了网站服务端102,目标请求端103发起对网络服务端102中受保护网站1022的访问请求。为使本申请的目的、技术方案和优点更加清楚,下面以具体实施例对本发明的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。实施例一图2为本申请实施例提供的网络爬虫检测方法的流程示意图,如图2所示,该实施例主要包括:s201:获取目标请求端对受保护网站的当前访问请求产生的当前访问数据。这里,目标请求端为发起对受保护网站的当前访问请求的请求端,本申请实施例提供的方法用于判断目标请求端是否为网络爬虫,判断目标请求端对受保护网站发起的当前访问请求是否是网络爬虫发出的访问请求。受保护网站为需要对网站信息进行保护的网站,受保护网站由至少一个页面构成。当前访问请求为目标请求端发起的对受保护网站的当前的访问请求。当前访问数据为目标请求端发起的当前访问请求产生的访问数据,一般情况下,目标请求端发起当前访问请求产生的当前访问数据为http请求报文,并且http请求报文是由至少一个tcp数据包组成的。s202:获取所述目标请求端的历史访问数据,并根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率。目标请求端的历史访问数据为目标请求端在发起当前访问请求之前针对受保护网站发起的历史访问请求产生的访问数据。在具体实施时,通常根据设备指纹的判断发起访问请求的请求端是否为目标请求端。根据目标请求端发起当前访问请求产生的当前访问数据、以及目标请求端发起历史访问请求产生的历史请求数据,确定目标请求端对受保护网站中的页面的访问重复率。将目标请求端发起的对受保护网站的同一页面进行两次以上访问的访问请求称为重复访问请求,访问重复率为上述重复访问请求在当前访问请求及历史访问请求中出现的概率。并且,综上可知,访问请求包括当前访问请求和历史访问请求,访问数据也包括当前访问请求产生的当前访问数据和历史访问请求产生的历史访问数据。s203:根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值。具体的,使用检测电子设备执行本申请实施例提供的方法,本申请实施例提供的方法在判断当前访问请求是否是网络爬虫发出的访问请求之后,通过控制网站服务端执行访问策略,控制是否允许当前访问请求的执行。因此,访问策略用于控制是否允许当前访问请求的执行,上述至少一种访问策略中的每一种访问策略均代表了一种对当前访问请求允许或禁止的策略。当网络服务端执行上述至少一种访问策略时,本申请实施例根据访问重复率确定执行至少一种访问策略时各自的收益值。执行上述至少一种访问策略中的每种访问策略,如果网络服务端错误地允许了网络爬虫发出的访问请求或错误地禁止了正常访问请求,会对网络服务端造成损失;如果网络服务端正确地允许了正常访问请求或正确地禁止了网络爬虫发出的访问请求,会对网络服务端产生收益。对于上述至少一种访问策略,执行该访问策略的收益值,用于评估执行该访问策略对网络服务端造成的损失或产生的收益。s204:根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率。根据评估执行上述至少一种访问策略对网络服务端造成的损失或产生的收益,确定当前访问请求的爬虫概率,爬虫概率用于表征当前访问请求是网络爬虫发出的访问请求的概率。s205:根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求。采用预设爬虫概率阈值对爬虫概率的大小进行评估,根据爬虫概率与预设爬虫概率阈值,确定当前访问请求是否是网络爬虫发出的访问请求。本申请实施例在每次获取到目标请求端对受保护网站发起的当前访问请求时,采用当前访问数据及历史访问数据,重复计算执行上述至少一种访问策略中的每种访问策略对网络服务端造成的损失或产生的收益。根据多次访问请求对网络服务端造成的损失或产生的收益,评估当前访问请求的爬虫概率,从而根据至少一次的当前访问请求和历史访问请求产生的当前访问数据和历史访问数据,确定当前访问请求是否是网络爬虫发出的访问请求,提高对采用高端爬虫技术的网络爬虫的检测能力,降低了对正常访问请求产生误判的概率。实施例二为了更详尽地介绍网络爬虫检测方法的实现,本申请实施例提供了另一种网络爬虫检测方法,如图3所示,包括如下步骤:s301:获取目标请求端对受保护网站的当前访问请求产生的当前访问数据。由于目标请求端发送当前访问请求产生的当前访问数据为http请求报文,并且http请求报文是由至少一个tcp数据包组成的。为了防止由于检测电子设备在获取当前访问数据时发生网络延迟、处理速度缓慢等情况,造成的tcp数据包获取不全的情况,优选的,本申请实施例采用镜像技术获取当前访问数据。示例性的,可以采用基于数据包的深度检测技术(deeppacketinspection,dpi)中的数据平面开发套件(dataplanedevelopmentkit,dpdk)技术实现上述镜像技术。优选的,可以利用dpdk技术建立检测电子设备与受保护网站接入网络设备的端口的连接,通过dpdk技术将网络设备产生的数据流进行镜像。进一步的,可以通过网卡建立检测电子设备与所有网站接入网络设备的入口路由器或入口交换机的连接,或者,也可以通过网卡建立检测电子设备与受保护网站接入网络设备的前级路由器或前级交换机的连接。dpi技术是在传统互联网协议(internetprotocol,ip)数据包检测技术的基础之上增加了对应用层数据的应用协议识别,开放式系统互联(opensourceinitiative,osi)结构有多层结构,对osi结构l2层至l4层之间包含的tcp数据包进行检测分析,包括tcp数据包内容检测与深度解码。网络爬虫对网站信息的爬取可以使用dpi技术进行数据流的采集、协议分析和数据还原。dpdk技术是由英特尔(intel)提供的工具实现的,是用于快速tcp数据包处理的函数库与驱动的集合,是dpi技术的一种实现方式,适用于x86架构的linux系统。dpdk技术解决了检测电子设备对工控设备的依赖,因此,检测电子设备采用配置了intel网卡的传统x86服务器实现,就可以实现对当前访问数据进行采集。具体的,本申请实施例对访问请求产生的数据流进行镜像,得到镜像数据,根据镜像数据得到当前访问数据。可以采用下述两种可能的实施方式获取目标请求端对受保护网站的当前访问请求产生的当前访问数据。a:一种可能的实施方式中,可以将所述目标请求端对所述受保护网站的所述当前访问请求产生的数据流进行镜像,得到第一镜像数据;将所述第一镜像数据作为所述当前访问数据获取。此种可能的实施方式中,对目标请求端对受保护网站的当前访问请求产生的数据流进行镜像,得到当前访问数据。b:另一种可能的实施方式中,将对所述受保护网站所在的网络端口的访问请求产生的数据流进行镜像,得到第二镜像数据;根据所述受保护网站的域名和所述目标请求端的地址,从所述第二镜像数据中确定所述当前访问数据。此种可能的实施方式中,可以对受保护网站所在的网络端口的所有访问请求产生的数据流进行镜像,得到第二镜像数据,从第二镜像数据中筛选目标请求端对受保护网络的当前访问数据。具体的,可以根据受保护网站的域名和目标请求端的地址在第二镜像数据中进行筛选,得到当前访问数据。示例性的,当采用dpdk技术获取当前访问数据时,可以基于osi结构进行第二镜像数据的筛选,具体的,可以在osi的l3层建立过滤器,根据目标请求端的地址,例如目标请求端的ip地址,在第二镜像数据中进行筛选,并且在osi的l7层建立过滤器,根据受保护网站的域名在第二镜像数据中进行筛选,从而得到当前访问数据。综上,访问请求产生的数据流,包括:目标请求端对受保护网站的当前访问请求产生的数据流、或者受保护网站所在的网络端口的所有访问请求产生的数据流;镜像数据,包括:上述第一镜像数据或第二镜像数据。上述可能的实施方式,可以有效防止由于检测电子设备在获取当前访问数据时发生网络延迟、处理速度缓慢等情况,造成的tcp数据包获取不全的情况,保证获取到正确、完整的当前访问数据。s302:基于所述当前访问数据的统计数据或特征数据,确定所述目标请求端是否是网络爬虫。为了受保护网站的安全性和反爬虫的效率,在根据当前访问数据及历史访问数据确定当前访问请求是否是网络爬虫发出的访问请求之前,可以先基于当前访问数据的统计数据或特征数据,确定目标请求端是否是网络爬虫。示例性的,可以采用下述方法中的至少一种确定目标请求端是否是网络爬虫:确定目标请求端发起访问请求的访问频次,根据访问频次确定目标请求端是否是网络爬虫;确定目标请求端的连接存活时间,判断目标请求端的连接存活时间是否超过预设存活时间阈值,当目标请求端的连接存活时间超过预设存活时间阈值时,目标请求端是网络爬虫;确定表征目标请求端是否使用代理ip发起访问请求的请求特征,基于请求特征确定目标请求端是否是网络爬虫;确定表征目标请求端发起的访问请求中是否只包含网站页面的访问特征,基于访问特征确定目标请求端是否是网络爬虫;以及基于广度算法或深度算法,确定目标请求端发起的访问请求的请求地址的计算特征,基于计算特征确定目标请求端是否是网络爬虫。上述方法足以判断出采用低端爬虫技术的网络爬虫,当采用上述方法中的至少一种判断出目标请求端是网络爬虫时,执行步骤s303;当采用上述方法中的至少一种判断出目标请求端不是网络爬虫时,执行步骤s304。s303:对目标请求端进行封禁。在具体实施时,当采用上述方法中的至少一种判断出目标请求端是网络爬虫时,可以基于目标请求端的设备指纹对目标请求端进行封禁。设备指纹为可以标识出请求端设备特征、对不同请求端进行区分的独特、唯一的设备标识。在请求端打开浏览器开始浏览受保护网站时,会创建一个设备指纹,用于对不同请求端进行区分。当请求端关闭浏览器结束受保护网站的浏览时,上述设备指纹会被注销。因此,请求端打开浏览器开始浏览受保护网站至请求端关闭浏览器结束受保护网站的浏览之间的时间段,可以被称为拥有上述设备指纹的目标请求端的连接存活时间。s304:获取所述目标请求端的历史访问数据。本申请实施例将目标请求端对受保护网站发起的每次访问请求产生的访问数据均进行存储,在本步骤中,获取目标请求端在发起当前访问请求之前针对受保护网站发起的历史访问请求产生的历史访问数据。s305:根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率。具体的,可以根据下述步骤1至步骤3确定访问重复率:步骤1、根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问总次数。访问总次数为目标请求端对受保护网站发起访问请求的总请求次数。无论是当前访问请求还是历史访问请求,每次访问请求检测电子设备均会获取产生的访问数据,因此,结合当前访问数据及历史访问数据,根据访问数据的个数,可以确定目标请求端对受保护网站中的页面发起访问请求的访问总次数。步骤2、根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站的同一页面进行两次以上访问的重复访问次数。重复访问请求为目标请求端发起的对受保护网站的同一页面进行两次以上访问的访问请求,因此,重复访问次数为目标请求端发起的重复访问请求的请求次数。步骤3、根据所述访问总次数和所述重复访问次数,确定所述访问重复率。示例性的,可以根据重复访问次数除以访问总次数的商,确定访问重复率。s306:根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值。在具体实施时,上述至少一种访问策略可以包括:第一访问策略:当所述目标请求端不是网络爬虫时所述网站服务端通过所述当前访问请求;第二访问策略:当所述目标请求端不是网络爬虫时所述网站服务端禁止所述当前访问请求;第三访问策略:当所述目标请求端是网络爬虫时所述网站服务端通过所述当前访问请求;第四访问策略:以及当所述目标请求端是网络爬虫时所述网站服务端禁止所述当前访问请求。上述四种访问策略代表了实施时可能存在的每种访问策略。当上述至少一种访问策略包括上述四种访问策略时,本申请实施例提供了如下两种可能的实施方式确定网站服务端分别执行至少一种访问策略时各自的收益值。上述至少一种访问策略中的每种访问策略会对目标请求端产生收益或损失,也会对网站服务端产生收益或损失,每种访问策略对目标请求端或网络服务端产生的收益值不同。因此,在具体实施时,收益值可以包括目标请求端的收益值和网络服务端的收益值。在具体实施时,可以针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值,并根据该访问策略的当前收益值,确定该访问策略的收益值。a:一种可能的实施方式中,在针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值的步骤之后,可直接将该访问策略的当前收益值确定为该访问策略的收益值。在可能的实施方式a的具体实施时,根据对访问行为分析可知,对于网络爬虫来说,对受保护网站的页面进行重复访问会降低网络爬虫爬取网站信息的效率,而对于正常访问的目标请求端而言,对受保护网站的页面进行重复访问是常见的正常行为。因此,对于目标请求端而言,假设将目标请求端当成网络爬虫,当访问重复率越高时,目标请求端是网络爬虫的可能性越低,目标请求端的当前收益值越低;当访问重复率越低时,目标请求端是网络爬虫的可能性越高,目标请求端的当前收益值越高。对于网络服务端而言,当访问重复率越高时,目标请求端是网络爬虫的可能性越低,网络服务端的当前收益值越高;当访问重复率越低时,目标请求端是网络爬虫的可能性越高,网络服务端的当前收益值越低。对于目标请求端而言,上述至少一种访问策略中的每种访问策略的目标请求端的当前收益值如下表1所示:表1目标请求端的当前收益值目标请求端不是网络爬虫目标请求端是网络爬虫网站服务端通过当前访问请求第一访问策略:u_benefit第三访问策略:r_benefit网站服务端禁止当前访问请求第二访问策略:0第四访问策略:r_loss对目标请求端的当前收益值来说,当目标请求端不是网络爬虫,而网站服务端通过当前访问请求时,会对目标请求端产生收益;当目标请求端不是网络爬虫,而网站服务端禁止当前访问请求时,不会对目标请求端产生收益;当目标请求端是网络爬虫时,网站服务端通过当前访问请求时,会对目标请求端产生收益;当目标请求端是网络爬虫时,网站服务端禁止当前访问请求时,会对目标请求端产生损失。对于网络服务端而言,上述至少一种访问策略中的每种访问策略的网络服务端的当前收益值如下表2所示:表2网络服务端的当前收益值目标请求端不是网络爬虫目标请求端是网络爬虫网站服务端通过当前访问请求第一访问策略:s_benefit第三访问策略:s_loss网站服务端禁止当前访问请求第二访问策略:-s_benefit第四访问策略:s_benefit对网络服务端的当前收益值来说,当目标请求端不是网络爬虫,而网站服务端通过当前访问请求时,会对网络服务端产生收益;当目标请求端不是网络爬虫,而网站服务端禁止当前访问请求时,会对网络服务端产生负的收益,也就是会对网络服务端产生损失;当目标请求端是网络爬虫时,网站服务端通过当前访问请求时,会对网络服务端产生损失;当目标请求端是网络爬虫时,网站服务端禁止当前访问请求时,会对网络服务端产生收益。无论对目标请求端的当前收益值还是网络服务端的当前收益值,均根据访问重复率确定。如上所述,对于目标请求端而言,当访问重复率越高时,目标请求端的当前收益值越低;当访问重复率越低时,目标请求端的当前收益值越高。对于网络服务端而言,当访问重复率越高时,网络服务端的当前收益值越高;当访问重复率越低时,网络服务端的当前收益值越低。具体实施时,针对上述目标请求端的当前收益值和网络服务端的当前收益值中的每个当前收益值,设定该当前收益值的预设取值范围,根据访问重复率从该当前收益值的预设取值范围中,确定该当前收益值。也就是说,当确定目标请求端的当前收益值时,根据访问重复率分别确定第一访问策略下目标请求端的当前收益值u_benefit、第三访问策略下目标请求端的当前收益值r_benefit和第四访问策略下目标请求端的当前收益值r_loss,根据对访问策略的分析,第二访问策略下目标请求端的当前收益值始终为0。当确定网络服务端的当前收益值时,根据访问重复率分别确定第一访问策略下网络服务端的当前收益值s_benefit、第二访问策略下网络服务端的当前收益值s_loss、第三访问策略下网络服务端的当前收益值-s_benefit和第四访问策略下网络服务端的当前收益值s_benefit。也即是说,第一访问策略下网络服务端的当前收益值与第四访问策略下网络服务端的当前收益值相同,第三访问策略下网络服务端的当前收益值是第一访问策略下网络服务端的当前收益值的相反数。之后,将目标请求端的当前收益值确定为目标请求端的收益值,将网络服务端的当前收益值确定为网络服务端的收益值。根据访问重复率,分别确定目标请求端的当前收益值或网络服务端的当前收益值,使得目标请求端的当前收益值或网络服务端的当前收益值的确定更贴近实际实施情况。从网站信息流失的角度分析,重复访问获取的网站信息对目标请求端并没有造成损益,也没有对网络服务端造成损益;从网络爬虫获取网站信息的效率分析,重复访问会造成网络爬虫获取网站信息的效率降低,同时,不重复的访问会造成网络服务端的网站信息的流失加快。根据访问重复率确定目标请求端的当前收益值或网络服务端的当前收益值的方法,使得确定目标请求端的当前收益值或网络服务端的当前收益值的理论更贴合实际实施情况,增加了目标请求端的当前收益值或网络服务端的当前收益值计算的准确性。b、另一种可能的实施方式中,可以在针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值的步骤之后;根据所述当前访问数据,确定所述当前访问请求为所述当前收益值带来的增益;针对所述至少一种访问策略,根据该访问策略的当前收益值及所述增益,确定该访问策略的收益值。在可能的实施方式b中,可以将确定爬虫概率的过程,理解为目标请求端及网络服务端在采用上述至少一种访问策略的情况下进行博弈的过程。目标请求端及网络服务端在采用上述至少一种访问策略的情况下的博弈,是以目标请求端及网络服务端在目标请求端每次发起访问请求时带来的收益为基础进行的。针对上述至少一种访问策略,根据当前访问请求为当前收益值带来的增益及该访问策略的当前收益值,可以估算该访问策略下目标请求端发起的当前访问请求及每次历史访问请求积累的收益值,从而综合考虑在目标请求端发起的当前访问请求及每次历史访问请求的过程中,目标请求端及网络服务端在至少一次博弈过程中,由于信息流失引起的收益值的变化,并评估目标请求端及网络服务端在至少一次博弈过程中收益值的变化,对当前访问请求下网络服务端采取的访问策略的影响。在可能的实施方式b中,也是基于确定得到的该访问策略的当前收益值进行的,且可以采用可能的实施方式a中相同的方法,根据访问重复率确定该访问策略的当前收益值。也即是说,目标请求端的当前收益值如表1所示,网络服务端的当前收益值如表2所示,并且无论对目标请求端的当前收益值还是网络服务端的当前收益值,均根据访问重复率确定。具体实施时,针对上述目标请求端的当前收益值和网络服务端的当前收益值中的每个当前收益值,设定该当前收益值的预设取值范围,根据访问重复率从该当前收益值的预设取值范围中,确定该当前收益值。之后,具体的,可以采用下述步骤[1]和步骤[2]确定收益值。步骤[1]、根据所述当前访问数据,确定所述当前访问请求为所述当前收益值带来的增益。具体的,对于网络服务端来说,可以根据当前访问数据,确定当前访问请求为网络服务端的当前收益值带来的增益,作为网络服务端的增益。假设,当前访问请求为网络服务端的当前收益值带来的增益为α,也就是说网络服务端的增益为α。对于目标请求端来说,可以根据当前访问数据,确定当前访问请求为目标请求端的当前收益值带来的增益,作为目标请求端的增益。假设,当前访问请求为目标请求端的当前收益值带来的增益为β,也就是说目标请求端的增益为β。步骤[2]、针对所述至少一种访问策略,根据该访问策略的当前收益值及所述增益,确定该访问策略的收益值。对于目标请求端而言,可以根据表1所示的目标请求端的当前收益值及增益,可以确定目标请求端的收益值,目标请求端的收益值如表3所示:表3目标请求端的收益值目标请求端不是网络爬虫目标请求端是网络爬虫网站服务端通过当前访问请求第一访问策略:u’_benefit第三访问策略:r’_benefit网站服务端禁止当前访问请求第二访问策略:0第四访问策略:r’_loss示例性的,可以根据下述公式(1)确定第一访问策略下目标请求端的收益值u’_benefit:其中,u’_benefit为第一访问策略下目标请求端的收益值,u_benefit为第一访问策略下目标请求端的当前收益值,β为目标请求端的增益。可以根据下述公式(2)确定第三访问策略下目标请求端的收益值r’_benefit:其中,r’_benefit为第三访问策略下目标请求端的收益值,r_benefit为第三访问策略下目标请求端的当前收益值,β为目标请求端的增益。可以根据下述公式(3)确定第四访问策略下目标请求端的收益值r’_loss:其中,r’_loss为第四访问策略下目标请求端的收益值,r_loss为第四访问策略下目标请求端的当前收益值,β为目标请求端的增益。对于网络服务端而言,可以根据表2所示的网络服务端的当前收益值及增益,可以确定网络服务端的收益值,网络服务端的收益值如表4所示:表4网络服务端的收益值目标请求端不是网络爬虫目标请求端是网络爬虫网站服务端通过当前访问请求第一访问策略:s’_benefit第三访问策略:s’_loss网站服务端禁止当前访问请求第二访问策略:-s’_benefit第四访问策略:s’_benefit示例性的,可以根据下述公式(4)确定第一访问策略下目标请求端的收益值s’_benefit:其中,s’_benefit为第一访问策略及第四访问策略下网络服务端的收益值,s_benefit为第一访问策略及第四访问策略下网络服务端的当前收益值,α为网络服务端的增益。并且,根据s’_benefit还可以确定第二访问策略下网络服务端的收益值-s’_benefit。示例性的,可以根据下述公式(5)确定第三访问策略下目标请求端的收益值s’_loss:其中,s’_loss为第三访问策略下网络服务端的收益值,s_loss为第三访问策略下网络服务端的当前收益值,α为网络服务端的增益。s307:根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率。在具体实施时,可以从两个角度确定当前访问请求的爬虫概率,从当前访问请求的角度,可以采用一种可能的实施方式i,爬虫概率可以采用正常访问概率,根据所述至少一种访问策略的收益值,确定所述当前访问请求是正常访问请求的概率,作为正常访问概率;可以采用另一种可能的实施方式ii,从目标请求端的角度,爬虫概率可以采用允许访问概率,根据所述至少一种访问策略的收益值,确定所述网站服务端允许所述当前访问请求的概率,作为允许访问概率。i、在一种可能的实施方式中,优选的,可以采用纳什均衡的方法,在当前访问请求是正常访问请求或网络爬虫的访问请求情况下,根据上述四种访问策略中网络服务端的收益值,确定当前访问请求是正常访问请求的概率。当在步骤s306中采用可能的实施方式a,确定至少一种访问策略下,网络服务端的当前收益值,将网络服务端的当前收益值确定为网络服务端的收益值时,实际是根据表2中网络服务端的当前收益值确定正常访问概率。示例性的,可以采用下述公式(6)确定当前访问请求是正常访问请求的概率y:其中,y为正常访问概率,s_benefit为第一访问策略及第四访问策略下网络服务端的当前收益值、或第二访问策略下网络服务端的当前收益值的相反数,s_loss为第三访问策略下网络服务端的当前收益值。当在步骤s306中采用可能的实施方式b,根据网络服务端的当前收益值及增益,确定网络服务端的收益值时,根据确定得到的网络服务端的收益值确定正常访问概率。为了便于记录数据和实现计算,可以根据上述表4中网络服务端的收益值,确定网络服务端的收益值矩阵,将针对上述至少一种访问策略,将表4中该访问策略的网络服务端的收益值,确定为网络服务端的收益值矩阵的一个元素。可以得到网络服务端的收益值矩阵为假设y为正常访问概率,则网络爬虫发起的访问的概率为1-y,因此,对于目标请求端而言,根据目标请求端发起正常访问的概率y及目标请求端发起的网络爬虫发起的访问的概率1-y,可以确定目标请求端的混合策略概率pu=(y,1-y)。假设x为允许访问概率,则网络服务端采取拒绝访问策略的概率为1-x,因此,对于网络服务端而言,根据网络服务端采取允许访问策略的概率x及网络服务端采取拒绝访问策略的概率1-x,可以确定网络服务端的混合策略概率ps=(x,1-x)。在当前访问请求是正常访问请求或网络爬虫的访问请求情况下,根据上述四种访问策略中网络服务端的收益值,可以确定网络服务端的收益函数cs,示例性的网络服务端的收益函数可以使用下述公式(7)确定:求解公式(7)可得公式(8)如下:cs=(2x-1)×y×s′_benefit+x×(-s′_benefit)×(1-y)+(1-x)×s′_defence(8)为了得到正常访问概率y,对上述公式(8)进行求导,可得下述公式(9):在对达到均衡状态时,公式(9)需等于0,当公式(9)等于0时,可得y的求解公式为下述公式(10):其中,y为正常访问概率,s’_benefit为第一访问策略及第四访问策略下网络服务端的收益值、或第二访问策略下网络服务端的收益值的相反数,s’_loss为第三访问策略下网络服务端的收益值。ii、在另一种可能的实施方式中,优选的,可以采用纳什均衡的方法,在网络服务端采取允许访问策略或拒绝访问策略的情况下,根据上述四种访问策略中目标请求端的收益值,确定网站服务端允许当前访问请求的概率,作为允许访问概率。当在步骤s306中采用可能的实施方式a,确定至少一种访问策略下,目标请求端的当前收益值,将目标请求端的当前收益值确定为目标请求端的收益值时,实际是根据表1中目标请求端的当前收益值确定正常访问概率。示例性的,可以采用下述公式(11)确定网站服务端允许当前访问请求的概率x:其中,x为允许访问概率,u_benefit为第一访问策略下目标请求端的当前收益值,r_benefit为第三访问策略下目标请求端的当前收益值,r_loss为第四访问策略下目标请求端的当前收益值。当在步骤s306中采用可能的实施方式b,根据目标请求端的当前收益值及增益,确定目标请求端的收益值时,根据确定得到的目标请求端的收益值确定正常访问概率。为了便于记录数据和实现计算,可以根据上述表3中目标请求端的收益值,确定目标请求端的收益值矩阵,将针对上述至少一种访问策略,将表3中该访问策略的目标请求端的收益值,确定为目标请求端的收益值矩阵的一个元素。可以得到目标请求端的收益值矩阵为同样的,假设y为正常访问概率,则网络爬虫发起的访问的概率为1-y,因此,可以确定目标请求端的混合策略概率pu=(y,1-y)。假设x为允许访问概率,则网络服务端采取拒绝访问策略的概率为1-x,可以确定网络服务端的混合策略概率ps=(x,1-x)。在网络服务端采取允许访问策略或拒绝访问策略的情况下,根据上述四种访问策略中目标请求端的收益值,可以确定目标请求端的收益函数cu,示例性的目标请求端的收益函数可以使用下述公式(12)确定:利用与可能的实施方式i中相同的方法对公式(12)进行求解和求导,可以得到x的求解公式为下述公式(13):其中,x为允许访问概率,u’_benefit为第一访问策略下目标请求端的收益值,r’_benefit为第三访问策略下目标请求端的收益值,r’_loss为第四访问策略下目标请求端的收益值。s308:根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求。当从当前访问请求的角度,采用可能的实施方式i,爬虫概率为正常访问概率时,预设爬虫概率阈值为预设爬虫访问阈值。当确定了正常访问概率后,可以获取预设爬虫访问阈值,当所述正常访问概率小于预设爬虫访问阈值时,当前访问请求是网络爬虫发出的访问请求,此时,网络服务端应当拒绝当前访问请求;反之,当所述正常访问概率不小于预设爬虫访问阈值时,当前访问请求不是网络爬虫发出的访问请求,此时,网络服务端应当允许当前访问请求。当从目标请求端的角度,采用可能的实施方式ii,爬虫概率为允许访问概率时,预设爬虫概率阈值为预设允许访问阈值。当确定了允许访问概率后,可以获取预设允许访问阈值,当所述允许访问概率小于预设允许访问阈值时,所述当前访问请求是网络爬虫发出的访问请求,此时,网络服务端应当拒绝当前访问请求;反之,当所述允许访问概率不小于预设允许访问阈值时,所述当前访问请求不是网络爬虫发出的访问请求,此时,网络服务端应当允许当前访问请求。在一种可能的实施方式中,为了对反爬虫策略进行精细化控制,根据对受保护网站的保护强度的不同,可以步骤s307执行之后,步骤s308执行之前,确定所述预设爬虫概率阈值。优选的,可以根据受保护网站的保护强度的不同,设置两档以上不同的预设爬虫概率阈值的取值范围,首先根据受保护网站的保护强度,确定预设爬虫概率阈值的取值范围,之后从预设爬虫概率阈值的取值范围中,确定预设爬虫概率阈值。示例性的,可以根据受保护网站的保护强度,确定预设爬虫概率阈值的取值范围如下表5所示:表5设爬虫概率阈值的取值范围保护强度取值范围高(0.8,1]中(0.4,0.8]低(0.2,0.4]极低(0,0.2]首先根据受保护网站的保护强度等级,从“高、中、低、极低”中选择一种保护强度,之后,根据选择的保护强度,确定预设爬虫概率阈值的取值范围。假设受保护网站的保护强度等级为“高”时,确定预设爬虫概率阈值的取值范围为(0.8,1]。确定了预设爬虫概率阈值的取值范围后,从预设爬虫概率阈值的取值范围中,确定预设爬虫概率阈值。假设预设爬虫概率阈值的取值范围为(0.8,1],可从预设爬虫概率阈值的取值范围中,确定预设爬虫概率阈值为0.9。当从当前访问请求的角度,采用可能的实施方式i,爬虫概率为正常访问概率时,预设爬虫概率阈值为预设爬虫访问阈值。预设爬虫访问阈值为0.9,当正常访问概率不小于预设爬虫访问阈值0.9时,当前访问请求不是网络爬虫发出的访问请求,此时,网络服务端应当允许当前访问请求。当从目标请求端的角度,采用可能的实施方式ii,爬虫概率为允许访问概率时,预设爬虫概率阈值为预设允许访问阈值。预设允许访问阈值为0.9,当所述允许访问概率不小于预设允许访问阈值0.9时,所述当前访问请求不是网络爬虫发出的访问请求,此时,网络服务端应当允许当前访问请求。本申请实施例根据多次访问请求对网络服务端造成的损失或产生的收益,评估当前访问请求的爬虫概率,从而根据至少一次的当前访问请求和历史访问请求产生的当前访问数据和历史访问数据,确定当前访问请求是否是网络爬虫发出的访问请求,提高对采用高端爬虫技术的网络爬虫的检测能力,降低了对正常访问请求产生误判的概率。基于相同的设计构思,本申请实施例还提供一种网络爬虫检测装置、存储介质及电子设备。实施例三如图4所示,本申请实施例提供的一种网络爬虫检测装置400,包括:请求获取模块401,用于获取目标请求端对受保护网站的当前访问请求产生的当前访问数据;历史获取模块402,用于获取所述目标请求端的历史访问数据;重复率确定模块403,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问重复率;收益值确定模块404,用于根据所述访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值;概率确定模块405,用于根据所述至少一种访问策略的收益值,确定所述当前访问请求的爬虫概率;爬虫确定模块406,用于根据所述爬虫概率与预设爬虫概率阈值,确定所述当前访问请求是否是网络爬虫发出的访问请求。请求获取模块401与历史获取模块402分别连接重复率确定模块403,重复率确定模块403分别获取请求获取模块401获取的当前访问数据及历史获取模块402获取的历史访问数据,根据当前访问数据及历史访问数据,确定访问重复率。重复率确定模块403与收益值确定模块404连接,收益值确定模块404根据重复率确定模块403确定的访问重复率,确定网站服务端分别执行至少一种访问策略时各自的收益值。收益值确定模块404连接概率确定模块405,概率确定模块405根据收益值,确定爬虫概率。概率确定模块405连接爬虫确定模块406,爬虫确定模块406根据概率确定模块405确定的爬虫概率,确定当前访问请求是否是网络爬虫发出的访问请求。一种可能的实施方式中,如图5所示,请求获取模块401,包括:镜像单元501,用于将所述目标请求端对所述受保护网站的所述当前访问请求产生的数据流进行镜像,得到第一镜像数据;数据确定单元502,用于将所述第一镜像数据作为所述当前访问数据获取。镜像单元501与数据确定单元502连接,镜像单元501对当前访问请求产生的数据流进行镜像得到第一镜像数据,数据确定单元502将第一镜像数据作为当前访问数据获取。一种可能的实施方式中,请求获取模块401,包括:镜像单元501,用于将对所述受保护网站所在的网络端口的访问请求产生的数据流进行镜像,得到第二镜像数据;数据确定单元502,用于根据所述受保护网站的域名和所述目标请求端的地址,从所述第二镜像数据中确定所述当前访问数据。与上述可能的实施方式的请求获取模块401相比,均采用如图5所示的结构,请求获取模块401中每个单元执行的功能不同。在此可能的实施方式中,镜像单元501与数据确定单元502连接,镜像单元501对网络端口的访问请求产生的数据流进行镜像得到第二镜像数据,数据确定单元502根据第二镜像数据确定当前访问数据。一种可能的实施方式中,网络爬虫检测装置400,还包括:基础检测模块407,用于基于所述当前访问数据的统计数据或特征数据,确定所述目标请求端是否是网络爬虫;当所述目标请求端不是网络爬虫时,执行所述获取所述目标请求端的历史访问数据的步骤。基础检测模块407与请求获取模块401和历史获取模块402连接,基础检测模块407根据请求获取模块401获取的当前访问数据,确定目标请求端是否是网络爬虫,当目标请求端不是网络爬虫时,驱动历史获取模块402执行获取目标请求端的历史访问数据的操作。一种可能的实施方式中,如图6所示,重复率确定模块403,包括:总次数确定单元601,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站中的页面的访问总次数;重复次数确定单元602,用于根据所述当前访问数据及所述历史访问数据,确定所述目标请求端对所述受保护网站的同一页面进行两次以上访问的重复访问次数;重复率确定单元603,用于根据所述访问总次数和所述重复访问次数,确定所述访问重复率。重复次数确定单元602和总次数确定单元601均分别连接请求获取模块401与历史获取模块402,并且,重复次数确定单元602和总次数确定单元601均与重复率确定单元603连接。一种可能的实施方式中,所述至少一种访问策略包括:第一访问策略:当所述目标请求端不是网络爬虫时所述网站服务端通过所述当前访问请求;第二访问策略:当所述目标请求端不是网络爬虫时所述网站服务端禁止所述当前访问请求;第三访问策略:当所述目标请求端是网络爬虫时所述网站服务端通过所述当前访问请求;第四访问策略:以及当所述目标请求端是网络爬虫时所述网站服务端禁止所述当前访问请求;如图7a所示,收益值确定模块404,包括:当前收益值确定单元701,用于针对所述至少一种访问策略,根据所述访问重复率确定该访问策略的当前收益值;收益值确定单元702,用于根据该访问策略的当前收益值,确定该访问策略的收益值。当前收益值确定单元701连接重复率确定模块403与收益值确定单元702。当前收益值确定单元701根据访问重复率确定当前收益值,并将当前收益值发送给收益值确定单元702,收益值确定单元702将当前收益值确定为收益值。一种可能的实施方式中,收益值确定单元702,用于将该访问策略的当前收益值,确定为该访问策略的收益值。一种可能的实施方式中,如图7b所示,收益值确定单元702,包括:增益确定子单元721,用于根据所述当前访问数据,确定所述当前访问请求为所述当前收益值带来的增益;收益确定子单元722,用于针对所述至少一种访问策略,根据该访问策略的当前收益值及所述增益,确定该访问策略的收益值。收益确定子单元722分别连接当前收益值确定单元701及增益确定子单元721。增益确定子单元721根据当前收益值确定单元701确定的当前收益值及收益确定子单元722确定的增益,确定收益值。一种可能的实施方式中,所述爬虫概率为正常访问概率;所述预设爬虫概率阈值为预设爬虫访问阈值;概率确定模块405,用于:根据所述至少一种访问策略的收益值,确定所述当前访问请求是正常访问请求的概率,作为正常访问概率;爬虫确定模块406,用于:当所述正常访问概率小于预设爬虫访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,所述爬虫概率为允许访问概率;所述预设爬虫概率阈值为预设允许访问阈值;概率确定模块405,用于:根据所述至少一种访问策略的收益值,确定所述网站服务端允许所述当前访问请求的概率,作为允许访问概率;爬虫确定模块406,用于:当所述允许访问概率小于预设允许访问阈值时,所述当前访问请求是网络爬虫发出的访问请求。一种可能的实施方式中,网络爬虫检测装置400,还包括:阈值确定模块408,用于确定所述预设爬虫概率阈值。阈值确定模块408与爬虫确定模块406连接,爬虫确定模块406根据阈值确定模块408确定的预设爬虫概率阈值,确定当前访问请求是否是网络爬虫发出的访问请求。一种可能的实施方式中,如图8所示,阈值确定模块408,包括:范围确定单元801,用于根据受保护网站的保护强度,确定预设爬虫概率阈值的取值范围;阈值确定单元802,用于从所述预设爬虫概率阈值的取值范围中,确定所述预设爬虫概率阈值。范围确定单元801与阈值确定单元802连接,阈值确定单元802与爬虫确定模块406连接,阈值确定单元802根据范围确定单元801确定的预设爬虫概率阈值的取值范围,确定预设爬虫概率阈值,并将确定得到的预设爬虫概率阈值发送给爬虫确定模块406。一种可能的实施方式中,本申请实施例提供的网络爬虫检测装置还可以包括中央控制模块和存储模块,网络爬虫检测装置中的每个模块均与中央控制模块连接,存储模块也与中央控制模块连接,由中央控制模块进行每个模块之间执行顺序和数据交互的调度,并将每个中间数据存存储在内部存储或存储器中,通过中央控制模块从内部存储或存储器读取中间数据、或者将中间数据写入内部存储或存储器中。本申请实施例提供的网络爬虫检测装置根据多次访问请求对网络服务端造成的损失或产生的收益,评估当前访问请求的爬虫概率,从而根据至少一次的当前访问请求和历史访问请求产生的当前访问数据和历史访问数据,确定当前访问请求是否是网络爬虫发出的访问请求,提高对采用高端爬虫技术的网络爬虫的检测能力,降低了对正常访问请求产生误判的概率。实施例四一种计算机可读介质,所述计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行本申请实施例提供的任一种网络爬虫检测方法的步骤。实际应用中,所述的计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的,也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,实现根据参考本申请实施例提供的任一种网络爬虫检测装置进行本申请实施例提供的任一种网络爬虫检测方法的步骤。根据本申请公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件,或者上述的任意合适的组合,但不用于限制本申请保护的范围。在本申请公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。本申请所述的方法步骤除了可以用数据处理程序来实现,还可以由硬件来实现,例如,可以由逻辑门、开关、专用集成电路(asic)、可编程逻辑控制器和嵌微控制器等来实现。因此这种可以实现本申请所述方法的硬件也可以构成本申请。实施例五本申请实施例还提供一种电子设备,可以是计算机或服务器,其中可以集成本申请实施例提供的任一种网络爬虫检测装置。如图9所示,其示出了本申请实施例提供的电子设备900。该电子设备可以包括一个或者一个以上处理核心的处理器901、一个或一个以上用于存储所述处理器901可执行指令的存储器902。该电子设备还可以包括电源903、输入输出单元904。本领域技术人员可以理解,图9中并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:处理器901是该电子设备的控制部分,利用各种接口和线路连接各个部分,从存储器902中读取所述可执行指令,通过运行或执行存储在存储器902中的指令以实现本申请实施例提供的任一种网络爬虫检测方法的步骤。存储器902可用于存储软件程序,即本申请实施例提供的任一种网络爬虫检测方法中涉及的程序。处理器901通过运行存储在存储器902的软件程序,从而执行各种功能应用以及数据处理。存储器902可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据电子设备需要使用的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器902还可以包括存储器控制器,以提供处理器901对存储器902的访问。电子设备还包括给各个部件供电的电源903,优选的,电源903可以通过电源管理系统与处理器901逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源903还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。该服务器还可包括输入输出单元904,比如可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入;比如可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。本申请实施例提供的任一种网络爬虫检测方法、装置、存储介质及电子设备均基于相同的设计构思,并且本申请任一个实施例中的技术手段可以进行自由组合,组合得到的技术手段仍在本申请的保护范围之内。本申请附图中的流程图和框图,示出了按照本申请公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标准的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本申请中。特别地,在不脱离本申请精神和教导的情况下,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,所有这些组合和/或结合均落入本申请公开的范围。本申请中应用了具体实施例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思路,并不用于限制本申请。对于本领域的技术人员来说,可以依据本申请的思路、精神和原则,在具体实施方式及应用范围上进行改变,其所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1