基于主题的Web信息采集技术研究.docx

上传人:b****6 文档编号:3741707 上传时间:2022-11-25 格式:DOCX 页数:47 大小:73.63KB
下载 相关 举报
基于主题的Web信息采集技术研究.docx_第1页
第1页 / 共47页
基于主题的Web信息采集技术研究.docx_第2页
第2页 / 共47页
基于主题的Web信息采集技术研究.docx_第3页
第3页 / 共47页
基于主题的Web信息采集技术研究.docx_第4页
第4页 / 共47页
基于主题的Web信息采集技术研究.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

基于主题的Web信息采集技术研究.docx

《基于主题的Web信息采集技术研究.docx》由会员分享,可在线阅读,更多相关《基于主题的Web信息采集技术研究.docx(47页珍藏版)》请在冰豆网上搜索。

基于主题的Web信息采集技术研究.docx

基于主题的Web信息采集技术研究

基于主题的Web信息采集技术研究

目 录

第一章   引言……………………………………………………………………………….1

1.1背景...1

1.2本文安排...2

第二章   Web信息采集概述………………………………………………………………4

2.1Web信息采集系统的基本原理...4

2.2Web信息采集系统的基本结构...4

2.3Web信息采集面临的主要困难和相应的技术手段:

6

2.4采集系统实例...8

第三章   Web信息采集的研究现状………………………………………………….....11

3.1基于整个Web的信息采集...11

3.2增量式Web信息采集:

12

3.3基于主题的Web信息采集:

12

3.4基于用户个性化的Web信息采集...13

3.5基于Agent的信息采集...14

3.6迁移的信息采集...15

3.7基于元搜索的信息采集:

15

3.8小结...15

第四章   基于主题的Web信息采集基本问题研究…………………………………   ...17

4.1基于主题的Web信息采集的定义...17

4.2基于主题的Web信息采集的优点...17

4.3基于主题的Web信息采集的分类...18

4.4主题页面在Web上的分布特征...19

4.5相关性判别算法研究...21

第五章   基于主题的Web信息采集系统模型及我们的对策………………………   ...37

5.1系统模型...37

5.2模型中的关键问题及我们的策略...37

第六章   主题选择………………………………………………………………………...41

6.1主题的定义...41

6.2主题分类目录...41

6.3Web上的主题分类目录的特点...42

6.4主题选择策略...42

第七章   Spider采集……………………………………………………………………44

7.1Spider的系统模型...44

7.2采集算法及实现...45

第八章   页面分析……………………………………………………………………...…49

8.1HTML语法分析...49

8.2页面中正文的提取...49

8.3页面中链接的提取...50

8.4页面中标题的提取...51

第九章   URL、页面与主题的相关性判定…………………………………………...…52

9ž1URL与主题的相关性判定——IPageRank算法...53

9.2页面与主题的相关性判定——向量空间模型算法...56

第十章   系统的实现与总结…………………………………………………………...…58

10.1系统实现情况...58

10.2系统测试结果...58

10ž3进一步的工作...62

10.4结论...62

参考文献   …………………………………………………………………………………...64

致   谢   …………………………………………………………………………………...68

作者简介……………………………………………………………………………………69

                                                                                                                                                          第一章        引言

1.1背景

随着Internet/Intranet的迅速发展,网络正深刻地改变着我们的生活。

而在网上发展最为迅猛的WWW(WorldWideWeb)技术,以其直观、方便的使用方式和丰富的表达能力,已逐渐成为Internet上最重要的信息发布和传输方式。

随着信息时代的到来和发展,Web上的信息如雨后春笋般迅速增长起来。

截止到2000年7月,Internet上的网页数量就已经超过21亿,上网用户超过3亿,而且网页还在以每天700万的速度增加[徐泽平2001]。

这给人们的生活提供了丰富的资源。

然而,Web信息的急速膨胀,在给人们提供丰富信息的同时,又使人们在对它们的有效使用方面面临一个巨大的挑战。

一方面网上的信息多种多样、丰富多彩,而另一方面用户却找不到他们所需要的信息。

因而基于WWW的网上信息的采集、发布和相关的信息处理日益成为人们关注的焦点。

为此,人们发展了以Web搜索引擎为主的检索服务。

为了解决网上信息检索的难题,人们在信息检索领域进行了大量的研究,开发了各种搜索引擎(如Google、Yahoo)。

这些搜索引擎通常使用一个或多个采集器从Internet上收集各种数据(如WWW、FTP、Email、News),然后在本地服务器上为这些数据建立索引,当用户检索时根据用户提交的检索条件从索引库中迅速查找到所需的信息[Bowman1994]。

作为这些搜索引擎的基础和组成部分,Web信息采集正发挥着举足轻重的作用,并且随着应用的深化和技术的发展,它也越来越多的应用于站点结构分析、页面有效性分析、Web图进化、内容安全检测、用户兴趣挖掘以及个性化信息获取等多种服务和研究中。

简单说,Web信息采集是指通过Web页面之间的链接关系,从Web上自动地获取页面信息,并且随着链接不断向所需要的Web页面扩展的过程。

传统的Web信息采集的目标就是尽可能多地采集信息页面,甚至是整个Web上的资源,而在这一过程中它并不太在意采集的顺序和被采集页面的相关主题。

这样做的一个极大好处是能够集中精力在采集的速度和数量上,并且实现起来也相对简单,例如Google采集系统在并行4个采集器时的速度可以达到每秒100页,从而它配合搜索引擎给网络用户带来了很大的便利。

但是,这种传统的采集方法也存在着很多缺陷。

随着WWW信息的爆炸性增长,信息采集的速度越来越不能满足实际应用的需要。

最近的试验表明,即使大型的信息采集系统,它对Web的覆盖率也只有30-40%。

解决这一问题的直接办法是升级信息采集器的硬件,采用处理能力更强的计算机系统,然而这种方法的扩展性有限,性价比也不高。

一个更好的解决方法是采用分布式方法来提高并行能力,但是并行不但增加了系统的开销和设计的复杂性,并且并行换来的效益也随着并行采集器数目的增加而显著地减小。

目前,一般的大型采集系统都采用了并行机制,但并行带来的改善效果仍远不能满足人们的需要。

人们需要从其它角度改善目前的困境。

比如说对整个Web分块采集,并将不同块的采集结果整合到一起,以提高整个Web的采集覆盖率。

Internet信息的分散存储、管理和动态变化也是困扰着信息采集的问题之一。

由于信息源随时可能处于变化之中,信息采集器必须时常地刷新数据,但仍无法避免采集到的页面失效的情况。

对于传统的信息采集来说,待刷新页面数量的巨大使得很多采集系统刷新一遍需要数周到一个月的时间[Aggarwaletal.2001][Brin&Page1998],这使得页面的失效率非常地巨大。

Selberg和Etzioni在1995年的调查发现,通过Internet中最常用的一些搜索引擎查询到的结果URL中,14.9%的目标页面已经失效了[Selberg&Etzioni1995]。

一个显然的缓解办法就是减小采集页面的数量,从而减小刷新一遍的时间,进而减小页面已采集页面的失效率。

传统的基于整个Web的信息采集需要采集的页面数量十分浩大,这需要消耗非常大的系统资源和网络资源,而对这些资源的消耗并没有换来采集到页面的较高利用率,事实上,它们中有相当大的一部分利用率很低。

这是因为,用户往往只关心其中极少量的页面,并且这些页面往往集中在一个主题或几个主题内,而采集器采集的大部分页面对于他们来说是没有用的。

尽管许多用户合起来的效果提高了整个采集到页面的利用率,但仍然显得利用率偏低,这显然是对系统资源和网络资源的一个巨大浪费。

为了有效的提高它们的利用效率,我们有必要另辟蹊径。

对于用户的一般信息查询检索要求,传统信息采集器所组成的搜索引擎能够提供较好的服务,但对于用户更多的具体要求,这种传统的基于整个Web的信息采集所提供的服务就难以令人满意。

对于每个用户来说,尽管他们输入同一个查询词,但他们渴望得到的查询结果却是不一样的,而传统的信息采集和搜索引擎却只能死板地返回相同的结果,这是不合理的,需要进一步提高。

这些问题主要都源于两点:

采集页面的数量过于庞大和采集页面内容的过于杂乱。

对整个Web页面进行分类,按类别采集,基于主题进行采集的思想应运而生。

它有效的减少了采集页面的数量,增加了采集页面的规整程度,进而有效的缓解了上述问题。

因此需要开展对基于主题的Web信息采集研究。

  

1.2本文安排

第二章概述了Web信息采集的基本结构、所面临的主要困难和相应的技术手段。

在第三章里,讨论了Web信息采集的研究现状和热门的发展方向,并通过论述指出基于主题的Web信息采集的迫切性和必要性。

在第四章里,我们讨论了基于主题的Web信息采集的基本问题,重点是对主题页面在Web上的分布和相关性判定算法的研究。

第五章给出了我们设计的基于主题的Web信息采集系统的结构模型,并就搭建一个这种采集系统所面临的关键问题和相应对策做了简单的描述。

在接下来的四章中(从第六章到第九章),我们按照结构模型中的主要部分主题选择、Spider采集、页面分析、URL和页面与主题的相关性判定分别作了较为详细的论述,并给出了我们的设计方案和算法。

最后,在第十章里,我们给出了系统的实验结果和进一步需要研究的问题。

                                                                                                                           第二章        Web信息采集概述

在研究基于主题的Web信息采集之前,让我们先来看看Web信息采集的基本情况,这包括Web信息采集的基本原理、基本结构和主要难题。

它们是从各类Web信息采集系统中抽象出来的,因此代表了比较本质和共性的特征,而对于每个实际的采集系统来说,又与它们有所差别。

为了更好的了解采采集系统,我们在本章的最后列举了两个实例。

2.1数据采集软件的基本原理

基与web数据采集软件,主要是指通过Web页面之间的链接关系,从Web上自动的获取页面信息,并且随着链接不断向所需要的Web页面扩展的过程。

实现这一过程主要是由基与Web数据采集软件来完成的。

粗略的说,它主要是指这样一个程序,从一个初始的URL集出发,将这些URL全部放入到一个有序的待采集队列里。

而采集软件从这个队列里按顺序取出URL,通过Web上的协议,获取URL所指向的页面,然后从这些已获取的页面中提取出新的URL,并将他们继续放入到待采集队列里,然后重复上面的过程,直到采集软件根据自己的策略停止采集。

对于大多数采集软件来说,到此就算完结,而对于有些采集软件而言,它还要将采集到的页面数据和相关处里结果存储、索引并在此基础上对内容进行语义分析。

2.2数据采集软件的基本结构

如图2.1所示,数据采集软件基本上可以划分为七个部分:

URL处理器、协议处理器、重复内容检测器、URL提取器、Meta信息获取器、语义信息解析器和数据库,它们协调起来从Web上获取信息。

图中的箭头表示数据走向。

2.2.1URL处理器

这个部件主要给待采集的URL排序,并根据一定的策略向协议处理器分配URL。

按照采集软件规模的不同,URL可以是多个采集队列,也可以是一个URLServer。

比如,火车头采集系统采用了多个采集队列。

URL处理器主要有三个数据来源:

1)初始的种子URL集,如图中的粗箭头所示;2)从URL提取器传输过来的URL集,它们是从已经采集到的页面中提取出来的;3)页面的Meta、主题以及摘要等信息,来自Meta信息获取器,它们主要用来显示从URL提取器中传输过来的URL的重要性,为在这里排序提供依据。

 

 

                 图2.1 Web信息采集系统基本结构

 

2.2.2协议处理器

这个部件处于系统的底层,主要通过各种Web协议来完成数据的采集。

一般来说协议包括HTTP、FTP、Gopher以及BBS,也有些采集软件根据应用的需要采集WebChat、ICQ等特殊信息。

但从主流上看,仍以HTTP为主。

2.2.3重复内容检测器

Web上存在着大量的镜像页面和内容,最近的研究表明,将近30%的页面是重复的。

这极大的浪费了网络的带宽和影响了系统的效率。

所以,重复内容检测变成了采集软件,特别是大型采集系统的重要组成部分。

要采用的检测方法,根据系统的需要,从简单的段落匹配到复杂的相似度比较中选择。

2.2.4URL提取器

对于采集到的页面,经过重复内容检测后,需要分析其中的链接,并对链接进行必要的转换,这些任务由URL提取器来完成。

首先判别页面类型,对类型为“text、html、shtml和htm”等的页面进行分析链接。

页面的类型可由应答头分析得出,有些WWW站点返回的应答信息格式不完整,此时须通过分析页面URL中的文件扩展名来判别页面类型。

需要分析的标记包括等。

页面链接中给出的URL可以是多种格式的,可能是完整的包括协议、站点和路径的,也可能是省略了部分内容的,或者是一个相对路径。

为处理方便,一般先将其规格化成统一的格式。

2.2.6语义信息解析器

根据采集策略的不同,有些采集器还有语义信息解析器。

这里所说的语义信息解析就是指对文本内容建立简单的索引。

因为它在一定程度上挖掘了页面内容的语义,所以叫做语义信息解析器。

对于一些大型的信息采集器,比如AltaVista,由于采集的信息量很大,对语义挖掘的深度要求较高,所以一般将页面语义挖掘与信息采集独立开来,而用专门的Indexer等部件进行处理。

对于一些轻量级的采集软件,比如基于用户个性化的采集,因为采集的信息量不大(这样语义信息解析就不太影响采集效率)和采集过程中更需要语义信息制导,所以它们也常用到语义信息解析器。

2.2.7数据库

经过重复内容检测后的页面数据、提取出来的Meta信息、主题和摘要等都要存入数据库,以备其他应用使用。

由于数据较多,所以在存入数据库之前,数据一般要进行压缩。

2.3基与Web数据采集软件面临的困难和相应的技术手段:

采集的过程似乎比较简单,但实际上,它却存在着许多技术上和工程上的挑战。

2.3.1Web的特点

Web与传统的信息媒介相比,主要存在以下几个特点:

1)信息容量的巨大性,在1998年7月,Web上的静态文本大约有3亿5千万个,并且以每月600GB的速度增长[Kahle1997];2)Web的动态性,每天Web中的内容和Web的结构都在变化着;3)Web的异构性,Web中包含的文件类型各式各样,包括图像、图片、声音、文本以及Script等;4)Web页面的重复性,最近的研究表明,将近30%的页面是重复的;5)高链接性,平均每个页面有超过8个链接指向别的页面;6)多语种性,现在Web上的页面语种超过了100个。

这为Web的有效采集,特别是为搜索引擎的采集提出了巨大的难题。

2.3.2Web采集面临的技术困难和相应手段

从技术角度看,挑战主要有以下几点:

第一,Web信息容量的巨大性使得采集器不可能采集到所有的Web页面,而且很多采集系统也没有足够大的空间来存放采集到的所有页面。

如何提高采集的效率,即在单位时间内采集到尽可能多的高质量页面,是采集系统面临的一个难题。

目前,有五种页面质量高低的计算方法:

1).Similarity(根据页面和指导采集的问题之间的相似度);2).Backlink(根据这个页面在Web图中的入度大小);3).PageRank(根据指向它的所有页的平均权值之和,一页的平均权值定义为这页的权值除以这页的出度);4).Forwardlink(根据这个页面在Web这个图中的出度的大小),5).Location(根据这个页面的位置信息)。

Cho中对比了宽度优先方法、Backlink方法和Pagerank方法[Cho,Molina&Page1999],并根据试验比较得出PageRank方法最好。

这是因为Pagerank方法反映的是一种全局的页面质量分布,它能够较快的发现全局的高质量页面。

第二,并行性问题。

页面的采集速度一直是影响采集器性能的重要原因。

一方面,Web中的页面数量非常庞大,另一方面,网络中的连接速度又非常缓慢,这客观上要求系统需要并行。

然而,要并行又引入新的问题:

1).重复性(Overlap),多个不同的采集器或采集线程在同时采集的时候增加了重复页面;2).质量问题(Quality),单个系统能够根据算法采集到全局最优的页面。

而如果并行,每个采集线程只能看到局部页面,它能够采集到的页面质量有所下降;3).通信带宽代价(Communicationbandwidth),为了并行,各个采集线程之间不可避免的要有一些通信。

一般来说,采集系统采用两种模式来并行:

局域网并行模式(所有的采集线程都运行在同一个局域网内,它们之间通过高速的内连接进行通信)和分布式并行模式(采集系统被分布在地域上较远的Internet上,通过网络进行远程通信)。

在并行时,采集系统也可选用以下三种方式合作:

1).独立方式,各个采集器之间独立的采集各自的页面,互不通信;2).动态分配方式,有一个中央协调器,动态的协调分配URL给各个采集器;3).静态分配方式,将URL按事先划分分配给各个采集器。

对于静态分配方式,存在一种跨区链接(Inter-link,指一个采集器在提取链接时遇到的不属于自己采集范围的链接)。

难题在于跨区链接并不一定能被它所属于的采集器发现,如果本采集器采集了则可能重复采集,如果不采集则可能漏采。

近期的研究工作针对这种情况比较了三种模式:

1).防火墙模式,完全不采集inter-link页面;2).交叉模式,采集遇到的inter-link页面;3).交换模式(Exchangemode)当采集到inter-link,就将这些链接保存起来,积累到一定数量后传输给相应的采集器进行采集。

实验结果和我们的直觉一样:

交换模式最好:

交换模式最好[Cho2001]。

2.3.3Web采集面临的工程困难和相应手段

从工程角度看:

第一,正如前面分析的,Web中的信息是完全异构、混乱和无序的,文件格式各式各样,网络状况也随时间变化莫测。

所有的这些不确定性因素,为系统实现带来了极大的困难。

这就要求采集系统有完善的异常处理和故障恢复机制,充分考虑到实际网络环境中可能出现的各种情况。

第二,多线程与并行机制使系统变得非常复杂。

在这种复杂的环境下,系统的许多瓶颈变得异常突出,并需要采用多种设计技巧来解决。

比如说,对一个网站的采集不能过分集中,以防止造成网站负担过重

         第三章        Web信息采集的研究现状

目前,Web信息采集技术的发展正如火如荼,在传统的Web信息采集技术的基础上,又出现了许多轻型的各具特色的采集技术。

我们根据国内外流行的看法,结合我们在这方面长期积累的实际经验,把Web信息采集的发展方向分为以下几种:

基于整个Web的信息采集(ScalableWebCrawling),增量式Web信息采集(IncrementalWebCrawling),基于主题的Web信息采集(FocusedWebCrawling),基于用户个性化的Web信息采集(CustomizedWebCrawling),基于Agent的信息采集(AgentBasedWebCrawling),迁移的信息采集(RelocatableWebCrawling),基于元搜索的信息采集(MetasearchWebCrawling)。

实际系统往往是以上几个采集技术的结合。

下面分别予以介绍。

3.1基于整个Web的信息采集

这种信息采集在国外也常叫做ScalableWebCrawling,是一种较传统的采集思想。

主要是指目标为从一些种子URL扩充到整个Web的信息采集。

这种信息采集主要是作为门户搜索引擎和大型的Web服务提供商的数据收集部分。

对于这类信息采集来说,由于采集的范围和数量都非常巨大,所以对采集速度和存储空间要求很高;由于目标是采集整个Web,所以对采集页面的顺序要求相对较低;由于待刷新的页面太多,尽管并行很多的采集器,但仍需数周乃至数月的时间来刷新一次,而且,随着并行采集器数量的增加,整个系统能力的提高越来越小,稳定性却越来越低。

但是,这类信息采集又不能没有,人们不光有个性化需求和具体主题的需求,还有许多广泛主题的需求,而由这类Web信息采集器构建的搜索引擎,恰恰适合搜索广泛的主题。

事实上,这类信息采集仍有很强的应用需求,目前在实际应用中占较为主流的地位。

下面通过简要分析三个实例Google[Brin&Page1998][Cho,Molina&Page1999]、Mercator[Heydon&Najork1999]和InternetArchive[Burner1997]来进一步说明这类信息采集。

GoogleCrawler是一个分布式的基于整个Web的采集器,主要在美国Stanford大学用C/C++设计。

它并没有采用多线程技术,而是采用异步I/O管理事件来实现并行。

它有一个专门的URLServer来为并行的多个采集器维护URL队列。

为了保持高速的获取页面,每个采集器一次同时打开大约300个连接。

在使用4个采集器时,系统的峰值速度大约是每秒100页,相当于每秒大约600K的数据。

由于DNS解析压力很大,Google为每个采集器分配一个DNSCache,这样不需要在每次采集页面时都做一次DNS解析。

Google还使用了许多算法对系统性能进行优化,最著名的就是PageRank算法。

在权衡了时空代价后,Google选用了zlib压缩格式压缩采集到的数据。

康柏系统研究中心研究实现了MercatorWebCrawler。

与Google不同,它主要使用Java实现的,在并行机制上,则采用了多线程技术,一般情况下,每个采集器能够启动数百个线程。

Mercator也有一个单独的URL处理器,用于收集和合并从采集到的页面中提取出来的URL。

它有一个RIS部件,用于去除相同内容的页面,因此有较低的文件重复率8.5%。

Mercator的另一大特点就是可扩展性,例如扩展一种新的采集协议。

设计者声称,在双533MHzCPU、2G内存和118G硬盘环境下,Mercato采集速度是每秒112个文件。

InternetArchive使用异步I/O技术来并行采集整个Web,它的目标就是为整个Web存档。

为此,每个采集器被分配64个站点,同时每个站点的所有页面都被分配给同一个采集器。

在提取链接时,如果提取出的链接仍属于这个采集器,就将这个链接放入相应的待采集队列里,否则将它存在log文件中,积累一段时间后,再按所属站点传输给相应的采集器。

3.2增量式Web信息采集:

这种信息采集在国外也常叫做IncrementalWebCrawling。

传统上,Web采集器根据自己的需要采集足量的信息后停止采集,当一段时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1