一种网页结构变更检测方法及系统技术方案

技术编号:15840922 阅读:50 留言:0更新日期:2017-07-18 16:53
本公开是关于一种网页结构变更检测方法及系统。包括:获取网页HTML代码并解析,得到网页数据;根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;根据匹配结果确定网页结构的变更。本公开实现了对网页结构变更的快速检查及变更处的精准定位。

Web page structure change detection method and system

The present disclosure relates to a web page structure change detection method and system. Including: the HTML code and access to web analysis, get web data; according to the web data, extract the web page structure wherein each label, a DOM tree; matching tree structure of DOM tree and the pre stored data \DOM tree structure; determine the web page structure change according to the matching result. The invention realizes rapid checking of changes in webpage structure and accurate positioning of change.

【技术实现步骤摘要】
一种网页结构变更检测方法及系统
本公开涉及网页检测
,尤其涉及一种网页结构变更检测方法及系统。
技术介绍
网页结构即网页内容的布局,创建网页结构实际上就是对网页内容的布局进行规划。网页结构的创建是页面优化的重要环节之一,会直接影响页面的用户体验及相关性,而且还在一定程度上影响网站的整体结构及页面被收录的数量。从页面结构的角度上看,网页主要由导航栏、栏目、及正文内容这三大要素组成。网页结构的创建、网页内容布局的规划实际也是围绕这三大组成要素展开的。网页结构实际就是对导航栏、栏目、及正文内容这三大页面基本组成元素进行组织布局。根据页面内容侧重点的不同,可以把网页分为导航型、内容型及导航内容结合型三种。网页栏目结构一般来说,一个企业网站的一级栏目不应超过8个,而栏目层次以三层以内比较合适。网站栏目设置是一个网站结构的基础,也是网站导航系统的基础,应做到设置合理、层次分明。对网站栏目结构的研究室网络营销导向网站建设的基础。网页的布局,传统的基于HTML的网站设计中,网页结构定位通常有表格定位和框架结构,现在主流是采用表格定位;基于XHTML语言的网站设计中,典型的定位方式采用层。然而,网页的结构一般都会根据网页的内容而进行调整,不同的内容决定不同的网页结构。一个网页在内容发生变化的时候,会有网页结构上的调整。这就给需要抓取网页内容的应用带来的困难。网页结构变化后,如果依然用旧的网页结构去抓取网页内容,可能会得到错误的网页内容数据。因而,亟需要一种可以快速准确的检测网页结构变化的方案,以解决现有技术中无法准确识别网页结构变化的问题。
技术实现思路
为克服相关技术中存在的问题,本公开实施例提供一种网页结构变更检测方法及系统。根据本公开实施例的第一方面,提供一种网页结构变更检测方法,包括:获取网页HTML代码并解析,得到网页数据;根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;根据匹配结果确定网页结构的变更位置。所述获取网页HTML代码并解析,包括:登入网页服务器,请求所述网页对应的HTML代码;将所述网页对应的HTML代码根据预设的格式进行存储。所述根据所述网页数据,提取出其中各标签的网页结构,建立DOM树,包括:获取所述网页数据中各个HTML标签;根据所述HTML标签获取对应的网页结构;根据所述网页结构,清洗去除其中各HTML标签的属性值和文本内容节点,获得结构数据;根据所述结构数据建立DOM树。所述将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配,包括:将不同时间点获取的DOM树的树形结构相匹配。将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配,包括:根据树形结构匹配算法进行匹配;具体树形结构匹配算法包括:匹配两个DOM树的MD5值;当确认所述两个DOM树的MD5值不一致时,从所述两个DOM树的父节点到子节点,子节点到叶子节点,逐一进行递归式MD5值对比校验;将MD5值不一致的所述节点,存储到结构变更集合中。所述根据匹配结果确定网页结构的变更,包括:遍历DOM树型结构并比较对应节点,当有节点不同时,确定在该节点处网页结构发生了变更。根据本公开实施例的另一方面,提供一种网页结构变更检测系统,包括:HTML解析模块,用于获取网页HTML代码并解析,得到网页数据;DOM树建立模块,用于根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;匹配模块,用于将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;检测模块,用于根据匹配结果确定网页结构的变更。所述HTML解析模块,包括:请求单元,用于登入网页服务器,请求所述网页对应的HTML代码;存储单元,用于将所述网页对应的HTML代码根据预设的格式进行存储。所述DOM树建立模块,包括:标签获取单元,用于获取所述网页数据中各个HTML标签;网页结构获取单元,用于根据所述HTML标签获取对应的网页结构;清洗单元,用于根据所述网页结构,清洗去除其中各HTML标签的属性值和文本内容节点,获得结构数据;DOM树建立单元,用于根据所述结构数据建立DOM树。所述匹配模块,包括:匹配单元,用于逐一匹配整个DOM树的MD5值;校验单元,用于当确认所述DOM树的MD5值不一致时,从DOM树的父节点到子节点,子节点到叶子节点,逐一进行递归式MD5值校验;集合单元,用于将MD5值不一致的所述节点,存储到结构变更集合中。本公开的实施例提供的技术方案可以包括以下有益效果:本公开通过获取网页HTML代码并解析,得到网页数据;根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;根据匹配结果确定网页结构的变更。本公开提供的方案,能够快速检测出网页结构的变化,通过网页标签内容建立DOM树,并通过比对DOM树形结构来确认网页结构的变化,能够为网页结构检测相关应用提供很好的检测工具,对网页结构变更提供快速检查及变更处的精准定位。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的一种网页结构变更检测方法原理流程图。图2是根据一示例性实施例示出的一网页DOM树结构示意图。图3是根据一示例性实施例示出的另一网页DOM树结构示意图。图4是根据一示例性实施例示出的树形结构匹配算法原理流程图。图5是根据一示例性实施例示出的一种网页结构变更检测系统结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。图1是根据一示例性实施例示出的一种网页结构变更检测方法原理流程图,包括:步骤11,获取网页HTML代码并解析,得到网页数据。本实施例中,首先需要获取待检测网页的网页数据。由于现有的网页大多基于HTML代码编写,因而,首先需要获取网页的HTML代码。HTML是一种超文本标记语言,标准通用标记语言下的一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。一个网页对应多个HTML文件,超文本标记语言文件以.htm(磁盘操作系统DOS限制的外语缩写)为扩展名或.HTML(外语缩写)为扩展名。可以使用任何能够生成TXT类型源文件的文本编辑器来产生超文本标记语言文件,只用修改文件后缀即可。标准的超文本标记语言文件都具有一个基本的整体结构,标记一般都是成对出现(部分标记除外例如:<br/>),即超文本标记语言文件的开头与结尾标志和超文本标记语言的头部与实体两大部分。有三个双标记符用于页面整体结构的确认。通过网页的HTML代码,可以获取网页的基本内本文档来自技高网...
一种网页结构变更检测方法及系统

【技术保护点】
一种网页结构变更检测方法,其特征在于,包括:获取网页HTML代码并解析,得到网页数据;根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;根据匹配结果确定网页结构的变更位置。

【技术特征摘要】
1.一种网页结构变更检测方法,其特征在于,包括:获取网页HTML代码并解析,得到网页数据;根据所述网页数据,提取出其中各标签的网页结构,建立DOM树;将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配;根据匹配结果确定网页结构的变更位置。2.根据权利要求1所述的方法,其特征在于,所述获取网页HTML代码并解析,包括:登入网页服务器,请求所述网页对应的HTML代码;将所述网页对应的HTML代码根据预设的格式进行存储。3.根据权利要求1所述的方法,其特征在于,所述根据所述网页数据,提取出其中各标签的网页结构,建立DOM树,包括:获取所述网页数据中各个HTML标签;根据所述HTML标签获取对应的网页结构;根据所述网页结构,清洗去除其中各HTML标签的属性值和文本内容节点,获得结构数据;根据所述结构数据建立DOM树。4.根据权利要求1所述的方法,其特征在于,所述将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配,包括:将不同时间点获取的DOM树的树形结构相匹配。5.根据权利要求1所述的方法,其特征在于,将DOM树的树形结构与预先存储的网页数据DOM树型结构匹配,包括:根据树形结构匹配算法进行匹配;具体树形结构匹配算法包括:匹配两个DOM树的MD5值;当确认所述两个DOM树的MD5值不一致时,从所述两个DOM树的父节点到子节点,子节点到叶子节点,逐一进行递归式MD5值对比校验;将MD5值不一致的所述节点,存储到结构变更集合中。6.根据权利要求1所述的方法...

【专利技术属性】
技术研发人员:范晓忻朱志伟
申请(专利权)人:金电联行北京信息技术有限公司
类型:发明
国别省市:北京,11

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

1