CN108334508A - 网页信息的提取方法和装置 - Google Patents
网页信息的提取方法和装置 Download PDFInfo
- Publication number
- CN108334508A CN108334508A CN201710039114.0A CN201710039114A CN108334508A CN 108334508 A CN108334508 A CN 108334508A CN 201710039114 A CN201710039114 A CN 201710039114A CN 108334508 A CN108334508 A CN 108334508A
- Authority
- CN
- China
- Prior art keywords
- source code
- text
- content
- node
- web page
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种网页信息的提取方法和装置。其中,该方法包括:获取用于记录网页内容的第一源码;基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码;根据第二源码定位网页正文的起始位置和结束位置;从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。本发明解决了提取出的网页正文包含干扰信息的技术问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种网页信息的提取方法和装置。
背景技术
现有技术中,提供了一种分析平台,该分析平台可以根据用户的需求向用户展示互联网信息,具体地,可以根据用户需求,通过网络爬虫从源站爬取网页内容,在网络爬虫爬取到html源码后,该直接采集到的html源码中除了包含正文内容之外,还包括:html标签、样式、js代码等信息,如果直接将爬取到的html源码呈现给用户,会表现的的极为不友好。例如,由于该html中包含的html标签、样式、js代码等信息会对用户的阅读带来很大的干扰;又如,用户在阅读过程中,有时不仅仅需要正文,还需要看到正文中的图片,图片不仅可以提升阅读感,并且图片中有时也会包含非常有价值的信息;再如,一些高级用户,比如算法工程师,需要用正文进行算法分析,如果正文中干扰信息过多,会影响算法分析的结果。
为了解决上述问题,现有技术中提供了一种解决方案,在该解决方案中,利用大部分网页,文章所在的区域文字都比较集中的特点,从html源码中提取出集中的这部分内容,得到正文内容。但是该方案仅能从html源码中提取集中的内容,该提取的内容中仍然包括噪音信息,其中,该噪音信息表示网页中非正文信息,例如,广告信息等。
针对上述提取出的网页正文包含干扰信息的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种网页信息的提取方法和装置,以至少解决提取出的网页正文包含干扰信息的技术问题。
根据本发明实施例的一个方面,提供了一种网页信息的提取方法,包括:获取用于记录网页内容的第一源码;基于预设条件,去除所述第一源码中的干扰信息,得到包括网页正文的第二源码;根据所述第二源码定位网页正文的起始位置和结束位置;从所述第二源码中提取所述起始位置和结束位置之间的、且包含图片的网页正文。
根据本发明实施例的另一方面,还提供了一种网页信息的提取装置,包括:获取单元,用于获取用于记录网页内容的第一源码;去除单元,用于基于预设条件,去除所述第一源码中的干扰信息,得到包括网页正文的第二源码;定位单元,用于根据所述第二源码定位网页正文的起始位置和结束位置;提取单元,用于从所述第二源码中提取所述起始位置和结束位置之间的、且包含图片的网页正文。
在本发明实施例中,在获取到用于记录网页内容的第一源码之后,基于预设条件,去除该第一源码中的干扰信息,得到第二源码,其中,该第二源码中包括网页正文源码;可以在得到第二源码后,根据第二源码定位网页正文的起始位置和结束位置,并从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。通过上述实施例,可以将网页中的干扰信息去除,得到第二源码,并根据该第二源码定位网页正文的起始位置和结束位置,利用该起始位置和结束位置去除网页正文的头尾的干扰信息,并从该起始位置和结束位置之间提取不带干扰信息、且带图片的网页正文,解决了现有技术中提取出的网页正文包含干扰信息的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种应用网页信息的提取方法的网络环境示意图;
图2是根据本发明实施例的一种可选的网页信息的提取方法的分布曲线的示意图;
图3是根据本发明实施例的一种可选的网页信息的提取方法的流程图一;
图4是根据本发明实施例的一种可选的网页信息的提取方法提取出正文中干扰信息的示意图;
图5是根据本发明实施例的一种可选的网页信息的提取方法的流程图二;
图6是根据本发明实施例的一种可选的网页信息的提取方法的流程图三;
图7是根据本发明实施例的一种可选的网页信息的提取方法的流程图四;
图8是根据本发明实施例的一种可选的网页信息的提取方法的流程图五;
图9是根据本发明实施例的一种可选的网页信息的提取方法的流程图六;
图10是根据本发明实施例的一种可选的网页信息的提取装置的示意图;
图11是根据本发明实施例的一种用于实现网页信息的提取方法的计算机终端的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
Html,超文本标记语言,标准通用标记语言下的一个应用,超文本指页面内可以包含图片、链接、音乐、以及程序等非文字元素。超文本标记语言的结构包括头部分、和主体部分,其中头部分提供关于网页的信息,主体部分用于提供网页的具体内容。
源码,就是指编写的最原始程序的代码,任何一个网站页面的源码就是一堆按一定格式书写的文字和符号。
html源码,即为用于记录超文本标记语言的原始程序的代码。
html标签,超文本标记语言的标记标签。
样式,是指用有意义的名称保存的字符格式和段落格式的集合。
js代码,即Javascript,Javascript是一种脚本语言。
网络爬虫(又被称为网页蜘蛛、或网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。
Dom树是文档对象模型,也可以将dom树理解为网页的API,在dom树中将网页中的各个元素看作一个对象,从而使网页中的元素可以被计算机语言获取或编辑。
xpath,为XML路径语言,是用于确定XML文档中某部分位置的语言,包含标准函数库。
正则表达式为用于检索、替换符合某个规则的文本。
实施例1
根据本发明实施例,还提供了一种网页信息的提取方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。一种可选实施例中,图1示出了计算机终端(如用于获取网页信息的服务器)执行该网页信息的提取方法的网络环境的示意图。如图1所示,第一终端11可以通过网络连接或电子连接到第二终端13,该第二终端可以为用户获取网页信息的服务器或服务器集群。其中,网络连接可以是局域网连接、广域网连接、因特网连接,或其他类型的数据网络连接。
可选地,第一终端上可以安装客户端(如浏览器客户端或者信息分析客户端),用户可以通过客户端发送分析请求至服务器,其中,该分析请求中可以携带分析对象和关键词信息,该关键词信息可以为关键词组合或者单个关键词,该分析请求中还可以记录指定的采集源站类型。
其中,采集源站类型可以为服务器采集信息的源站入口的类型。例如,采集源站类型可以包括:新闻类型、社交平台类型(例如,论坛、贴吧、微博、以及微信等)、政府类型以及多媒体信息类型等。
第二终端在接收到分析请求之后,利用网络爬虫从与分析请求指定的采集源站类型对应的网站中抓取网页源码,在抓取到网页源码之后,对网页源码进行预处理,得到初始网页正文。
可选地,获取抓取到的网页html源码,对html源码进行编码、去除html标签、以及去除特殊字符等信息之后,得到处理后的信息,根据处理后的信息中的行块字数确定分布函数,并绘制该分布函数对应的曲线,其中,将行块文本字数作为曲线的Y轴,每个行块对象第一行的行号作为X轴,基于该曲线确定骤升点和骤降点,如图2所示的曲线中,329行是骤升点,370行为骤降点。进一步地,以确定出的骤升点作为正文开始处,以确定出的骤降点作为正文结束处,提取正文开始处和正文结束处之间的正文。
如图3所示,对网页源码进行预处理可以通过如下步骤来实现。
步骤S301:预处理页面源码。
可选地,将爬取到的网页源码进行统一转码,例如,将网页源码转码为utf-8,去除转码后的数据中的html标签和特殊字符;在去除标签和字符的过程中,如果连续出现6个及以上<a>标签,则去掉<a>标签及内容,得到的文本按换行符分隔。在执行上述操作之后,得到处理后的文本信息。
其中,<a>标签用于指定超链接目标的URL,URL即为网络资源地址。
步骤S302:基于处理后的文本信息构建行块对象。
可选地,针对处理后的文本信息,取一定行数的内容作为一个行块,如取三行内容作为一个行块,一个行块作为一个行块对象,将处理后的文本信息构建为多个行块对象。
进一步地,一定行数的参数是预先设置的,如上述的一定行数为三行,也可以将一定行数设置为五行,本申请对此不做具体限定。
步骤S303:基于行块对象构建分布曲线。
统计行块对象的文本字数,并确定每个对象第一行的行号,将行块对象的文本字数作为曲线的Y轴,每个对象第一行的行号作为X轴,生成与所有行块对象对应的分布曲线。
步骤S304:从分布曲线中查找骤升点和骤降点。
可选地,从分布曲线中查找骤升点和骤降点可以通过下述至少之一实现:
若当前点对应的文本字数与上一点的文本字数的差值大于预定阈值,可以将该当前点确定为骤升点,若当前点对应的文本字数与下一点的文本字数的差值大于预定阈值,可以将该当前点确定为骤降点。
若当前点对应的文本字数与上一点的文本字数的比值大于预定比值,可以将该当前点确定为骤升点,若当前点对应的文本字数与下一点的文本字数的比值大于预定比值,可以将该当前点确定为骤降点。
其中,骤升点、骤降点、上一点以及下一点对应的都是x轴上的点,也即每个点对应一个行号。
步骤S305:提取网页正文。
在找到骤升点和骤降点之后,将骤升点确定为正文开始处,将骤降点确定为正文结束处,提取正文开始处和正文结束处之间的正文,也即,提取骤升点对应的行与骤降点对应的行之间的正文。
图4示出了按照图3所示的实施例提取到的正文信息,如图4所示,该正文信息中存在干扰信息41。
为了进一步去除干扰信息,在以确定出的骤升点作为正文开始处,以确定出的骤降点作为正文结束处,提取出正文开始处和正文结束处之间的正文之后,可以通过图5所示的实施例,进一步去除正文中的干扰信息,如图5所示,该实施例可以通过如下步骤实现:
步骤S502:获取用于记录网页内容的第一源码。
服务器在提取出网页内容开始处和结束处之间的内容之后,获取用于记录该提取内容的第一源码,可选地,从网络爬虫爬取到的网页源码中查找与该提取出的内容对应的第一源码。
步骤S504:基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码。
从爬取到的网页源码中提取到的内容中包含大量的干扰信息,该干扰信息会影响用户的阅读,为了去除该提取到的网页内容中的干扰信息,可以基于预设条件,去除网页内容中的干扰信息,得到包括网页正文的第二源码。
可选地,该预设条件为用于确定干扰信息或者非干扰信息的条件,例如,预设条件为用于确定干扰信息的条件,则可以利用预设条件检测出第一源码中的干扰信息,去除第一源码中的干扰信息,得到包括网页正文的第二源码。
在预设条件为用于确定干扰信息的条件的情况下,利用预设条件检测出第一源码中的干扰信息可以包括:检测第一源码中符合预设条件的信息,将第一源码中符合预设条件的信息确定为干扰信息。在检测出该干扰信息之后,去除第一源码中的干扰信息,得到不包含该干扰信息的第二源码。
在预设条件为用于确定非干扰信息的条件的情况下,利用预设条件检测出第一源码中的干扰信息可以包括:检测第一源码中符合预设条件的信息,将第一源码中符合预设条件的信息确定为非干扰信息,从第一源码中提取该非干扰信息,得到第二源码。
另一种可选的,利用预设条件在第一源码中查找不属于干扰信息的源码,在查找到第一源码中不属于干扰信息的源码之后,将该查找到的源码从第一源码中提取出来,得到第二源码,该第二源码包括网页的正文的源码。
又一种可选的,基于预设条件,去除第一源码中的干扰信息,得到第二源码可以通过图6所示的实施例实现,如图6所示,该实施例可以包括如下步骤:
步骤S601:根据第一源码构建文档对象模型。
其中,文档对象模型即Dom树,也可以将dom树理解为网页的API,在dom树中将网页中的各个元素看作一个对象,从而使得网页中的元素可以被计算机语言获取或编辑。Dom树以层级结构组织的节点或信息片段的集合,这个层级结构允许开发人员在树中导航寻找特定信息。每个节点都拥有包含着关于节点某些信息的属性,这些属性包括:节点名称、节点值以及节点类型,还可以包括:节点的文本值、节点的父节点、节点的字节点、节点的属性节点。
在获取到第一源码之后,利用该第一源码构建dom树,在构建的dom树中按照层级记录网页中各个节点或信息片段。
步骤S603:基于预设条件,确定文档对象模型中的正文节点。
可选地,利用预设条件遍历dom树中的节点,获取符合预设条件的节点,将该符合预设条件的节点确定为正文节点,在该实施例中,将包含正文内容的节点称之为正文节点。
在一个可选的实施例中,基于预设条件,确定文档对象模型中的正文节点包括:遍历文档对象模型中的节点;将文档对象模型中符合预设条件的节点确定为正文节点。
可选地,遍历操作可以从第一层节点开始,检测第一层节点是否符合预设条件,若不符合,则检测该第一层节点的子节点是否符合预设条件,若符合,则将该第一层节点的子节点确定为正文节点;若不符合,则获取该子节点的子节点,检测该子节点的子节点是否符合预设条件,以此类推,直至检测出符合预设条件的正文节点。
具体地,遍历第一层所有dom节点,如果有节点(父节点)包含了预定比例的正文,则选择该节点(父节点),再判断该节点是否有子节点,如果有子节点,则重复流程:遍历该层所有dom节点,如果有节点(子节点)包含了预定比例的正文,则选择该节点,再判断该节点是否有子节点(也即,子节点的子节点);如果该节点(即,子节点)没有子节点或者子节点(即子节点的子节点)包括的内容达不到阈值,则取该节点(即,子节点)作为正文节点。
需要说明的是,在dom树中查找到的正文节点可以为一个,也可以为多个,本申请对此不做限定。
通过上述遍历过程,可以将不符合预设条件的节点(即包含干扰信息的节点)过滤掉,最终确定的节点为不包含与预设条件对应的干扰信息的节点,通过执行上述操作,可以去除掉部分干扰信息,得到包含干扰信息较少的正文节点。
在一个可选的实施例中,预设条件为:节点所包含的正文内容的比例达到预定比例、节点不包含子节点或者节点包含的子节点所包含的正文内容的比例未达到预定比例。
需要说明的是,这里的节点所包含的正文内容的比例达到预定比例中的节点指的是父节点;节点不包含子节点,指的是:该父节点的子节点不包含子节点(也即,子节点的子节点);节点包含的子节点所包含的正文内容的比例未达到预定比例指的是:父节点的子节点所包含的所有子节点(即子节点的子节点)所包含的正文内容的比例均未达到预定比例。
可选地,在执行遍历操作的过程中,若父节点包含预定比例的正文、且该父节点不包含子节点,则确定该父节点为正文节点。
另一种可选地,在执行遍历操作的过程中,若父节点包含预定比例的正文、且所述父节点包含子节点,但是该父节点的所有子节点均不包含预定比例的正文,则确定该父节点为正文节点。
在该实例中,在检测出父节点包含预定比例的正文之后,检测该父节点的下一层子节点,若当前检测的子节点不包含预定比例的正文,则判断当前检测的子节点是否为本层最后一个子节点,若是,则获取该当前检测子节点的上层节点,作为正文节点。
可选地,节点所包含的正文内容的比例可以通过标点符号的数量来确定,例如,统计第一源码中标点符号的第一数量,在检测到当前节点时,统计当前节点所包含的内容中标点符号的第二数量,将第二数量与第一数量的比值确定为节点所包含的正文内容的比例。其中,标点符号为书面上用于标明句读和语气的符号。
另一种可选地,节点所包含的正文内容的比例可以通过文字数量来确定,例如,统计第一源码中文字的第三数量,在检测到当前节点时,统计当前节点所包含的内容中文字的第四数量,将第四数量与第三数量的比值确定为节点所包含的正文内容的比例。
确定节点所包含的正文内容的比例还可以通过其他方式实现,本申请对确定节点所包含的正文内容的比例的实现方式不做具体限定。
在一个可选的实施例中,预定比例可以为大于50%且小于100%的数值,优选地,预定比例为60%。由于在源码中还可能包含干扰信息,在对其进行处理的过程中,若节点包含的正文内容的比例为100%,则该节点中还可能包含其他干扰信息,若节点包含的正文内容的比例小于50%,则该节点中包含的内容可能全部为干扰信息,因此,将节点包含的正文内容的比例限定在50%和100%之间,可以更加准确地获取正文节点。
步骤S605:从第一源码中提取正文节点的源码,得到包括网页正文的第二源码。
在确定出正文节点之后,从第一源码中提取该正文节点的源码,得到第二源码。
在基于上述步骤从第一源码中提取出第二源码之后,可以执行下述操作以根据第二源码定位正文的起始和结束位置,并去除正文的头尾干扰信息,以得到没有干扰信息的正文。
步骤S506:根据第二源码定位网页正文的起始位置和结束位置。
可选地,根据第二源码定位出网页正文的第一行和最后一行,以定位出网页正文的起始位置和结束位置,并从第二源码中提取正文的起始位置和结束位置之间的内容,得到网页正文。
在一个可选的实施例中,根据第二源码定位网页正文的起始位置和结束位置可以通过如图7所示的实施例实现,如图7所示,该实施例可以包括如下步骤:
步骤S702:去除第二源码中的超文本标记语言标签,得到预处理内容。
在第二源码中记录有超文本标记语言的标签,即html标签,利用该html标签标记超文本标记语言,在该实施例中通过去除第二源码中的超文本标记语言标签,得到预处理内容,该预处理内容中包括头尾的干扰信息内容和网页正文。
步骤S704:利用预定符号集合,定位预处理内容中网页正文的起始位置和结束位置。
利用预先定义的符合集合,定位预处理内容中网页正文的起始位置和结束位置。
可选地,按照预定顺序检测预处理内容中最开始出现预定符号集合中符号的位置,将该位置确定为第一位置,并继续检测预处理最后出现预定符合集合中符号的位置,将该位置确定为第二位置,其中,若预定顺序为顺序,则第一位置为起始位置,第二位置为结束位置,若预定顺序为倒序,则第一位置为结束位置,第二位置为起始位置。
为了提高处理速度,可以顺序检测预处理内容中最开始出现预定符号集合中符号的起始位置,并倒序检测预处理内容中最开始出现预定符号集合中符号的结束位置。在该示例中,分别按照顺序和倒序的顺序检测起始位置和结束位置,无需对全量的网页正文进行检测,可以减少检测的工作量,提高处理速度。
进一步地,在预处理内容按行记录信息的情况下,利用预定符号集合,定位预处理内容中网页正文的起始位置包括:从预处理内容的第一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的起始位置。
在预处理内容按行记录信息的情况下,利用预定符号集合,定位预处理内容中网页正文的结束位置包括:从预处理内容的最后一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的结束位置。
在上述实施例中,按行记录预处理内容,也即,该预处理内容中包括多行信息,可以通过逐行扫描预处理内容,以定位网页正文的起始位置和结束位置。
具体地,从预处理内容的第一行开始,逐行扫描预处理内容;若扫描到预定符号集合中的符号,则当前扫描的行被确定为预处理内容中网页正文的起始位置。从预处理内容的最后一行开始,逐行扫描预处理内容;若扫描到预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的结束位置。
需要说明的是,该实施例中定位起始位置和结束位置的操作不分先后,也即,可以在利用预定符号集合,定位预处理内容中网页正文的起始位置之后,利用预定符号集合,定位预处理内容中网页正文的结束位置;也可以在利用预定符号集合,定位预处理内容中网页正文的结束位置之后,利用预定符号集合,定位预处理内容中网页正文的起始位置。
进一步地,预定符号集合中可以包括标点符号。
步骤S508:从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。可以通过从预处理内容中提取起始位置和结束位置之间的内容来实现。
在确定正文内容的起始位置和结束位置后,从该起始位置和结束位置之间提取包含干扰信息的网页正文。
下面结合图8对本申请的一个可选实施例进行详细描述。如图8所示,在获取到第二源码之后,可以对第二源码进行两个分支的处理。其中,第一个分支包括步骤S801和步骤S802,第二个分支包括步骤S803至步骤S806,需要说明的是,该第一个分支与第二个分支的执行没有先后顺序,仅需保证步骤S802在步骤S806之前执行完成即可。
步骤S801:从第二源码中提取图片信息。
可选地,利用XPATH和正则表达式从第二源码中提取图片信息,该图片信息可以为图片地址,例如,可以利用XPATH和正则表达式从第二源码中提取包括预定图片字符的地址,该预定图片字符可以包括:bmp、jpg、gif等字符。
其中,xpath为XML路径语言,是用于确定XML文档中某部分位置的语言,xpath包含标准函数库。正则表达式为用于检索、替换符合某个规则的文本。
进一步地,按照预定顺序(从前至后,或从后至前)从第二源码中提取图片地址。
步骤S802:将提取出的图片信息依序存储在数组中。
可选地,按照提取顺序,将提取出的图片地址存储在数组中,该数组可以为临时数组。
在一个可选实施例中,第二分支可以包括去除第二源码中的超文本标记语言标签,得到预处理内容,定位预处理内容中网页正文的起始位置和结束位置,并提取起始位置和结束位置之间的内容,上述操作可以通过如下步骤实现:
步骤S803:将第二源码中的图片内容和图片标签替换为预定字符,得到第三源码。
这里的图片内容和图片标签包括图片网络资源地址以及用于标识网络资源地址的标签。
可选地,预定字符为预先设置的字符,该预定字符不同于标点符号,该预定字符用于记录图片的位置。
步骤S804:去除第三源码中的超文本标记语言标签,并在执行去除操作的过程中,在超文本标记语言标签的尾部追加换行符,得到预处理内容。
在将图片内容和图片标签替换为预定字符之后,去除第三源码中的所有超文本标记语言标签,在去除超文本标记语言标签的过程中,在超文本标记语言标签的尾部追加换行符,得到按行记录的预处理内容。
通过该实施例,可以通过去除标签获取预处理内容,因为图片内容也使用标签标记,在执行该步骤之前,可以将图片信息(如图片内容和图片标签)替换为预定字符,从而可以避免在执行去除操作时,将图片的信息也去除掉,通过上述操作可以准确记录图片在网页正文中的位置。
步骤S704:利用预定符号集合,定位预处理内容中网页正文的起始位置和结束位置。
该步骤的实现方式与图7所示实施例中的实现方式一致,在此不再赘述。
步骤S805:从预处理内容中提取起始位置和结束位置之间的内容。
在定位起始位置和结束位置之后,从预处理内容中提取起始位置和结束为止之间的全部内容。
步骤S806:获取预先得到的数组,其中,数组中记录有从第二源码中提取的图片信息。
获取通过上述步骤S802获取的数组,以获取按序存储的第二源码中的图片信息。
步骤S807:将提取到的内容中的预定字符替换为对应的图片信息,得到网页正文。
将步骤S803中替换的预定字符,再重新替换为对应的图片信息(如图片地址),得到没有包含干扰信息、图片位置正确的网页正文。
通过上述实施例,可以减少头尾干扰信息对正文质量的干扰,并且在该实施例中,在提取正文的同时,可以附带提取图片,并且可以保留图片在正文中的位置信息,从而达到带图片的正文信息提取,还可以有效的减少头尾干扰信息的干扰的效果。
下面结合图9对本申请的一个可选的实施例进行详细描述,如图9所示的实施例中示出了从获取第一源码之后去除干扰信息和图片定位的操作,如图9所示,该实施例可以通过如下步骤实现:
步骤S901:构建第一源码的dom树。其中,第一源码中记录有网页正文。
步骤S902:遍历本层dom节点。
在遍历dom节点的过程中,通过如下步骤确定正文节点:
步骤S903:检测当前节点所包含的内容是否包含预定比例的正文。
其中,预定比例可以为60%。
其中,若检测出当前节点所包含的内容包含预定比例的正文,则执行步骤S904;若检测出当前节点所包含的正文内容未达到预定比例,则执行步骤S905。
步骤S904:选择该节点作为疑似正文节点。
步骤S906:检测该疑似正文节点是否有子节点。
若检测出疑似正文节点有子节点,则执行步骤S907;若检测出疑似正文节点没有有子节点,则执行步骤S908。
步骤S907:获取该疑似正文节点的所有子节点,并返回执行步骤S902。
步骤S908:获取该节点的源码。其中,该节点为正文节点,该节点的源码即为上述的第二源码。
步骤S905:检测当前节点是否为本层最后一个节点。
若否,则返回执行步骤S902;若是,则执行步骤S909。
步骤S909:获取该节点的上层节点。
在上述步骤中,首先根据记录有正文的html源码构建dom树,遍历第一层所有dom节点,如果有节点包含了正文(这里可以设置一个预定比例,比如包含了60%的正文内容,这样可以减少干扰信息的干扰),则选择该节点,再判断该节点是否有子节点,如果有子节点,则重复流程:遍历该层所有dom节点,如果有节点包含了正文,则选择该节点,再判断该节点是否有子节点。如果该节点没有子节点或者子节点包括的内容达不到阈值,则取该节点作为正文节点。
在得到正文节点的第二源码之后,进入两个分支处理。其中,第一个分支包括:
步骤S910:构建第二源码的dom树。
步骤S911:提取dom树中的图片地址。
在该分支中,用该第二源码再次构建dom树,然后通过xpath或者正则表达式提取图片地址,在正文中至上而下提取,并按提取顺序把图片地址放在一个临时数组里。
第二个分支包括:
步骤S912:用占位符替换第二源码中的图片标签和图片内容,得到第三源码。其中,占位符即为上述的预定字符。
步骤S913:去除第三源码中的html标签并追加换行。
步骤S914:得到按行记录的预处理内容。
步骤S915:定位预处理内容中的正文首尾。
步骤S916:提取定位的首尾之间的初始正文。
步骤S917:用图片地址替换初始正文中的占位符,得到带图片的网页正文。
在上述实施例中,先用占位符替换图片标签及其内容(如用占位符“[[+_+]]”,替换img标签及其内容),然后去除所有html标签,并在这些html标签尾部追加换行符,得到的正文按换行分隔,放在列表中,然后从前至后扫描列表,如果第一次包含预定符合集合中的符号(这里的符号可以为引号里面包含的符号“,。,.!!??;;”,再加上占位符,如'[[+_+]]'当做一个单独符号),则该行为正文头部第一行,从后至前再次扫描列表,如果第一次包含符号,则该行为正文尾部最后一行,定位首尾位置后,提取之间的文本得到最终正文。最后,把临时数组里面的图片地址,按顺序替换最终正文中的占位符,得到带图片的网页正文。
通过上述实施例,先根据通用算法得到了比较粗糙的正文内容,再根据dom树的包含特性,采用最小包含原则,去除了干扰信息,在此基础上还引入正文阈值,即节点不是全部包含正文,而是部分包含的原则,因为干扰信息占全部正文内容的比重往往非常低,阈值制定使得干扰信息无法干扰到提取结果。
进一步地,在得到最小包含树后,引入占位符替换图片的思想,使得图片信息(图片位置、图片地址)可以简单、有效的得到保存。
需要说明的是,上述实施例中替换图片所涉及到的占位符“[[+_+]]”,可以用其他占位符替换,故占位符的改变,还是属于本发明范畴。
上述实施例中涉及最小包含规则中“节点包含了60%的正文”,其中60%的预定比例可以上下波动,故该阈值的改变,还是属于本发明范畴。
上述实施例中,在定位首尾的时候,用到的符号“,。,.!!??;;”,可以随需要增加或减少,本申请对此不做具体限定。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述网页信息的提取方法的处理装置,如图10所示,该装置包括:
获取单元1001,用于获取用于记录网页内容的第一源码;
去除单元1003,用于基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码;
定位单元1005,用于根据第二源码定位网页正文的起始位置和结束位置;
提取单元1007,用于从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。
通过上述实施例,在获取到用于记录网页内容的第一源码之后,基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码,并根据第二源码定位网页正文的起始位置和结束位置,并从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。通过上述实施例,可以获取没有干扰(如正文的头尾干扰信息)、且包含图片的网页正文,解决了现有技术中提取出的网页正文包含干扰信息的问题。
根据本发明的上述实施例,定位单元包括:去除模块,用于去除第二源码中的超文本标记语言标签,得到预处理内容;定位子单元,用于利用预定符号集合,定位预处理内容中网页正文的起始位置和结束位置。
可选地,去除模块包括:替换子模块,用于将第二源码中的图片内容和图片标签替换为预定字符,得到第三源码;第一处理子模块,用于去除第三源码中的超文本标记语言标签,并在执行去除操作的过程中,在超文本标记语言标签的尾部追加换行符,得到预处理内容。
在一个可选的实施例,提取单元可以包括:第一提取模块,用于从预处理内容中提取起始位置和结束位置之间的内容;第一获取模块,用于获取预先得到的数组,其中,数组中记录有从第二源码中提取的图片信息;替换模块,用于将提取到的内容中的预定字符替换为对应的图片信息,得到网页正文。
根据本发明的上述实施例,提取单元还用于在得到第二源码之后,从第二源码中提取图片信息。装置包括:存储单元,用于将提取出的图片信息依序存储在数组中。
在一个可选的实施例中,定位子单元可以包括:第一扫描模块,用于在预处理内容按行记录信息的情况下,从预处理内容的第一行开始,逐行扫描预处理内容;第一定位模块,用于若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的起始位置;第二扫描模块,用于从预处理内容的最后一行开始,逐行扫描预处理内容;第二定位模块,用于若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的结束位置。
可选地,去除单元可以包括:构建模块,用于根据第一源码构建文档对象模型;第二确定模块,用于基于预设条件,确定文档对象模型中的正文节点;第二提取模块,用于从第一源码中提取正文节点的源码,得到第二源码。
进一步地,第二确定模块可以包括:遍历子模块,用于遍历文档对象模型中的节点;确定子模块,用于将文档对象模型中符合预设条件的节点确定为正文节点。
在上述实施例中的预设条件可以为:节点所包含的正文内容的比例达到预定比例、节点不包含子节点或者节点包含的子节点所包含的正文内容的比例未达到预定比例。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在上述实施例所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
实施例3
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
图11示出了一种用于实现网页信息的提取方法的计算机终端(或移动设备)的硬件结构。如图11所示,计算机终端可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图11所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端还可包括比图11中所示更多或者更少的组件,或者具有与图11所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的网页信息的提取方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的网页信息的提取方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
可选地,在本实施例中,上述计算机终端可以位于图1所示的计算机网络的多个网络设备中的至少一个网络设备。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:
获取用于记录网页内容的第一源码;基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码;根据第二源码定位网页正文的起始位置和结束位置;从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以根据第二源码定位网页正文的起始位置和结束位置:去除第二源码中的超文本标记语言标签,得到预处理内容;利用预定符号集合,定位预处理内容中网页正文的起始位置和结束位置。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以去除第二源码中的超文本标记语言标签,得到预处理内容:将第二源码中的图片内容和图片标签替换为预定字符,得到第三源码;去除第三源码中的超文本标记语言标签,并在执行去除操作的过程中,在超文本标记语言标签的尾部追加换行符,得到预处理内容。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文:从预处理内容中提取起始位置和结束位置之间的内容;获取预先得到的数组,其中,数组中记录有从第二源码中提取的图片信息;将提取到的内容中的预定字符替换为对应的图片信息,得到网页正文。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,在得到第二源码之后,从第二源码中提取图片信息;将提取出的图片信息依序存储在数组中。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以利用预定符号集合,定位预处理内容中网页正文的起始位置,在预处理内容按行记录信息的情况下,从预处理内容的第一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的起始位置;
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以利用预定符号集合,定位预处理内容中网页正文的结束位置:在预处理内容按行记录信息的情况下,从预处理内容的最后一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的结束位置。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码:根据第一源码构建文档对象模型;基于预设条件,确定文档对象模型中的正文节点;从第一源码中提取正文节点的源码,得到第二源码。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤,以基于预设条件,确定文档对象模型中的正文节点:遍历文档对象模型中的节点;将文档对象模型中符合预设条件的节点确定为正文节点。
可选地,预设条件包括:节点所包含的正文内容的比例达到预定比例、节点不包含子节点或者节点包含的子节点所包含的正文内容的比例未达到预定比例。
本领域普通技术人员可以理解,图11所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图11其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例所提供的网页信息的提取方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
获取用于记录网页内容的第一源码;去除第一源码中的干扰信息,得到包括网页正文的第二源码;根据第二源码定位网页正文的起始位置和结束位置;从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文。
存储介质被设置为存储用于执行以下步骤的程序代码,以根据第二源码定位网页正文的起始位置和结束位置:去除第二源码中的超文本标记语言标签,得到预处理内容;利用预定符号集合,定位预处理内容中网页正文的起始位置和结束位置。
存储介质被设置为存储用于执行以下步骤的程序代码,以去除第二源码中的超文本标记语言标签,得到预处理内容:将第二源码中的图片内容和图片标签替换为预定字符,得到第三源码;去除第三源码中的超文本标记语言标签,并在执行去除操作的过程中,在超文本标记语言标签的尾部追加换行符,得到预处理内容。
存储介质被设置为存储用于执行以下步骤的程序代码,以从第二源码中提取起始位置和结束位置之间的、且包含图片的网页正文:从预处理内容中提取起始位置和结束位置之间的内容;获取预先得到的数组,其中,数组中记录有从第二源码中提取的图片信息;将提取到的内容中的预定字符替换为对应的图片信息,得到网页正文。
存储介质被设置为存储用于执行以下步骤的程序代码,在得到第二源码之后,从第二源码中提取图片信息;将提取出的图片信息依序存储在数组中。
存储介质被设置为存储用于执行以下步骤的程序代码,以利用预定符号集合,定位预处理内容中网页正文的起始位置,在预处理内容按行记录信息的情况下,从预处理内容的第一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的起始位置;
存储介质被设置为存储用于执行以下步骤的程序代码,以利用预定符号集合,定位预处理内容中网页正文的结束位置:在预处理内容按行记录信息的情况下,从预处理内容的最后一行开始,逐行扫描预处理内容;若当前扫描的行中包含预定符号集合中的符号,则将当前扫描的行定位为预处理内容中网页正文的结束位置。
存储介质被设置为存储用于执行以下步骤的程序代码,以基于预设条件,去除第一源码中的干扰信息,得到包括网页正文的第二源码:根据第一源码构建文档对象模型;基于预设条件,确定文档对象模型中的正文节点;从第一源码中提取正文节点的源码,得到第二源码。
存储介质被设置为存储用于执行以下步骤的程序代码,以基于预设条件,确定文档对象模型中的正文节点:遍历文档对象模型中的节点;将文档对象模型中符合预设条件的节点确定为正文节点。
可选地,预设条件包括:节点所包含的正文内容的比例达到预定比例、节点不包含子节点或者节点包含的子节点所包含的正文内容的比例未达到预定比例。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种网页信息的提取方法,其特征在于,包括:
获取用于记录网页内容的第一源码;
基于预设条件,去除所述第一源码中的干扰信息,得到包括网页正文的第二源码;
根据所述第二源码定位网页正文的起始位置和结束位置;
从所述第二源码中提取所述起始位置和结束位置之间的、且包含图片的网页正文。
2.根据权利要求1所述的方法,其特征在于,根据所述第二源码定位网页正文的起始位置和结束位置包括:
去除所述第二源码中的超文本标记语言标签,得到预处理内容;
利用预定符号集合,定位所述预处理内容中网页正文的起始位置和结束位置。
3.根据权利要求2所述的方法,其特征在于,去除所述第二源码中的超文本标记语言标签,得到预处理内容包括:
将所述第二源码中的图片内容和图片标签替换为预定字符,得到第三源码;
去除所述第三源码中的超文本标记语言标签,并在执行去除操作的过程中,在超文本标记语言标签的尾部追加换行符,得到所述预处理内容。
4.根据权利要求3所述的方法,其特征在于,从所述第二源码中提取所述起始位置和结束位置之间的、且包含图片的网页正文包括:
从所述预处理内容中提取所述起始位置和结束位置之间的内容;
获取预先得到的数组,其中,所述数组中记录有从所述第二源码中提取的图片信息;
将提取到的内容中的预定字符替换为对应的图片信息,得到所述网页正文。
5.根据权利要求3所述的方法,其特征在于,在得到第二源码之后,所述方法还包括:
从所述第二源码中提取图片信息;
将提取出的图片信息依序存储在数组中。
6.根据权利要求2所述的方法,其特征在于,在所述预处理内容按行记录信息的情况下,
利用预定符号集合,定位所述预处理内容中网页正文的起始位置包括:从所述预处理内容的第一行开始,逐行扫描所述预处理内容;若当前扫描的行中包含所述预定符号集合中的符号,则将所述当前扫描的行定位为所述预处理内容中网页正文的起始位置;
利用预定符号集合,定位所述预处理内容中网页正文的结束位置包括:从所述预处理内容的最后一行开始,逐行扫描所述预处理内容;若当前扫描的行中包含所述预定符号集合中的符号,则将所述当前扫描的行定位为所述预处理内容中网页正文的结束位置。
7.根据权利要求1所述的方法,其特征在于,基于预设条件,去除所述第一源码中的干扰信息,得到包括网页正文的第二源码包括:
根据所述第一源码构建文档对象模型;
基于所述预设条件,确定所述文档对象模型中的正文节点;
从所述第一源码中提取所述正文节点的源码,得到所述第二源码。
8.根据权利要求7所述的方法,其特征在于,基于所述预设条件,确定所述文档对象模型中的正文节点包括:
遍历所述文档对象模型中的节点;
将所述文档对象模型中符合所述预设条件的节点确定为所述正文节点。
9.根据权利要求7或8所述的方法,其特征在于,所述预设条件包括:节点所包含的正文内容的比例达到预定比例、所述节点不包含子节点或者所述节点包含的子节点所包含的正文内容的比例未达到所述预定比例。
10.一种网页信息的提取装置,其特征在于,包括:
获取单元,用于获取用于记录网页内容的第一源码;
去除单元,用于基于预设条件,去除所述第一源码中的干扰信息,得到包括网页正文的第二源码;
定位单元,用于根据所述第二源码定位网页正文的起始位置和结束位置;
提取单元,用于从所述第二源码中提取所述起始位置和结束位置之间的、且包含图片的网页正文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710039114.0A CN108334508B (zh) | 2017-01-19 | 2017-01-19 | 网页信息的提取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710039114.0A CN108334508B (zh) | 2017-01-19 | 2017-01-19 | 网页信息的提取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108334508A true CN108334508A (zh) | 2018-07-27 |
CN108334508B CN108334508B (zh) | 2021-11-16 |
Family
ID=62921784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710039114.0A Active CN108334508B (zh) | 2017-01-19 | 2017-01-19 | 网页信息的提取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108334508B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271145A (zh) * | 2018-09-03 | 2019-01-25 | 科大国创软件股份有限公司 | 基于pythonQT及智能算法的快速规则定制方法 |
CN110110252A (zh) * | 2019-05-17 | 2019-08-09 | 北京市博汇科技股份有限公司 | 一种视听节目识别方法、装置及存储介质 |
CN111563387A (zh) * | 2019-02-12 | 2020-08-21 | 阿里巴巴集团控股有限公司 | 语句相似度确定方法及装置、语句翻译方法及装置 |
CN111898034A (zh) * | 2020-09-29 | 2020-11-06 | 江西汉辰信息技术股份有限公司 | 新闻内容推送方法、装置、存储介质及计算机设备 |
CN111966881A (zh) * | 2020-10-14 | 2020-11-20 | 成都数联铭品科技有限公司 | 一种网页信息提取方法及系统、电子设备 |
CN111966901A (zh) * | 2020-08-17 | 2020-11-20 | 山东亿云信息技术有限公司 | 政策类网页正文提取方法、系统、设备及存储介质 |
CN114528811A (zh) * | 2022-01-21 | 2022-05-24 | 北京麦克斯泰科技有限公司 | 文章内容抽取方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100281046A1 (en) * | 2009-04-30 | 2010-11-04 | DVtoDP Corp. | Method and web server of processing a dynamic picture for searching purpose |
CN103810251A (zh) * | 2014-01-21 | 2014-05-21 | 南京财经大学 | 一种文本提取方法及装置 |
CN106055667A (zh) * | 2016-06-06 | 2016-10-26 | 北京林业大学 | 一种基于文本‑标签密度的网页核心内容提取方法 |
-
2017
- 2017-01-19 CN CN201710039114.0A patent/CN108334508B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100281046A1 (en) * | 2009-04-30 | 2010-11-04 | DVtoDP Corp. | Method and web server of processing a dynamic picture for searching purpose |
CN103810251A (zh) * | 2014-01-21 | 2014-05-21 | 南京财经大学 | 一种文本提取方法及装置 |
CN106055667A (zh) * | 2016-06-06 | 2016-10-26 | 北京林业大学 | 一种基于文本‑标签密度的网页核心内容提取方法 |
Non-Patent Citations (1)
Title |
---|
谢方立等: "基于节点类型标注的网页主题信息抽取方法", 《计算机科学》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271145A (zh) * | 2018-09-03 | 2019-01-25 | 科大国创软件股份有限公司 | 基于pythonQT及智能算法的快速规则定制方法 |
CN109271145B (zh) * | 2018-09-03 | 2021-12-14 | 科大国创软件股份有限公司 | 基于pythonQT及智能算法的快速规则定制方法 |
CN111563387A (zh) * | 2019-02-12 | 2020-08-21 | 阿里巴巴集团控股有限公司 | 语句相似度确定方法及装置、语句翻译方法及装置 |
CN111563387B (zh) * | 2019-02-12 | 2023-05-02 | 阿里巴巴集团控股有限公司 | 语句相似度确定方法及装置、语句翻译方法及装置 |
CN110110252A (zh) * | 2019-05-17 | 2019-08-09 | 北京市博汇科技股份有限公司 | 一种视听节目识别方法、装置及存储介质 |
CN110110252B (zh) * | 2019-05-17 | 2021-01-15 | 北京市博汇科技股份有限公司 | 一种视听节目识别方法、装置及存储介质 |
CN111966901A (zh) * | 2020-08-17 | 2020-11-20 | 山东亿云信息技术有限公司 | 政策类网页正文提取方法、系统、设备及存储介质 |
CN111966901B (zh) * | 2020-08-17 | 2021-04-20 | 山东亿云信息技术有限公司 | 政策类网页正文提取方法、系统、设备及存储介质 |
CN111898034A (zh) * | 2020-09-29 | 2020-11-06 | 江西汉辰信息技术股份有限公司 | 新闻内容推送方法、装置、存储介质及计算机设备 |
CN111966881A (zh) * | 2020-10-14 | 2020-11-20 | 成都数联铭品科技有限公司 | 一种网页信息提取方法及系统、电子设备 |
CN114528811A (zh) * | 2022-01-21 | 2022-05-24 | 北京麦克斯泰科技有限公司 | 文章内容抽取方法、装置、设备及存储介质 |
CN114528811B (zh) * | 2022-01-21 | 2022-09-02 | 北京麦克斯泰科技有限公司 | 文章内容抽取方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108334508B (zh) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108334508A (zh) | 网页信息的提取方法和装置 | |
US7730409B2 (en) | Method and system for visualizing weblog social network communities | |
CN107729475B (zh) | 网页元素采集方法、装置、终端与计算机可读存储介质 | |
CN109726274B (zh) | 问题生成方法、装置及存储介质 | |
CN104239298B (zh) | 文本信息推荐方法、服务器、浏览器及系统 | |
CN108595494A (zh) | 答复信息的获取方法及装置 | |
CN109492177B (zh) | 一种基于网页语义结构的网页分块方法 | |
CN103544176A (zh) | 用于生成多个页面所对应的页面结构模板的方法和设备 | |
CN109033282B (zh) | 一种基于抽取模板的网页正文抽取方法及装置 | |
CN106610988A (zh) | 网页推荐方法以及推荐装置 | |
CN109308337A (zh) | 页面分享方法和装置 | |
CN107958078A (zh) | 信息生成方法和装置 | |
CN103838862B (zh) | 一种视频搜索的方法、装置及终端 | |
CN109815381A (zh) | 用户画像构建方法、系统、计算机设备及存储介质 | |
CN103678511A (zh) | 根据可视化模板进行网页内容抽取的方法及装置 | |
CN104462590A (zh) | 信息搜索方法及装置 | |
CN103678509A (zh) | 生成网页模板的方法及装置 | |
CN103491116A (zh) | 正文相关的结构化数据的处理方法及装置 | |
CN108319628A (zh) | 一种用户兴趣确定方法及装置 | |
CN105493084A (zh) | 社交摘录扩充 | |
CN111563226B (zh) | 自定义布局的在线表单页面数据存储方法和装置 | |
CN110490237A (zh) | 数据处理方法、装置、存储介质及电子设备 | |
CN104572874B (zh) | 一种网页信息的抽取方法及装置 | |
CN104778232B (zh) | 一种基于长查询的搜索结果的优化方法和装置 | |
CN105183730B (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 |