已阅读5页,还剩68页未读, 继续免费阅读
(计算机系统结构专业论文)主题爬虫的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 、 at h e s i si nc o m p u t e r a r c h i t e c t u r e r e s e a r c ha n d i m p l e m e n t a t i o no ff o c u s e d c r a w l e r b yk o uc h u n h u a s u p e r v i s o r :a s s o c i a t ep r o f e s s o rl i uh u i l i n n o r t h e a s t e r nu n i v e r s i t y m a y 2 0 0 8 舢7肌舢i 舢7448 舢1 胂y r 一 独创性声明 本人声明,所呈交的学位论文是在导师的指导下完成的。论文中取得 一 的研究成果除加以标注和致谢的地方外,不包含其他人己经发表或撰写过 ? j 户 的研究成果,也不包括本人为获得其他学位而使用过的材料。与我一同工 - p 、 作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示谢 意。 学位论文作者签名: 园栖 日 期:2 甜髻t7 。9 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、使用学位论 文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学位论文的全部 或部分内容编入有关数据库进行检索、交流。 作者和导师同意网上交流的时间为作者获得学位后: 半年a一年口一年半口两年口 学位论文作者签名:辔奄彩 导师签名: 签字日期: 2 毗7 。 签字日期:豫老舢- 1 万 j7 j 嘉 , 7 v 4 东北大学硕士学位论文摘要 主题爬虫的研究与实现 摘要 通用搜索引擎,在很大程度上解决了人们在w e b 上查找信息的困难,但是随着信 息多元化的增长,也存在着种种不足。如:查准率查全率低、内容相对陈旧、信息分布 不平衡等。因此,主题搜索引擎应运而生,它专门为某一特定领域、某一特定人群或某 一特定需求提供有一定价值的信息和相关服务。主题爬虫是主题搜索引擎的信息采集部 分,负责对用户感兴趣的某一主题的网页进行抓取。因此,主题爬虫得到越来越多研究 者的关注。 本文对爬虫的工作原理和相关难点进行了分析,设计了主题爬虫的架构。通过对几 种经典的主题采集策略的深入研究,提出了一种新的策略。该策略由页面主题判定和 u r l 主题预测组成。页面主题判定是采用文本分类技术对已抓取到的网页进行主题相关 性判定从而决定网页以及链接的取舍,u r l 主题预测为下一轮抓取选择主题相关的u r l 。 将该策略应用到主题爬虫中,并对主题爬虫的种子注入、抓取、解析、文本训练、页面 的主题判定、u r l 更新及主题预测几个组成部分加以实现。 实验结果证明:主题爬虫能够稳定运行,并且与普通爬虫相比,有着更好的收获率。 利用主题爬虫极大地减少了时间和存储空间,在时间上的优势保证了网页的及时更新。 而且由于采集的内容单一,用户查找时得到的冗余和无用信息也较少。 关键词:主题爬虫;采集策略;向量空间模型;解析;收获率 一i i 蕾i p 、 _”- 1 i j k - - ,。 r e s e a r c ha n d i m p l e m e n t a t i o no ff o c u s e dc r a w l e r a b s t r a c t t h eg e n e r a ls e a r c he n g i n es o l v e sd i f f i c u l t i e so f p e o p l ef i n d i n gi n f o r m a t i o no nw e bt oa l a r g ee x t e n t h o w e v e r , w i t ht h e d e v e l o p m e n to fi n f o r m a t i o n d i v c r s i f i c a t i o mm a l l y s h o r t c o m i n g se x i s t ,s u c ha sl o wp r e c i s i o n ,l o wr e c a l l ,c o n t e n to b s o l e s c e n c em l dd i s t r i b u :t i o n u n b a l a n c e f o c u s e ds e a r c he n g i n ep r o v i d e su s e f u li n f o r m a t i o na n dr e l a t e ds e i c ef o ra f i e l d s o m ep e o p l eo rad e m a n d f o c u s e dc r a w l e ri si n f o r m a t i o nc o l l e c t i o np a r to ff o c u s e ds e a r c h e n g i n ea n di tf e t c h e ss o m et o p i cw e bp a g e si nw h i c hu s e r sa r ei n t e r e s t n l e r e f o r e f o c u s e d c r a w l e ri sp a i dm o r ea t t e n t i o nb yr e s e a r c h e r s t h ea r t i c l ea n a l y z e st h ew o r kp r i n c i p l ea n dr e l a t e dd i f f i c u l t p o i n t sa n dd e s i g n st h e a r c h i t e c t u r eo ff o c u s e dc r a w l e r t h r o u g ht h e d e e pr e s e a r c ht os e v e r a lc l a s s i cf o c u s e d c o l l e c t i o ns t r a t e g y , ip r o p o s ean e w s t r a t e g yw h i c hi sc o n s i s t e do fp a g et o p i cj u d g m e n ta n d 、u r lt o p i cf o r e c a s t w i t ht h ec l a s s i f i c a t i o nt e c h n o l o g y , p a g et o p i cj u d g m e n tc a nc o m p u t e 龇 s i m i l a r i t yb e t w e e nt h et o p i ca n dt h ep a g eh a v i n ga l r e a d yb e e nf e t c h e d ,a n dd e c i d e 、7 l ,h e t h e rt o s a v et h ep a g ea n dh y p e r l i n k so rn o t t h eu r lt o p i cf o r e c a s tc a n p r e d i c tt h ep o t e n t i a lu r lf o r t h en e x tc r a w l t h es t r a t e g yi sa p p l i e di nt h ef o c u s e dc r a w l e r t h ep a r t so ff o c u s e dc r ;l _ w l e r s u c ha ss e e d si n j e c t i o n ,f e t c h i n g ,p a r s e ,t e x tt r a i n ,p a g et o p i c j u d g m e n t ,u r lu p d a t i n g a l l du d t o p i cf o r e c a s t ,a r er e a l i z e d t h er e s u l t so fe x p e r i m e n tp r o v e t h a tt h es y s t e mr u n ss t a b l ya n dh a sab e t t e rh a e s tr a t e c o m p a r e dw i t hc o m m o nc r a w l e r t h ea p p l i c a t i o no ff o c u s e dc r a w l e rr e d u c e st i m ea n ds p a c e g r e a t l y t h ea d v a n t a g ei nt i m eg u a r a n t e e sw e bp a g e su p d a t i n gt i m e l y f u r t h e r m o r e ,u s e r sg e t l i t t l er e d u n d a n ta n du s e l e s si n f o r m a t i o ni nr e t r i e v i n gb e c a u s eo f s i n g l ec o l l e c t i o nc o m e m k e yw o r d s :f o c u s e dc r a w l e r ;c r a w l i n gs t r a t e g y ;v e c t o rs p a c em o d e l ;p a r s e ;h a r v e s tr a t e i 一 1 刈 黛 e 州1 - j 东北大学硕士学位论文目录 目录 。独创性声明i 摘要i i j 髓 ,、 a b s t r a c t i i i 1 k第1 章绪论l 1 1 研究背景及意义:1 1 2 研究现状2 1 3 研究内容及组织结构3 第2 章主题爬虫研究5 2 1 爬虫工作原理5 2 1 1 抓取策略6 2 1 2 抓取权限6 2 1 3 信息提取7 2 1 4 动态网页的抓取8 2 1 5 网页的更新8 2 2 主题采集策略9 2 2 1 基于网页内容的方法9 2 2 2 基于w e b 链接分析的方法j 1 1 第3 章主题爬虫的设计。1 5 3 1 系统结构15 3 2 数据结构17 3 3 存储文件2 0 3 3 1 文本文件2 0 3 3 2u d 信息库2 0 3 3 3 网页信息库2 1 3 4 主题采集策略2 1 第4 章主题爬虫的实现2 5 一一 东北大学硕士学位论文 目录 4 1 种子注入2 5 4 2 抓取。2 6 4 2 1h t t p 文件抓取2 7 4 2 2f t p 文件抓取。j 3 0 4 2 3f i l e 文件抓取一3 3 4 3 解析:3 3 4 3 1x m l 类文档解析3 3 4 3 2m i c r o s o f td o c 类文档解析3 6 4 3 3p d f 文档解析3 7 4 4 文本训练及页面的主题判定3 8 4 5u r l 更新及主题预测4 1 第5 章测试与分析。4 5 5 1 运行4 5 5 2 测试4 8 5 2 j 1 页面主题判定单元测试4 8 5 2 2u r l 主题预测单元测试5 0 5 2 3 总体性能。5 2 第6 章结束语5 5 6 1 工作总结5 5 6 2 进一步工作5 5 参考文献。5 7 致谢5 9 硕士期间发表的论文j 6 l v 一 , , 、j , , “; 东北大学硕士学位论文第1 章绪论 1 1 研究背景及意义 第1 章绪论 随着信息时代的到来和发展,w e b 上的信息正在飞速地增长,这带给人们前所未有 “ 的丰富的信息资源【1 一。然而,在给人们提供丰富信息的同时,却在w e b 信息的高效便 捷使用方面给人们带来巨大的挑战:一方面w e b 上的信息种类繁多、丰富多彩,而另 一方面却很难找到真正有用的信息。在信息社会中,没有控制和组织的信息不再是一种 资源,它倒反而成为信息工作者的敌人。搜索引擎的闯世,为快速、准确、有效地获取 网络信息资源提供了极大的帮助。搜索引擎是为满足人们搜索网络信息的需要而开发的 网络工具,是互联网信息查询的导航针,是沟通用户与网络信息的桥梁【3 1 。 搜索引擎的出现很大程度上解决了人们在w e b 上查找信息的困难,但是随着信息 多元化的增长,千篇一律给所有用户同一个入口显然不能满足特定用户更深入的查询需 求。即现有搜索引擎在提供用户便利获取丰富的信息资源的同时,也存在着种种的不足 之处。 ( 1 ) 查准率低:对任意主题,都可能很容易地包含成百上千的文档,这会使得搜 索引擎返回的文档数过于庞大,其中很多相关性并不大,或所包含的内容质量不高。 ( 2 ) 查全率低:搜索引擎的索引能力正在越来越落后于网络的快速增长速度。 ( 3 ) 内容相对陈旧:各个搜索引擎搜索到的文件有时是不再有效的,因为网页已 被移至别处或不存在。有调查发现,几个不同搜索引擎检索到的第一个文件在网上存在 的平均时间是1 8 6 天。 ( 4 ) 信息分布不平衡:有8 3 的站点包含商业的内容,只有6 的站点包含科学 一 或教育的内容。 因而,人们提出了对搜索引擎新的要求: r ( 1 ) 运行在常规的软硬件设备之上; ( 2 ) 只采集某一特定学科或特定主题的w e b 信息资源: ( 3 ) 能够方便地对专题和学科进行配置。 为了满足这些新的要求,主题搜索引擎应运而生。主题搜索引擎就是针对性的为某 一特定领域、某一特定人群或某一特定需求提供的有一定价值的信息和相关服务。可以 东北大学硕士学位论文第1 章绪论 简单的说成是搜索引擎领域的行业化分工。由于主题搜索引擎分类细致精确、数据全面 深入、更新及时,并且运用了人工分类以及特征提取等智能化策略,因此它将更加有效 和准确。 主题爬虫是主题搜索引擎的重要组成部分,它负责对用户感兴趣的某一主题的网页 进行抓取。它具备普通爬虫的功能,即通过网页的链接地址来寻找网页,从网站某一个 页面( 通常是首页) 开始,读取网页的内容,找到在网页中的其它链接地址,然后通过 这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取 完为止。主题爬虫还具备主题过滤的功能,即使爬虫尽可能多地爬行主题相关的网页, 尽可能少地爬行无关网页,对非主题的网页进行剔除。因此,主题爬虫得到越来越多研 究者的关注。 主题爬虫的优势在于,由于w e b 上的内容丰富多样,每个主题在其中占的比例都 很小,需要采集的内容也相对较少,可以极大地减少时间和存储空间的要求。在时间上 的优势保证了网页的及时更新。而且,主题信息采集搜集的内容单一,用户查找时得到 的冗余和无用信息也较少。 1 2 研究现状 在1 9 9 4 年,出现了最早使用查询来指导爬虫爬行的系统一f i s h 搜索系统( f i s h s e a r c hs y s t e m ) 。后来相继在1 9 9 5 年和1 9 9 9 年分别出现了s h a r k 搜索系统( s h a r ks e a r c h s y s t e m ) 。目前在国内外,有关主题搜索的研究正在成为一个热点,下面介绍一些较具 有代表性的系统。 ( 1 ) i b mf o c u s e dc r a w l e r i b mf o c u s e dc r a w l e r l 4 1 是印度理工学院的学者s 。c h a k r a b a r t i 在伯克利大学计算机 系读博士期间从事的一个项目。在该项目中,作者提出了一种新的w e b 资源爬行系统, 即主题爬虫( f o c u s e dc r a w l e r ) 。它对主题的定义即不是采用关键词也不是加权矢量, 而是一组具有相同主题的网页。该系统的早期版本采用了两个模块:一个是分类器,用 来计算下载文档与主题的相关度,同时也用来指导爬行器优先爬行的相关资源:另一个 是净化器,用来确定哪些是中心页面,从而使系统有了更好的性能。 ( 2 ) c o n t e x tg r a p h sf o c u s e dc r a w le r c o n t e x tg r a p h sf o c u s e dc r a w l e r 5 1 是由d i l i g e n t i 等人研究设计的一种主题爬虫。他 们提出了一种通过建立上下文图( c o n t e x tg r a p h s ) 来学习网页间相互关系的方法。他 一2 一 , , 如 东北大学硕士学位论文第1 章绪论 们先给系统提供一组种子主题页面,然后利用g o o g l e 提供的反向链接服务来寻找到所 有拥有指向种子页面链接的页面。所有拥有指向种子页面链接的页面被称作第一层页 面,而所有拥有指向第一层页面链接的页面被称作第二层页面,依次类推。页面的层数 根据用户参数的改变而改变。当每一个种子页面都建立好一个上下文图后,研究人员将 不同的上下文图的相应各层进行合并,形成一个合并上下文图( m e r g e dc o n t e x tg r a p h ) 。 。同时为每一层训练一个贝叶斯分类器。在爬行过程中,分类器被用来确定所要爬行的页 面应该属于哪一层。一旦页面的所属层次被确定,那么该页面所包含的链接就会被加入 到与该层相对应的队列中。然后再从靠前的非空队列中提取所要爬行的页面u r l 。 ( 3 ) e l s e v i e r 的s c i r u s 系统 s c i r u s 科学搜索引擎【6 】是由荷兰爱思唯尔科学公司( e l s e v i e rs c i e n c e ) 于2 0 0 1 年4 月推出的迄今为止国际互联网上最全面的科技信息专用搜索引擎,是目前w e b 上最全 面、综合性最强的科技文献门户网站之一。在2 0 0 1 年和2 0 0 2 年,被s e a r c he n g i n ew a t c h a w a r d s 推选为“最佳科学类搜索引擎”,2 0 0 4 年由w e bm a r k e t i n ga s s o c i a t i o n 评选为“最 协 佳目录或搜索引擎网站”。在2 0 0 5 年中再次当选。s c i r u s 的爬虫采用了一些方法来产生 种子表,这样就决定了种子u r l 所涉及内容的科学性和专业性,从而减少非专业领域信 息的干扰。由于种子表只包含能够通过手工检测到科技内容的u r l ,爬虫就能够有的放 矢地爬行因特网。然后跟踪种子表中的站点信息进行集中爬行。 在国内,研究主题爬虫的人也越来越多。现在开始研究该领域的主要是一些大学的 研究机构和一些搜索引擎公司。比如,北京化工大学就推出了关于化工方面的专业搜索 引擎,百度等多家搜索引擎提供商也相应的推出了图片搜索、m p 3 搜索、行业搜索。赛 迪网开发的“i t 罗盘”是基于i t 行业的主题搜索引擎,其中收录了大量经过严格过滤和 人工加工的网站,分类科学,查询简捷,全面、系统、精确、完整地提供有关i t 行业 领域的信息资源和服务,更贴切地满足用户需求。搜职网是先进的中文主题职位搜索和 信息撮合引擎的提供商。新推出的2 o 版网站进一步改进了搜索技术的准确度。首家最 。 专业的中文商业搜索引擎商搜”网罗了中国1 2 0 余万家的企业资源数据库,以其独 有的全面性、更新性、准确性和功能性等特点,将为寻求商业信息的企业或个人提供了 更多机遇。在这些系统中,主题爬虫起到至关重要的作用。 1 3 研究内容及组织结构 本文对普通爬虫的工作原理进行了研究,设计了主题爬虫的总体架构。对现有的几 一3 一 东北大学硕士学位论文 第1 章绪论 种主题采集策略进行分析,提出了一种有效的策略,其核心内容是用文本分类的方法对 网页进行主题相关性判断,并利用该结果指导主题u r l 的预测。最后,实现了该主题爬 虫系统。测试表明:系统能够对主题网页的进行抓取,能够稳定、高效地运行,并且保 证了很高的收获率。 论文的章节安排如下: 第1 章,综合论述了主题搜索引擎的发展背景以及主题搜索引擎核心部件一主题 爬虫的重要研究意义;阐述了目前主题爬虫的国内外发展现状;概括了本文的主要内容。 第2 章,介绍了爬虫的工作原理,分析了其实现难点以及解决办法;对基于网页内 容的方法和基于w e b 链接分析的方法两种主题采集策略进行了论述。 第3 章,对主题爬虫的总体架构进行了设计、对各个模块的功能进行了介绍;对主 要的数据结构以及存储文件进行设计,提出一种有效的主题采集策略。 第4 章,详细论述了主题爬虫的实现方法,阐述了种子注入、抓取、解析、页面主 题判定、u r l 更新以及主题预测几个部分所涉及到的技术以及具体的实现流程。 第5 章,介绍了主题的运行环境和运行界面并对主题爬虫的性能进行了测试。主要 从运行效率和主题性能方面对结果进行了分析。 第6 章,对本文的主要内容进行了概括以及对进一步研究工作的展望。 4 l f p l 东北大学硕士学位论文第2 章主题爬虫研究 第2 章主题爬虫研究 爬虫在搜索引擎中占有重要位置,对搜索引擎的查全、查准率都有影响,决定了搜 索引擎数据容量的大小,而且爬虫的好坏直接影响搜索结果页中死链接( 即链接所指向 的网页已经不存在) 的个数。爬虫程序的实现是一个复杂而且技术含量高的工作。它所 涉及的难点有:多线程调度、网页的抓取、采集策略的选择、网页的解析等等。目前如 何发现更多的网页、如何正确提取网页内容、如何下载动态网页、如何提高抓取速度、 如何识别网站内容相同的网页等都是爬虫需要进一步改进的问题。主题爬虫是在爬虫的 基础上修改了采集策略,下面将详细介绍爬虫工作原理和主题采集策略。 2 1 爬虫工作原理 爬虫通常由抓取模块、解析模块、u r l 更新模块、u r l 排序模块、种子注入模块、 初始种子u r l 集合、待抓取u r l 队列、网页信息库、u r l 信息库等部分组成。网页信息 库包含的内容有:原始网页和网页解析后的结果。u r l 信息库包含的内容有:u r l 信息 和链接信息。其总体结构如图2 1 所示。 图2 1 爬虫结构 f i g 2 1t h ea r c h i t e c t u r eo f c r a w l e r 其工作过程如下:首先,由人工挑选出一批站点首页的u r l 作为初始种子u r l 集合, 种子注入模块将他们注入到u r l 信息库中,u r l 排序模块会将他们添加到待抓取u r l 队 列里,抓取模块根据这些u r l 在i n t e r n e t 上抓取相应页面。解析模块对网页进行解析, 一5 一 东北大学硕士学位论文 第2 章主题爬虫研究 这样就可以获得该篇网页的t i t l e ,a n c h o r ,t e x t 以及链接等信息。然后将原始网页和解 析结果保存到网页信息库中。根据这些解析出来的信息,u r l 更新模块可以实现对u r l 信息库的更新。最后,u r l 排序模块对u r l 信息库中的u r l 进行排序,产生待抓取队列, 进行新一轮的循环。 2 1 1 抓取策略 互联网上信息资源非常丰富,但受数据库存储空间等诸多因素的制约,搜索引擎只 能遍历一定数量的网页。爬虫遍历完规定数量的网页后即停止,同时清空u r l 队列,再 由人工指定或按一定算法从网页信息库中提取一定数量的u r l 作为待抓取的u r l ,开始 新一轮周期的网页遍历。从目前公布的数据来看,容量最大的搜索引擎也不过是抓取了 整个网页数量的百分之四十左右【7 1 。 在抓取网页的时候,普通爬虫一般有两种策略:广度优先和深度优先。广度优先是 指爬虫会先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页,继续抓 取在此网页中链接的所有网页。这是最常用的方式,因为这个方法可以让爬虫并行处理, 提高其抓取速度。深度优先是指爬虫会从起始页开始,一个链接一个链接地跟踪下去, 处理完这条线路之后再转入下一个起始页,继续跟踪链接。这个方法有个优点是爬虫在 设计的时候比较容易。由于不可能抓取所有的网页,有些爬虫对一些不太重要的网站, 设置了访问的层数。 2 1 2 抓取权限 爬虫在访问某网站网页的时候,经常会遇到加密数据和网页权限的问题,有些网页 是需要会员权限才能访问。当然,网站的所有者可以通过协议让爬虫不去抓取,但对于 一些出售报告的网站,他们希望搜索引擎能搜索到他们的报告,但又不能完全的让搜索 者查看,这样就需要给爬虫提供相应的用户名和密码。爬虫可以通过所给的权限对这些 网页进行网页抓取,从而提供搜索。而当搜索者点击查看该网页的时候,同样需要搜索 者提供相应的权限验证。 每个爬虫都有自己的名字,在抓取网页的时候,都会向网站标明自己的身份。爬虫 在抓取网页的时候会发送一个请求,这个请求中就有一个字段为u s e r - a g e n t ,用于标识 此爬虫的身份。例如g o o g l e 爬虫的标识为g o o g l e b o t ,b a i d u 爬虫的标识为b a i d u s p i d e r , y a h o o 爬虫的标识为i n k t o m is l u r p 。如果在网站上有访问日志记录,网站管理员就能知 道,哪些搜索引擎的爬虫访问过,什么时候访问的,以及读取了多少数据等等。如果网 一6 一 东北大学硕士学位论文第2 章主题爬虫研究 站管理员发现某个爬虫有问题,就通过其标识来与其所有者联系。 爬虫进入一个网站,一般会访问一个特殊的文本文件r o b o t s t x t ,这个文件一般放在 网站服务器的根目录下,如h t t p :w w w b l o g c h i n a c o r n r o b o t s t x t 。网站管理员可以通过 r o b o t s t x t 来定义哪些目录爬虫不能访问,或者哪些目录对于某些特定的爬虫不能访问。 例如有些网站的可执行文件目录和临时文件目录不希望被搜索引擎搜索到,那么网站管 理员就可以把这些目录定义为拒绝访问目录。r o b o t s t x t 语法很简单,例如:如果对目录 没有任何限制,可以用以下两行来描述:u s e r - a g e n t :,d i s a l l o w 。 当然,r o b o t s t x t 只是一个协议,如果爬虫的设计者不遵循这个协议,网站管理员也 无法阻止爬虫对于某些页面的访问,但一般的爬虫都会遵循这些协议,而且网站管理员 还可以通过其它方式来拒绝爬虫对某些网页的抓取。 爬虫在下载网页的时候,会去识别网页的h t m l 代码,在其代码的部分,会有m e t a 标识。通过这些标识,可以告诉爬虫本网页是否需要被抓取,还可以告诉爬虫本网页中 的链接是否需要被继续跟踪。例如:表示本网页不需要被抓取,但是网页内的链接需要 被跟踪。 现在一般的网站都希望搜索引擎能更全面的抓取自己网站的网页,因为这样可以让 更多的访问者能通过搜索引擎找到此网站。为了让本网站的网页更全面被抓取到,网站 管理员可以建立一个网站地图,即s i t em 印。许多爬虫会把s i t e m a p h u n 文件作为抓取 一个网站的入口,网站管理员可以把网站内部所有网页的链接放在这个文件里面,那么 爬虫可以很方便的把整个网站抓取下来,避免遗漏某些网页,也会减小对网站服务器的 负担【8 1 。 2 1 3 信息提取 对于爬虫来说,抓取下来网页包括各种格式,包括h t m l 、图片、d o c 、p d f , 多媒体、 动态网页及其它格式等。这些文件抓取下来后,需要把这些文件中的文本信息提取出来。 准确提取这些文档的信息,一方面对搜索引擎的搜索准确性有重要作用,另一方面对于 爬虫正确跟踪其它链接有一定影响。 对于d o c 、p d f 等文档,这种由专业厂商提供的软件生成的文档,厂商都会提供相 应的文本提取接口。爬虫只需要调用这些插件的接口,就可以轻松的提取文档中的文本 信息和文件其它相关的信息。 h t m l 等文档不一样,h t m l 有一套自己的语法,通过不同的命令标识符来表示 一7 一 东北大学硕士学位论文第2 章主题爬虫研究 不同的字体、颜色、位置等版式【9 】,提取文本信息时需要把这些标识符都过滤掉。过滤 标识符并非难事,因为这些标识符都有一定的规则,只要按照不同的标识符取得相应的 信息即可。但在识别这些信息的时候,需要同步记录许多版式信息,例如文字的字体大 小、是否是标题、是否是加粗显示、是否是页面的关键词等,这些信息有助于计算词在 网页中的重要程度。同时,对于h t m l 网页来说,除了标题和正文以外,会有许多广 告链接以及公共的频道链接,这些链接和文本正文一点关系也没有,在提取网页内容的 时候,也需要过滤这些无用的链接。例如某个网站有“产品介绍”频道,因为导航条在网 站内每个网页都有,若不过滤导航条链接,在搜索“产品介绍”的时候,则网站内每个网 页都会搜索到,无疑会带来大量垃圾信息。过滤这些无效链接需要统计大量的网页结构 规律,抽取一些共性,统一过滤;对于一些重要而结果特殊的网站,还需要个别处理。 这就需要爬虫的设计有一定的扩展性。对于多媒体、图片等文件,一般是通过链接的锚 文本( 即链接文本) 和相关的文件注释来判断这些文件的内容。 对于网页内容的提取,一直是爬虫中重要的技术。一般采用插件的形式,通过一个 插件管理服务程序,遇到不同格式的网页采用不同的插件处理。这种方式的好处在于扩 充性好,以后每发现一种新的类型,就可以把其处理方式做成一个插件补充到插件管理 服务程序之中。 2 1 4 动态网页的抓取 动态网页一直是爬虫面临的难题。所谓动态网页,是相对于静态网页而言,是由程 序自动生成的页面,这样的好处是可以快速统一更改网页风格,也可以减少网页所占服 务器的空间,但同样给爬虫的抓取带来一些麻烦。由于开发语言不断的增多,动态网页 的类型也越来越多,如:嬲p 、j s p 、p h p 等【1 0 1 。这些类型的网页对于爬虫来说,可能还 稍微容易一些。爬虫比较难于处理的是一些脚本语言( 如v b s c r i p t 和j a v a s c r i p t ) 生成 的网页,如果要完善的处理好这些网页,爬虫需要有自己的脚本解释程序。对于许多数 据是放在数据库的网站,需要通过本网站的数据库搜索才能获得信息,这些给爬虫的抓 取带来很大的困难。对于这类网站,如果网站设计者希望这些数据能被搜索引擎搜索, 则需要提供一种可以遍历整个数据库内容的方法。 2 1 5 网页的更新 由于网站的内容经常变化,因此爬虫也需不断地更新其抓取网页的内容,这就需要 爬虫按照一定的周期去扫描网站,查看哪些页面是需要更新的页面,哪些页面是新增页 一8 一 东北大学硕士学位论文 第2 章主题爬虫研究 面,哪些页面是已经过期的死链接。搜索引擎的更新周期对搜索引擎搜索的查全率有很 大影响。如果更新周期太长,则总会有一部分新生成的网页搜索不到;周期过短,技术 实现会有一定难度,而且会对带宽、服务器的资源都有浪费。搜索引擎的爬虫并不是所 有的网站都采用同一个周期进行更新,对于一些重要的更新量大的网站,更新的周期短, 如有些新闻网站,几个小时就更新一次;相反对于一些不重要的网站,更新的周期就长, 可能一两个月才更新一次。 一般来说,爬虫在更新网站内容的时候,不用把网站网页重新抓取一遍,对于大部 分的网页,只需要判断网页的属性( 主要是日期) ,把得到的属性和上次抓取的属性相 比较,如果一样则不用更新【l 。 2 2 主题采集策略 为了高效地抓取与主题相关的网络资源,研究者提出了许多主题定制爬行策略和相 关算法,使得网络爬虫尽可能多地爬行主题相关的网页,尽可能少地爬行无关网页,并 且确保网页的质量。通过对这些方法进行比较分析,本文将它们分为两类:基于网页内 容的方法和基于w e b 链接分析的方法。 2 2 1 基于网页内容的方法 基于网页内容的策略主要是利用了w e b 网页文本内容、u r l 字符串、锚文本等文 字内容信息。不同的分析方法构成了不同的策略和相应的算法。主要包括:b e s tf i r s t s e a r c h 方法、f i s hs e a r c h 方法、基于分类器的方法。 2 2 1 1b e s tf t r s ts e a r c h 方法 基本思想是给定一个待爬行u r l 队列,从中挑选最好的u r l 优先爬行。爬行主题 采用关键词集合来描述,待爬行u r l 的优先级是根据主题词和已爬行网页p 的文字内 容来计算,用它们的相关度来估计p 所指向网页的相关度。相关度大的网页,它所指向 的网页优先级就高,从而决定了待爬行队列中u r l 的优先级顺序。如果待爬行队列的 缓冲区满了,则将优先级最低的u r l 从该队列中移去。它采用式( 2 1 ) 来计算网页与 主题间的相关度。 s i m ( q ,p ) = ( 厶) ( ,矗2 ,厶2 ) ( 2 1 ) k e q t 、pv k e p、女9 其中: 一9 一 东北大学硕士学位论文第2 章主题爬虫研究 q 表示主题; p 表示抓取的网页; f k a 表示词k 在q 中出现的频次; 岛表示词k 在p 中出现的频次。 该算法有u r l _ q u e u e 和c r a w l e d _ _ q u e u e 两个堆栈,分别用来存储待爬行的u r l 和己 爬行的u r l 。在主题网络爬虫研究领域,该算法具有一定的竞争力,所以很多研究者 将其作为算法性能的比较基准1 2 1 。j c h o 等人【1 3 】将待爬行队列分成两个,即h o t _ q u e u e 和u r l _ q u e u e 。如果认为是相关的,就将其压入队列h o t _ _ q u e u e :否则就压入u r l _ q u e u e 中。在爬行时,优先爬行h o t _ q u e u e 队列,只有当h o t _ _ q u e u e 队列为空时,才爬行u r l _ q u e u e 。 在判断是否相关时,作如下判断:如果在u r l 字符串或其对应的锚文本中含有主题词, 就认为是h o tq u e u e ,将其压入h o t _ q u e u e ;否则就是普通的u r l ,将其压入u r l _ q u e u e a 这种方式的优点是计算量小,对于单个关键词的主题( 宽泛主题) ,它的效果还是不错 的。但当关键词个数较多时,效果就不是很好。因为u r l 的文字和锚文本并不能很好 地反映出多个关键词蕴涵的真实主题。 2 2 1 2f i s hs e a r c h 方法 1 9 9 4 年由学者d eb r a 等人【1 4 】提出。它将在网络上遍历的网络爬虫比喻成海里的一 群鱼。当它们发现食物( 相关信息) 时,这些鱼就继续繁殖,寻找新的食物;当没有食 物时( 没有相关信息) 或水被污染( 带宽不够) 时,它们就死掉。该算法的关键是根据 代表用户感兴趣主题的种子站点和主题关键词,动态地维护待爬行的u r l 优先级队列。 当个网页抓取过来后,抽取它所有的u r l ,这些u r l 所对应的网页,称为其孩子网 页。如果抓取的网页相关,孩子网页的深度( d e p t h ) 设成一个预先定义的值;否则孩 子网页的深度设置成一个小于父亲网页深度的值。当这个深度为零时,该方向的搜索就 停止。f i s hs e a r c h 算法的入口参数包含种子站点、查询式( 主题) 、查询宽度w i d t h 、深 度d e p t h 。深度大于0 的孩子网页的u r l 按照如下启发策略插入到u r l _ q u e u e 中: ( 1 ) 相关网页的前面o t x w i d t h 个孩子( q 是预定义的大于1 的常量) 加入到u r l _ q u e u e 的顶部; ( 2 ) 无关网页的前w i d t h 个孩子u r l 加入到u r l _ q u e u e 队列中,紧靠着相关网页 孩子节点的后面; ( 3 ) 剩下的孩子u r l 加入到u r l _ q u e u e 的尾部( 即只有在时间允许的情况下,才 有可能爬行到) 。 10 东北大学硕士学位论文第2 章主题爬虫研究 上述三种情况可以用一个变量p o t e n t i a ls c o r e 来等价描述它们。第一种, p o t e m i a l _ s c o r e 设置为1 ;第二种设置为o 5 ;第三种设置为0 ,待爬行u r l 队列就按照 p o t e n t i a l s c o r e 来排序。该算法是一种基于客户端的搜索算法。因为其模式简单、动态 搜索,有一定的吸引力,但存在如下缺点:只使用简单的字符串匹配分配p o t e n t i a ls c o r e 的值,并且该值是离散的( 只有l 、o 5 和o 三种) ;分配的值并不能完全代表与主题的 相关度。在u r l _ q u e u c 中,优先级值之间的差别太小。当很多u r l ( 节点) 具有相同的 优先级并且在爬行时间受到限制时,可能后面更重要的网页被忽略掉了。另外,使用 w i d t h 参数来调节删除网页后面u r l 的个数也有点过于武断,可能导致丢掉很多主题相 关的重要资源。对f i s hs e a r c h 算法进行如下改进便成为s h a r ks e a r c h 方法【1 5 1 : ( 1 ) 在f i s h 算法中,只有是否相关的二值判断,而在s h a r k 算法中引入了相似度 度量方法,取值为o 1 ; ( 2 ) 在计算u r l 的p o t e n t i a ls c o r e 上,不但继承了双亲的值,而且充分利用了锚 文本和锚文本的上下文。锚文本的上下文是指围绕在锚文本周围一定距离的文字。 与f i s h 算法相比,s h a r k 算法精度更高,能更好地保证爬行器正确的搜索方向,提 高相关信息的发现率。 2 2 1 3 基于分类器的方法 为了克服基于文字内容难以精确描述用户感兴趣的主题,研究者提出了基于分类器 引导的主题网络爬虫,从而可以基于分类模型来描述用户感兴趣的主题和预测网页的主 题相关度。文本分类的方法大部分来自于模式分类,基本上可以分为三大类。一种是基 于统计的方法,如n a i v eb a y e s ,k n n 、类中心向量、回归模型、支持向量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025建筑项目委托贷款合同范文
- 2025版风湿免疫科学理论知识考核及答案解析
- 2025美容师劳动合同范本
- 2025敬老院活动总结(3篇)
- 2025企业终止劳动合同协议书模板
- 2025年下半年吉林长春市事业单位招考(33名)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林通化市事业单位招聘(专项招聘)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林辽源市事业单位招考工作人员(3号)易考易错模拟试题(共500题)试卷后附参考答案
- 2025私人借款协议(个体之间)
- 2025年下半年吉林四平市道路运输管理局招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025太原迎泽区社区劳动保障协理员和城镇最低生活保障协理员招聘考试参考题库及答案解析
- 2025年西藏初中班招生统一考试语文试卷试题(含答案详解)
- 教学设备投标施工方案
- 南京223火灾事故调查报告
- 食堂从业人员卫生课件
- 喀什地区2025新疆维吾尔自治区喀什地区“才聚喀什智惠丝路”人才引进644人笔试历年参考题库附带答案详解
- 拼多多社交电商课件
- 成人坏死性筋膜炎的诊断和治疗共识(2025版)解读
- 工程测量技术实践作业指导书
- 围墙粉刷施工方案(3篇)
- 2025山东泰山财产保险股份有限公司总公司及分支机构校园招聘、社会招聘笔试备考试题及答案解析
评论
0/150
提交评论