CN112269906B - 网页正文的自动抽取方法及装置 - Google Patents
网页正文的自动抽取方法及装置 Download PDFInfo
- Publication number
- CN112269906B CN112269906B CN202011098344.2A CN202011098344A CN112269906B CN 112269906 B CN112269906 B CN 112269906B CN 202011098344 A CN202011098344 A CN 202011098344A CN 112269906 B CN112269906 B CN 112269906B
- Authority
- CN
- China
- Prior art keywords
- webpage
- text
- elements
- data
- extracting
- 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
Images
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
-
- 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/906—Clustering; Classification
-
- 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/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请属于计算机技术领域,具体涉及一种网页正文的自动抽取方法及装置。其中的方法包括:通过关键字搜索得到目标网站,从目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;通过预先训练的卷积神经网络将网页分为文章网页和列表网页,并将网页数据解析为DOM树;对文章网页,比较同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;对列表网页,将深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。本申请中的方法可以准确识别网页页面中的正文内容,实现高效、快速的网页正文抽取,从而使系统具有较高的稳定性和鲁棒性。
Description
技术领域
本申请属于计算机技术领域,具体涉及一种网页正文的自动抽取方法及装置。
背景技术
针对性、行业性、精准性的数据抓取是个性化内容推荐、文本情感分析、自动化摘要技术、文本主题分类,自然语言处理、舆情分析等工作的基础。这些应用大多数建立在海量数据基础上,网页信息可以在一定程度上满足这些应用对基础数据的需求。对正文抽取就是要将网页的正文信息准确、高效地提取出来。现有方法采用DOM(Document ObjectMode,文档对象模型)树的方式进行内容提取,通过将HTML等网页页面构建DOM树,再结合定制的模板文件,从相关叶子节点中提取相关信息。
但是目前网页形式多样,大多数网页除了包含正文信息以外,还包含广告、导航等噪音,也有一些网页在单个网页中包含多个正文信息块,例如论坛、微博等。因此基于DOM树结合定制模板的网页抽取,必须对待抽取目标的页面结构非常了解,需要构建大量的解析模板来匹配相应位置的内容,人力成本高。网页页面的更新周期往往非常短,当页面结构发生变化时,需要修改装置的解析模板进行适配,大大降低了装置的稳定性和鲁棒性。
因此亟需一种不需要进行人工定制的技术来高效快速获取正文信息。
发明内容
(一)要解决的技术问题
鉴于现有技术的上述缺点、不足,本申请提供一种网页正文的自动抽取方法及装置。
(二)技术方案
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请实施例提供一种网页正文的自动抽取方法,该方法包括:
S10、根据接收的关键字在搜索引擎中搜索得到目标网站,从所述目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
S20、将所述网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;所述网页类型包括文章网页和列表网页;所述网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
S30、将网页数据解析为DOM树;当网页类型为文章网页时,采用第一抽取方法从所述网页数据中抽取网页正文,所述第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从所述网页数据中抽取网页正文,所述第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
可选地,在步骤S20之后、步骤S30之前还包括:
S21、通过数据清洗去除网页数据中的噪音数据,噪音数据包括客户端脚本数据、样式信息数据、头部信息数据中的一种或多种。
可选地,所述第一抽取方法还包括:
针对没有子元素的元素,通过比较DOM树中该元素和其同级别元素中文本的长度,从文本长度最长的元素抽取网页正文。
可选地,比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文包括:
选择同一父元素中文本长度最长的两个子元素,计算两个子元素的文本长度的差值;
如果差值大于全部子元素文本长度的标准差,从文本长度最长的子元素中抽取网页正文;
如果差值小于等于全部子元素文本长度的标准差,从父元素中抽取网页正文。
可选地,将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文,包括:
将深度级别、属性相同的多个元素作为一个衡量单元;
统计每个衡量单元中元素的个数和多个元素的文本总长度;
计算每个衡量单元的排序特征值,按照所述排序特征值对每个衡量单元进行排序;
从排序特征值最大的衡量单元开始,顺次选取预设数量的衡量单元;
针对选取的每个衡量单元,计算网页数据中该衡量单元的平均文本长度;
从平均文本长度最长的衡量单元对应的元素抽取网页正文。
可选地,所述排序特征值的计算方法为:
其中,R表示排序特征值,O表示衡量单元中元素的个数,L表示衡量单元中多个元素的文本总长度。
可选地,所述平均文本长度的计算方法为;
其中,L表示衡量单元中多个元素的文本总长度。
可选地,所述列表网页包括论坛、微博、贴吧、影评中的一种或多种。
第二方面,本申请实施例提供一种网页正文的自动抽取装置,该装置包括:
数据抓取模块,用于根据预设的关键字在搜索引擎中搜索得到目标网站,从所述目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
分类模块,用于将所述网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;所述网页类型包括文章网页和列表网页;所述网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
正文抽取模块,用于将网页数据解析为DMO树;当网页类型为文章网页时,采用第一抽取方法从网页数据中抽取网页正文,所述第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从网页数据中抽取网页正文,所述第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
(三)有益效果
本申请的有益效果是:本申请提出了一种网页正文的自动抽取方法及装置,其中的方法包括:根据预设的关键字搜索得到目标网站,从目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;将网页图像数据作为输入,通过预先训练的网页分类模型得到网页类型分类结果;将网页数据解析为DOM树;当网页类型为文章网页时,比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;当网页类型为列表网页时,将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。本申请中的方法无需针对每种网页页面设置抽取规则,即可以准确识别网页页面中的正文内容,实现高效、快速的网页页面正文抽取,从而使系统可扩张性强,具有较高的稳定性和鲁棒性。
附图说明
本申请借助于以下附图进行描述:
图1为本申请一个实施例中的网页正文的自动抽取方法流程示意图;
图2为本申请另一个实施例中的网页正文的自动抽取方法流程示意图;
图3为本申请另一个实施例中的分布式爬虫爬取数据流程示意图;
图4为本申请另一个实施例中的分布式爬虫主机和客户端架构示意图;
图5为本申请另一个实施例中的文章类型网页正文抽取算法流程示意图;
图6为本申请另一个实施例中的列表类型网页正文抽取算法流程示例图;
图7为本申请再一个实施例中的网页正文的自动抽取装置架构示意图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。可以理解的是,以下所描述的具体的实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合;为了便于描述,附图中仅示出了与发明相关的部分。
针对网络中不同来源、结构,不同复杂度和规范化程度的网页,本申请提出一种网页正文的自动抽取方法和装置,以准确地进行正文抽取。下面将参考附图并结合实施例来详细说明本申请。
本申请的执行主体可以是个性化内容推荐系统、文本情感分析系统、自动化摘要系统、文本主题分类系统、舆情分析系统。
实施例一
图1示出了本申请一个实施例中的网页正文的自动抽取方法流程示意图。如图所示,本实施例的网页正文的自动抽取方法包括:
S10、根据预设的关键字在搜索引擎中搜索得到目标网站,从目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
S20、将网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;网页类型包括文章网页和列表网页;网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
S30、将网页数据解析为DMO树;当网页类型为文章网页时,采用第一抽取方法从网页数据中抽取网页正文,第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从网页数据中抽取网页正文,第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
本实施例中的方法是一种具有通用性的网页正文抽取方法,该方法无需针对每种网页页面设置抽取规则,即可以准确识别网页页面中的正文内容,实现高效、快速的网页页面正文抽取,从而使系统可扩张性强,具有较高的稳定性和鲁棒性。
在一些实施例中,在步骤S20之后、步骤S30之前还包括:
S21、通过数据清洗去除网页数据中的噪音数据,噪音数据包括客户端脚本数据、样式信息数据、头部信息数据中的一种或多种。
在一些实施例中,第一抽取方法还包括:
针对没有子元素的元素,通过比较DOM树中该元素和其同级别元素中文本的长度,从文本长度最长的元素抽取网页正文。
在一些实施例中,比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文包括:
选择同一父元素中文本长度最长的两个子元素,计算两个子元素的文本长度的差值;
如果差值大于全部子元素文本长度的标准差,从文本长度最长的子元素中抽取网页正文;
如果差值小于等于全部子元素文本长度的标准差,从父元素中抽取网页正文。
在一些实施例中,将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文,包括:
将深度级别、属性相同的多个元素作为一个衡量单元;
统计每个衡量单元中元素的个数和多个元素的文本总长度;
计算每个衡量单元的排序特征值,按照排序特征值对每个衡量单元进行排序;
从排序特征值最大的衡量单元开始,顺次选取预设数量的衡量单元;
针对选取的每个衡量单元,计算网页数据中该衡量单元的平均文本长度;
从平均文本长度最长的衡量单元对应的元素抽取网页正文。
在一些实施例中,排序特征值的计算方法为:
其中,R表示排序特征值,O表示衡量单元中元素的个数,L表示衡量单元中多个元素的文本总长度。
在一些实施例中,平均文本长度的计算方法为;
其中,L表示衡量单元中多个元素的文本总长度。
在一些实施例中,列表网页包括论坛、微博中的一种或多种。
实施例二
本实施例中实施本实施例方法的是舆情监控系统,舆情监控系统按照一定的规则使用本实施例的方法将互联网上繁杂的信息当中关注的舆情信息抓取出来,并通过分析过滤等方式加工处理最终呈现出与需求相匹配的舆情信息。本实施例根据网页类型的不同,采用基于分布式爬虫系统的自动化网页正文抽取技术。用分布式爬虫进行关键字搜索,在搜索引擎中将网页数据爬取下来,然后对网页利用卷积神经网络进行分类,判断属于文章网页或者列表网页,对于文章网页,使用基于相同深度文本长度标准差算法进行正文抽取,对于列表网页,使用基于相同节点深度的同属性值元素排序算法进行抽取,最后将抽取结果进行保存。
请参阅图2,图2为本申请另一个实施例中的网页正文的自动抽取方法流程示意图,以下对该方法包括的各个步骤进行具体说明。
步骤1、通过分布式爬虫爬取数据,并对网页截图。
互联网中的各类网页大致可分为文章类型和列表类型的网页,如新闻网页等是文章类型的网页,而评论、微博等属于类表类型的网页。
在对网页页面正文抽取时,首先读取网页页面的内容。其中,网页页面的内容可以是本地、HDFS分布式文件系统的网页文件或通过URL链接的某个远端网页页面。本实施例中,网页页面是互联网中通过URL链接的的远端页面。
本实施例基于分布式组件scrapy_redis实现分布式的网页爬取,在数据爬取时首先输入关键字(key-word),根据关键字在搜索引擎搜索,得到目标网页的统一资源定位符(url),经过去重得到url队列,通过分布式爬虫系统的客户端爬取网页数据;并对网页使用Phantonjs进行截图,将网页和截图结果进行数据预处理。
图3为本申请另一个实施例中的分布式爬虫爬取数据流程示意图,如图3所示,爬虫通过引擎将任务转发给调度器,调度器将请求保存在Redis数据库中,在Redis数据库中进行指纹去重,将去重后的结果保存在Redis队列中,队列将url请求传递给调度器,调度器将url请求发送给下载器,下载器从互联网上将数据下载下来,通过引擎将响应的数据传递给爬虫,爬虫解析其中需要的数据,和新的url链接,并将新的url链接传递给调度器,继续执行,直到所有的url被请求完毕;爬虫将解析的数据通过管道发给Redis数据库进行保存。其中,爬虫中间件用来处理爬虫的输入和输出,下载中间件用来处理调度器经引擎发送的请求以及下载器返回给爬虫的网页数据。作为分布式爬虫系统,Redis会将队列中的url请求分发给子服务器,调度子服务器进行数据抓取,并返回数据。
图4为本申请另一个实施例中的分布式爬虫主机和客户端架构示意图,如图4所示,在服务器端,Redis数据库负责对返回的统一资源定位符(Uniform Resource Locator,URL)进行去重、保存,并分发到爬虫客户端;爬虫客户端负责爬取数据,并将数据保存在服务器端Redis数据库中。
步骤2、对爬取的数据进行包括数据清洗在内的预处理。
在数据预处理时,先进行数据清洗,将网页中一些噪音进行去除,清洗后的数据才能进行有效的正文抽取。表1为本实施例中进行数据清洗时删除的数据及其正则表达式,如表1所示,删除元素对应的删除的数据包括:
<head></head>,表示HTML页面的头部信息;
<script></script>,表示脚本信息;
<style></style>,表示样式信息;
<!---->,表示注释信息。
表1
删除元素 | 正则表达式 |
<head>…</head> | <head[^>]*?>[\s\S]*?</head> |
<script>…</script> | <script[^>]*?>[\s\S]*?</script> |
<style>…</style> | <style[^>]*?>[\s\S]*?<style> |
<!--…--> | <!—[^-]*--> |
步骤3、正文抽取。
将图片进行分类,分为文章类型和列表类型,然后利用不同的正文抽取方法得到正文,然后进行保存。以下针对正文抽取的详细步骤进行说明。
步骤31、通过卷积神经网络进行网页分类,分为文章网页或列表网页。
卷积神经网络(CNN)的训练使用TensorFlow Slim。通过微调slim工具包中的权重文件训练了网页类型分类。通过对网页转换来的图像进行网页类型分类,训练没有从头开始,而是微调在Image Net数据集上预先训练好的模型。预先训练好的模型中已经确定了与任务无关的参数,只需要根据任务调试相应的参数就可以了。
在模型微调的过程中,严格遵守了常见的做法,即冻结了所有内部层的权重,只对预测文章网页和列表网页这两个类的最终逻辑层进行了再训练。
步骤32、网页正文提取。
首先将HTML网页解析为DOM树;然后,针对文章网页,采用基于相同深度文本长度标准差的正文抽取算法。针对列表网页,采用基于相同节点深度的同属性值元素排序的抽取算法。
将网页解析为DOM树后,网页中的文本段落按照网页源代码中段落标签的层次,分别对应到DOM树的叶子节点。对于列表网页,以论坛为例,要提取的网页正文是评论人的评论内容,列表类型网页的正文通常具有相同深度,并且类名元素相同的标签,其文本长度大致相等。在DOM树中,处于相同的节点深度,并且属性值相同。对于列表中除文本内容外的其他内容,例如用户昵称、发表日期等也在在DOM树中处于相同的节点深度,并且属性值相同。
文章类型网页的正文通常包含在一个网页元素中,另一种情况是网页正文信息分块存在于多个连续的元素中,每个包含正文信息的元素块的长度大致相等。本实施例提供的网页正文的自动抽取方法,针对第一种情况,通过比较网页内容存在的元素和其同级别元素中文本的长度选出具有正文信息的元素;针对第二种情况,将文本长度大致相等的元素的父元素作为网页正文信息抽取的节点。
图5为本申请另一个实施例中的文章类型网页正文抽取算法流程示意图,如图5所示,针对需要抽取正文信息的文章网页,从它的第一个元素开始,检查其子元素数量,如果这个元素没有任何子元素,则用E标记;如果这个元素存在子元素,则递归遍历其子元素。首先,当一个元素的子元素数量大于或者等于2时,计算所有子元素文本长度及其标准差。其次,由于标准差的数值显示了子元素之间文本长度的差异。当标准差很小时,说明子元素的文本长度大致相等,那么主要内容在子元素的分布就比较均匀,网页的主要内容可能位于该子元素的父节点中,正文抽取时,应抽取子元素父节点的全部内容。因此,选择两个具有最长文本长度的子元素,比较其与标准差之间的差值,如果差值小于等于标准差,则正文抽取时,抽取子元素父节点的全部内容。
针对子元素为0时输出的所有元素E的文本,当标准差很大时,说明子元素的文本长度差异很大,网页的主要内容应该只在文本量大的元素中。因此,正文内容抽取时只抽取文本最长的节点的文本内容。
基于相同节点深度的同属性值元素排序的列表网页抽取算法,该算法通过对所有具有相同属性值和深度级别的元素进行排序来识别主要内容,并且只抽取1种包含主要内容的元素。
在列表网页中,网页的正文内容通常存在于深度级别相同的元素中,通常它们还拥有相同的属性值,将深度级别相同并且属性值也相同的元素作为一个衡量单元,而网页正文信息所在的元素在网页中总是文本长度最长的,因此通过对每一种衡量单元所拥有的文本长度进行比较,就可以确定含义网页正文信息的衡量单元。因为在网页中,属性的种类通常较多,如果对每一个属性值都统计出现的深度、次数和文本长度,将需要较大的存储空间开销。因此,本实施例中将统计的衡量单元限制在一个确定数量内,以提高系统的运行速度,节省存储空间。
以下对本实施例中的列表类型网页正文抽取算法的流程进行具体说明。
图6为本申请另一个实施例中的列表类型网页正文抽取算法流程示例图,如图6所示,该算法包括:
步骤S301、获取HTML文档,确定拟选取的ID个数n;
步骤S302、将深度级别、属性值相同的元素作为一个衡量单元,与一个标识ID关联;
步骤S303、统计每个ID中元素出现的次数O和文本总长度L;
步骤S304、通过公式(1),计算每个衡量单元的排序特征值R,按照排序特征值R对每个衡量单元关联的ID进行排序;
其中,R表示排序特征值,O表示衡量单元的出现次数,L表示相应衡量单元的文本总长度。
步骤S305、从排序特征值最大的衡量单元开始,取前n个ID,通过公式(2)计算每个ID的平均文本长度ALT;
其中,L表示ID对应的衡量单元的文本长度。
步骤S306、从平均文本长度最大的ID对应的所有元素中抽取文本内容,得到网页正文。
本实施例的方法通用性更好,可实现高效、通用的网页页面正文抽取;并且本实施例将统计的衡量单元限制在一个确定数量内,提高了系统的运行速度,节省了存储空间。
实施例三
本申请第二方面提出了一种网页正文的自动抽取装置。图7为本申请一个实施例中的网页正文的自动抽取装置架构示意图。如图所示,本实施例中的网页正文的自动抽取装置100,可以包括:
数据抓取模块101,用于根据预设的关键字在搜索引擎中搜索得到目标网站,从目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
分类模块102,用于将网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;网页类型包括文章网页和列表网页;网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
正文抽取模块103,用于将网页数据解析为DOM树;当网页类型为文章网页时,采用第一抽取方法从网页数据中抽取网页正文,第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从网页数据中抽取网页正文,第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
上述网页正文的自动抽取装置可执行本申请实施例所提供的网页正文的自动抽取方法,具备执行方法相应的功能模块和有益效果。至于其中各个功能模块所执行的处理方法,例如数据抓取模块101、分类模块102、正文抽取模块103,可参照上述方法实施例中的描述,此处不再进行赘述。
上述的数据抓取模块101、分类模块102、正文抽取模块103,通常可以设置在终端设备或服务器中。
用来实现本申请实施例的终端设备或服务器的计算机系统可以包括中央处理单元(CPU),其可以根据存储在只读存储器(ROM)中的程序或者从存储部分加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有系统操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
以下部件连接至I/O接口:包括键盘、鼠标等的输入部分;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。
应当注意的是,在说明书中,不应将位于括号之间的任何附图标记理解成对说明书的限制。词语“包含”不排除存在未列在说明书中的部件或步骤。位于部件之前的词语“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。
此外,需要说明的是,在本说明书的描述中,术语“一个实施例”、“一些实施例”、“实施例”、“示例”、“具体示例”或“一些示例”等的描述,是指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例作出另外的变更和修改。所以,说明书应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明说明书及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。
Claims (8)
1.一种网页正文的自动抽取方法,其特征在于,该方法包括:
S10、根据接收的关键字在搜索引擎中搜索得到目标网站,从所述目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
S20、将所述网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;所述网页类型包括文章网页和列表网页;所述网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
S30、将网页数据解析为DOM树;当网页类型为文章网页时,采用第一抽取方法从所述网页数据中抽取网页正文,所述第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文,包括:
选择同一父元素中文本长度最长的两个子元素,计算两个子元素的文本长度的差值;
如果差值大于全部子元素文本长度的标准差,从文本长度最长的子元素中抽取网页正文;
如果差值小于等于全部子元素文本长度的标准差,从父元素中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从所述网页数据中抽取网页正文,所述第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
2.根据权利要求1所述的网页正文的自动抽取方法,其特征在于,在步骤S20之后、步骤S30之前还包括:
S21、通过数据清洗去除网页数据中的噪音数据,噪音数据包括客户端脚本数据、样式信息数据、头部信息数据中的一种或多种。
3.根据权利要求2所述的网页正文的自动抽取方法,其特征在于,所述第一抽取方法还包括:
针对没有子元素的元素,通过比较DOM树中该元素和其同级别元素中文本的长度,从文本长度最长的元素抽取网页正文。
4.根据权利要求2所述的网页正文的自动抽取方法,其特征在于,将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文,包括:
将深度级别、属性相同的多个元素作为一个衡量单元;
统计每个衡量单元中元素的个数和多个元素的文本总长度;
计算每个衡量单元的排序特征值,按照所述排序特征值对每个衡量单元进行排序;
从排序特征值最大的衡量单元开始,顺次选取预设数量的衡量单元;
针对选取的每个衡量单元,计算网页数据中该衡量单元的平均文本长度;
从平均文本长度最长的衡量单元对应的元素抽取网页正文。
7.根据权利要求1-6中任一权利要求所述的网页正文的自动抽取方法,其特征在于,所述列表网页包括论坛、微博、贴吧、影评中的一种或多种。
8.一种网页正文的自动抽取装置,其特征在于,该装置包括:
数据抓取模块,用于根据预设的关键字在搜索引擎中搜索得到目标网站,从所述目标网站抓取网页数据,并对抓取的网页进行截图,得到网页图像数据;
分类模块,用于将所述网页图像数据作为输入,通过预先训练的网页分类模型识别网页类型,输出网页类型分类结果;所述网页类型包括文章网页和列表网页;所述网页分类模型基于卷积神经网络构建,是以从互联网上抓取的网页图像数据为训练样本、将网页类型作为样本标签训练得到的网络模型;
正文抽取模块,用于将网页数据解析为DOM树;当网页类型为文章网页时,采用第一抽取方法从网页数据中抽取网页正文,所述第一抽取方法包括:比较DOM树中同一父元素中两个子元素文本长度之差与全部子元素文本长度的标准差,基于比较结果从网页数据中抽取网页正文,包括:
选择同一父元素中文本长度最长的两个子元素,计算两个子元素的文本长度的差值;
如果差值大于全部子元素文本长度的标准差,从文本长度最长的子元素中抽取网页正文;
如果差值小于等于全部子元素文本长度的标准差,从父元素中抽取网页正文;
当网页类型为列表网页时,采用第二抽取方法从网页数据中抽取网页正文,所述第二抽取方法包括:将DOM树中深度级别、属性相同的元素作为一个衡量单元,从平均文本长度最长的衡量单元对应的元素抽取网页正文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011098344.2A CN112269906B (zh) | 2020-10-14 | 2020-10-14 | 网页正文的自动抽取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011098344.2A CN112269906B (zh) | 2020-10-14 | 2020-10-14 | 网页正文的自动抽取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112269906A CN112269906A (zh) | 2021-01-26 |
CN112269906B true CN112269906B (zh) | 2023-04-14 |
Family
ID=74338089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011098344.2A Active CN112269906B (zh) | 2020-10-14 | 2020-10-14 | 网页正文的自动抽取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112269906B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486228B (zh) * | 2021-07-02 | 2022-05-10 | 燕山大学 | 基于md5三叉树和改进birch算法的互联网论文数据自动抽取算法 |
CN116629209B (zh) * | 2023-07-25 | 2023-11-03 | 苏州浪潮智能科技有限公司 | 一种数据处理的方法、装置、系统、设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117289A (zh) * | 2009-12-30 | 2011-07-06 | 北京大学 | 一种从网页中抽取评论内容的方法和装置 |
CN103064827A (zh) * | 2013-01-16 | 2013-04-24 | 盘古文化传播有限公司 | 一种网页内容抽取的方法及装置 |
WO2015165324A1 (zh) * | 2014-04-30 | 2015-11-05 | 广州市动景计算机科技有限公司 | 网页正文的提取方法、装置及网页广告处理方法、装置 |
WO2017080090A1 (zh) * | 2015-11-14 | 2017-05-18 | 孙燕群 | 一种网页正文提取比对方法 |
CN110110198A (zh) * | 2017-12-28 | 2019-08-09 | 中移(苏州)软件技术有限公司 | 一种网页信息抽取方法及装置 |
-
2020
- 2020-10-14 CN CN202011098344.2A patent/CN112269906B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117289A (zh) * | 2009-12-30 | 2011-07-06 | 北京大学 | 一种从网页中抽取评论内容的方法和装置 |
CN103064827A (zh) * | 2013-01-16 | 2013-04-24 | 盘古文化传播有限公司 | 一种网页内容抽取的方法及装置 |
WO2015165324A1 (zh) * | 2014-04-30 | 2015-11-05 | 广州市动景计算机科技有限公司 | 网页正文的提取方法、装置及网页广告处理方法、装置 |
WO2017080090A1 (zh) * | 2015-11-14 | 2017-05-18 | 孙燕群 | 一种网页正文提取比对方法 |
CN110110198A (zh) * | 2017-12-28 | 2019-08-09 | 中移(苏州)软件技术有限公司 | 一种网页信息抽取方法及装置 |
Non-Patent Citations (2)
Title |
---|
"Signature word extracting research based on web metadata";Ning Pang等;《2012 International Symposium on Instrumentation & Measurement, Sensor Network and Automation (IMSNA)》;20121008;第1-4页 * |
"基于正文特征及网页结构的主题网页信息抽取";段晓丽等;《计算机工程与应用》;20121231;第151-156页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112269906A (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108073568B (zh) | 关键词提取方法和装置 | |
KR101721338B1 (ko) | 검색 엔진 및 그의 구현 방법 | |
US7386438B1 (en) | Identifying language attributes through probabilistic analysis | |
US8290927B2 (en) | Method and apparatus for rating user generated content in search results | |
US8630972B2 (en) | Providing context for web articles | |
CN107862022B (zh) | 文化资源推荐系统 | |
EP2438539B1 (en) | Co-selected image classification | |
JP5721818B2 (ja) | 検索におけるモデル情報群の使用 | |
US10437894B2 (en) | Method and system for app search engine leveraging user reviews | |
WO2017097231A1 (zh) | 话题处理方法及装置 | |
CN100478962C (zh) | 搜索网页的方法、装置及系统和建立索引数据库的装置 | |
CN107506472B (zh) | 一种学生浏览网页分类方法 | |
CN112269906B (zh) | 网页正文的自动抽取方法及装置 | |
JP4875911B2 (ja) | コンテンツ特定方法及び装置 | |
CN110175264A (zh) | 视频用户画像的构建方法、服务器及计算机可读存储介质 | |
CN112579729A (zh) | 文档质量评价模型的训练方法、装置、电子设备和介质 | |
CN112818200A (zh) | 基于静态网站的数据爬取及事件分析方法及系统 | |
CN108280081B (zh) | 生成网页的方法和装置 | |
Li | [Retracted] Internet Tourism Resource Retrieval Using PageRank Search Ranking Algorithm | |
WO2019227705A1 (zh) | 图片录入方法、服务器及计算机存储介质 | |
CN116226494B (zh) | 一种用于信息搜索的爬虫系统及方法 | |
CN112685618A (zh) | 用户特征识别方法、装置、计算设备及计算机存储介质 | |
CN115640439A (zh) | 一种网络舆情监控的方法、系统及存储介质 | |
CN108319622B (zh) | 一种媒体内容推荐方法及装置 | |
CN111597386A (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 |