CN116362223B - 一种网页文章标题和正文的自动识别方法及装置 - Google Patents
一种网页文章标题和正文的自动识别方法及装置 Download PDFInfo
- Publication number
- CN116362223B CN116362223B CN202310211865.1A CN202310211865A CN116362223B CN 116362223 B CN116362223 B CN 116362223B CN 202310211865 A CN202310211865 A CN 202310211865A CN 116362223 B CN116362223 B CN 116362223B
- Authority
- CN
- China
- Prior art keywords
- article
- title
- current
- thread
- text
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000003213 activating effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000012549 training Methods 0.000 abstract description 7
- 238000012545 processing Methods 0.000 abstract description 6
- 238000007405 data analysis Methods 0.000 abstract description 4
- 238000007781 pre-processing Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000007115 recruitment Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
- G06F40/154—Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/258—Heading extraction; Automatic titling; Numbering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
Abstract
本发明提出一种网页文章标题和正文的自动识别方法及装置,属于特征识别与数据处理技术领域。方法包括将网页中的所有元素解析成DOM树、逐个对DOM树中的所有元素进行广度优先遍历、将查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1、对网页内容进行反向广度优先遍历,查找文章的当前标题元素、结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容等步骤。本发明提出了一种在不对网页内容进行预处理的情况下,可以方便提取网页文章信息的技术方案,可以精确获取到文章的标题和正文,对下一步的数据分析和训练提供了良好的半结构化数据。
Description
技术领域
本发明属于特征识别与数据处理技术领域,尤其涉及一种网页文章标题和正文的自动识别方法及装置。
背景技术
在科学研究和业务需求中,我们经常需要从互联网获取文章数据进行数据挖掘和分析工作。但是互联网上面的网页内容除了包括文章内容,还包括导航元素,广告文本等信息,这些无关的信息会影响到我们进行后续数据挖掘工作的精确度。
传统方法会通过配置表达式来识别网页中文章标题和正文的元素,进而提取到网页中文章的标题和正文内容。但是,网页中文章标题和正文的元素,经常会因为网站改版、录入编辑人员的编辑习惯不同而发生改变。因此这种基于规则提取文章标题和正文内容的方法不具有普遍适用性,需要针对每个网站进行专门维护,而且当网页布局发生变化的时候相关的配置规则会失效,需要再次进行维护修改,费时费力;
随着人工智能技术的发展,还发展出基于机器学习算法提取文章标题和正文内容。基于机器学习算法提前文章标题和正文内容一般来说不会受到网页布局变化的影响。但是该方法需要人工大量地标注数据和训练数据过程复杂,同时也需要不断更新训练样本,过程复杂。
可以看到,现有技术方案成本高,需要人工不断介入来进行维护,实现过程复杂。因此,如何能够快速、有效地自动识别、抽取网页中文章的标题和正文的内容成为了一个急切需要解决的问题。
发明内容
为解决上述技术问题,本发明提出一个流程简单,普适性强且不需要人工介入的文章标题和正文内容提取方法。
具体的,本发明提供的是一种网页文章标题和正文的自动识别方法及装置、以及实现所述方法的电子计算机设备。
在本发明的第一个方面,提出一种网页文章标题和正文的自动识别方法,所述方法包括如下步骤:
S1:将网页中的所有元素解析成DOM树;
S2:逐个对DOM树中的所有元素进行广度优先遍历;
S3:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则进入步骤S4;
否则,返回步骤S2;
S4:判断当前元素是否是块级元素,
如果是,则查找当前元素的父元素;
否则,则查找当前元素的块级父元素的父元素;
S5:将上一步骤查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
S6:判断所述DOM树中的所有元素是否均遍历完毕,如果是,进入步骤S7;否则,返回步骤S2;
S7:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
S8:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
S9:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
如果是,则进入步骤S10;
否则,返回步骤S8;
S10:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
S11:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
S12:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容。
在本发明第二个方面,还提出一种网页文章标题和正文的自动识别装置,用于实现第一个方面所述的一种网页文章标题和正文的自动识别方法,所述装置包括多个计算机功能结构化执行单元,具体包括:
解析单元:将网页中的所有元素解析成DOM树;
遍历单元:逐个对DOM树中的所有元素进行广度优先遍历;
第一判断单元:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则激活第二判断单元;
第二判断单元:判断当前元素是否是块级元素,如果是,则查找当前元素的父元素;否则,则查找当前元素的块级父元素的父元素;
权重更新单元:将第二判断单元查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
根元素选择单元:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
标题元素查找单元:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
第三判断单元:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
如果是,则激活候选元素添加单元;
候选元素添加单元:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
文章标题元素选择单元:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
所述自定义标题特征包括关键词特征、标题长度特征、领域特征、语法特征之中的一个或多个;
完整文章内容生成单元:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容。
本发明上述方法可以通过计算机设备执行计算机程序指令的形式自动化实现。因此,在本发明的第三个方面,还提出一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一个方面所述的一种网页文章标题和正文的自动识别方法的全部步骤。
本发明提出了一种在不对网页内容进行预处理的情况下,可以方便提取网页文章信息的技术方案,通过将网页中的所有元素解析成DOM树、逐个对DOM树中的所有元素进行广度优先遍历、将查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1、对网页内容进行反向广度优先遍历,查找文章的当前标题元素、结合网页文章正文根元素与文章标题元素,可获得当前网页的完整文章内容。
可以看到,本发明的技术方案可以精确获取到文章的标题和正文,对下一步的数据分析和训练提供了良好的半结构化数据。
本发明的进一步优点将结合说明书附图在具体实施例部分进一步详细体现。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的一种网页文章标题和正文的自动识别方法的主体流程图
图2是本发明使用到的DOM树的结构示意图
图3是本发明一种网页文章标题和正文的自动识别方法的部分程序伪代码流程示意图
图4是本发明一个实施例的一种网页文章标题和正文的自动识别装置的单元组成示意图
具体实施方式
下面,结合附图以及具体实施方式,对发明做出进一步的描述。
图1是本发明一个实施例的一种网页文章标题和正文的自动识别方法的主体流程图。
图1所述方法包括步骤S1-S12,各个步骤具体实现如下:
S1:将网页中的所有元素解析成DOM树;
S2:逐个对DOM树中的所有元素进行广度优先遍历;
S3:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则进入步骤S4;
否则,返回步骤S2;
图3中,示意性的,当前元素记为Itemi,当前元素包含的直接文本内容长度记为length(itemi);当前元素不是<a>元素记为itmei≠<a>;
T1为第一预设阈值;
当判断均否时,i++;返回步骤S2;
S4:判断当前元素是否是块级元素,
如果是,则查找当前元素的父元素;
否则,则查找当前元素的块级父元素的父元素;
S5:将上一步骤查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
S6:判断所述DOM树中的所有元素是否均遍历完毕,如果是,进入步骤S7;否则,返回步骤S2;
图1中,示意性的,判断i>imax是否成立就是判断所述DOM树中的所有元素是否均遍历完毕,imax是所述DOM中元素的数量;
S7:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
S8:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
图1中,当前标题元素示意性为Tj;
S9:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
图1中,文章的当前标题元素对应的文本内容长度示意性为length(Tj);
T2为第一预设阈值;
如果是,则进入步骤S10;
否则,返回步骤S8;
S10:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
S11:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
S12:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容。
接下来,结合图2和图3,进一步介绍上述实施例的部分步骤的具体实现方式。
S1:将网页中的所有元素解析成DOM树;
参见图2。DOM(Document Object Model)即文档对象模型,是W3C制定的标准接口规范,是一种处理HTML和XML文件的标准API。DOM提供了对整个文档的访问模型,将文档作为一个树形结构,树的每个结点表示了一个HTML标签或标签内的文本项。DOM树结构精确地描述了HTML文档中标签间的相互关联性。将HTML或XML文档转化为DOM树的过程称为解析(parse)。HTML文档被解析后,转化为DOM树,因此对HTML文档的处理可以通过对DOM树的操作实现。DOM模型不仅描述了文档的结构,还定义了结点对象的行为,利用对象的方法和属性,可以方便地访问、修改、添加和删除DOM树的结点和内容。
当服务器把html网页发送给用户时,浏览器解析html代码,生成dom树,css则会生成css规则树。有了这两个树,浏览器就可以渲染生成整个页面。
文档(页面)中有一个根(root),这个根标签包含head标签与body标签,head标签中又包含meta与title标签,body标签中包含div、p、header、main等等标签,其中main下面又有article、aside等等标签,article标签中又有其它的标签等等,这就组成了树状结构图,也叫DOM树。这就形成了一个模型。
因此,步骤S1可以基于上述原理,将网页中的所有元素解析成DOM树。
以图2为例,dom树有一个根节点<html>标签,基于根节点,继续<meta>标签,<p>标签,<title>,<h1>等等,以及他们的文本内容。
S2:逐个对DOM树中的所有元素进行广度优先遍历;
广度优先遍历(Breadth First Search简称BFS):指的是从图的一个未遍历的节点出发,先遍历这个节点的相邻节点,再依次遍历每个相邻节点的相邻节点。
S4:判断当前元素是否是块级元素;
块级元素(block element),和其对应的是内联元素(inline element),都是html规范中的概念。大多数HTML元素被定义为块级元素或内联元素。块级元素在浏览器显示时,通常会以新行来开始(和结束)。
S5:将上一步骤查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
哈希记录表,又称(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。
作为具体的数据结构,所述哈希记录表采用双线程队列,所述双线程队列包括第一线程和第二线程,所述第一线程用于接收所述查找到的父元素,所述第二线程用于给所述接收的父元素在所述队列中分配存储位置,并执行所述权重更新;
S10:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
具体的,所述标题候选元素列表采用双线程环形栈实现;
所述双线程环形栈包括第三线程和第四线程,所述第三线程用于管理所述环形栈的空余存储位置;所述第四线程用于接收所述候选元素并将所述候选元素压入所述环形栈的空余存储位置。
可以看到,步骤S10采用栈,对应的是反向广度优先遍历的方式,因为栈是后进先出;步骤S5采用队列,对应的是广度优先遍历的方式,因为对垒是先进先出;
二者的配合,使得后续步骤S11和S12的执行更匹配。
在上述实施例中,所述第一预设阈值大于所述第二预设阈值,T1>T2;
在上述实施例中,所述步骤S11中所述自定义标题特征包括关键词特征、标题长度特征、领域特征、语法特征之中的一个或多个。
接下来参见图3,图3示出了本发明一种网页文章标题和正文的自动识别方法的部分程序伪代码流程示意图。
具体的,所述程序流程包括:
(1)开始;
(2)将网页中的所有元素解析成DOM树;
(3)逐个对DOM树中的所有元素进行广度优先遍历;
(4)针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则进入下一步,否则,返回上一步;
(5)判断当前元素是否是块级元素;如果是,则查找当前元素的父元素;否则,则查找当前元素的块级父元素的父元素;
(6)将上一步骤查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
(7)判断所述DOM树中的所有元素是否均遍历完毕,如果是,进入下一步;否则,返回(3);
(8)从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素,这里记作articleDetailNode;
(9)以articleDetailNode为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
(10)判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;如果是,则进入下一步,否则,返回上一步;
(11)将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
(12)从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素,记为articleTitleNode;
(13)将articleTitleNode与articleDetailNode结合就可以获得当前网页的完整文章内容。
最后参见图4。图4是本发明一个实施例的一种网页文章标题和正文的自动识别装置的单元组成示意图。
在图4中,示出一种网页文章标题和正文的自动识别装置,用于实现第一个方面所述的一种网页文章标题和正文的自动识别方法,所述装置包括多个计算机功能结构化执行单元,具体包括:
解析单元:将网页中的所有元素解析成DOM树;
遍历单元:逐个对DOM树中的所有元素进行广度优先遍历;
第一判断单元:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度小于第一预设阈值,并且当前元素不是<a>元素,则激活第二判断单元;
第二判断单元:判断当前元素是否是块级元素,如果是,则查找当前元素的父元素;否则,则查找当前元素的块级父元素的父元素;
权重更新单元:将第二判断单元查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
根元素选择单元:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
标题元素查找单元:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
第三判断单元:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
如果是,则激活候选元素添加单元;
候选元素添加单元:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
文章标题元素选择单元:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
所述自定义标题特征包括关键词特征、标题长度特征、领域特征、语法特征之中的一个或多个;
完整文章内容生成单元:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容。
虽然未示出附图,但是更多的实施例还包括一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现图1或图3所述的的一种网页文章标题和正文的自动识别方法的全部步骤。
可以看到,本发明基于网页元素文本密集度特征和广度优先遍历策略来识别网页中文章的标题和正文内容。
本发明提出了一种在不对网页内容进行预处理的情况下,可以方便提取网页文章信息的处理流程。
优点至少包括:
1.基于文本密集度特征和广度优先遍历算法实现对文章正文内容的提取;
2.基于反向广度优先遍历、标题长度和关键词实现对文章标题内容的提取;
3.具有普遍适用性,不需要针对每个网站进行专门维护,不会受到网页布局变化的影响;
4.不需要人工大量地标注数据和训练数据,不需要不断更新训练样本,过程实现快速并且结果准确;
5.不需要对网页内容进行预处理,无需人工干预。
综上,本发明的技术方案可以精确获取到文章的标题和正文,对下一步的数据分析和训练提供了良好的半结构化数据。
本发明的技术方案在招聘信息类文章领域进行测试工作的数据表明,,具不完全统计,该处理流程可以达到96%以上的识别准确率。
本发明的各个实施例中,已经示出和描述了本发明的实施例,但对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (5)
1.一种网页文章标题和正文的自动识别方法,其特征在于,所述方法包括如下步骤:
S1:将网页中的所有元素解析成DOM树;
S2:逐个对DOM树中的所有元素进行广度优先遍历;
S3:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则进入步骤S4;
否则,返回步骤S2;
S4:判断当前元素是否是块级元素,
如果是,则查找当前元素的父元素;
否则,则查找当前元素的块级父元素的父元素;
S5:将上一步骤查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;所述哈希记录表采用双线程队列;所述双线程队列包括第一线程和第二线程,所述第一线程用于接收所述查找到的父元素,所述第二线程用于给所述接收的父元素在所述队列中分配存储位置;
S6:判断所述DOM树中的所有元素是否均遍历完毕,如果是,进入步骤S7;否则,返回步骤S2;
S7:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
S8:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
S9:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
如果是,则进入步骤S10;
否则,返回步骤S8;
S10:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;所述标题候选元素列表采用双线程环形栈实现;所述双线程环形栈包括第三线程和第四线程,所述第三线程用于管理所述环形栈的空余存储位置;所述第四线程用于接收所述候选元素并将所述候选元素压入所述环形栈的空余存储位置;
S11:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
S12:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容。
2.如权利要求1所述的一种网页文章标题和正文的自动识别方法,其特征在于,
所述第一预设阈值大于所述第二预设阈值。
3.如权利要求1所述的一种网页文章标题和正文的自动识别方法,其特征在于,
所述步骤S11中所述自定义标题特征包括关键词特征、标题长度特征、领域特征、语法特征之中的一个或多个。
4.一种网页文章标题和正文的自动识别装置,其特征在于,所述装置包括:解析单元:将网页中的所有元素解析成DOM树;
遍历单元:逐个对DOM树中的所有元素进行广度优先遍历;
第一判断单元:针对每一个当前元素,检查当前元素包含的直接文本内容长度,并判断当前元素是否是<a>元素;
若当前元素包含的直接文本内容长度大于第一预设阈值,并且当前元素不是<a>元素,则激活第二判断单元;
第二判断单元:判断当前元素是否是块级元素,如果是,则查找当前元素的父元素;否则,则查找当前元素的块级父元素的父元素;
权重更新单元:将第二判断单元查找到的父元素添加到哈希记录表中,并将其对应的网页文章正文根元素的权重值加1;
根元素选择单元:从哈希记录表中选择网页正文根元素权重值最大的元素,作为文章正文内容的根元素;
标题元素查找单元:以文章正文内容的根元素为起始,对网页内容进行反向广度优先遍历,查找文章的当前标题元素;
第三判断单元:判断文章的当前标题元素对应的文本内容长度是否大于第二预设阈值;
如果是,则激活候选元素添加单元;
候选元素添加单元:将文章的当前标题元素作为文章标题的候选元素添加到标题候选元素列表中;
文章标题元素选择单元:从标题候选元素列表中根据自定义标题特征选择最优的元素作为文章标题元素;
所述自定义标题特征包括关键词特征、标题长度特征、领域特征、语法特征之中的一个或多个;
完整文章内容生成单元:结合网页文章正文根元素与文章标题元素,获得当前网页的完整文章内容;
所述哈希记录表采用双线程队列;所述标题候选元素列表采用双线程环形栈实现;
所述双线程队列包括第一线程和第二线程,所述第一线程用于接收所述查找到的父元素,所述第二线程用于给所述接收的父元素在所述队列中分配存储位置;
所述双线程环形栈包括第三线程和第四线程,所述第三线程用于管理所述环形栈的空余存储位置;所述第四线程用于接收所述候选元素并将所述候选元素压入所述环形栈的空余存储位置。
5.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至2任一项所述的一种网页文章标题和正文的自动识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310211865.1A CN116362223B (zh) | 2023-03-07 | 2023-03-07 | 一种网页文章标题和正文的自动识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310211865.1A CN116362223B (zh) | 2023-03-07 | 2023-03-07 | 一种网页文章标题和正文的自动识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116362223A CN116362223A (zh) | 2023-06-30 |
CN116362223B true CN116362223B (zh) | 2023-12-15 |
Family
ID=86940694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310211865.1A Active CN116362223B (zh) | 2023-03-07 | 2023-03-07 | 一种网页文章标题和正文的自动识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116362223B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268433A (zh) * | 2018-02-26 | 2018-07-10 | 杭州数梦工场科技有限公司 | 基于网页文章的标题抽取方法及装置 |
CN108563729A (zh) * | 2018-04-04 | 2018-09-21 | 福州大学 | 一种基于dom树的招标网站中标信息抽取方法 |
CN111428444A (zh) * | 2020-03-27 | 2020-07-17 | 新华智云科技有限公司 | 网页信息自动抽取方法 |
CN111581478A (zh) * | 2020-05-07 | 2020-08-25 | 成都信息工程大学 | 一种特定主体的跨网站通用新闻采集方法 |
CN115391711A (zh) * | 2022-10-28 | 2022-11-25 | 中新宽维传媒科技有限公司 | 网页正文信息提取方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150067476A1 (en) * | 2013-08-29 | 2015-03-05 | Microsoft Corporation | Title and body extraction from web page |
-
2023
- 2023-03-07 CN CN202310211865.1A patent/CN116362223B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268433A (zh) * | 2018-02-26 | 2018-07-10 | 杭州数梦工场科技有限公司 | 基于网页文章的标题抽取方法及装置 |
CN108563729A (zh) * | 2018-04-04 | 2018-09-21 | 福州大学 | 一种基于dom树的招标网站中标信息抽取方法 |
CN111428444A (zh) * | 2020-03-27 | 2020-07-17 | 新华智云科技有限公司 | 网页信息自动抽取方法 |
CN111581478A (zh) * | 2020-05-07 | 2020-08-25 | 成都信息工程大学 | 一种特定主体的跨网站通用新闻采集方法 |
CN115391711A (zh) * | 2022-10-28 | 2022-11-25 | 中新宽维传媒科技有限公司 | 网页正文信息提取方法、装置、设备及介质 |
Non-Patent Citations (1)
Title |
---|
基于改进内容分析算法的网页正文提取;陈婷婷 等;计算机工程与设计;第39卷(第4期);第1017-1021页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116362223A (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101522049B1 (ko) | 모호성 민감 자연 언어 처리 시스템에서의 동일 지시어 분석 | |
US8868556B2 (en) | Method and device for tagging a document | |
US20100049772A1 (en) | Extraction of anchor explanatory text by mining repeated patterns | |
US20090248707A1 (en) | Site-specific information-type detection methods and systems | |
US20100030752A1 (en) | System, methods and applications for structured document indexing | |
US20080301545A1 (en) | Method and system for the intelligent adaption of web content for mobile and handheld access | |
WO2014052609A2 (en) | Evaluating xml full text search | |
JP2008090403A (ja) | 文書検索装置、文書検索方法および文書検索プログラム | |
WO2022179128A1 (zh) | 基于爬虫的数据抓取方法、装置、计算机设备及存储介质 | |
CN109165373B (zh) | 一种数据处理方法及装置 | |
Cardoso et al. | An efficient language-independent method to extract content from news webpages | |
CN105808615A (zh) | 一种基于分词权重的文档索引生成方法和装置 | |
CN114443928B (zh) | 一种网络文本数据爬虫方法与系统 | |
CN114021042A (zh) | 网页内容的提取方法、装置、计算机设备和存储介质 | |
Jatowt et al. | Detecting age of page content | |
CN113419721B (zh) | 基于web的表达式编辑方法、装置、设备和存储介质 | |
Yu et al. | Web content information extraction based on DOM tree and statistical information | |
CN110297994A (zh) | 网页数据的采集方法、装置、计算机设备和存储介质 | |
CN114117242A (zh) | 数据查询方法和装置、计算机设备、存储介质 | |
Wang et al. | A novel web page text information extraction method | |
CN116362223B (zh) | 一种网页文章标题和正文的自动识别方法及装置 | |
Wanjari et al. | Automatic news extraction system for Indian online news papers | |
Liu et al. | An automated algorithm for extracting website skeleton | |
CN115269923A (zh) | 网页正文区域及正文信息处理方法、系统、设备、介质 | |
YesuRaju et al. | A language independent web data extraction using vision based page segmentation algorithm |
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 |