基于功能和结构的近亲Web页面识别方法、装置和设备与流程

文档序号:32253458发布日期:2022-11-19 02:50阅读:28来源:国知局
基于功能和结构的近亲web页面识别方法、装置和设备
技术领域
:1.本发明涉及计算机
技术领域
:,特别是一种基于功能和结构的近亲web页面识别方法、装置和设备。
背景技术
::2.随着开源软件和低代码开发的盛行,web页面的开发工作越来越简便,许多web页面都基于特定模板而开发出来,因而产生很多实现结构(即web页面源代码的逻辑结构)相似的近亲页面,近亲页面的识别在代码克隆检测、web数据提取与版权保护等领域都发挥着重要的作用。3.然而,由于web页面的代码十分复杂,其中有许多代码段与外观和布局等样式信息相关,这使得类似于dom树的直接表征方式表现不好,为web页面实现结构的表征带来了困难。因此,如何提高web页面的实现结构的表征是提高近亲web页面识别准确度的关键。技术实现要素:4.鉴于上述问题,本发明实施例提供了一种基于功能和结构的近亲web页面识别方法、装置、设备和介质,以便克服上述问题或者至少部分地解决上述问题。5.本发明实施例的第一方面,公开了一种基于功能和结构的近亲web页面识别方法,所述方法包括:6.获取待识别的两个web页面的页面信息;7.对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签;8.根据所述功能标签在聚类模型集合中寻找对应的聚类模型,对所述两个web页面进行结构特征提取,分别得到所述两个web页面的结构特征向量;9.将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,所述web页面所属的簇与所述web页面的功能标签构成所述web页面的功能和结构;10.根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面。11.可选地,对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签;所述功能分类模型是通过预先训练而得到的,所述功能分类模型训练包括:12.根据预先定义的功能类别集合对训练数据进行标记,得到用于模型训练的标记web页面集;13.对所述标记web页面集进行特征工程处理,得到所述标记web页面集中每个web页面的功能特征矩阵,其中,所述功能特征矩阵中的特征至少包括标签数量、文本信息、人工规则以及语义信息;14.根据所述每个web页面的特征矩阵对功能分类模型进行训练,得到功能分类模型;15.所述方法还包括:16.在对web页面进行功能预测时,若功能标签错误,则纠正标签以使功能分类模型在纠正后的数据上进行增量学习。17.可选地,根据所述功能标签在聚类模型集合中寻找对应的聚类模型,其中,所述的聚类模型集合中的聚类模型是通过预先训练得到的,所述聚类模型训练包括:18.将带标记的web页面集按照功能标签划分为多个web页面集,每个所述web页面集内的web页面具有相同的功能标签;19.对每个所述web页面集中的每个web页面进行特征工程处理,得到所述每个web页面的结构特征矩阵,利用所述结构特征矩阵对聚类模型进行训练,得到多个对应功能标签的聚类模型集合。20.可选地,将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,包括:21.将所述聚类模型中的所有簇的中心与所述web页面的结构特征向量比较,得到该web页面所属的簇。22.可选地,根据所述两个web页面各自的实现结构,判断所述两个web页面是否为近亲页面,包括:23.若所述两个web页面的实现结构相似,则判定所述两个web页面为近亲页面。24.可选地,根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面,所述方法还包括:25.获取所述两个web页面各自的语义主题,所述语义主题表征web页面所描述的内容主题;26.若所述两个web页面的功能和结构相似,且所述两个web页面的语义主题相同,则判断所述两个web页面为近亲页面页。27.本发明实施例的第二方面,公开了一种基于功能和结构的近亲web页面识别装置,所述装置包括:28.信息获取模块,用于获取待识别的两个web页面的页面信息;29.功能识别模块,用于对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签;30.结构特征提取模块,用于根据所述功能标签在聚类模型集合中寻找对应的聚类模型,对所述两个web页面进行结构特征提取,分别得到所述两个web页面的结构特征向量;31.功能和结构生成模块,用于将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,所述web页面所属的簇与所述web页面的功能标签构成所述web页面的功能和结构;32.判断模块,用于根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面。33.可选地,所述功能识别模块,包括:34.第一标记模块,用于根据预先定义的功能类别集合对训练数据进行标记,得到用于模型训练的标记web页面集;35.第一特征处理模块,用于对所述标记web页面集进行特征工程处理,得到所述标记web页面集中每个web页面的功能特征矩阵,其中,所述功能特征矩阵中的特征至少包括标签数量、文本信息、人工规则以及语义信息;36.分类训练模块,用于根据所述每个web页面的特征矩阵对功能分类模型进行训练,得到功能分类模型;37.增量学习模块,用于在对web页面进行功能预测时,若功能标签是错误,则纠正标签以使功能分类模型在纠正后的数据上进行增量学习。38.可选地,所述功能和结构生成模块,包括:39.第二标记模块,用于将带标记的web页面集按照功能标签划分为多个web页面集,每个所述web页面集内的web页面具有相同的功能标签;40.第二特征处理模块,用于对每个所述web页面集中的每个web页面进行特征工程处理,得到所述每个web页面的结构特征矩阵,利用所述结构特征矩阵对聚类模型进行训练,得到多个对应功能标签的聚类模型集合。41.本发明实施例的第三方面,公开了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现如本发明实施例第一方式实施例所述的基于功能和结构的近亲web页面识别方法。42.本发明实施例包括以下优点:43.本发明实施例中,获取待识别的两个web页面的页面信息,对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签,再根据所述功能标签在聚类模型集合中寻找对应的聚类模型,对所述两个web页面进行结构特征提取,分别得到所述两个web页面的结构特征向量,将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,所述web页面所属的簇与所述web页面的功能标签构成所述web页面的功能和结构,最后根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面。由于在本实施例中,web页面的一种功能对应特定的几种实现结构,因此可使用web页面的功能来反映实现结构,先通过对web页面进行功能识别得到其功能标签从而辅助对实现结构的识别;在功能识别之后,每种功能所对应的实现结构只剩下有限的几种,此时再使用聚类将这几种实现结构区分开,聚类所面临的场景并不复杂,所以聚类的效果会更好。因此基于功能的结构聚类方法可以更有效地表征web页面的实现结构,进而基于该web页面功能和结构能够准确的识别近亲web页面。附图说明44.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。45.图1是本发明实施例提供的一种基于功能的结构聚类方法技术构思示意图;46.图2是本发明实施例提供的一种基于功能的结构聚类方法的流程图;47.图3是本发明实施例提供的一种基于功能和结构的近亲web页面识别方法步骤流程图;48.图4是本发明实施例提供的一种登录页面以及对应的主体结构的标签树示意图;49.图5是本发明实施例提供的一种功能识别的流程图;50.图6是本发明实施例提供的一种结构聚类的流程图;51.图7是本发明实施例提供的一种基于功能和结构的近亲web页面识别装置的结构示意图。具体实施方式52.为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。53.针对如何准确的表征web页面的实现结构,主要存在以下三个问题:1)如何表征页面的实现结构,web页面的代码十分复杂,其中有许多代码段与外观和布局等样式信息相关,这使得类似于dom树的直接表征方式表现不好,为结构的表征带来了困难,而申请人发现页面的功能与实现结构间有紧密的联系,进而可以通过功能来间接表征结构;2)如何识别页面的功能,页面的功能对人来说是很直观的,但是对机器而言却没有那么直观,因此如何让机器理解页面的功能也是一大问题;3)如何将功能映射到结构,需要的是对结构的识别,因此在获取页面的功能信息后还需要考虑如何将功能映射到结构,而寻找相应的映射对机器而言也并不容易。54.为解决上述问题,申请人提出以下技术构思:基于web页面的功能与实现结构间有紧密关联的观察,使用web页面的功能信息辅助对页面结构的识别,该方法先对web页面进行功能识别以得到页面的功能,再基于功能信息进行结构聚类以识别结构。由于对web页面进行功能识别之后,每种功能所对应的实现结构只剩下有限的几种,再使用聚类将这几种实现结构区分开,因为此时聚类所面临的场景并不复杂,所以聚类的效果会更好。如图1所示,基于功能的结构聚类方法可以解决上所述的web页面间实现结构表征所面临的问题,通过功能可以有效地表征web页面的实现结构,通过功能识别方法可以有效地识别web页面的功能,通过结构聚类可以有效地将功能映射到结构。55.具体地,该方法主要包含功能识别以及结构聚类两个部分,如图2所示,先对web页面进行功能特征提取生成特征向量,再将特征向量输入功能分类模型进行预测得到web页面的功能标签。然后进入结构聚类模块,该模块先依据功能标签去寻找对应的聚类模型,再对web页面进行结构特征提取得到特征向量,然后将特征向量输入预测模型进行预测得到web页面所属的簇,并由web页面所属的簇和功能标签共同生成最终的功能和结构,最后基于该功能和结构对两个web页面进行识别,判断是否是近亲页面。56.基于上述技术构思,本发明实施例提供了一种基于功能和结构的近亲web页面识别方法,参照图3,图3为本发明实施例提供的一种基于功能和结构的近亲web页面识别方法步骤流程图,如图3所示,所述的方法包括:57.步骤s301:获取待识别的两个web页面的页面信息。58.利用算法分别获取两个web页面的页面信息,web页面由html、css以及javascript代码组成,其中许多代码段与布局、外观和交互行为有关。例如,《html》标签中涉及页面的的语义信息,《style》标签中涉及的是样式信息,与文档在浏览器上的展示相关联,《script》标签中包含的是脚本语言,与文档在浏览器上的交互行为相关联。59.步骤s302:对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签。60.在本实施例中,通过页面的功能信息辅助对web页面结构的识别,为此需要能够识别页面的功能。首先对web页面进行功能特征提,得到能够反映出web页面功能的功能特征向量,即通过该功能特征向量就能够比较好地区分不同的功能web页面,例如标签数量、文本信息、人工规则以及语义信息等功能特征向量,最后将功能特征向量输入到预先训练好的功能分类模型中进行功能预测,进而得到两个web页面的功能标签。61.步骤s303:根据所述功能标签在聚类模型集合中寻找对应的聚类模型,对所述两个web页面进行结构特征提取,分别得到所述两个web页面的结构特征向量。62.每个web页面都会有一个对应的主体结构,例如,如图4中(a)所示的包含登录功能的web页面,其通常会包含(b)所示的主体结构,因为登录需要用户提供相应的用户名与密码,所以必然存在一个表单,允许用户输入用户名密码并提交到服务器。因此,我们可以使用web页面的功能来反映web页面的主体结构,可以通过了解web页面的功能来间接地掌握web页面的主体结构。63.web页面的每种功能通常会对应多种特定的实主体结构,例如,对于列表内容而言,其可以对应如下所示的《ul》和《li》标签组成的结构,这是标准的列表用法;也可能对应的《div》标签组成的结构,这通常用于与css结合起来实现自定义的布局等样式表现。因此,在对web页面的功能进行识别后,根据得到的功能标签在聚类模型集合中找到该功能对应的聚类模型,并将该对应的聚类模型用于后续结构的预测。[0064][0065][0066]步骤s304:将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,所述web页面所属的簇与所述web页面的功能标签构成所述web页面的功能和结构。[0067]聚类算法采用的结构特征向量主要是web页面的标签频率,因为聚类是在功能识别的基础上进行的,通过功能信息已经将大部分结构都排除了,只剩下了同一种功能对应的少数几种结构,在这种情况下通过页面的标签频率就可以比较好地区分出各个结构。例如,对于列表内容而言,其可以对应如上所示的《ul》和《li》标签组成的结构,也可能对应《div》标签组成的结构,这两种结构通过标签频率可以很好地辨别出来。[0068]在本实施例中,将web页面的结构特征相似输入到对应的聚类模型中,得到web页面所属的簇,其中,一种簇对应于一种web页面的主体结构,即不同簇的web页面主体结构也不同,进而根据web页面所属的簇与web页面的功能标签构成的功能和结构,能够很好的表征web页面的实现结构,即通过结构功能能够较为准确的识别近亲web页面。[0069]步骤s305:根据所述两个web页面各自的实现结构,判断所述两个web页面是否为近亲页面。[0070]由于近亲web页面的实现结构相似,通过上述步骤得到的功能和结构能够准确的反映出对应web页面实现结构,即准确反映web页面源代码的实现逻辑。因此通过对两个web页面的功能和结构进行比较,就能判断两个web页面是否为近亲页面。[0071]在本实施例中,由于web页面中一种功能对应特定的几种实现结构,因此可使用web页面的功能来反映实现结构,通过对页面进行功能识别得到其功能标签从而辅助对实现结构的识别。在功能识别之后,每种功能所对应的实现结构只剩下有限的几种,再使用聚类将这几种实现结构区分开,因为此时聚类所面临的场景并不复杂,所以聚类的效果会比较好。因此基于功能的结构聚类方法可以有效地表征web页面的实现结构,进而基于该web页面功能和结构进行近亲web页面识别的准确度更高。[0072]在一种实施例中,对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签;所述功能分类模型是通过预先训练而得到的,所述功能分类模型训练包括:[0073]根据预先定义的功能类别集合对训练数据进行标记,得到用于模型训练的标记web页面集;[0074]对所述标记web页面集进行特征工程处理,得到所述标记web页面集中每个web页面的功能特征矩阵,其中,所述功能特征矩阵中的特征至少包括标签数量、文本信息、人工规则以及语义信息;[0075]根据所述每个web页面的特征矩阵对功能分类模型进行训练,得到功能分类模型;[0076]所述方法还包括:[0077]在对web页面进行功能预测时,若功能标签是错误,则纠正标签以使功能分类模型在纠正后的数据上进行增量学习。[0078]在本实施例中,通过页面的功能信息辅助对页面结构的识别,为此需要能够识别页面的功能,而页面的功能对机器而言并不直观,让机器能理解功能是有难度的。为此,利用使用机器学习来解决这个问题,期望计算机可以从数据中自动分析学习从而进行对功能的预测,进而使用机器学习中的分类模型来学习预测页面的功能。[0079]具体地,如图5所示,功能识别分为两个阶段:离线训练功能模型训练阶段与在线功能预测阶段。离线阶段是指对利用web页面集对功能分类模型进行训练,具体地包括:定义类别集合、搜寻并标记web页面集、进行特征工程出来以及训练模型,进而训练出可预测页面功能的分类模型。[0080]首先,定义功能类别的集合,所述的功能至少包括:用户密码登录、普通搜索、高级搜索、找回密码、填表、记录表、信息表、列状内容、列状目录、纯文本与文本图片等类别。然后,需要获取数据集来训练模型。利用算法爬取网络上各种网站的web页面,并进行去重等过滤操作,然后对这些web页面进行人工标记,最终得到多个已标记web页面组成的数据集。之后,对web页面集合进行特征工程处理,找出最能代表web页面功能的特征。本文选取的特征主要分为标签数量、文本信息、人工规则以及语义信息等四种特征。[0081]标签数量是指标签出现的次数,标签数量可以比较好地区分不同的功能页面。例如,《h》、《form》、《input》、《img》、《a》、《ul》、《ol》、《li》、《button》、《textarea》、《table》、《tr》、《td》和《article》等标签的数量。《h》标签是标题标签,它的出现次数可以有效地区分很多类别,比如只出现一次的话很有可能是与文本相关的类别。《form》标签是表单标签,用于向服务器传输数据,包含《form》标签的页面很可能是登录、搜索等表单相关的类别。《input》标签是输入标签,可以让用户输入信息,它有很多种不同的类型,这些不同类型《input》标签的数量可以非常有效地区分很多类别,比如有密码输入标签则很可能是登录相关的类别。《img》标签是图像标签,会向页面嵌入图像,根据它的出现次数可以区分很多与图像有关的类别。《a》标签是超链接标签,可以链接到指定的url地址,它可以链接到其他web页面,也可以链接到本页面其他位置,根据它的出现次数可以区分与跳转链接相关的类别。《ul》、《ol》、《li》标签是与列表相关的标签,如果它出现很多次,那么很可能是列状内容或列状目录等类别。《button》标签是按钮标签,可以为用户提供交互行为,因此它的出现次数可以区分很多与互动相关的类别。《textarea》标签可以让用户输入多行文本,它的出现表示很可能是评论等类别。《table》、《tr》、《td》是与表格相关的标签,根据它的出现次数可以区分很多与表格有关的类别。《article》标签是文本标签,表示它里面的内容是文章,具有清晰的语义信息,它的出现表示很可能是与文章相关的类别。[0082]文本信息是指标签内的文本数量以及文本密度等信息,文本信息也可以较好地区分不同的功能页面。例如《form》、《ul》、《ol》和《li》等标签的文本数量,《form》标签内的文本数量可以很好地区分与表单相关的类别,《ul》、《ol》和《li》标签内文本的数量可以很好地区分与列表相关的类别。我们也关注《p》和《li》等标签的文本密度,《p》标签内文本密度大的话很可能是与文章相关的类别,《li》标签内文本密度大的话很可能是列状内容等类别。[0083]人工规则是指人为指定的一些对确定页面功能有帮助的规则,可以非常有效地区分不同的功能页面。比如说《form》标签内是否包含类似“email”、“邮箱”、“phone”、“手机”、“username”、“用户名”、“captcha”和“验证码”等文字,如果包含这些文字之一的话页面大概率会是与登录相关的类别。[0084]语义信息是指标签的属性或者文本所表示的语义内容,可以帮助区分不同的功能页面。例如《form》、《input》、《div》和《span》等标签的class和id属性的语义信息,其中class属性是类名,id属性是唯一标识。程序员在取class或id等变量名时通常会赋予语义信息,比如说对于登录表单来说,通常其class或者id属性会有“login”这样的文字,因此我们从这些属性内提取出语义信息可以帮助区分类别。[0085]在完成特征工程处理后,利用分类模型进行训练,同时为使算法模型可以持续学习新数据以提升表现效果,为此需要实现增量学习。而使用随机梯度下降方法训练的svm模型可以支持增量学习,因此在本实施例中,使用基于随机梯度下降的支持向量机模型作为功能识别模型。[0086]在线阶段是指对web页面进行功能预测,当在模型中输入一个web页面,对该页面进行特征提取得到功能特征向量,再将功能特征向量输入在离线阶段训练好的功能分类模型,得到预测的功能标签。其中,若发现功能标签是错误的,可以纠正标签以使功能分类模型在纠正后的数据上进行增量学习。[0087]在一种实施例中,根据所述功能标签在聚类模型集合中寻找对应的聚类模型,其中,所述的聚类模型集合中的聚类模型是通过预先训练得到的,所述聚类模型训练包括:[0088]将带标记的web页面集按照功能标签划分为多个web页面集,每个所述web页面集内的web页面具有相同的功能标签;[0089]对每个所述web页面集中的每个web页面进行特征工程处理,得到所述每个web页面的结构特征矩阵,利用所述结构特征矩阵对聚类模型进行训练,得到多个对应功能标签的聚类模型集合。[0090]具体地,如图6所示,对结构聚类模型进行训练时,将带标记的web页面集按照功能标签划分为多个web页面集,其中每个web页面集合内的web页面都有相同的功能标签,再对每个web页面集合进行特征工程处理得到特征矩阵,并基于特征矩阵对聚类模型进行训练,最终得到多个对应功能标签的聚类模型集合。[0091]聚类的目的是在同一种功能的web页面集合下进一步划分出同一种主体结构的web页面集合。聚类会产生多个簇,属于同一簇的web页面会拥有同一种主体结构,不同簇的web页面主体结构也不同。[0092]在对聚类模型进行训练时,聚类将一个功能页面集合按照主体结构划分为多个簇,其输入是功能相同的web页面构成的集合,输出是多个簇,其中每个簇由主体结构相同的web页面构成。当在进行聚类预测时,聚类将预测一个web页面所属的簇,其输入是单个web页面,输出是该web页面所属的簇。在本实施例中,使用k均值算法进行聚类,该算法会为每个类簇给出中心点,将新数据与每个类簇的中心比较,新数据属于其中距离最近的类簇。[0093]在对web页面进行聚类预测时,输入一个web页面,对该web页面进行功能识别得到功能标签,再对web页面进行特征提取得到特征向量,然后依据页面的功能标签找到对应的聚类模型,再将聚类模型中的所有簇的中心与页面的特征向量比较,得到该web页面所属的簇,最终的功能和结构由功能标签与web页面所属的簇名共同构成。[0094]在一种实施例中,将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,包括:[0095]将所述聚类模型中的所有簇的中心与所述web页面的结构特征向量比较,得到该web页面所属的簇。[0096]在本实施例中,在对web页面进行聚类预测时,将web页面的结构特征向量输入到已经训练好的聚类模型,将聚类模型中的所有簇的中心与预测web页面的特征向量比较,进而得到该web页面所属的簇,最后web页面所属的簇与功能标签共同构成功能和结构,并将该功能和结构用于web页面的近亲识别。[0097]在一种的实施例中,根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面,包括:[0098]若所述两个web页面的功能和结构相似,则判定所述两个web页面为近亲页面。[0099]通过上述步骤得到功能和结构能够准确的反映web页面源代码的逻辑结构,在本实施例中,通过比较两个web页面的功能和结构,若两个web页面的功能和结构相似,则判断这两个web页面为近亲页面。[0100]在一种优选的实施例,根据所述两个web页面各自的实现结构,判断所述两个web页面是否为近亲页面,所述方法还包括:[0101]获取所述两个web页面各自的语义主题,所述语义主题表征web页面所描述的内容主题;[0102]若所述两个web页面的实现结构相似,且所述两个web页面的语义主题相同,则判断所述两个web页面为近亲页面页。[0103]很多近亲web页面的不仅实现结构相似,其web页面的内容也相似,即web的语义主题也相似,因此可以通过比较两个web页面的语义主题和实现结构来判断两个web页面是否为近亲页面。通过内容理解算法来提取web页面的语义主题,所述语义主题表征web页面所描述的内容主题,若两个web页面的语义主题相似,且web页面的功能和结构相同,就判断这两个web页面为近亲页面。[0104]在本实施例中,通过利用web页面的语义主题和功能和结构这两种信息同时来判断web页面是否为近亲页面,进一步提高了近亲页面识别的准确性,[0105]如图7所示,图7为本发明实施例提供的一种基于功能和结构的近亲web页面识别装置的结构示意图。如图7所示,所述装置具体可以包括以下模块:[0106]信息获取模块,用于获取待识别的两个web页面的页面信息;[0107]功能识别模块,用于对所述两个web页面进行功能特征提取,分别得到所述两个web页面的功能特征向量,分别将所述功能特征向量输入功能分类模型,预测所述两个web页面的功能标签;[0108]结构特征提取模块,用于根据所述功能标签在聚类模型集合中寻找对应的聚类模型,对所述两个web页面进行结构特征提取,分别得到所述两个web页面的结构特征向量;[0109]功能和结构生成模块,用于将所述结构特征向量输入对应的聚类模型,预测所述两个web页面各自所属的簇,所述web页面所属的簇与所述web页面的功能标签构成所述web页面的功能和结构;[0110]判断模块,用于根据所述两个web页面各自的功能和结构,判断所述两个web页面是否为近亲页面。[0111]在一种可选的实施例中,所述功能识别模块,包括:[0112]第一标记模块,用于根据预先定义的功能类别集合对训练数据进行标记,得到用于模型训练的标记web页面集;[0113]第一特征处理模块,用于对所述标记web页面集进行特征工程处理,得到所述标记web页面集中每个web页面的功能特征矩阵,其中,所述功能特征矩阵中的特征至少包括标签数量、文本信息、人工规则以及语义信息;[0114]分类训练模块,用于根据所述每个web页面的特征矩阵对功能分类模型进行训练,得到功能分类模型;[0115]增量学习模块,用于在对web页面进行功能预测时,若功能标签是错误,则纠正标签以使功能分类模型在纠正后的数据上进行增量学习。[0116]在一种可选的实施例中,所述功能和结构生成模块,包括:[0117]第二标记模块,用于将带标记的web页面集按照功能标签划分为多个web页面集,每个所述web页面集内的web页面具有相同的功能标签;[0118]第二特征处理模块,用于对每个所述web页面集中的每个web页面进行特征工程处理,得到所述每个web页面的结构特征矩阵,利用所述结构特征矩阵对聚类模型进行训练,得到多个对应功能标签的聚类模型集合。[0119]本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现如本发明实施例第一方面实施例所述的基于功能和结构的近亲web页面识别方法。[0120]由于在本实施例中,web页面的一种功能对应特定的几种实现结构,因此可使用web页面的功能来反映实现结构,先通过对web页面进行功能识别得到其功能标签从而辅助对实现结构的识别;在功能识别之后,每种功能所对应的实现结构只剩下有限的几种,此时再使用聚类将这几种实现结构区分开,聚类所面临的场景并不复杂,所以聚类的效果会更好。因此基于功能的结构聚类方法可以更有效地表征web页面的实现结构,进而基于该web页面功能和结构能够准确的识别近亲web页面。[0121]本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。[0122]本发明实施例是参照根据本发明实施例的方法、装置、电子设备的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。[0123]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。[0124]尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。[0125]最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。[0126]以上对本发明所提供的一种功能和结构的近亲web页面识别方法、装置和设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1