本发明专利技术涉及一种基于关键词导向的主题网络爬虫的数据搜集方法。该方法的步骤包括:1)在网络爬虫的配置文件中设立主题信息的配置选项,包括主题关键词列表、各关键词相应的权重以及主题相关度分值阈值;2)对待爬取网页的内容进行解析,得到对应于所述主题关键词列表中各关键词的关键词出现次数,并根据各关键词的权重及其出现次数计算主题相关度分值;3)通过将当前网页链接的主题相关度分值与所设定的阈值进行比较,控制网络爬虫的链接扩散走向并实现数据搜集。本发明专利技术通过设定与主题相关的关键词,动态调整爬取走向,既保证了爬取的广度,又维持了爬取扩散的方向不脱离指定主题,能够更有效地收集最大范围的主题内容。
【技术实现步骤摘要】
本专利技术属于计算机网络
,涉及一种信息搜集技术,特别涉及一种基于主题网络爬虫的数据搜集方法。
技术介绍
大数据时代已经到来,海量、高速和多变是大数据公认的基本特点。国际数据公司(IDC)的研究结果表明,2013年全球数据量4.4ZB,2020年的时候,全球的数据总量将达到40ZB。目前全球数据的增长速度在每年40%左右,若是以此计算,那么2014年全球数据总量在6.2ZB左右,2015年全球数据总量在8.6ZB左右,2016年将在12ZB左右。与此同时,当今互联网技术日新月异,互联网的规模也在不断扩大,网络信息总量呈指数增长。互联网是一个海量、巨大的信息库,包含着各种各样的数据和资源。用户想要在如此巨量、复杂多变的数据中及时找到自己所需的信息变得越来越困难。网络爬虫是一种按照一定规则,自动抓取网络信息的程序或脚本,通常用于不同领域的信息检索或资源获取需求。传统爬虫从一个或若干初始网页的URL开始,获得初始网页内的URL,并在抓取页面过程中,不断从当前页面上抽取新的URL放入抓取队列,并重复上述过程,直到满足一定的结束条件为止。网络爬虫一般分为分为广度优先策略和深度优先策略。广度优先策略是指在抓取过程中,在完成当前层次的搜索后,才进行下一层的搜索,目的是为覆盖尽可能多的网页。深度优先策略是指从起始网页开始,选择一个URL进入,分析该网页中的URL,选择一个再进入,如此下去,直到处理完一条路线之后再处理下一条路线。网络爬虫根据应用目的,通常为通用网路爬虫和主题网络爬虫两种。通用网络爬虫一般用于搜索引擎服务,目的是快速、全面地抓取互联网网页内容。它主要基于互联网的链接关系进行扩散,对网页内容只是简单的抓取与存储,很少进行分析,很难进行导向性爬取控制。主题网络爬虫主要用于某种主题的数据获取,目的是快速、全面地抓取某一领域或某种特征的网页信息或资源数据。如在垂直搜索领域,需要实时获取指定领域网站的动态信息;在恶意软件检测领域,需要收集和探测最大范围的软件集合供自动化系统分析检测。主题网络爬虫的基本实现思路是按照预定的主题,分析链接或已经下载的网页内容,来预测下一个要爬行的链接,尽可能多的抓取与主题相关的网页。它主要基于信息检索、数据挖掘和概率统计等理论,关键技术包括网页去噪、分词、特征提取、主题分析等等。由于爬取主题具有多样性,因此网页的相关性分析与导向性控制方法也依赖于主题的特征,很难做到通用。为了保证主题数据抓取的全面性、高效性,也需要一种灵活可控的主题网路爬取方法,完成相应应用场景。
技术实现思路
有鉴于此,本专利技术的目的是提供一种有效快捷的网页内容主题分析方法,通过调节对新爬取网页链接的评分以控制网络爬虫的走向,高效抓取更准确的主题数据。本专利技术采用的技术方案如下:一种基于主题网络爬虫的数据搜集方法,其步骤包括:1)在网络爬虫的配置文件中设立主题信息的配置选项,包括主题关键词列表、各关键词相应的权重以及主题相关度分值阈值;2)对待爬取网页的内容进行解析,得到对应于所述主题关键词列表中各关键词的关键词出现次数,并根据各关键词的权重及其出现次数计算主题相关度分值;3)通过将当前网页链接的主题相关度分值与设定的主题相关度阈值进行比较,控制网络爬虫的链接扩散走向并实现数据搜集。进一步地,步骤2)在爬虫程序的网页描述数据结构中设立主题选项,用于记录所述主题相关度分值。进一步地,步骤2)对网页内容进行的解析包括:对网页内容信息进行分词,并对分词后的关键词集合进行主题关键词匹配,针对满足匹配的关键词列表,对各个关键词的权重与频度的积求和,得到主题相关度分值。进一步地,上述网页链接的主题相关度分值算法可以增加老化机制,即:该链接在第一次处理时计算的分值,将在指定时间后过期,需要重新计算。进一步地,步骤3)中,如果当前网页链接的主题相关度分值低于所述阈值,则放弃本网页的解析,否则进行后续网页的分析和处理。与现有技术相比,本专利技术的有益效果如下:传统的主题爬虫是在预先指定的种子站点范围内,根据已知的网页结构编写抽取策略,深度爬取主题内容。本专利技术通过设定与主题相关的关键词,动态调整爬取走向,既保证了爬取的广度,又维持了爬取扩散的方向不脱离指定主题,能够更有效地收集最大范围的主题内容。附图说明图1:本专利技术的总体框架图。图2:基于Nutch的实施方式实现图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面结合附图对本专利技术中的技术方案进行清楚、完整地描述。本专利技术的技术方法为,设定网页评分机制,通过预设主题关键字列表及相应权值,并在爬取过程中提取、分析爬取网页的内容,来计算该网页及所包含子链接的主题相关度分值。同时设定主题相关度分数阈值,控制网络爬虫的链接扩散走向。本专利技术中,主题相关度分值也可称为主题因子(themeFactor)。图1是本专利技术的总体框架图。本专利技术方法的步骤如下:1)设定网络爬虫的配置文件,设立主题信息的配置选项,以灵活调整爬虫主题,获得较高的扩展性。主题信息配置选项包括:主题关键词列表及对应权重、主题相关度阈值。其中,主题相关度阈值是根据多次爬取测试后选取的经验值。2)在爬虫程序的网页描述数据结构中设立主题选项,以便于记录爬取网页的主题评分。该网页主题选项包括:主题相关度分值。3)运行爬虫程序,对抓取网页进行解析。检索当前链接的主题相关度分值,如果低于设定阈值,则放弃本网页的解析;如果没有检索到该链接的主题相关度分值,则进入步骤4),进行相关度分值计算。4)针对没有相关度分值的网页链接,提取本网页中的主题关键词,计算并记录主题相关度分值。该步骤对网页内容的主题解析包括:对网页内容信息进行分词,并对分词后的关键词集合进行主题关键词匹配。针对满足匹配的关键词列表,计算各个关键词的权重与频度的积求和,得到主题相关度分值。进一步地,网页链接的主题相关度分值算法可以增加老化机制。即:该链接在第一次处理时计算的分值,将在指定时间后过期,需要重新计算。5)提取网页包含的所有子链接,将主题相关度分值继承给子链。6)进行后续网页分析和处理。下面结合Nutch分布式网络爬虫实例图(如图2所示),以爬取安卓应用程序为例说明本专利技术方法的实施过程。Nutch是一个开源的搜索引擎系统,包括搜索引擎和Web爬虫两部分。Nutch可以高效地运行在分布式环境Hadoop下,Web爬虫的爬取过程分为Inject、Generate、Fetch、Parse、DbUpdate五个阶段。Nutch的实现采用了微内核与插件技术,其中微内核中实现了爬取的基本功能,插件机制允许用户自定义扩展点,对某一阶段的处理进行功能扩展或调整。Nutch本身具有基于评分的链接扩展机制,其默认为OPIC评分算法。Nutch会根据该算法为网页的子链评分,并在后续爬取过程中,根据分值的高低决定爬取链接的顺序。可以通过扩展或修改该评分机制,修改爬取的走向。本实施例中,通过对Nutch源码进行修改和扩充,实现基于关键词导向的安卓应用主题网络爬虫。具体修改内容如下:1)Nutch默认的配置文件为nutch-site.xml。本实施例中,增加与安卓应用下载相关的关键词,如:安卓、Android、APK、手机、下载、app等,并根据关键词的影本文档来自技高网...
【技术保护点】
一种基于主题网络爬虫的数据搜集方法,其步骤包括:1)在网络爬虫的配置文件中设立主题信息的配置选项,包括主题关键词列表、各关键词相应的权重以及主题相关度分值阈值;2)对待爬取网页的内容进行解析,得到对应于所述主题关键词列表中各关键词的关键词出现次数,并根据各关键词的权重及其出现次数计算主题相关度分值;3)通过将当前网页链接的主题相关度分值与所设定的阈值进行比较,控制网络爬虫的链接扩散走向并实现数据搜集。
【技术特征摘要】
1.一种基于主题网络爬虫的数据搜集方法,其步骤包括:1)在网络爬虫的配置文件中设立主题信息的配置选项,包括主题关键词列表、各关键词相应的权重以及主题相关度分值阈值;2)对待爬取网页的内容进行解析,得到对应于所述主题关键词列表中各关键词的关键词出现次数,并根据各关键词的权重及其出现次数计算主题相关度分值;3)通过将当前网页链接的主题相关度分值与所设定的阈值进行比较,控制网络爬虫的链接扩散走向并实现数据搜集。2.如权利要求1所述的方法,其特征在于:步骤2)在爬虫程序的网页描述数据结构中设立主题选项,用于记录所述主题相关度分值。3.如权利要求1所述的方法,其特征在于:步骤2)对网页内容进行解析时,对网页内容进行分词处理,并扫描分词结果列表,找到关键词m1,m2,m3...mn对应的权重x1,x2,x3...xn以及关键词出现的次数y1,y2,y3...yn,然后采用如下公式计算主题相关度分值themeFa...
【专利技术属性】
技术研发人员:朴爱花,龚晓锐,和晓宇,霍玮,邹维,
申请(专利权)人:中国科学院信息工程研究所,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。