[发明专利]一种自动抽取列表页的方法有效
申请号: | 201810959317.6 | 申请日: | 2018-08-22 |
公开(公告)号: | CN109144513B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 庞一文 | 申请(专利权)人: | 上海嘉道信息技术有限公司 |
主分类号: | G06F8/40 | 分类号: | G06F8/40 |
代理公司: | 北京唯智勤实知识产权代理事务所(普通合伙) 11557 | 代理人: | 朱春野 |
地址: | 201821 上海市嘉定区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动 抽取 列表 方法 | ||
本发明涉及一种自动抽取列表页的方法,包括以下步骤:将网页源码解析成dom树;提取dom树中带有文字的元素节点路径;元素节点的位置信息打分和滤除;提取节点的相似指纹;提取节点块的深度指纹;提取标题和地址链接的相似指纹;抽取列表页,将封装结果返回。本发明能够适用于大量的互联网网站列表页抽取,对大量列表页都具有普适性,因此即使出现了网站改版,基于网页结构的抽取方式依旧可以生效,节省了重新编写抽取规则和维护规则所产生来的时间成本和人力成本。在基于网页的结构抽取算法中,还增加了网页上元素的位置像素信息作为特征,更加符合人对于列表页的感官判断,使得抽取结果更加符合目标。
技术领域
本发明涉及网络技术领域,尤其涉及一种自动抽取列表页的方法。
背景技术
传统的列表页抽取技术主要通过规则的形式,比较常用的比如通过正则表达式、xpath、css选择器、甚至通过人工手动的形式将页面上的信息采集下来。
单个网页能够通过诸如正则表达式的方式来精准的想要的信息采集下来,而像正则表达式、css选择器这种方式本质是通过观察网页源码的规则通过人进行总结,进而使用这些规则来抽取,这种方法在不同结构的网页上是很难用同一套规则来抽取的,因为不同网页需要不同的规则来支撑抽取,当用户需要采集大量的网页时,就需要依靠人工来编写大量的规则,这种效率不仅低下,甚至在千、万数量级的网站上时,仅仅依靠人工已经成为了完全不可能的事。不仅如此,依靠规则的抽取方式受限于网页本身,当网站进行改版时,当初的规则也会变得不再适用,又需要要人工重新编写规则,这也使得某些依赖开源信息采集的项目维护成本变得异常高。
发明内容
本发明所要解决的技术问题是提供一种适用度高且高效的自动抽取列表页的方法。
为解决上述技术问题,本发明的技术方案是:一种自动抽取列表页的方法,包括以下步骤:
(1)dom树的生成:获取待采集网站的网页源码;将所述网页源码解析成dom树;根据dom树进行前序遍历,记录所述dom树中各叶子元素的节点路径;提取并保存带有文字的元素节点路径;
(2)获取步骤(1)中提取的带有文字的元素节点的位置信息,根据所述元素节点的位置信息进行打分,并滤除不符合列表页视觉可能性的元素节点;
(3)根据节点路径的相似度和与符合列表页信息约束条件的节点特征的相似度判断多个节点之间是否具有相似指纹,将具有相似指纹的节点分类聚合,其中,所述列表页信息至少包括标题和地址链接,所述相似指纹是指不同的节点之间均符合构成列表页信息的某个约束条件;
(4)将具有多个相似指纹且所述相似指纹能够构成完整列表页信息的多个节点分类聚合成节点块,构成列表页的深度指纹;
(5)从所述列表页的深度指纹中提取标题和地址链接的相似指纹;
(6)抽取列表页,将封装结果返回。
作为优选的技术方案,步骤(2)具体包括:
(2.1)采集html网页的css和js文件,获取所述节点的位置信息;
(2.2)计算每个网页解析后的dom树的元素节点的像素位置;
(2.3)判断所述元素节点是否符合列表页视觉可能性,具体包括:若所述元素节点是隐藏节点,所述元素节点是无效节点;若所述元素节点的像素位置距离网页左边和顶部的距离像素小于设置的阈值,所述元素节点是无效节点;所述元素节点的像素位置与所述网页的的中心点的距离越远,所述元素节点的分值越低,所述元素节点的分值与列表页的抽取精度相关。
作为优选的技术方案,步骤(3)中符合列表页信息约束条件的节点特征包括节点属性标签和节点文本信息标签,其中,所述节点属性标签相似度与所述节点属性的方差成反比,则所述节点属性的方差:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海嘉道信息技术有限公司,未经上海嘉道信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810959317.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种生成API的方法和系统
- 下一篇:JSON格式数据解析存储方法及装置