CN108268433B - 基于网页文章的标题抽取方法及装置 - Google Patents

基于网页文章的标题抽取方法及装置 Download PDF

Info

Publication number
CN108268433B
CN108268433B CN201810163176.7A CN201810163176A CN108268433B CN 108268433 B CN108268433 B CN 108268433B CN 201810163176 A CN201810163176 A CN 201810163176A CN 108268433 B CN108268433 B CN 108268433B
Authority
CN
China
Prior art keywords
title
node
text
candidate nodes
content
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.)
Active
Application number
CN201810163176.7A
Other languages
English (en)
Other versions
CN108268433A (zh
Inventor
张为
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dt Dream Technology Co Ltd
Original Assignee
Hangzhou Dt Dream Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dt Dream Technology Co Ltd filed Critical Hangzhou Dt Dream Technology Co Ltd
Priority to CN201810163176.7A priority Critical patent/CN108268433B/zh
Publication of CN108268433A publication Critical patent/CN108268433A/zh
Application granted granted Critical
Publication of CN108268433B publication Critical patent/CN108268433B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提出一种基于网页文章的标题抽取方法及装置,其中方法包括:获取网页文章对应的网页代码;根据渲染后的网页代码,构建DOM树;根据DOM树各个节点中元素的实际属性值对渲染后的网页代码进行调整;获取DOM树中正文区域前的叶子节点,并作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将其文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,实现了全自动化抽取,从而降低了成本,提高了抽取效率。

Description

基于网页文章的标题抽取方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于网页文章的标题抽取方法及装置。
背景技术
目前的网页数据抽取方法主要有两种,第一种需要构建专门的“包装器”程序来识别数据并将其转化为适合的格式,如XML、关联式表格等,但该方法要求用户具有计算机和编程的背景知识,且数据源网站格式改变时,需要对包装器进行修改。第二种提供友好的人机界面技术,通过人机界面技术使得用户可以在页面上点击从而快速创建包装器,降低了用户使用门槛,但这种方法最大的问题是灵活性很差,即当数据源网站格式改变时,需要重新创建包装器,成本高,维护工作量非常大。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的第一个目的在于提出一种基于网页文章的标题抽取方法,用于解决现有技术中的抽取方法成本高,且抽取效率低的问题。
本发明的第二个目的在于提出一种基于网页文章的标题抽取装置。
本发明的第三个目的在于提出另一种基于网页文章的标题抽取装置。
本发明的第四个目的在于提出一种非临时性计算机可读存储介质。
本发明的第五个目的在于提出一种计算机程序产品。
为达上述目的,本发明第一方面实施例提出了一种基于网页文章的标题抽取方法,包括:
获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取所述DOM树中的正文区域;
遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
进一步的,所述获取所述DOM树中的正文区域,包括:
遍历所述DOM树,获取所述DOM树中符合预设条件的正文候选节点;
根据所述正文候选节点中的文本内容特征,计算所述正文候选节点的特征分数;
将对应的特征分数最高的正文候选节点确定为最优正文节点;
根据所述最优正文节点,确定所述DOM树中的正文区域。
进一步的,所述正文候选节点的特征分数的计算公式为,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。
进一步的,所述根据所述最优正文节点,确定所述DOM树中的正文区域,包括:
遍历所述DOM树,获取所述最优正文节点对应的兄弟节点;
将所述最优正文节点和所述兄弟节点,确定为正文区域对应的节点。
进一步的,所述标题候选节点的特征分数的计算公式为,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0);
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。
进一步的,所述遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点之前,还包括:
遍历所述DOM树,获取所述正文区域前预设距离内的节点;
在所述预设距离内的节点与预设的时间文本表达式匹配时,将所述节点确定为候选元信息节点;
将距离所述正文区域最近的候选元信息节点,确定为元信息节点。
进一步的,所述根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数之前,还包括:
遍历所述DOM树,获取标题标签节点;
若所述标题标签节点位于正文区域外,且所述标题标签节点与所述正文区域之间的距离小于第一距离阈值,或者,所述标题标签节点位于正文区域内,
则根据所述标题标签节点中的文本内容特征,以及所述标题标签节点与所述正文区域之间的距离,计算所述标题标签节点的特征分数;
对应的,所述将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题,包括:
将所述标题候选节点和所述标题标签节点中,对应的特征分数最高的节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
本发明实施例的基于网页文章的标题抽取方法,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
为达上述目的,本发明第二方面实施例提出了一种基于网页文章的标题抽取装置,包括:
渲染模块,用于获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
构建调整模块,用于根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取模块,用于获取所述DOM树中的正文区域;
遍历模块,用于遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
计算模块,用于根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
确定模块,用于将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
进一步的,所述获取模块具体用于,
遍历所述DOM树,获取所述DOM树中符合预设条件的正文候选节点;
根据所述正文候选节点中的文本内容特征,计算所述正文候选节点的特征分数;
将对应的特征分数最高的正文候选节点确定为最优正文节点;
根据所述最优正文节点,确定所述DOM树中的正文区域。
进一步的,所述正文候选节点的特征分数的计算公式为,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。
进一步的,所述获取模块具体用于,
遍历所述DOM树,获取所述最优正文节点对应的兄弟节点;
将所述最优正文节点和所述兄弟节点,确定为正文区域对应的节点。
进一步的,所述标题候选节点的特征分数的计算公式为,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0);
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。
进一步的,所述遍历模块,还用于遍历所述DOM树,获取所述正文区域前预设距离内的节点;
所述确定模块,还用于在所述预设距离内的节点与预设的时间文本表达式匹配时,将所述节点确定为候选元信息节点;
所述确定模块,还用于将距离所述正文区域最近的候选元信息节点,确定为元信息节点。
进一步的,所述遍历模块,还用于遍历所述DOM树,获取标题标签节点;
所述计算模块,还用于在所述标题标签节点位于正文区域外,且所述标题标签节点与所述正文区域之间的距离小于第一距离阈值,或者,所述标题标签节点位于正文区域内时,
根据所述标题标签节点中的文本内容特征,以及所述标题标签节点与所述正文区域之间的距离,计算所述标题标签节点的特征分数;
对应的,所述确定模块具体用于,
将所述标题候选节点和所述标题标签节点中,对应的特征分数最高的节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
本发明实施例的基于网页文章的标题抽取装置,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
为达上述目的,本发明第三方面实施例提出了另一种基于网页文章的标题抽取装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述的基于网页文章的标题抽取方法。
为了实现上述目的,本发明第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于网页文章的标题抽取方法。
为了实现上述目的,本发明第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种基于网页文章的标题抽取方法,所述方法包括:
获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取所述DOM树中的正文区域;
遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例提供的一种基于网页文章的标题抽取方法的流程示意图;
图2为本发明实施例提供的另一种基于网页文章的标题抽取方法的流程示意图;
图3为本发明实施例提供的一种基于网页文章的标题抽取装置的结构示意图;
图4为本发明实施例提供的另一种基于网页文章的标题抽取装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的基于网页文章的标题抽取方法及装置。
图1为本发明实施例提供的一种基于网页文章的标题抽取方法的流程示意图。如图1所示,该基于网页文章的标题抽取方法包括以下步骤:
S101、获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码。
本发明提供的基于网页文章的标题抽取方法的执行主体为基于网页文章的标题抽取装置,基于网页文章的标题抽取装置可以为服务器、服务器集群等硬件设备,或者为硬件设备上安装的软件。本实施例中提供的基于网页文章的标题抽取方法可以应用于产品营销、市场分析、品牌监控、舆情分析等应用领域。例如在舆情分析领域中,需要采集互联网上给定的大量网页地址的网页数据,并基于大量网页数据进行数据挖掘以及舆情分析。其中,网页数据,例如网页文章中可以包括:标题、正文、作者、发布时间、来源、评论、广告、导航、推荐文章等等。
本实施例中,例如在舆情分析领域中,基于网页文章的标题抽取装置获取网页文章对应的网页代码的方式可以为,获取给定的网页地址,例如URL地址等;根据URL地址等从互联网上下载网页文章对应的网页代码,以及java script(JS)、Cascading Style Sheets(CSS)等资源。
本实施例中,基于网页文章的标题抽取装置中可以内置有渲染器,用于实现浏览器对网页的渲染功能,例如,获取网页文章中的字体大小、样式、文本内容等等。其中,基于网页文章的标题抽取装置对网页代码的渲染过程,可以参考浏览器对网页代码的渲染过程。
S102、根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整。
具体的,基于网页文章的标题抽取装置根据渲染后的网页代码,构建文档对象模型(Document Object Model,DOM)树后,可以删除网页代码中的无用元素,以及删除CSS属性为隐藏的代码。其中,无用元素例如script、style等。本实施例中,实际属性值至少可以包括字体大小font-size等属性值。
例如,渲染后的网页代码中某个DOM元素对应的HTML代码为:
<tr><td height="8"colspan="2"></td></tr>
经过调整后为:
<tr style="font-size:16px;"><td height="8"colspan="2"style="font-size:16px;"></td></tr>。
S103、获取DOM树中的正文区域。
本实施例中,基于网页文章的标题抽取装置执行步骤103的过程具体可以为,遍历DOM树,获取DOM树中符合预设条件的正文候选节点;根据正文候选节点中的文本内容特征,计算正文候选节点的特征分数;将对应的特征分数最高的正文候选节点确定为最优正文节点;根据最优正文节点,确定DOM树中的正文区域。
其中,基于网页文章的标题抽取装置可以遍历DOM树,获取DOM树中的无子节点的节点,例如<span>、<div>等,以及节点<p>、<pre>、<td>、<li>等,将这些节点确定为正文候选节点。本实施例中,可以对正文候选节点进行标记,以便区分,标记的方式可以为,将正文候选节点的class属性增加candidate_content值。例如,将<p>节点的class属性修改为<pclass=”candidate_content”>。
本实施例中,正文候选节点的特征分数的计算公式可以如以下公式(1)所示,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;(1)
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。例如,weight1的取值可以为1,weight2的取值可以为0.02。
本实施例中,将对应的特征分数最高的正文候选节点确定为最优正文节点后,可以遍历DOM树,获取最优正文节点对应的兄弟节点;将最优正文节点和兄弟节点,确定为正文区域对应的节点,将正文区域对应的节点的class属性值修改为article_content,以便对正文区域进行标记。
S104、遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点。
S105、根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数。
其中,标题候选节点与正文区域之间的距离指的是,从标题候选节点深度优先遍历到正文区域的第一个正文节点所经过的跳数。其中,从标题候选节点深度优先遍历到第一个正文节点,指的是在纵深方向从标题候选节点遍历到标题候选节点的叶子节点,然后从叶子节点遍历到第一个正文节点。
本实施例中,标题候选节点的特征分数的计算公式可以如以下公式(2)所示,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0); (2)
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。例如,weight1取值可以为2,weight2、weight3取值可以为40,weight4取值可以为80,weight5、weight6取值可以为3。
S106、将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题。
本实施例中,获取各网页文章的标题后,提供的基于网页文章的标题抽取装置还可以基于各网页文章的标题进行舆情分析,确定网页文章为正面文章、负面文章等。
进一步的,在上述实施例的基础上,步骤105之前,所述的方法还可以包括:遍历DOM树,获取标题标签节点;若标题标签节点位于正文区域外,且标题标签节点与正文区域之间的距离小于第一距离阈值,或者,标题标签节点位于正文区域内,则根据标题标签节点中的文本内容特征,以及标题标签节点与正文区域之间的距离,计算标题标签节点的特征分数。
对应的,步骤106具体可以为,将标题候选节点和标题标签节点中,对应的特征分数最高的节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题。
本实施例中,标题标签节点例如可以为,对应的文本中,字体的大小大于某个阈值,且文本长度小于某个阈值的节点。其中,标题标签节点与正文区域之间的距离指的是,从标题标签节点深度优先遍历到正文区域的第一个正文节点所经过的跳数。
本实施例中,由于网页文章的部分内容并没有位于对应的网页代码中,而是需要通过对网页代码的渲染来获取,例如,网页文章的标题等,为了避免从网页文章中抽取到错误的标题,提高抽取的准确率,本实施例中,基于网页文章的标题抽取装置还可以遍历DOM树,获取标题标签节点,标题标签节点中可以包括渲染后网页文章的各标题,例如主标题、副标题等,进而计算标题标签节点与正文区域之间的距离,计算标题标签节点的特征分数,将标题候选节点和标题标签节点中,对应的特征分数最高的节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而提高抽取的准确率。其中,标题标签节点例如可以用H1,H2,H3等表示。
本发明实施例的基于网页文章的标题抽取方法,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
图2为本发明实施例提供的另一种基于网页文章的标题抽取方法的流程示意图,如图2所示,在图1所示实施例的基础上,步骤104之前,所述的方法还可以包括以下步骤:
S107、遍历DOM树,获取正文区域前预设距离内的节点。
S108、在预设距离内的节点与预设的时间文本表达式匹配时,将节点确定为候选元信息节点。
本实施例中,预先构造有发布时间文本格式库。发布时间文本格式库中包括有多个与发布时间相关的正则表达式。其中,发布时间包括:绝对时间和相对时间。其中,绝对时间例如2016年1月1日18:00:00。相对时间例如“小时前”、“天前”、“刚刚”等等。
S109、将距离正文区域最近的候选元信息节点,确定为元信息节点。
本实施例中,在确定元信息节点后,可以将元信息节点的class属性值修改为article_meta,以便对元信息区域进行标记。在确定元信息节点后,在计算标题候选节点的特征分数的公式中,distance_time_content可以表示元信息节点与标题候选节点之间的距离,从而结合正文区域和元信息节点的位置,以及标题的特征等来确定标题节点的位置。
另外,还需要说明的是,元信息可以不限于发布时间,还可以包括作者、来源等。对应的,还可以预先构造有与作者、来源等相关的正则表达式,根据与作者、来源等相关的正则表达式,确定候选元信息节点。
本实施例中,通过结合正文区域的位置,以及元信息节点中各信息的特征等,来确定元信息节点的位置,结合正文区域和元信息节点的位置,以及标题的特征等来确定标题节点的位置,进一步提高了抽取效率。
本发明实施例的基于网页文章的标题抽取方法,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取正文区域前预设距离内的节点;在预设距离内的节点与预设的时间文本表达式匹配时,将节点确定为候选元信息节点;将距离正文区域最近的候选元信息节点,确定为元信息节点;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
图3为本发明实施例提供的一种基于网页文章的标题抽取装置的结构示意图。如图3所示,包括:渲染模块31、构建调整模块32、获取模块33、遍历模块34、计算模块35和确定模块36。
其中,渲染模块31,用于获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
构建调整模块32,用于根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取模块33,用于获取所述DOM树中的正文区域;
遍历模块34,用于遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
计算模块35,用于根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
确定模块36,用于将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
本发明提供的基于网页文章的标题抽取装置可以为服务器、服务器集群等硬件设备,或者为硬件设备上安装的软件。本实施例中提供的基于网页文章的标题抽取方法可以应用于产品营销、市场分析、品牌监控、舆情分析等应用领域。例如在舆情分析领域中,需要采集互联网上给定的大量网页地址的网页数据,并基于大量网页数据进行数据挖掘以及舆情分析。其中,网页数据,例如网页文章中可以包括:标题、正文、作者、发布时间、来源、评论、广告、导航、推荐文章等等。
本实施例中,基于网页文章的标题抽取装置根据渲染后的网页代码,构建文档对象模型(Document Object Model,DOM)树后,可以删除网页代码中的无用元素,以及删除CSS属性为隐藏的代码。其中,无用元素例如script、style等。本实施例中,实际属性值至少可以包括字体大小font-size等属性值。
本实施例中,所述获取模块33具体用于,遍历所述DOM树,获取所述DOM树中符合预设条件的正文候选节点;根据所述正文候选节点中的文本内容特征,计算所述正文候选节点的特征分数;将对应的特征分数最高的正文候选节点确定为最优正文节点;根据最优正文节点,确定DOM树中的正文区域。
其中,基于网页文章的标题抽取装置可以遍历DOM树,获取DOM树中的无子节点的节点,例如<span>、<div>等,以及节点<p>、<pre>、<td>、<li>等,将这些节点确定为正文候选节点。本实施例中,可以对正文候选节点进行标记,以便区分,标记的方式可以为,将正文候选节点的class属性增加candidate_content值。例如,将<p>节点的class属性修改为<pclass=”candidate_content”>。
本实施例中,正文候选节点的特征分数的计算公式可以如以下公式(1)所示,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;(1)
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。例如,weight1的取值可以为1,weight2的取值可以为0.02。
本实施例中,将对应的特征分数最高的正文候选节点确定为最优正文节点后,可以遍历DOM树,获取最优正文节点对应的兄弟节点;将最优正文节点和兄弟节点,确定为正文区域对应的节点,将正文区域对应的节点的class属性值修改为article_content,以便对正文区域进行标记。
其中,标题候选节点与正文区域之间的距离指的是,从标题候选节点深度优先遍历到正文区域的第一个正文节点所经过的跳数。其中,从标题候选节点深度优先遍历到第一个正文节点,指的是在纵深方向从标题候选节点遍历到标题候选节点的叶子节点,然后从叶子节点遍历到第一个正文节点。
本实施例中,标题候选节点的特征分数的计算公式可以如以下公式(2)所示,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0); (2)
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。例如,weight1取值可以为2,weight2、weight3取值可以为40,weight4取值可以为80,weight5、weight6取值可以为3。
进一步的,在上述实施例的基础上,所述遍历模块34,还用于遍历所述DOM树,获取标题标签节点;
所述计算模块35,还用于在所述标题标签节点位于正文区域外,且所述标题标签节点与所述正文区域之间的距离小于第一距离阈值,或者,所述标题标签节点位于正文区域内时,
根据所述标题标签节点中的文本内容特征,以及所述标题标签节点与所述正文区域之间的距离,计算所述标题标签节点的特征分数;
对应的,所述确定模块36具体用于,
将所述标题候选节点和所述标题标签节点中,对应的特征分数最高的节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
本实施例中,标题标签节点例如可以为,对应的文本中,字体的大小大于某个阈值,且文本长度小于某个阈值的节点。其中,标题标签节点与正文区域之间的距离指的是,从标题标签节点深度优先遍历到正文区域的第一个正文节点所经过的跳数。
本实施例中,由于网页文章的部分内容并没有位于对应的网页代码中,而是需要通过对网页代码的渲染来获取,例如,网页文章的标题等,为了避免从网页文章中抽取到错误的标题,提高抽取的准确率,本实施例中,基于网页文章的标题抽取装置还可以遍历DOM树,获取标题标签节点,标题标签节点中可以包括渲染后网页文章的各标题,例如主标题、副标题等,进而计算标题标签节点与正文区域之间的距离,计算标题标签节点的特征分数,将标题候选节点和标题标签节点中,对应的特征分数最高的节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而提高抽取的准确率。其中,标题标签节点例如可以用H1,H2,H3等表示。
本发明实施例的基于网页文章的标题抽取装置,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
进一步的,在图3所示实施例的基础上,所述遍历模块34,还用于遍历所述DOM树,获取所述正文区域前预设距离内的节点;
所述确定模块36,还用于在所述预设距离内的节点与预设的时间文本表达式匹配时,将所述节点确定为候选元信息节点;
所述确定模块36,还用于将距离所述正文区域最近的候选元信息节点,确定为元信息节点。
本实施例中,预先构造有发布时间文本格式库。发布时间文本格式库中包括有多个与发布时间相关的正则表达式。其中,发布时间包括:绝对时间和相对时间。其中,绝对时间例如2016年1月1日18:00:00。相对时间例如“小时前”、“天前”、“刚刚”等等。
本实施例中,在确定元信息节点后,可以将元信息节点的class属性值修改为article_meta,以便对元信息区域进行标记。在确定元信息节点后,在计算标题候选节点的特征分数的公式中,distance_time_content可以表示元信息节点与标题候选节点之间的距离,从而结合正文区域和元信息节点的位置,以及标题的特征等来确定标题节点的位置。
另外,还需要说明的是,元信息可以不限于发布时间,还可以包括作者、来源等。对应的,还可以预先构造有与作者、来源等相关的正则表达式,根据与作者、来源等相关的正则表达式,确定候选元信息节点。
本实施例中,通过结合正文区域的位置,以及元信息节点中各信息的特征等,来确定元信息节点的位置,结合正文区域和元信息节点的位置,以及标题的特征等来确定标题节点的位置,进一步提高了抽取效率。
本发明实施例的基于网页文章的标题抽取装置,通过获取网页文章对应的网页代码,对网页代码进行渲染,得到渲染后的网页代码;根据渲染后的网页代码,构建文档对象模型DOM树;获取DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对渲染后的网页代码进行调整;遍历DOM树,获取正文区域前预设距离内的节点;在预设距离内的节点与预设的时间文本表达式匹配时,将节点确定为候选元信息节点;将距离正文区域最近的候选元信息节点,确定为元信息节点;遍历DOM树,获取DOM树中正文区域前的叶子节点,将叶子节点作为标题候选节点;根据标题候选节点中的文本内容特征,以及标题候选节点与正文区域之间的距离,计算标题候选节点的特征分数;将对应的特征分数最高的标题候选节点确定为标题节点,将标题节点中的文本内容确定为网页文章的标题,从而能够结合正文区域所在位置,确定标题候选节点,结合标题候选节点中的文本内容特征,确定标题,避免了包装器的创建,不需要用户具备计算机和编程的背景知识,实现了全自动化抽取,且与数据源网站的具体格式无关,从而降低了成本,提高了抽取效率。
图4为本发明实施例提供的另一种基于网页文章的标题抽取装置的结构示意图。该基于网页文章的标题抽取装置包括:
存储器1001、处理器1002及存储在存储器1001上并可在处理器1002上运行的计算机程序。
处理器1002执行所述程序时实现上述实施例中提供的基于网页文章的标题抽取方法。
进一步地,基于网页文章的标题抽取装置还包括:
通信接口1003,用于存储器1001和处理器1002之间的通信。
存储器1001,用于存放可在处理器1002上运行的计算机程序。
存储器1001可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器1002,用于执行所述程序时实现上述实施例所述的基于网页文章的标题抽取方法。
如果存储器1001、处理器1002和通信接口1003独立实现,则通信接口1003、存储器1001和处理器1002可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器1001、处理器1002及通信接口1003,集成在一块芯片上实现,则存储器1001、处理器1002及通信接口1003可以通过内部接口完成相互间的通信。
处理器1002可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
本发明还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于网页文章的标题抽取方法。
本发明还提供一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如上所述的基于网页文章的标题抽取方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (16)

1.一种基于网页文章的标题抽取方法,其特征在于,包括:
获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取所述DOM树中的正文区域;
遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
2.根据权利要求1所述的方法,其特征在于,所述获取所述DOM树中的正文区域,包括:
遍历所述DOM树,获取所述DOM树中符合预设条件的正文候选节点;
根据所述正文候选节点中的文本内容特征,计算所述正文候选节点的特征分数;
将对应的特征分数最高的正文候选节点确定为最优正文节点;
根据所述最优正文节点,确定所述DOM树中的正文区域。
3.根据权利要求2所述的方法,其特征在于,所述正文候选节点的特征分数的计算公式为,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。
4.根据权利要求2所述的方法,其特征在于,所述根据所述最优正文节点,确定所述DOM树中的正文区域,包括:
遍历所述DOM树,获取所述最优正文节点对应的兄弟节点;
将所述最优正文节点和所述兄弟节点,确定为正文区域对应的节点。
5.根据权利要求1所述的方法,其特征在于,所述标题候选节点的特征分数的计算公式为,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0);
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;len表示文本内容的长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。
6.根据权利要求1所述的方法,其特征在于,所述遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点之前,还包括:
遍历所述DOM树,获取所述正文区域前预设距离内的节点;
在所述预设距离内的节点与预设的时间文本表达式匹配时,将所述节点确定为候选元信息节点;
将距离所述正文区域最近的候选元信息节点,确定为元信息节点。
7.根据权利要求1所述的方法,其特征在于,所述根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数之前,还包括:
遍历所述DOM树,获取标题标签节点;
若所述标题标签节点位于正文区域外,且所述标题标签节点与所述正文区域之间的距离小于第一距离阈值,或者,所述标题标签节点位于正文区域内,
则根据所述标题标签节点中的文本内容特征,以及所述标题标签节点与所述正文区域之间的距离,计算所述标题标签节点的特征分数;
对应的,所述将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题,包括:
将所述标题候选节点和所述标题标签节点中,对应的特征分数最高的节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
8.一种基于网页文章的标题抽取装置,其特征在于,包括:
渲染模块,用于获取网页文章对应的网页代码,对所述网页代码进行渲染,得到渲染后的网页代码;
构建调整模块,用于根据所述渲染后的网页代码,构建文档对象模型DOM树;获取所述DOM树的各个节点中元素的实际属性值,根据元素的实际属性值对所述渲染后的网页代码进行调整;
获取模块,用于获取所述DOM树中的正文区域;
遍历模块,用于遍历所述DOM树,获取所述DOM树中正文区域前的叶子节点,将所述叶子节点作为标题候选节点;
计算模块,用于根据所述标题候选节点中的文本内容特征,以及所述标题候选节点与所述正文区域之间的距离,计算所述标题候选节点的特征分数;
确定模块,用于将对应的特征分数最高的标题候选节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
9.根据权利要求8所述的装置,其特征在于,所述获取模块具体用于,
遍历所述DOM树,获取所述DOM树中符合预设条件的正文候选节点;
根据所述正文候选节点中的文本内容特征,计算所述正文候选节点的特征分数;
将对应的特征分数最高的正文候选节点确定为最优正文节点;
根据所述最优正文节点,确定所述DOM树中的正文区域。
10.根据权利要求9所述的装置,其特征在于,所述正文候选节点的特征分数的计算公式为,
content_score+=(weight1×comma_num+weight2×len)×len_nonlink/len;
其中,content_score表示正文候选节点的特征分数,其初始值为0;comma_num表示文本内容中逗号的个数;len表示文本内容的长度;len_nonlink表示文本内容中非链接文本的长度;weight1和weight2表示权重。
11.根据权利要求9所述的装置,其特征在于,所述获取模块具体用于,
遍历所述DOM树,获取所述最优正文节点对应的兄弟节点;
将所述最优正文节点和所述兄弟节点,确定为正文区域对应的节点。
12.根据权利要求8所述的装置,其特征在于,所述标题候选节点的特征分数的计算公式为,
title_score=weight1×(font-size-MIN_FONT_SIZE)+weight2×sim_title+weight3×sim_content-weight4×distance_time_content-weight5×max((MIN_LEN-len),0)–weight6×max((len–MAX_LEN),0);
其中,title_score表示标题候选节点的特征分数;font-size表示文本内容的字体大小;MIN_FONT_SIZE表示标题的最小字体;sim_title表示文本内容与<title>中标签文字的相似度;sim_content表示文本内容与正文内容的相似度;distance_time_content在未确定元信息节点时,表示正文区域与标题候选节点之间的距离,在确定元信息节点时,表示元信息节点与标题候选节点之间的距离;MIN_LEN表示标题的最小长度;len表示文本内容的长度;MAX_LEN表示标题的最大长度;weight1、weight2、weight3、weight4、weight5和weight6表示权重。
13.根据权利要求8所述的装置,其特征在于,
所述遍历模块,还用于遍历所述DOM树,获取所述正文区域前预设距离内的节点;
所述确定模块,还用于在所述预设距离内的节点与预设的时间文本表达式匹配时,将所述节点确定为候选元信息节点;
所述确定模块,还用于将距离所述正文区域最近的候选元信息节点,确定为元信息节点。
14.根据权利要求8所述的装置,其特征在于,
所述遍历模块,还用于遍历所述DOM树,获取标题标签节点;
所述计算模块,还用于在所述标题标签节点位于正文区域外,且所述标题标签节点与所述正文区域之间的距离小于第一距离阈值,或者,所述标题标签节点位于正文区域内时,
根据所述标题标签节点中的文本内容特征,以及所述标题标签节点与所述正文区域之间的距离,计算所述标题标签节点的特征分数;
对应的,所述确定模块具体用于,
将所述标题候选节点和所述标题标签节点中,对应的特征分数最高的节点确定为标题节点,将所述标题节点中的文本内容确定为所述网页文章的标题。
15.一种基于网页文章的标题抽取装置,其特征在于,包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的基于网页文章的标题抽取方法。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的基于网页文章的标题抽取方法。
CN201810163176.7A 2018-02-26 2018-02-26 基于网页文章的标题抽取方法及装置 Active CN108268433B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810163176.7A CN108268433B (zh) 2018-02-26 2018-02-26 基于网页文章的标题抽取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810163176.7A CN108268433B (zh) 2018-02-26 2018-02-26 基于网页文章的标题抽取方法及装置

Publications (2)

Publication Number Publication Date
CN108268433A CN108268433A (zh) 2018-07-10
CN108268433B true CN108268433B (zh) 2019-06-11

Family

ID=62774515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810163176.7A Active CN108268433B (zh) 2018-02-26 2018-02-26 基于网页文章的标题抽取方法及装置

Country Status (1)

Country Link
CN (1) CN108268433B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109101491B (zh) * 2018-07-24 2021-12-17 湖南星汉数智科技有限公司 一种作者信息抽取方法、装置、计算机装置及计算机可读存储介质
CN109710864B (zh) * 2018-11-29 2020-01-24 北京字节跳动网络技术有限公司 页面内容划分方法、装置、可读存储介质及电子设备
CN109710833B (zh) * 2018-12-29 2021-07-16 上海蜜度信息技术有限公司 用于确定内容节点的方法与设备
CN110333864B (zh) * 2019-06-18 2021-09-14 腾讯科技(深圳)有限公司 一种树形数据渲染方法、装置、设备及介质
CN111126050B (zh) * 2019-12-25 2023-05-05 杭州安恒信息技术股份有限公司 一种网站标题提取方法、系统及相关设备
CN111428444B (zh) * 2020-03-27 2023-10-20 新华智云科技有限公司 网页信息自动抽取方法
CN112328928A (zh) * 2020-11-27 2021-02-05 山东省计算中心(国家超级计算济南中心) 一种基于结构序列的文本脉络抽取方法及系统
CN112765941B (zh) * 2021-01-21 2024-10-01 语联网(武汉)信息技术有限公司 自动提取网页正文的方法及系统
CN113485782B (zh) * 2021-07-29 2024-08-06 北京百度网讯科技有限公司 页面数据获取方法、装置、电子设备及介质
CN114201700A (zh) * 2021-12-10 2022-03-18 北京金堤科技有限公司 网页正文获取方法、装置、存储介质及电子设备
CN114528811B (zh) * 2022-01-21 2022-09-02 北京麦克斯泰科技有限公司 文章内容抽取方法、装置、设备及存储介质
CN115238078A (zh) * 2022-08-10 2022-10-25 数魔方(北京)医药科技有限公司 一种网页信息抽取方法、装置、设备及存储介质
CN116362223B (zh) * 2023-03-07 2023-12-15 北京粉笔蓝天科技有限公司 一种网页文章标题和正文的自动识别方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104156458A (zh) * 2014-08-20 2014-11-19 百度在线网络技术(北京)有限公司 一种信息的提取方法及装置
CN104376061A (zh) * 2014-11-10 2015-02-25 武汉传神信息技术有限公司 一种提取网页正文的方法
US9111003B2 (en) * 2000-08-29 2015-08-18 Citrix Systems, Inc. Scalable derivative services
CN104933168A (zh) * 2015-06-30 2015-09-23 南京烽火星空通信发展有限公司 一种网页内容自动采集方法
CN106227785A (zh) * 2016-07-15 2016-12-14 杭州数梦工场科技有限公司 一种页面对象的显示方法和装置
CN106446139A (zh) * 2016-09-20 2017-02-22 微梦创科网络科技(中国)有限公司 一种提取网页内容的方法及装置
CN106484828A (zh) * 2016-09-29 2017-03-08 西南科技大学 一种分布式互联网数据快速采集系统及采集方法
CN106897287A (zh) * 2015-12-18 2017-06-27 中国电信股份有限公司 网页发布时间抽取方法和用于网页发布时间抽取的装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10360246B2 (en) * 2013-05-20 2019-07-23 Tencent Technology (Shenzhen) Co., Ltd. Method, system, and apparatus for searching and displaying user generated content

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9111003B2 (en) * 2000-08-29 2015-08-18 Citrix Systems, Inc. Scalable derivative services
CN104156458A (zh) * 2014-08-20 2014-11-19 百度在线网络技术(北京)有限公司 一种信息的提取方法及装置
CN104376061A (zh) * 2014-11-10 2015-02-25 武汉传神信息技术有限公司 一种提取网页正文的方法
CN104933168A (zh) * 2015-06-30 2015-09-23 南京烽火星空通信发展有限公司 一种网页内容自动采集方法
CN106897287A (zh) * 2015-12-18 2017-06-27 中国电信股份有限公司 网页发布时间抽取方法和用于网页发布时间抽取的装置
CN106227785A (zh) * 2016-07-15 2016-12-14 杭州数梦工场科技有限公司 一种页面对象的显示方法和装置
CN106446139A (zh) * 2016-09-20 2017-02-22 微梦创科网络科技(中国)有限公司 一种提取网页内容的方法及装置
CN106484828A (zh) * 2016-09-29 2017-03-08 西南科技大学 一种分布式互联网数据快速采集系统及采集方法

Also Published As

Publication number Publication date
CN108268433A (zh) 2018-07-10

Similar Documents

Publication Publication Date Title
CN108268433B (zh) 基于网页文章的标题抽取方法及装置
CN104462364B (zh) 搜索推荐方法及装置
CN104217036B (zh) 一种网页内容提取方法和设备
US20090265330A1 (en) Context-based document unit recommendation for sensemaking tasks
Zheng et al. Template-independent news extraction based on visual consistency
CN100444591C (zh) 获取网页关键字的方法及其应用系统
CN109033074B (zh) 新闻摘要生成方法、装置、设备及计算机可读介质
CN107436955B (zh) 一种基于Wikipedia概念向量的英文词语相关度计算方法和装置
CN107885888A (zh) 信息处理方法及装置、终端设备以及计算机可读存储介质
CN109543128A (zh) 一种基于编程语言的前端框架项目实现方法及电子设备
CN102523130A (zh) 不良网页检测方法及装置
CN109191158A (zh) 用户画像标签数据的处理方法及处理设备
CN104142985A (zh) 一种半自动化的垂直爬虫生成工具及方法
CN110070410A (zh) 一种基于大数据的人口社交分析方法及系统
CN109389554A (zh) 截图方法及装置
CN107294918A (zh) 一种钓鱼网页检测方法及装置
CN106599280A (zh) 确定网页节点路径信息的方法及装置
US20140351266A1 (en) Method, apparatus, and computer-readable medium for generating headlines
CN109274664A (zh) 一种反爬虫方法和装置
CN104572874B (zh) 一种网页信息的抽取方法及装置
CN109710773A (zh) 事件主体的生成方法及其装置
Liu et al. Automatically extracting user reviews from forum sites
CN104657480B (zh) 漫画搜索方法及装置
CN104462360B (zh) 一种为文本集合生成语义标识的方法和装置
CN112818279A (zh) 网页相似度的确定方法及确定装置、计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant