




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1/11开源网络爬虫在垂直搜索引擎应用开源网络爬虫在垂直搜索引擎应用引言在信息化时代,针对通用搜索引擎信息量大、查询准度和深度兼差等缺点,垂直搜索引擎已进入了用户认可和使用周期。垂直搜索是针对某一个行业的专业搜索引擎,是对网页库中的某类专门的信息进行一次整合,定向分字段抽取出需要的数据进行处理后再以某种形式返回给用户1。相比通用搜索引擎则显得更加专注、具体和深入。目前,垂直搜索引擎多用于行业信息获取和特色语料库建设等方面,且已卓见现实深远成效。网络爬虫是一个自动提取和自动下载网页的程序,可为搜索引擎从互联网上下载网页,并根据既定的抓取目标,有选择地访问互联网上的网页与相关的链接,获取所需要的信息。按照功能用途,网络爬虫分为通用爬虫和聚焦爬虫,这是搜索引擎一个核心组成部分。1聚焦爬虫的工作原理及关键技术分析聚焦爬虫的工作原理聚焦爬虫是专门为查询某一主题而设计的网页采集工具,并不追求大范围覆盖,而是将目标预定为抓取与某一特定主题内容相关的网页本文由论文联盟HTTP/收集整2/11理,如此即为面向主题的用户查询准备数据资源。垂直搜索引擎可利用其实现对网页主题信息的挖掘以及发现,聚焦爬虫的工作原理是爬虫从一个或若干起始网页URL链接开始工作;通过特定的主题相关性算法判断并过滤掉与主题无关的链接;将有用链接加入待抓取的URL队列;根据一定的搜索策略从待抓取URL队列中选择下一步要抓取的网页URL;重复以上步骤,直至满足退出条件时停止2。聚焦爬虫的几个关键技术根据聚焦爬虫的工作原理,在设计聚焦爬虫时,需要考虑问题可做如下论述。待抓取网站目标的定义与描述的问题开发聚焦爬虫时,应考虑对于抓取目标的定义与描述,究竟是带有目标网页特征的网页级信息,还是针对目标网页上的结构化数据。前者因其具有结构化的数据信息特征,在爬虫抓取信息后,还需从结构化的网页中抽取相关信息;而对于后者,爬虫则直接解析WEB页面,提取并加工相关的结构化数据信息,该类爬虫便于定制自适应于特定网页模板的结果网站。爬虫的URL搜索策略问题3/11开发聚焦爬虫时,常见的URL搜索策略主要包括深度优先搜索策略、广度优先搜索策略、最佳优先搜索策略等3。在此给出对应策略的规则分析如下。深度优先搜索策略该搜索策略采用了后进先出的队列方式,从起始URL出发,不停搜索网页的下一级页面直至最后无URL链接的网页页面结束;爬虫再回到起始URL地址,继续探寻URL的其它URL链接,直到不再有URL可搜索为止,当所有页面都结束时,URL列表即按照倒叙的方式将搜索的URL队列送入爬虫待抓取队列。广度优先搜索策略该搜索策略采用了先进先出的队列方式,从起始URL出发,在搜索了初始WEB的所有URL链接后,再继续搜索下一层URL链接,直至所有URL搜索完毕。URL列表将按照其进入队列的顺序送入爬虫待抓取队列。最佳优先搜索策略该搜索策略采用了一种局部优先搜索算法,从起始URL出发,按照一定的分析算法,对页面候选的URL进行预测,预测目标网页的相似度或主题相关性,当相关性达到一定的阈值后,URL列表则按照相关数值高低顺序送入爬虫待抓取队列。爬虫对网页页面的分析和主题相关性判断算法4/11聚焦爬虫在对网页WEB的URL进行扩展时,还需要对网页内容进行分析和信息的提取,用以确定该获取URL页面是否与采集的主题相关。目前常用的网页的分析算法包括基于网络拓扑、基于网页内容和基于领域概念的分析算法4。下面给出这三类算法的原理实现。基于网络拓扑关系的分析算法基于网络拓扑关系的分析算法就是可以通过已知的网页页面或数据,对与其有直接或间接链接关系的对象作出评价的实现过程。该算法又分为网页粒度、网站粒度和网页块粒度三种。著名的PAGERANK和HITS算法就是基于网络拓扑关系的典型代表。基于网页内容的分析算法基于网页内容的分析算法指的是利用网页内容特征进行的网页评价。该方法已从最初的文本检索方法,向网页数据抽取、数据挖掘和自然语言等多领域方向发展。基于领域概念的分析算法基于领域概念的分析算法则是将领域本体分解为由不同的概念、实体及其之间的关系,包括与之对应的词汇项组成。网页中的关键词在通过与领域本体对应的词典分别转换之后,将进行计数和加权,由此得出与所选领域的相关度。2几种开源网络爬虫性能比较5/11目前,互联网上推出有许多的开源网络爬虫,易于开发和扩展的主要包括NUTCH、LARBIN、HERITRIX等,下面即针对这三类爬虫进行实用性内容介绍5HERITRIX是JAVA开发的开源WEB爬虫系统,是INTERNETARCHIVE的一个爬虫项目。这是开源、可扩展、WEB范围内并带有存档性质的网络爬虫。该系统允许用户选择扩展各个组件,进而实现自定的抓取逻辑。HERITRIX默认提供的组件能够完成通用爬虫的功能,用户即可根据实际需求定制相应模块,也可实现聚焦爬虫的功能。LARBIN是一种由C开发的开源网络爬虫,LARBIN能够跟踪页面的URL进行扩展的抓取,从而为搜索引擎提供广泛的数据来源。该程序由法国人SBASTIENAILLERET独立开发,只是XX年后,LABIN已退出了更新。NUTCH是APACHE的子项目之一,且是LUCENE下的子项目,重点是其中自己提供了搜索引擎所需的全部工具,当然,NUTCH只获取并保存可索引的内容,却无法保持抓取网页原貌。在此,研究可得三种开源网络爬虫的功能特点和使用范围比较,具体如表1所示。表1三种开源爬虫功能特点的和使用范围FUNCTIONCHARACTERISTICSANDUSERANGEOFTHREETYPESOFOPENSOURCECRAWLERS6/11名称使用平台开发语言效率镜像保存分布抓取功能单一优点缺点HERITRIXWINDOWS/LINUXJAVA中是否是高可扩展性,性能稳定,对抓取的控制性功能齐全。对中文支持较差,容错性机制差。LARBINLINUXC高是否是爬虫性能好,稳定性强。没有删除功能,排重可能误判。NUTCHWINDOWS/LINUXJAVA低否是否爬虫和LUCENE及HADOOP的结合很好,便于开发搜索引擎。系统不稳定。通过如上内容分析,可以得出以下结论从功能方面来说,HERITRIX与LARBIN的功能类似,都是一个纯粹的网络爬虫,提供网站的镜像下载。NUTCH则是一个网络搜索引擎框架,爬取网页只是其功能的一部分。从分布式处理来说,NUTCH支持分布式处理,而其它两个尚不支持。从爬取的网页存储方式来说,HERITRIX和LARBIN都是将爬取所获内容保存为原始类型的内容。而NUTCH是将内容保存到其特定格式中去。对于爬取所获内容的处理来说,HERITRIX和LARBIN7/11都是将爬取后的结果内容不经处理直接保存为原始内容。而NUTCH却将对文本进行包括链接分析、正文提取、建立索引等深层处理。从爬取的效率来说,LARBIN效率较高,因为其实现语言是C并且功能相对单一,但是该程序缺乏必要的更新服务。在进行了有关软件的扩展性、镜像保存方式及软件更新等方面因素的综合分析比对后,本文将择取并利用HERITRIX开源软件来实现聚焦爬虫的设计。基于HERITRIX软件聚焦爬虫的设计在利用开源HERITRIX软件进行聚焦爬虫设计时,以中国西藏网HTTP/为例,针对有目标网页特征的网页级信息配置正则表达式,采用深度优先搜索策略进行URL扩展,利用网页内容关于“主题相关度”6的分析算法进行主题判断,实现聚焦爬虫的网站采集功能。开源HERITRIX软件工作原理HERITRIX开源软件采集网页的方法是采取深度优先搜索策略,遍历网站的每一个URI,分析并生成本地文件及相应的日志信息等,HERITRIX软件抓取的是与原网页一致的、完整的深度复制,包括图像以及其他非文本内容,抓取后并存储相关的内容。在网页采集过程中,HERITRIX软件不对页面上内容进行修改,爬行相同的URL不进行替换。8/11HERITRIX软件通过WEB用户界面启动、监控、调整、允许弹性地定义要获取的URL。HERITRIX软件包含核心模块和插件模块。核心模块能够配置但不能覆盖,插入模块配置是否加载,也可以由第三方模块取代。3开源HERITRIX软件关键模块的改进修改EXTRACTOR解析器修改HERITRIX的EXTRACTOR解析器时,可采用正则表达式的方式扩展待抓取的网页。例如,在抓取中国西藏网的新闻时,在EXTRACTOR解析器配置正则表达式HTTP/09AZ/AZ/09/09AZHTM,这样就把服务器域名下的网页所有信息全部抓取下来。但是,考虑垂直搜索引擎的使用范围和聚焦爬虫对网页主题的过滤功能,需要设计与实际主题搜索应用相匹配的专用解析器,专用解析器EXTRACT要实现以下功能对所有不含有要抓取的结构化信息页面的URL、又不含有可以集中提取前者URL的种子型URL,都不作处理。从可以集中提取含结构化信息页面URL的种子型URL,提取全部的含结构化信息页面的URL。从含结构化信息页面的URL提取所需的结构化信息,并加以记录。扩展FRONTIERSCHEDULER模块9/11FRONTIERSCHEDULER是一个POSTPROCESSOR,其作用是将EXTRACTOR所分析得出的链接加入到FRONTIER中,以待继续处理,聚焦爬虫实现关键词对主题的判断算法就在该模块中构建并执行。主题相关度判断的关键代码如下PUBLICVOIDGETCOUNT/判断待抓取网页与主题是否相关TRYSTRINGS;/S取网页正文字符LENLENGTH;/求网页字符数FLOATD0;/初始化D,用于计算所有导向词的权重和FOR/遍历选取100个导向词COUNT0,INTJ1;/COUNT为导向词出现次数,J为导向词在字符串的位置TLENGTH;/求第I个导向词的字符个数WHILEINTINDEX;/查找字串在J1到END之间第一个字符首次出现的位置IF/找到后,继续在余下的字符串中找COUNT;JINDEXT1;10/11ELSEBREAK;DCOUNTB;/D是第I个导向词的权重,B表示I个导向词的权值。DDD;/将所有导向词的权重求和K1/LEN1/100D;/K是网页主题相关度,LEN是文章字符数,100个导向词IF;/相关度判断;/表示输出;/当前URL加入HERITIX采集队列聚焦爬虫接口的设计HERITRIX网络爬虫是一个通用的网页采集工具,需要对HERITRIX抓取和分析网页的行为进行一定的控制,修改EXTRACTOR和FRONTIERSCHEDULER模块后,需要对其各个功能接口进行操作调试,由此保证聚焦爬虫功能的全面实现。下面即对重要功能接口进行必要介绍。应用接口在设计聚焦爬虫时,应定制一个应用接口模块以供用户使用,具体将负责与HERITRIX软件关联,以提供启、11/11停爬虫、获取网址、采集关键词等功能实现。数据库查询和修改接口在设计聚焦爬虫时,应设计相应的数据库接口,负责下载并发现与主题相关的网页信息、再保存到数据库的表中。存储的字段包括网页URL,本地存储相对路径
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农发行沧州市孟村回族自治县2025秋招群面模拟题及高分话术
- 农发行乌海市海勃湾区2025秋招数据分析师笔试题及答案
- 农发行武威市天祝藏族自治县2025秋招英文面试题库及高分回答
- 农发行新乡市获嘉县2025秋招无领导模拟题角色攻略
- 国家能源乐东黎族自治县2025秋招笔试数学运算题专练及答案
- 广州白云区中储粮2025秋招网申填写模板含开放题范文
- 单位节约粮食的倡议书
- 2025年常州市武进区卫健系统公开招聘工作人员12人考前自测高频考点模拟试题参考答案详解
- 2025年4月广西师范大学劳动合同制员工招聘2人模拟试卷附答案详解(典型题)
- 2025年甘肃医学院招聘事业编制专业技术人员13人(第一批)模拟试卷附答案详解(完整版)
- 锅炉工安全培训知识课件
- 天津地区高考语文五年高考真题汇编-文言文阅读
- JJG693-2011燃气泄漏检测仪器检定规程
- 三峡大学科技学院实习报告及实习成绩考核鉴定表模板
- 电缆电线技术标书
- 柔性压力传感器制备法
- 水稻高产栽培技术要点
- (免费分享)工商银行业务委托书打印版
- GB 5226.1-2008机械电气安全机械电气设备第1部分:通用技术条件
- 《毛泽东思想和中国特色社会主义理论体系概论》全套课件
- (完整)农村污水处理工程施工组织设计
评论
0/150
提交评论