一种爬虫数据的识别方法、系统及设备技术方案

技术编号:24756636 阅读:34 留言:0更新日期:2020-07-04 09:16
本发明专利技术公开了一种爬虫数据的识别方法、系统及设备,其中,所述方法包括:获取目标网站的站点地图数据,并生成所述站点地图数据的向量图;获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图;为所述会话数据添加会话标签,所述会话标签用于表征所述会话数据是否为爬虫数据,并基于所述会话标签和所述子图对预设分类器进行训练,以得到用于区分爬虫数据和非爬虫数据的分类器。本申请提供的技术方案,能够有效地识别出爬虫数据。

A method, system and equipment for identifying crawler data

【技术实现步骤摘要】
一种爬虫数据的识别方法、系统及设备
本专利技术涉及互联网
,特别涉及一种爬虫数据的识别方法、系统及设备。
技术介绍
随着互联网技术的不断发展,网络中的信息量也呈爆炸式增长。当前可以采用爬虫技术,自动获取网页内容,从而快速地从众多的信息中筛选出所需信息。在实际应用中,爬虫可以包括搜索引擎类的合法爬虫,还可能包含非法数据采集的恶意爬虫。为了避免服务器受到恶意爬虫的攻击,需要对访问数据进行甄别,从而筛选出爬虫数据后进行进一步的分析。目前,可以通过添加UserAgent黑名单、限制IP地址访问频率、识别设备指纹等方式来识别或者限制爬虫数据。然而,维护UserAgent黑名单和IP地址库需要花费巨大的精力,爬虫数据也可以通过代理IP地址或者修改UserAgent等方式来绕过这些检测方式,从而导致现有的爬虫数据的识别方法不太有效。
技术实现思路
本申请的目的在于提供一种爬虫数据的识别方法、系统及设备,能够有效地识别出爬虫数据。为实现上述目的,本申请一方面提供一种爬虫数据的识别方法,所述方法包括:获取目标网站的站点地图数据,并生成所述站点地图数据的向量图;获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图;为所述会话数据添加会话标签,所述会话标签用于表征所述会话数据是否为爬虫数据,并基于所述会话标签和所述子图对预设分类器进行训练,以得到用于区分爬虫数据和非爬虫数据的分类器。为实现上述目的,本申请另一方面还提供一种爬虫数据的识别系统,所述系统包括:向量图生成单元,用于获取目标网站的站点地图数据,并生成所述站点地图数据的向量图;子图映射单元,用于获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图;训练单元,用于为所述会话数据添加会话标签,所述会话标签用于表征所述会话数据是否为爬虫数据,并基于所述会话标签和所述子图对预设分类器进行训练,以得到用于区分爬虫数据和非爬虫数据的分类器。为实现上述目的,本申请另一方面还提供一种爬虫数据的识别设备,所述爬虫数据的识别设备包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的爬虫数据的识别方法。由上可见,本申请一个或者多个实施方式提供的技术方案,可以通过机器学习的方式来识别爬虫数据。具体地,针对待识别的目标网站,可以获取目标网站的站点地图数据(sitemap),该数据通常是XML(eXtensibleMarkupLanguage,可扩展标记语言)格式的数据。在本申请中,可以将站点地图数据转换为向量图,从而将XML格式的数据转换为图像数据。后续,针对目标网站的会话数据,可以根据其中包含的请求,将该会话数据映射为向量图的子图。该子图可以表征会话数据的访问方式。由于爬虫数据和非爬虫数据的访问方式往往不同,因此映射得到的子图可以用于区分会话数据是否为爬虫数据。然后,利用会话数据的会话标签和映射得到的子图,可以采用机器学习算法对预设分类器进行训练,从而得到用于区分爬虫数据和非爬虫数据的分类器。本申请的技术方案,通过将数据转换为图像,从而可以利用图像作为训练样本,训练出精准的分类器。后续,该分类器可以预测输入的会话数据是否为爬虫数据。可见,本申请提供的技术方案,能够通过训练得到的分类器精确、高效地预测出出会话数据是否为爬虫数据。附图说明为了更清楚地说明本专利技术实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施方式中爬虫数据的识别方法步骤图;图2是本专利技术实施方式中训练分类器的流程图;图3是本专利技术实施方式中向量图的示意图;图4是本专利技术实施方式中子图映射的示意图;图5是本专利技术实施方式中子图的示意图;图6是本专利技术实施方式中识别爬虫数据的流程图;图7是本专利技术实施方式中爬虫数据的识别系统的功能模块示意图;图8是本专利技术实施方式中爬虫数据的识别设备的内部结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施方式及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。本申请提供一种爬虫数据的识别方法,请参阅图1和图2,该方法可以包括以下多个步骤。S1:获取目标网站的站点地图数据,并生成所述站点地图数据的向量图。在本实施方式中,目标网站可以是待识别爬虫数据的网站。在实际应用中,目标网站通常具备自身的站点地图数据,该站点地图数据是一个包含目标网站内各个访问链接信息的XML文件。例如,在站点地图数据中,可以包括目标网站中的各个URL(UniformResourceLocator,统一资源定位符)以及各个URL之间的跳转关系。在获取目标网站的站点地图数据时,可以利用现有的爬虫工具,或者旁路监控工具进行获取。在本实施方式中,在获取到XML格式的站点地图数据后,为了便于后续的机器学习过程,可以将该站点地图数据转换为可视化的向量图。请参阅图3,在该向量图中,可以包括多个节点位置。图3中的圆形便可以作为节点位置。其中,每个节点位置可以对应目标网站中的一个访问链接。具体地,可以识别站点地图数据中包含的各个访问链接,然后,可以基于各个访问链接之间的跳转关系,确定各个访问链接对应的节点位置。其中,访问链接之间的跳转关系,可以通过访问链接的访问顺序来确定。例如,访问链接为A的页面中,包含访问链接A1、A2,那么便可以构建从A至A1,以及从A至A2的跳转关系。通常而言,具备跳转关系的多个访问链接,在向量图中可以距离较近。根据访问链接之间的跳转关系,可以将各个访问链接分别在向量图中确定出对应的节点位置。最终,可以将包含各个节点位置的图像作为站点地图数据的向量图。在实际应用中,可以采用韦尔莱算法对获取到的站点地图数据进行处理,从而可以计算出各个访问链接对应的节点坐标。这些节点坐标便可以作为向量图中的节点位置,从而可以将站点地图数据中的各个访问链接映射至向量图中的节点位置处。并且,在向量图中,具备跳转关系的节点位置之间,还可以具备连线。例如,在图3中,虚线两端的两个节点位置,可以是具备跳转关系的节点位置。这样,通过对站点地图数据进行处理,可以将XML的数据转换为图像数据,以便于后续的机器学习过程。S3:获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图。在本实施方式中,在进行机器学习之前,还需要构建训练样本。具体地,可以基于目标网站的会话数据来构建训练样本。在实际应用中,目标网站的访问数据可本文档来自技高网...

【技术保护点】
1.一种爬虫数据的识别方法,其特征在于,所述方法包括:/n获取目标网站的站点地图数据,并生成所述站点地图数据的向量图;/n获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图;/n为所述会话数据添加会话标签,所述会话标签用于表征所述会话数据是否为爬虫数据,并基于所述会话标签和所述子图对预设分类器进行训练,以得到用于区分爬虫数据和非爬虫数据的分类器。/n

【技术特征摘要】
1.一种爬虫数据的识别方法,其特征在于,所述方法包括:
获取目标网站的站点地图数据,并生成所述站点地图数据的向量图;
获取所述目标网站的会话数据,并基于所述会话数据中包含的请求,将所述会话数据映射为所述向量图中的子图;
为所述会话数据添加会话标签,所述会话标签用于表征所述会话数据是否为爬虫数据,并基于所述会话标签和所述子图对预设分类器进行训练,以得到用于区分爬虫数据和非爬虫数据的分类器。


2.根据权利要求1所述的方法,其特征在于,生成所述站点地图数据的向量图包括:
识别所述站点地图数据中包含的各个访问链接,并基于各个所述访问链接之间的跳转关系,确定各个所述访问链接对应的节点位置;
将包含各个所述节点位置的图像作为所述站点地图数据的向量图。


3.根据权利要求1所述的方法,其特征在于,获取所述目标网站的会话数据包括:
读取所述目标网站的流量日志,并将所述流量日志中的访问数据按照会话进行分组,以得到一组或者多组会话数据。


4.根据权利要求1所述的方法,其特征在于,将所述会话数据映射为所述向量图中的子图包括:
识别所述会话数据中包含的请求,并在所述向量图中查询各个所述请求对应的节点位置;
根据各个所述请求的请求信息,生成与各个所述请求相匹配的请求节点,并将生成的所述请求节点填充于对应的节点位置处;
将各个所述请求按照访问时间进行排序,并根据排序结果,确定各个所述请求节点之间的连接关系,并将具备所述连接关系的各个所述请求节点构成的图像作为映射得到的子图。


5.根据权利要求4所述的方法,其特征在于,生成与各个所述请求相匹配的请求节点包括:
针对各个所述请求中的任一目标请求,统计所述目标请求对应的访问链接的访问频率,并确定所述访问频率对应的节点半径;
生成具备所述节点半径的请求节点,并将具备所述节点半径的请求节点作为与所述目标请求相匹配的请求节点。


6.根据权利要求4所述的方法,其特征在于,根据排序结果,确定各个所述请求节点之间的连接关系包括:
在各个所述请求节点中确定访问时间相邻的任意两个请求节点,若所述两个请求节点为不同的请求节点,在所述两个请求节点之间建立连线。


7.根据权利要求1所述的方法,其特征在于,基于所述会话标签和所述子图对预设分类器进行训练包括:
将所述子图输入所述预设分类器,并将所述预设分类器输出的分类结果与所述会话标签进行对比;
若所述分类结果与所述会话标签不一致,生成校正信息,并利用所述校正信息对所述预设分类器的内部参数进行调整,以使得再次...

【专利技术属性】
技术研发人员:陈志勇王凤杰赵志文
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海;31

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

1