CN102663041B - 面向深层网页面数据自动抽取方法 - Google Patents
面向深层网页面数据自动抽取方法 Download PDFInfo
- Publication number
- CN102663041B CN102663041B CN201210086024.4A CN201210086024A CN102663041B CN 102663041 B CN102663041 B CN 102663041B CN 201210086024 A CN201210086024 A CN 201210086024A CN 102663041 B CN102663041 B CN 102663041B
- Authority
- CN
- China
- Prior art keywords
- page
- node
- child node
- data extraction
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向深层网页面数据自动抽取方法,属于计算机数据挖掘领域,首先获取同一站点的两个深层网页面,分别标记为页面一和页面二;用HTMLTidy转换工具将页面一和页面二的HTML文档转换为XHTML文档;然后对页面一和页面二进行清噪处理;将页面一和页面二进行重复模式消除处理后生成网页数据抽取包装器;提取页面时先将待抽取数据的页面进行清噪处理;然后用网页数据抽取包装器先对经过清噪后的页面进行标记,最后抽取标记后的页面,本发明提高了重复模式消除算法和匹配算法的效率,降低了抽取复杂度,该方法中针对重复模式消除算法的特征而设计的匹配算法和抽取算法过程简单快速,同时提高了数据抽取的准确率。
Description
技术领域
本发明属于计算机数据挖掘领域,特别是涉及一种面向深层网的页面数据自动抽取方法。
背景技术
目前在深层网页面数据抽取研究领域,开发了很多自动化或半自动化的数据抽取工具,其中有通过学习使用手工标注的样本页面来获取网页数据抽取包装器的方法,这类方法需要大量的人工参与,导致自动化程度较低,包装器的生成及维护很困难,还有基于视觉的数据抽取方法,这种方法在一定程度上克服了现有方法对HTML原页面的依赖,但是由于Web页面数据的半结构或是无结构的特点,获取精确的视觉信息也是十分困难的,同时还有自动化的数据抽取方法,其可以自动归纳抽取规则进而抽取数据,特别适用于对数据密集型页面的抽取,但是,从网页中获取网页数据抽取包装器时采用回溯法处理重复模式问题,导致其时间复杂度是指数级的,并且由于现有的自动化数据抽取工具并没有对页面进行预处理,导致其效率不高。
因此本领域技术人员致力于开发一种面向深层网页面数据自动抽取的重复模式消除方法,以改进现有自动化的数据抽取技术中效率低和准确率不高的状况。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种面向深层网页面数据自动抽取的重复模式消除方法,以改进现有自动化的数据抽取技术中效率低和准确率不高的状况。
为实现上述目的,本发明提供了一种面向深层网页面数据自动抽取方法,按以下步骤进行:
S1、获取同一站点的两个深层网页面,分别标记为页面一和页面二;用HTML Tidy转换工具将页面一和页面二的HTML文档转换为XHTML文档;
S2、对页面一和页面二进行清噪处理;
S3、将页面一和页面二进行重复模式消除处理;
S4、生成网页数据抽取包装器;
S6、网页数据抽取包装器先对步骤S5中经过清噪后的页面进行标记,然后抽取标记后的页面;
步骤S3中所述进行重复模式消除处理按照以下步骤进行:
A1、在VS平台(Visual Studio平台)中使用XMLDocument加载清噪处理后的页面;所述VS平台为微软公司推出的软件开发平台;
A2、从根节点开始依次判断各节点是否有子节点,当有子节点时执行步骤A3,直到所有节点均被判断;
A3、判断所述节点内的各相邻子节点是否类型相同;当所述节点内相邻的子节点类型相同时,转至步骤A4;当所述节点内相邻的子节点类型不同时,转至步骤A5;
A4、当所述节点内相邻的子节点类型相同时,认为该相邻子节点都是元素节点;比较所述相邻的元素节点的内部子标签是否相同;当所述相邻的元素节点的内部子标签相同时,则这两个元素节点为相同的重复模式;为第一个元素节点添加iteration属性,为第二个元素节点添加del属性,直到所述节点内所有的相邻子节点均被比较;当所述相邻的元素节点的内部子标签不同时,转至步骤A3递归判断第一个元素节点的子节点,完成后转至步骤A3继续将第二个元素节点与其后面相邻节点进行比较,直到所述节点内所有的相邻子节点均被比较;
A5、当所述节点内相邻的子节点类型不同时,认为该相邻子节点一个是元素节点,一个是文本节点;如果第一个子节点是元素节点,则转至步骤A3递归处理所述元素节点的子节点,完成后转至步骤A3继续将第二个子节点与其后面相邻子节点进行比较,直到所述节点内所有的相邻子节点均被比较;如果第二个子节点是元素节点,转至步骤A3将第二个节点与其后面相邻节点进行比较,直到该节点内所有的相邻子节点均被比较;
A6、当比较的最后一个节点是元素节点且没有del属性时,则转至步骤A3递归处理其子节点。
A7、删除具有del属性的节点,重复模式消除算法结束。
步骤S2所述进行清噪处理清除了JavaScript,CSS和注释这三种标签;清除了空格 标签;清除了对于数据抽取无作用的部分元素属性,只留下了元素img、a和meta的属性。
步骤S4所述生成网页数据抽取包装器按以下步骤进行:
B1、将页面一和页面二分别载入XMLDocument;
B2、当页面一和页面二根节点的元素名称不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的子节点个数不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的OutXml相同时,则为这两个根节点添加ad属性;当页面一和页面二根节点的OutXml不相同且其中一个根节点有iteration属性时,则为这两个根节点添加uf属性;否则转至步骤B3;
B3、当页面一和页面二的根节点都没有iteration属性时,则判断这两个根节点的内部子标签是否完全相同,当页面一和页面二根节点的内部子标签相同且非空时转至步骤B4,否则转至步骤B5;
B4、判断页面一和页面二根节点的InnerText属性是否相同,当页面一和页面二根节点的InnerText属性相同则转至步骤B6,否则转至步骤B7;
B5、遍历页面一和页面二两个根节点的子节点,当页面一和页面二相对应的子节点都是元素类型时,则将这两个子节点作为根节点递归执行步骤B2;当相对应的子节点都是文本节点时,则将文本字符串各自累加;当页面一和页面二相对应的子节点一个是元素节点、另一个是文本节点时,则为所述页面一和页面二的根节点添加uf属性;当页面一和页面二两个根节点的所有子节点比较完后,判断所述两个根节点累加的文本字符串,当所述页面一和页面二两个根节点累加的文本字符串相等时,为所述页面一和页面二的两个根节点添加textad属性;当所述页面一和页面二两个根节点累加的文本字符串不等时,为所述页面一和页面二的两个根节点添加textuf属性;
B6、当页面一和页面二的根节点是图片或者链接时,为这两个根节点添加uf属性;否则转至步骤B5;
B7、判断页面一和页面二的两个根节点有无元素子节点;当页面一和页面二的两个根节点均没有元素子节点时,为这两个根节点添加uf属性;否则转至步骤B5;
B8、所有递归结束后,经过属性标记后页面一或页面二中任意一个页面为该站点的网页数据抽取包装器。
C1、从所述网页数据抽取包装器的根节点开始,判断所述网页数据抽取包装器中与待抽取页面对应的节点是否有uf属性、ad属性或textuf属性;当所述网页数据抽取包装器中与待抽取页面对应的节点含有uf属性、ad属性或textuf属性任意一种属性时,为待抽取页面与所述网页数据抽取包装器对应的节点添加同样的属性;当所述网页数据抽取包装器中与待抽取页面对应的节点没有uf属性、ad属性或textuf属性任意一种属性时,判断所述网页数据抽取包装器和待抽取页面对应节点的子节点个数是否相同,当所述网页数据抽取包装器和待抽取页面对应节点的子节点个数相同时执行步骤C2,否则执行步骤C3;
C2、判断该网页数据抽取包装器和待抽取页面对应节点的对应子节点是否均为元素节点;当该网页数据抽取包装器和待抽取页面对应节点的对应子节点均为元素节点时,以该网页数据抽取包装器和待抽取页面的对应节点为根节点执行步骤C1;当该网页数据抽取包装器对应节点的子节点为文本文档、待抽取页面与该网页数据抽取包装器对应的子节点为元素节点时,为该待抽取页面对应的子节点添加uf属性;
C3、判断该网页数据抽取包装器和待抽取页面对应子节点的内部子标签是否完全相同,当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签不同时执行步骤C4;当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签完全相同,则将该网页数据抽取包装器的子节点的布尔值设置为真;然后判断所述网页数据抽取包装器的子节点是否具有iteration属性,当所述网页数据抽取包装器中的子节点有iteration属性时,执行步骤C5;当所述网页数据抽取包装器中的子节点没有iteration属性时,执行步骤C6;
C4、遍历待抽取页面中与所述网页数据抽取包装器对应子节点的下一个子节点,判断是否与所述网页数据抽取包装器中的子节点相匹配;当没有与所述网页数据抽取包装器中对应子节点匹配成功时,则继续针对所述网页数据抽取包装器中的下一个节点进行判断,直到所述网页数据抽取包装器的子节点判断完成;
C5、当所述网页数据抽取包装器中的子节点有iteration属性时,在待抽取页面中遍历与所述网页数据抽取包装器对应子节点的下一个子节点,判断待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点是否匹配,所述匹配是指两个子节点的内部子标签相同;当在待抽取页面中找到一个与所述网页数据抽取包装器的子节点匹配的子节点时,则将该网页数据抽取包装器的子节点的布尔值设置为真;当待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点出现第一次不匹配时结束;然后将所述网页数据抽取包装器该子节点的后一个子节点继续执行步骤C5,直到所述网页数据抽取包装器中该子节点后的子节点均被判断;
C6、当所述网页数据抽取包装器中的子节点没有iteration属性时,将所述网页数据抽取包装器中的该子节点与待抽取页面中的所有节点进行比较,当出现与所述网页数据抽取包装器中的该子节点相匹配的节点或是待抽取页面中的所有节点均比较完时结束;将所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点进行比较,当所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点没有相匹配的节点时,将待抽取页面中没有匹配成功的节点标记uf属性;
本发明的有益效果是:本发明采用了清噪模块对页面的大部分无用信息进行清除,这样使得页面更简洁,提高了重复模式消除算法和匹配算法的效率,重复模式的合并使得匹配算法不需要回溯处理重复模式,只需顺序处理页面文档即可,因此降低了时间复杂度,多个重复模式合并为一项,实质为只留下第一个重复模式并为其添加几个属性,这样在一定程度上也降低了空间复杂度,该方法中针对重复模式消除算法的特征而设计的匹配算法和抽取算法过程简单快速,同时提高了数据抽取的准确率。
附图说明
图1是本发明一具体实施方式的流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
如图1所示,一种面向深层网页面数据自动抽取方法,按以下步骤进行:
S1、获取同一站点的两个深层网页面,分别标记为页面一和页面二;用HTML Tidy转换工具将页面一和页面二的HTML文档转换为XHTML文档;
S2、对页面一和页面二进行清噪处理;
S3、将页面一和页面二进行重复模式消除处理;
S4、生成网页数据抽取包装器;
S6、网页数据抽取包装器先对步骤S5中经过清噪后的页面进行标记,然后抽取标记后的页面;
步骤S3中所述进行重复模式消除处理按照以下步骤进行:
A1、在VS平台中使用XMLDocument加载清噪处理后的页面;
A2、从根节点开始依次判断各节点是否有子节点,当有子节点时执行步骤A3,直到所有节点均被判断;
A3、判断所述节点内的各相邻子节点是否类型相同;当所述节点内相邻的子节点类型相同时,转至步骤A4;当所述节点内相邻的子节点类型不同时,转至步骤A5;
A4、当所述节点内相邻的子节点类型相同时,认为该相邻子节点都是元素节点;比较所述相邻的元素节点的内部子标签是否相同;当所述相邻的元素节点的内部子标签相同时,则这两个元素节点为相同的重复模式;为第一个元素节点添加iteration属性,为第二个元素节点添加del属性,直到所述节点内所有的相邻子节点均被比较;当所述相邻的元素节点的内部子标签不同时,转至步骤A3递归判断第一个元素节点的子节点,完成后转至步骤A3继续将第二个元素节点与其后面相邻节点进行比较,直到所述节点内所有的相邻子节点均被比较;
A5、当所述节点内相邻的子节点类型不同时,认为该相邻子节点一个是元素节点,一个是文本节点;如果第一个子节点是元素节点,则转至步骤A3递归处理所述元素节点的子节点,完成后转至步骤A3继续将第二个子节点与其后面相邻子节点进行比较,直到所述节点内所有的相邻子节点均被比较;如果第二个子节点是元素节点,转至步骤A3将第二个节点与其后面相邻节点进行比较,直到该节点内所有的相邻子节点均被比较;
A6、当比较的最后一个节点是元素节点且没有del属性时,则转至步骤A3递归处理其子节点。
A7、删除具有del属性的节点,重复模式消除算法结束。
步骤S2所述进行清噪处理清除了JavaScript,CSS和注释这三种标签;清除了空格 标签;清除了对于数据抽取无作用的部分元素属性,只留下了元素img、a和meta的属性。
步骤S4所述生成网页数据抽取包装器按以下步骤进行:
B1、将页面一和页面二分别载入XMLDocument;
B2、当页面一和页面二根节点的元素名称不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的子节点个数不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的OutXml相同时,则为这两个根节点添加ad属性;当页面一和页面二根节点的OutXml不相同且其中一个根节点有iteration属性时,则为这两个根节点添加uf属性;否则转至步骤B3;
B3、当页面一和页面二的根节点都没有iteration属性时,则判断这两个根节点的内部子标签是否完全相同,当页面一和页面二根节点的内部子标签相同且非空时转至步骤B4,否则转至步骤B5;
B4、判断页面一和页面二根节点的InnerText属性是否相同,当页面一和页面二根节点的InnerText属性相同则转至步骤B6,否则转至步骤B7;
B5、遍历页面一和页面二两个根节点的子节点,当页面一和页面二相对应的子节点都是元素类型时,则将这两个子节点作为根节点递归执行步骤B2;当相对应的子节点都是文本节点时,则将文本字符串各自累加;当页面一和页面二相对应的子节点一个是元素节点、另一个是文本节点时,则为所述页面一和页面二的根节点添加uf属性;当页面一和页面二两个根节点的所有子节点比较完后,判断所述两个根节点累加的文本字符串,当所述页面一和页面二两个根节点累加的文本字符串相等时,为所述页面一和页面二的两个根节点添加textad属性;当所述页面一和页面二两个根节点累加的文本字符串不等时,为所述页面一和页面二的两个根节点添加textuf属性;
B6、当页面一和页面二的根节点是图片或者链接时,为这两个根节点添加uf属性;否则转至步骤B5;
B7、判断页面一和页面二的两个根节点有无元素子节点;当页面一和页面二的两个根节点均没有元素子节点时,为这两个根节点添加uf属性;否则转至步骤B5;
B8、所有递归结束后,经过属性标记后页面一或页面二中任意一个页面为该站点的网页数据抽取包装器。
C1、从所述网页数据抽取包装器的根节点开始,判断所述网页数据抽取包装器中与待抽取页面对应的节点是否有uf属性、ad属性或textuf属性;当所述网页数据抽取包装器中与待抽取页面对应的节点含有uf属性、ad属性或textuf属性任意一种属性时,为待抽取页面与所述网页数据抽取包装器对应的节点添加同样的属性;当所述网页数据抽取包装器中与待抽取页面对应的节点没有uf属性、ad属性或textuf属性任意一种属性时,判断所述网页数据抽取包装器和待抽取页面对应节点的子节点个数是否相同,当所述网页数据抽取包装器和待抽取页面对应节点的子节点个数相同时执行步骤C2,否则执行步骤C3;
C2、判断该网页数据抽取包装器和待抽取页面对应节点的对应子节点是否均为元素节点;当该网页数据抽取包装器和待抽取页面对应节点的对应子节点均为元素节点时,以该网页数据抽取包装器和待抽取页面的对应节点为根节点执行步骤C1;当该网页数据抽取包装器对应节点的子节点为文本文档、待抽取页面与该网页数据抽取包装器对应的子节点为元素节点时,为该待抽取页面对应的子节点添加uf属性;
C3、判断该网页数据抽取包装器和待抽取页面对应子节点的内部子标签是否完全相同,当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签不同时执行步骤C4;当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签完全相同,则将该网页数据抽取包装器的子节点的布尔值设置为真;然后判断所述网页数据抽取包装器的子节点是否具有iteration属性,当所述网页数据抽取包装器中的子节点有iteration属性时,执行步骤C5;当所述网页数据抽取包装器中的子节点没有iteration属性时,执行步骤C6;
C4、遍历待抽取页面中与所述网页数据抽取包装器对应子节点的下一个子节点,判断是否与所述网页数据抽取包装器中的子节点相匹配;当没有与所述网页数据抽取包装器中对应子节点匹配成功时,则继续针对所述网页数据抽取包装器中的下一个节点进行判断,直到所述网页数据抽取包装器的子节点判断完成;
C5、当所述网页数据抽取包装器中的子节点有iteration属性时,在待抽取页面中遍历与所述网页数据抽取包装器对应子节点的下一个子节点,判断待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点是否匹配,所述匹配是指两个子节点的内部子标签相同;当在待抽取页面中找到一个与所述网页数据抽取包装器的子节点匹配的子节点时,则将该网页数据抽取包装器的子节点的布尔值设置为真;当待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点出现第一次不匹配时结束;然后将所述网页数据抽取包装器该子节点的后一个子节点继续执行步骤C5,直到所述网页数据抽取包装器中该子节点后的子节点均被判断;
C6、当所述网页数据抽取包装器中的子节点没有iteration属性时,将所述网页数据抽取包装器中的该子节点与待抽取页面中的所有节点进行比较,当出现与所述网页数据抽取包装器中的该子节点相匹配的节点或是待抽取页面中的所有节点均比较完时结束;将所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点进行比较,当所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点没有相匹配的节点时,将待抽取页面中没有匹配成功的节点标记uf属性;
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (2)
1.一种面向深层网页面数据自动抽取方法,其特征在于包括以下步骤:
S1、获取同一站点的两个深层网页面,分别标记为页面一和页面二;用HTML Tidy转换工具将页面一和页面二的HTML文档转换为XHTML文档;
S2、对页面一和页面二进行清噪处理;
S3、将页面一和页面二进行重复模式消除处理;
S4、生成网页数据抽取包装器;
S6、网页数据抽取包装器先对步骤S5中经过清噪后的页面进行标记,然后抽取标记后的页面;
步骤S3中所述进行重复模式消除处理按照以下步骤进行:
A1、在VS平台中使用XMLDocument加载清噪处理后的页面;
A2、从根节点开始依次判断各节点是否有子节点,当有子节点时执行步骤A3,直到所有节点均被判断;
A3、判断所述节点内的各相邻子节点是否类型相同;当所述节点内相邻的子节点类型相同时,转至步骤A4;当所述节点内相邻的子节点类型不同时,转至步骤A5;
A4、当所述节点内相邻的子节点类型相同时,认为该相邻子节点都是元素节点;比较所述相邻的元素节点的内部子标签是否相同;当所述相邻的元素节点的内部子标签相同时,则这两个元素节点为相同的重复模式;为第一个元素节点添加iteration属性,为第二个元素节点添加del属性;当所述相邻的元素节点的内部子标签不同时,转至步骤A3递归判断第一个元素节点的子节点,完成后转至步骤A3继续将第二个元素节点与其后面相邻节点进行比较;
A5、当所述节点内相邻的子节点类型不同时,认为该相邻子节点一个是元素节点,一个是文本节点;如果第一个子节点是元素节点,则转至步骤A3递归处理所述元素节点的子节点,完成后转至步骤A3继续将第二个子节点与其后面相邻子节点进行比较,直到所述节点内所有的相邻子节点均被比较;如果第二个子节点是元素节点,转至步骤A3将第二个节点与其后面相邻节点进行比较,直到该节点内所有的相邻子节点均被比较;
A6、当比较的最后一个节点是元素节点且没有del属性时,则转至步骤A3递归处理其子节点;
A7、删除具有del属性的节点,重复模式消除算法结束;
步骤S4所述生成网页数据抽取包装器按以下步骤进行:
B1、将页面一和页面二分别载入XMLDocument;
B2、当页面一和页面二根节点的元素名称不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的子节点个数不相同时,为这两个根节点添加uf属性;当页面一和页面二根节点的OutXml相同时,则为这两个根节点添加ad属性;当页面一和页面二根节点的OutXml不相同且其中一个根节点有iteration属性时,则为这两个根节点添加uf属性;否则转至步骤B3;
B3、当页面一和页面二的根节点都没有iteration属性时,则判断这两个根节点的内部子标签是否完全相同,当页面一和页面二根节点的内部子标签相同且非空时转至步骤B4,否则转至步骤B5;
B4、判断页面一和页面二根节点的InnerText属性是否相同,当页面一和页面二根节点的InnerText属性相同则转至步骤B6,否则转至步骤B7;
B5、遍历页面一和页面二两个根节点的子节点,当页面一和页面二相对应的子节点都是元素类型时,则将这两个子节点作为根节点递归执行步骤B2;当相对应的子节点都是文本节点时,则将文本字符串各自累加;当页面一和页面二相对应的子节点一个是元素节点、另一个是文本节点时,则为所述页面一和页面二的根节点添加uf属性;当页面一和页面二两个根节点的所有子节点比较完后,判断所述两个根节点累加的文本字符串,当所述页面一和页面二两个根节点累加的文本字符串相等时,为所述页面一和页面二的两个根节点添加textad属性;当所述页面一和页面二两个根节点累加的文本字符串不等时,为所述页面一和页面二的两个根节点添加textuf属性;
B6、当页面一和页面二的根节点是图片或者链接时,为这两个根节点添加uf属性;否则转至步骤B5;
B7、判断页面一和页面二的两个根节点有无元素子节点;当页面一和页面二的两个根节点均没有元素子节点时,为这两个根节点添加uf属性;否则转至步骤B5;
B8、所有递归结束后,经过属性标记后页面一或页面二中任意一个页面为该站点的网页数据抽取包装器;
C1、从所述网页数据抽取包装器的根节点开始,判断所述网页数据抽取包装器中与待抽取页面对应的节点是否有uf属性、ad属性或textuf属性任意一种属性;当所述网页数据抽取包装器中与待抽取页面对应的节点含有uf属性、ad属性或textuf属性任意一种属性时,为待抽取页面与所述网页数据抽取包装器对应的节点添加同样的属性;当所述网页数据抽取包装器中与待抽取页面对应的节点没有uf属性、ad属性或textuf属性任意一种属性时,判断所述网页数据抽取包装器和待抽取页面对应节点的子节点个数是否相同,当所述网页数据抽取包装器和待抽取页面对应节点的子节点个数相同时执行步骤C2,否则执行步骤C3;
C2、判断该网页数据抽取包装器和待抽取页面对应节点的对应子节点是否均为元素节点;当该网页数据抽取包装器和待抽取页面对应节点的对应子节点均为元素节点时,以该网页数据抽取包装器和待抽取页面的对应节点为根节点执行步骤C1;当该网页数据抽取包装器对应节点的子节点为文本文档、待抽取页面与该网页数据抽取包装器对应的子节点为元素节点时,为该待抽取页面对应的子节点添加uf属性;
C3、判断该网页数据抽取包装器和待抽取页面对应子节点的内部子标签是否完全相同,当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签不同时执行步骤C4;当该网页数据抽取包装器和待抽取页面对应子节点的内部子标签完全相同,则将该网页数据抽取包装器的子节点的布尔值设置为真;然后判断所述网页数据抽取包装器的子节点是否具有iteration属性,当所述网页数据抽取包装器中的子节点有iteration属性时,执行步骤C5;当所述网页数据抽取包装器中的子节点没有iteration属性时,执行步骤C6;
C4、遍历待抽取页面中与所述网页数据抽取包装器对应子节点的下一个子节点,判断是否与所述网页数据抽取包装器中的子节点相匹配;当没有与所述网页数据抽取包装器中对应子节点匹配成功时,则继续针对所述网页数据抽取包装器中的下一个节点进行判断,直到所述网页数据抽取包装器的子节点判断完成;
C5、当所述网页数据抽取包装器中的子节点有iteration属性时,在待抽取页面中遍历与所述网页数据抽取包装器对应子节点的下一个子节点,判断待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点是否匹配,所述匹配是指两个子节点的内部子标签相同;当在待抽取页面中找到一个与所述网页数据抽取包装器的子节点匹配的子节点时,则将该网页数据抽取包装器的子节点的布尔值设置为真;当待抽取页面中继续遍历的子节点与该网页数据抽取包装器中的子节点出现第一次不匹配时结束;然后将所述网页数据抽取包装器该子节点的后一个子节点继续执行步骤C5,直到所述网页数据抽取包装器中该子节点后的子节点均被判断;
C6、当所述网页数据抽取包装器中的子节点没有iteration属性时,将所述网页数据抽取包装器中的该子节点与待抽取页面中的所有节点进行比较,当出现与所述网页数据抽取包装器中的该子节点相匹配的节点或是待抽取页面中的所有节点均比较完时结束;将所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点进行比较,当所述网页数据抽取包装器中没有匹配成功的节点与待抽取文件中没有匹配成功的节点没有相匹配的节点时,将待抽取页面中没有匹配成功的节点标记uf属性;
2.如权利要求1所述的面向深层网页面数据自动抽取方法,其特征是:步骤S2所述进行清噪处理清除JavaScript,CSS和注释这三种标签;清除空格 标签;清除对于数据抽取无作用的部分元素属性,只留下元素img、a和meta的属性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210086024.4A CN102663041B (zh) | 2012-03-28 | 2012-03-28 | 面向深层网页面数据自动抽取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210086024.4A CN102663041B (zh) | 2012-03-28 | 2012-03-28 | 面向深层网页面数据自动抽取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102663041A CN102663041A (zh) | 2012-09-12 |
CN102663041B true CN102663041B (zh) | 2014-01-01 |
Family
ID=46772532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210086024.4A Expired - Fee Related CN102663041B (zh) | 2012-03-28 | 2012-03-28 | 面向深层网页面数据自动抽取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102663041B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810177A (zh) * | 2012-11-07 | 2014-05-21 | 江苏仕德伟网络科技股份有限公司 | 一种准确获取网站访问者在网页上真实停留时间的方法 |
CN103838747B (zh) * | 2012-11-22 | 2017-07-07 | 富士通株式会社 | 网络服务构建方法和设备以及网页数据抽取方法和设备 |
CN106855859B (zh) * | 2015-12-08 | 2020-11-10 | 北京搜狗科技发展有限公司 | 一种网页正文提取方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872350A (zh) * | 2009-04-24 | 2010-10-27 | 富士通株式会社 | 网页正文抽取方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101593184B (zh) * | 2008-05-29 | 2013-05-15 | 国际商业机器公司 | 自适应地定位动态网页元素的系统和方法 |
-
2012
- 2012-03-28 CN CN201210086024.4A patent/CN102663041B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872350A (zh) * | 2009-04-24 | 2010-10-27 | 富士通株式会社 | 网页正文抽取方法和装置 |
Non-Patent Citations (2)
Title |
---|
基于Deep Web的网络信息抽取技术研究;王培正;《中国优秀硕士学位论文全文数据库》;20110630;第I139-84页 * |
王培正.基于Deep Web的网络信息抽取技术研究.《中国优秀硕士学位论文全文数据库》.2011,第I139-84页. |
Also Published As
Publication number | Publication date |
---|---|
CN102663041A (zh) | 2012-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101464905B (zh) | 一种网页信息抽取的系统及方法 | |
CN105022803B (zh) | 一种提取网页正文内容的方法及系统 | |
CN102663023B (zh) | 一种提取网页内容的实现方法 | |
CN102262632B (zh) | 进行文本处理的方法和系统 | |
US8762912B2 (en) | Tiered schematic-driven layout synchronization in electronic design automation | |
CN104598577B (zh) | 一种网页正文的提取方法 | |
CN107885499A (zh) | 一种接口文档生成方法及终端设备 | |
CN104834717A (zh) | 一种基于网页聚类的Web信息自动抽取方法 | |
CN101872350A (zh) | 网页正文抽取方法和装置 | |
CN106446072A (zh) | 网页内容的处理方法和装置 | |
CN103491116A (zh) | 正文相关的结构化数据的处理方法及装置 | |
CN102663041B (zh) | 面向深层网页面数据自动抽取方法 | |
CN105279086A (zh) | 一种基于流程图的自动检测电子商务网站逻辑漏洞的方法 | |
CN108733813A (zh) | 面向bbs论坛网页内容的信息提取方法、系统及介质 | |
CN106294885A (zh) | 一种面向异构网页的数据收集与标注方法 | |
CN106528068A (zh) | 一种网页内容重构方法和系统 | |
CN102375847A (zh) | 形成用于生成文档模板的合并树的方法以及装置 | |
CN110347390A (zh) | 一种快速生成web页面的方法、存储介质、设备及系统 | |
CN102004805B (zh) | 基于最大相似性匹配的网页去噪系统及其去噪方法 | |
CN106294139B (zh) | 一种软件代码中重复片段的检测提取方法 | |
CN106708479B (zh) | 一种页面渲染方法及装置 | |
CN1604073A (zh) | 一种对报纸版面进行标题与正文逻辑关联的方法 | |
Wang et al. | A search of Verilog code plagiarism detection method | |
CN107463696A (zh) | 一种网页页面最大块提取的方法 | |
CN108255895A (zh) | 一种使用上下文环境规则的网页数据获取方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140101 Termination date: 20150328 |
|
EXPY | Termination of patent right or utility model |