网络爬虫的设计与实现毕业设计(论文)_第1页
网络爬虫的设计与实现毕业设计(论文)_第2页
网络爬虫的设计与实现毕业设计(论文)_第3页
网络爬虫的设计与实现毕业设计(论文)_第4页
网络爬虫的设计与实现毕业设计(论文)_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)说明书题目:网络爬虫设计与实现毕业设计(论文)任务书题目:网络爬虫设计与实现独创声明本人郑重声明:所呈交的毕业设计 (论文 ),是本人在指导老师的指导下,独立进行研究工作所取得的成果, 成果不存在知识产权争议。尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。 对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。本声明的法律后果由本人承担。作者签名:二〇一〇年九月二十日毕业设计(论文)使用授权声明本人完全了解滨州学院关于收集、保存、使用毕业设计(论文)的规定。本人愿意按照学校要求提交学位论文的印刷本和电子版, 同意学校保存学位论文的印刷本和电子版, 或采用影印、 数字化或其它复制手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用。(保密论文在解密后遵守此规定)作者签名:二〇一〇年九月二十日原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。 )互联网是一个庞大的非结构化的数据库, 将数据有效的检索并组织呈现出来有着巨大的应用前景。 搜索引擎作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。 但是,这些通用性搜索引擎也存在着一定的局限性。 不同领域、不同背景的用户往往具有不同的检索目的和需求, 通用搜索引擎所返回的结果包含大量用户不关心的网页。 所以需要一个能基于主题搜索的满足特定需求的网络爬虫。为了解决上述问题, 参照成功的网络爬虫模式, 对网络爬虫进行研究, 从而能够为网络爬虫实现更深入的主题相关性,提供满足特定搜索需求的网络爬虫。二、参考文献[1]Winter.中文搜索引擎技术解密:网络蜘蛛 [M].北京:人民邮电出版社,2004年.[2]Sergey等. TheAnatomyofaLarge-ScaleHypertextualWebSearchEngine[M].北京:清华大学出版社, 1998年.[3]Wisenut.WiseNutSearchEnginewhitepaper[M].北京:中国电力出版社,2001年.[4]GaryR.WrightW.RichardStevens .TCP-IP协议详解卷 3:TCP事务协议,HTTP,NNTP和UNIX域协议[M].北京:机械工业出版社, 2002年1月.罗刚王振东.自己动手写网络爬虫 [M].北京:清华大学出版社, 2010年10月.李晓明,闫宏飞,王继民.搜索引擎:原理、技术与系统——华夏英才基金学术文库 [M].北京:科学出版社, 2005年04月.三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求。 )本课题的主要目的是设计面向主题的网络爬虫程序, 同时需要满足的是具有一定的性能,要考虑到网络爬虫的各种需求。网络爬虫应用宽度搜索技术。 对url进行分析, 去重。网络爬虫使用多线程技术,让爬虫具备更强大的抓取能力。 网络爬虫要实现对特定主题的爬取。 网络爬虫还要完成信息提取任务,对于抓取回来的网页提取出来 :新闻、电子图书、行业信息等。对网络爬虫的连接网络设置连接及读取时间,避免无限制的等待。研究网络爬虫的原理并实现爬虫的相关功能。最终实现的网络爬虫应该能根据设定的主题, 从设定的 url进行一定深度的搜索,并最终得到需要的数据。指导教师(签字)年月日审题小组组长(签字)月日天津大学本科生毕业设计(论文)开题报告课题名称网络爬虫设计与实现学院名称软件学院专业名称软件工程学生姓名张凤龙指导教师陈锦言(内容包括:课题的来源及意义,国内外发展状况,本课题的研究目标、研究内容、研究方法、 研究手段和进度安排, 实验方案的可行性分析和已具备的实验条件以及主要参考文献等。 )一.课题的来源及意义互联网是一个庞大的非结构化的数据库, 将数据有效的检索并组织呈现出来有着巨大的应用前景。 搜索引擎作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。 但是,这些通用性搜索引擎也存在着一定的局限性。 不同领域、不同背景的用户往往具有不同的检索目的和需求, 通用搜索引擎所返回的结果包含大量用户不关心的网页。 为了解决这个问题, 一个灵活的爬虫有着无可替代的重要意义。二.国内外发展状况对于网络爬虫的研究从上世纪九十年代就开始了, 目前爬虫技术已经趋见成熟,网络爬虫是搜索引擎的重要组成部分。网络上比较著名的开源爬虫包括Nutch,Larbin,Heritrix。网络爬虫最重要的是网页搜索策略(广度优先和最佳度优先) 和网页分析策略 (基于网络拓扑的分析算法和基于网页内容的网页分析算法)。三.研究目标本论文主要研究搜索引擎的搜索器(网络爬虫程序)的设计与实现 ,实现简单的可在后台自动运行的爬虫程序。可以多线程进行抓取。可以进行面向主题的抓取。

本课题研究的内容是如何使网络爬虫灵活高效。如何具备更强的抓取能力。如何分辨重复的网页内容。如何确定主题相关性。对于网络时延等的处理。五.研究方法网络爬虫应用宽度搜索技术。 对url进行分析, 去重。网络爬虫使用多线程技术,让爬虫具备更强大的抓取能力。 网络爬虫还要完成信息提取任务, 对于抓取回来的网页提取出来新闻等信息。对网络爬虫的连接网络设置连接及读取时间,避免无限制的等待。研究网络爬虫的原理并实现爬虫的相关功能。六.研究手段参考网上开源的网络爬虫和各种网络爬虫相关的书籍, 在windows系统环境五.本课题进度安排:2010.12.20 五.本课题进度安排:2010.12.20 — 2011.03.102011.03.11 — 2011.03.122011.03.13 — 2011.04.24并完成进行代码编写2011.04.25 — 2011.04.302011.05.01 — 2011.05.222011.05.23 — 2011.06.22查阅资料完成任务书 ,完成开题报告开题报告会查阅资料, 进行论文基本章节的写作, 完成初稿,毕业设计中期报告会系统设计结束并再次检查系统的可靠性。完成论文及答辩六.本课题可行性分析网络爬虫目前已经比较普遍, 国内外有众多对网络爬虫的研究成果, 大部分年月日年月日八.实验条件Windows操作系统 ;互联网九.主要参考文献[1]Winter.中文搜索引擎技术解密:网络蜘蛛 [M].北京:人民邮电出版社,2004年.[2]Sergey等.TheAnatomyofaLarge-ScaleHypertextualWebSearchEngine[M].北京:清华大学出版社, 1998年.[3]Wisenut.WiseNutSearchEnginewhitepaper[M].北京:中国电力出版社,2001年.[4]GaryR.WrightW.RichardStevens .TCP-IP协议详解卷 3:TCP事务协议,HTTP,NNTP和UNIX域协议[M].北京:机械工业出版社, 2002年1月.罗刚王振东.自己动手写网络爬虫 [M].北京:清华大学出版社, 2010年10月.李晓明,闫宏飞,王继民.搜索引擎:原理、技术与系统——华夏英才基金学术文库 [M].北京:科学出版社, 2005年04月.选题是否合适: 是□ 否□课题能否实现: 能□ 不能□指导教师(签字)年月日选题是否合适: 是□ 否□课题能否实现: 能□ 不能□审题小组组长(签字)摘要本课题的主要目的是设计面向主题的网络爬虫程序, 同时需要满足的是具有一定的性能,考虑到网络爬虫的各种需求。网络爬虫应用宽度搜索技术。 对url进行分析, 去重。网络爬虫使用多线程技术,让爬虫具备更强大的抓取能力。 对网络爬虫的连接网络设置连接及读取时间,避免无限制的等待。 为了适应不同需求, 使网络爬虫可以根据预先设定的主题实现对特定主题的爬取。研究网络爬虫的原理并实现爬虫的相关功能。关键词:网络爬虫;面向主题;多线程ABSTRACTThemainpurposeofthisprojectistodesignsubject-orientedwebcrawlerprocesswhichisalsorequiredtomeetcertainperformance,takingintoaccountthediverseneedsofwebcrawlers.WebCrawlerusesthetechnology.ofBreadth-firstsearch.Webcrawlerusesmulti-threadedtechnology,sothatspiderscrawlcanhavemorepowerfulcapabilities.SetconnectiontimeandreadtimeofthewebconnectionoftheWebcrawler,toavoidunlimitedwaiting.Inordertomeetdifferentneeds,sothatcrawlerscanachievepre-setthemecrawlingaspecifictopic.Researchtheprinciplewebcrawlerandandrealizetherelatedfunctions.Keywords:Webcrawler;subject-oriented;multi-threading天津大学 2007天津大学 2007届本科生毕业设计(论文)天津大学 2007天津大学 2007届本科生毕业设计(论文)目录TOC\o"1-5"\h\z第一章 概述 1课题背景 1\o"CurrentDocument"网络爬虫的历史和分类 1\o"CurrentDocument"网络爬虫的历史 1网络爬虫的分类 2\o"CurrentDocument"网络爬虫的发展趋势 3\o"CurrentDocument"第二章 相关技术背景 5\o"CurrentDocument"网络爬虫的定义 5\o"CurrentDocument"网页搜索策略介绍 5\o"CurrentDocument"广度优先搜索策略 5最佳优先搜索策略 6\o"CurrentDocument"判断相关度算法 6第三章 网络爬虫模型的分析和概要设计 8网络爬虫的模型分析 8\o"CurrentDocument"网络爬虫的搜索策略 8\o"CurrentDocument"网络爬虫的主题相关度判断 9网络爬虫的概要设计 11第四章 网络爬虫模型的设计和实现 14\o"CurrentDocument"网络爬虫总体设计 14网络爬虫具体设计 14\o"CurrentDocument"爬取网页 14\o"CurrentDocument"分析网页 15判断相关度 16\o"CurrentDocument"保存网页信息 17\o"CurrentDocument"数据库设计和存储 17\o"CurrentDocument"多线程的实现 17\o"CurrentDocument"附加功能 18\o"CurrentDocument"整体流程 18\o"CurrentDocument"第五章 测试 20\o"CurrentDocument"第六章 总结和展望 24天津大学 2007天津大学 2007届本科生毕业设计(论文)generalstrategydoesnotmattermuch.Hence,webelievethatcachingperformancewillbeverysimilarforanyalternativecrawlingstrategy.Wecantrytoimplementotherstrategiesourselves,butideallywewoulduseindependentcrawls.Unfortunately,crawlingonwebscaleisnotasimpleendeavor,anditisunlikelythatwecanobtaincrawllogsfromcommercialsearchengines.Inviewoftheobservedfactthatthesizeofthecacheneededtoachievetopperformancedependsonthenumberofthreads,thesecondquestioniswhetherhavingaper-threadcachemakessense.Ingeneral,butnotalways,aglobalcacheperformsbetterthanacollectionofseparatecaches,becausecommonitemsneedtobestoredonlyonce.However,thisassertionneedstobeverifiedintheURLcachingcontext.ThethirdopenquestionconcernstheexplanationweproposeinSection5regardingthescopeofthelinksencounteredonagivenhost.Ifourmodeliscorrectthenithascertainimplicationsregardingtheappropriatemodelforthewebgraph,atopicofconsiderableinterestamongawidevarietyofscientists:mathematicians,physicists,andcomputerscientists.Wehopethatourpaperwillstimulateresearchtoestimatethecacheperformanceundervariousmodels.Modelswherecachingperformswellduetocorrelationoflinksonagivenhostareprobablyclosertoreality.WearemakingourURLtracesavailableforthisresearchbydonatingthemtotheInternetArchive.要在网络上爬行非常简单:基本的算法是: (a)取得一个网页( b)解析它提取所有的链接 URLs(c)对于所有没有见过的 URLs重复执行 (a)-(c)。但是,网络的大小(估计有超过 40亿的网页)和他们变化的频率(估计每周有 7%的变化)使这个计划由一个微不足道的设计习题变成一个非常 严峻的算法和系统设计挑战。 实际上,光是这两个要素就意味着如果要进行及时地, 完全地爬行网络,步骤( a)必须每秒钟执行大约 1000次,因此,成员检测 (c)必须每秒钟执行超过 10000次,并有非常大的数据储存到主内存中。 这个要求有一个分布式构造,使得成员检测更加复杂。一个非常重要的方法加速这个检测就是用 cache(高速缓存) ,这个是把见过的 URLs存入主内存中的一个(动态)子集中。这个论文最主要的成果就是仔细的研究了几种关于网络爬虫的 URL缓存技术。我们考虑所有实际的算法:随机置换,静态 cache,LRU,和CLOC,K和理论极限: 透视cache和极大的 cache。我们执行了大约 1800次模拟,用不同的 cache大小执行这些算法, 用真实的 log日志数据,获取自一个非常大的 33天的网络爬行,大 约执行了超过 10亿次的http请求。我们的主要的结论是 cache是非常高效的 -在我们的机制里,一个有大约50000个入口的 cache可以完成 80%的速率。有趣的是,这 cache的大小下降到一个临界 点:一个足够的小一点的 cache更有效当一个足够的大一点的 cache只能带来很小的额外好处。 我们推测这个临界点是固有的并且冒昧的解释一下这个现象。1.介绍皮尤基金会最新的研究指出:“搜索引擎已经成为互联网用户不可或缺的工具”,估计在2002年中期,初略有超过 1半的美国人用网络搜索获取信息。因此,一个强大的搜索引擎技术有巨大的实际利益,在这个论文中,我们集中于一方面的搜索技术,也就是搜集网页的过程,最终组成一个搜索引擎的文集。搜索引擎搜集网页通过很多途径,他们中,直接提交 URL,回馈内含物,然后从非web源文件中提取 URL,但是大量的文集包含一个进程叫 crawling或者SPIDERing,他们递归的探索互联网。基本的算法是:FetchapageParseittoextractalllinkedURLsForalltheURLsnotseenbefore,repeat(a)-(c)网络怕从一般开始于一些 种子 URLs。有些时候网络爬虫开始于一个正确连接的页面,或者一个目录就像: ,但是因为这个原因相关的巨大的部分网络资源无法被访问到。 (估计有超过 20%)如果把网页看作图中的节点, 把超链接看作定向的移动在这些节点之间, 那么网络爬虫就变成了一个进程就像数学中的图的遍历一样。不同的遍历策略决定 着先不访问哪个节点,下一个访问哪个节点。 2种标准的策略是深度优先算法和广度优先算法 -他们容易被实现所以在很多入门的算法课中都有教。但是,在网络上爬行并不是一个微不足道的设计习题, 而是一个非常严峻的算法和系统设计挑战因为以下 2点原因:网络非常的庞大。现在, Google需要索引超过 30亿的网页。很多研究都指出,在历史上,网络每 9-12个月都会增长一倍。网络的页面改变很频繁。如果这个改变指的是任何改变,那么有 40%的网页每周会改变。如果我们认为页面改变三分之一或者更多,那么有大约 7%的页面每周会变。这2个要素意味着,要获得及时的,完全的网页快照,一个搜索引擎必须访问 1亿个网页每天。因此,步骤( a)必须执行大约每秒 1000次,成员检测 的步骤(c)必须每秒执行超过 10000次,并有非常大的数据储存到主内存中。另外,网络爬虫一般使用一个分布式的构造来平行地爬行更多的网页,这使成员 检测更为复杂:这是可能的成员问题只能回答了一个同行节点,而不是当地。一个非常重要的方法加速这个检测就是用 cache(高速缓存) ,这个是把见过的 URLs存入主内存中的一个(动态)子集中。这个论文最主要的成果就是仔细的研究了几种关于网络爬虫的 URL缓存技术。我们考虑所有实际的算法:随机置换,静态 cache,LRU,和CLOC,K和理论极限: 透视cache和极大的 cache。我们执行了大约 1800次模拟,用不同的 cache大小执行这些算法, 用真实的 log日志数据,获取自一个非常大的 33天的网络爬行,大 约执行了超过 10亿次的http请求。这个论文像这样组织的:第 2部分讨论在文学著作中几种不同的爬行解决方案和什么样的 cache最适合他们。 第3部分介绍关于一些 cache的技术和介绍了关于cache几种理论和实际算法。第 4部分我们实现这些算法,在实验机制中。第5部分描述和讨论模拟的结果。 第6部分是我们推荐的实际算法和数据结构关于URLcache。第 7部分是结论和指导关于促进研究。2.CRAWLING网络爬虫的出现几乎和网络同期,而且有很多的文献描述了网络爬虫。在这个部分, 我们呈现一个摘要关于这些爬虫程序, 并讨论问什么大多数的网络爬虫会受益于 URLcache。网络爬虫用网络存档雇员多个爬行进程, 每个一次性完成一个彻底的爬行对于64个hosts。爬虫进程储存非本地的 URLs到磁盘;在爬行的最后,一批工作将这些 URLs加入到下个爬虫的每个 host的种子sets中。最初的google爬虫,实现不同的爬虫组件通过不同的进程。 一个单独的 URL服务器进行维护需要下载的 URL的集合; 爬虫程序获取的网页; 索引进程提取关键字和超链接; URL解决进程将相对路径转换给绝对路径。这些不同的进程通过文件系统通信。这个论文的中实验我们使用的 meractor网络爬虫。 Mercator使用了一个独立的集合, 通信网络爬虫进程。 每个爬虫进程都是一个有效的 web服务 器子集;URLs的分配基于 URLs主机组件。没有责任通过 TCP传送这个 URL给网络爬虫,有责任把这些 URLs绑在一起减少 TCP开销。我们描述 mercator很多的细节在第4部分。任何网络爬虫必须维护一个集合,装那些需要被下载的 URLs。此外,不能重复地下载同一个 URL,必须要个方法避免加入 URLs到集合中超过一次。一般的,达到避免可以用维护一个发现 URLs的集合。如果数据太多,可以存入磁盘,或者储存经常被访问的 URLs。3.CACHING在大多数的计算机系统里面, 内存是分等级的, 意思是,存在2级或更多级的内存,表现出不同的空间和速度。举个例,在一个典型的工作站里,有一个非常小但是 非常快的内存,一个大,但是比较慢的 RAM内存,一个非常大胆是很慢的 disk内存。在一个网络环境中,也是分层的。 Caching就是一种想法储存经常 用到的项目从慢速内存到快速内存。Caching术语就像下面: cache是内存用来储存同等大小的元素。 一个cache有k的大小,那么可以储存 k个项目.在每个时间段 ,cache接受到来自一个项目的请求 .如果这个请求项目在这个 cache中,这种情况将会引发一个碰撞并且不需要进一步的动作。另一方面,这种情况叫做 丢失或者失败。如果 cache没有k个项目,那个丢失的项目被加入 cache。另一方面,算法必须选择驱逐一个项目来空出空间来存放那个丢失的项目, 或者不加入那个丢失的项目。 Caching算法的目标是最小化丢失的个数。清楚的,cache越大,越容易避免丢失。因此,一个 caching算法的性能要在看在一个给定大小的 cache中的丢失率。一般的,caching成功有2个原因:不一致的请求。一些请求比其他一些请求多。时间相关性或地方的职权范围。无限 cache(INFINITE)这是一个理论的算法,假想这个 cache的大小要大于明显的请求数。透视 cache(MIN)超过35年以前,L?aszl?oBelady表示如果能提前知道完整的请求序列,就能剔除下一个请求最远的项目。这个理论的算法叫 MIN,因为他达到了最小的数量关于丢失在任何序列中,而且能带来一个飞跃性的性能提升。最近被用到( LRU)LRU算法剔除最长时间没用被用到的项目。 LRU的直觉是一个项目如果很久都没被用过,那么在将来它也会在很长时间里不被用到。尽管有警告“过去的执行不能保证未来的结果”,实际上, LRU一般是非常有效的。但是,他需要维护一个关于请求的优先权队列。 这个队列将会有一个时间浪费和空间浪费。CLOCKCLOCK是一个非常流行的接近于 LRU,被发明与 20世纪 60年代末。一个排列标记着 M0,M1,,.Mk对应那些项目在一个大小为 k的cache中。这个排列可以看作一个圈,第一个位置跟着最后一个位置。 CLOCK控制指针对一个项目在cache中。当一个请求 X到达,如果项目 X在cache中,然后 他的标志打开。否则,关闭标记,知道一个未标记的位置被剔除然后用 X置换。随机置换( RANDO)M随机置换完全忽视过去。如果一个项目请求没在 cache中,然后一个随机的项目将被从 cache中剔除然后置换 .在大多数实际的情况下,随机替换比 CLOCK要差,但并不是差很多。静态caching(STATIC)如果我们假设每个项目有一个确定的固定的可能性被请求,独立的先前的访问历史,然后在任何时间一个撞击在大小为 k的cache里的概率最大, 如果一个cache中包含那 k个项目有非常大的概率被请求。有2个问题关于这个步骤:第一,一般这个概率不能被提前知道;第二,独立的请求,虽然理论上有吸引力,是对立的地方参考目前在大多数实际情况。在我们的情况中,第一种情况可以被解决:我们可以猜想上次爬行发现的最常用的k个URLs适合于这次的爬行的最常用的 k个URLs。(也有有效的技术可以发现最常用的项目在一个流数据中。 因此,一个在线的步骤可以运行的很好)当然,为了达到模拟的目的, 我们可以首先忽略我们的输入, 去确定那个 k个最常用 URLs,然后预装这些 URLs到我们做实验的 cache中。第二个情况是我们决定测试 STATIC的很大的原因: 如果 STATIC运行的很好,Sname结论是这里有很少的位置被涉及。如果 STATIC运行的相对差,那么我们可以推断我们的数据显然是真实被提及的位置,连续的请求是密切相关的。4实验机制Meractor爬虫体系一个Meractor爬虫体系有一组爬虫进程组成, 一般在不同的机器上运行。 每个爬虫进程都是总网络服务器的子集,然后由一些工作线程组成(一般有 500个),他们负责下载和处理网页从这些服务器。举一个例子,每个工作现场在一个系统里用 4个爬行进程。每个工作现场重复地完成以下的操作:它获得一个 URL从URL边境里,一个磁盘数据结构维护被下载的 URL集合;用 HTTP协议下载对应的网页到一个缓冲区中;如果这个网页是 HTM,提取所有的超链接。把提取出来的超链接流转换L为完全链接然后运行通过 URL过滤器,丢弃一些基于 syntacticproperties的链接。比如,它丢弃那些基于服务器联系我们,不能被爬行的链接。URL流被送进主机 Splitter里面,主机 splitter用来分配 URL给爬虫进程通过 URL的主机名。直到大多数的超链接被关联,大部分的 URL(在我们的实验中是81。5%)将被分配给本地爬虫进程;剩下的传说通过 TCP给适当的爬虫进程。本地 URLs流和从爬虫中得到的 URLs流都要送到复制 URL消除器中( DUE)。DUE会除去那些被访问过的 URLs。新的 URLs会被送到 URL边境中去以供以后下载。为了避免重复 URLs,DUE必须维护发现的 URLs的集合。 假设今天的网络包括几十亿有效的 URLs,内存就需要维护这个集合是非常重要的。 Mercator可以被认为可以维护这个集合通过一个分布式的内存中的 hashtable(这个地方是每个爬虫进程维护 URLs的子集时分配给它) ;但是 DUE执行(这个强制 URLs成8-byte的checksums,而且用前 3—bytes来用作hashtable的索引)需要大约5.2bytes每个 URl,意思就是它会用 5GB的RAM每个爬虫机器来维护一个 10亿个 URLs的集合每台机器。这个内存需求非常不合理在很多的设置里,而且实际上,它对于我们超过了硬件的适用性在这个实验里。因此,我们用一个选择性的 DUE来执行那个缓冲器引入 URLs到内存中,但是保存大多的 URLs(或者更好,他们的8-byteschecksum)到一个排序好的队列在磁盘中。基于磁盘的 DUE和主机 Splitter都受益于 URLcaching。给基于磁盘的 DUE加一个cache可以使它丢弃引入的 URLs,发生碰撞在 cache中,替代加入他们到内存缓存区中。而且有个结果 是,内存缓存区要慢些,而且不频繁地和磁盘文件链接。将cache加入到一个主机 Splitter中可以丢弃引入的重复的 URLs代替将它们传入每个节 点,这样可以减少总的网络通信。这个通信的减少非常重要在爬虫进程没有通过高速 LAN连接的时候, 但是被替代成球形分布式。 在这样一个装置中,每个爬虫负 责让webservers关掉它。 Mercator执行一个遍历通过广度优先算法在网络图上。 每个爬虫进程中的线程同时执行。 更重要的是, 下载的行程被 Mercator的politenesspolicy调节,它限制每个爬虫的负载咋一些特殊的网络服务器中。 Mercator的politenesspolicy保证没有服务器不断同时收到多个请求; 而且,它还保证下一个请求会在它的上一个请求几倍的时间内完成(通常是 10倍)。这样一个 politenesspolicy基本在任何一个大量搜索的网络爬虫中,否则爬虫将会陷入繁重的处理中。我们的网络爬虫我们的网络爬虫由 4个CompaqXP1000工作站组成,每个装备一个 667MHz的Alphaprocessor,1.5GB的RAM,144GB的磁盘,和一个 100Mbit/sec的以太网连接。每个机器定位于 PaloAltoInternetExchange,十分接近于 Internet的backbone。这个爬虫运行从 7月12到2002年的9月3日,虽然它活跃地爬行只有 33天。下载时由于不同的硬件和网络故障。爬行过程中,那 4个机器完成了 10.4亿的下载尝试, 7.84亿成功下载。 4.29亿的成功下载文档是 HTML页面。这些页面包含了大约 268.3亿个超链接, 相当于每个页面有 62.55个超链接;但是,中间的数值每个超链接只有 24个,暗示平均的超链接数被一些包含很多链接的页面扩大了。 早期的论文报道每个页面平均只有 8个超链或者 17个超链接。我们提供了 3个解释关于为什么我们每个页面找到了更过的超链接。 首先,我们认为Mercator并没有限制发现 URLs在anchortags,但是更好的是提取所有的 tags在可能包含他们的地方。第二,我们认为他下载页面一直 16MB的大小(一个设置显著地大于平常) ,让它可能遇到 上万个的超链接页面 .第三,大部分的论文报道那些每个页面中唯一的超链接。如果我们只考虑每个页面中唯一的超链接,那么平均值是 47.74,而中间值为 17.那些超链接从这些 HTML中提取出来,加上大约 3800万的 HTTP跳转,在这个爬行中,流入到 HostSplitter中。为了去测试不同 caching算法的效率,我们通过Mercator的HostSplitter组件将所有的引入 URLs打日志到磁盘中 .四个爬虫中的 HostSplitter接收并日志记录了总共 268.6亿个 URLs。完成爬行后,我们浓缩了 HostSplitter日志文件。我们把每个 URLhash化为一个 64—bit的识别码。 我们确信没有故意的碰撞在排序最初的 URL日志文档,而且计算了唯一的 URLs个数。然后我们把这些唯一的 URL数和唯一的识别码数比较,我们决定用一个内存 hashtable在一个内存很大的机器里。数据减少的过程,大小距离 51GB到57GB,而且包含 64亿和71亿个 URLs。为了发现 caching的效率,在一个分布式的爬虫程序里的交互的进程通信,我们也获得了一个日志文件,记录那些 URLs被传给每个爬虫。这个日志文件包含49.2亿个 URLs,大约相当于全部 URLs的 19.5%。我们也浓缩了这个日志文件用同样的方式。然后我们会用这个浓缩的日志文件到我们的模拟中。毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文) ,是我个人在指导教师的指导下进行的研究工作及取得的成果。 尽我所知, 除文中特别加以标注和致谢的地方外, 不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作者签名: 日期:指导教师签名: 日期:使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文; 在不以赢利为目的前提下, 学校可以公布论文的部分或全部内容。作者签名: 日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。 除了文中特别加以标注引用的内容外, 本论文不包含任何其他个人或集体已经发表或撰写的成果作品。 对本文的研究做出重要贡献的个人和集体, 均已在文中以明确方式标明。 本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位TOC\o"1-5"\h\z论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、 缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日独创声明本人郑重声明:所呈交的毕业设计 (论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果, 成果不存在知识产权争议。尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。 对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。本声明的法律后果由本人承担。作者签名:二〇一〇年九月二十日毕业设计(论文)使用授权声明本人完全了解 **学院关于收集、保存、使用毕业设计(论文)的规定。本人愿意按照学校要求提交学位论文的印刷本和电子版, 同意学校保存学位论文的印刷本和电子版, 或采用影印、 数字化或其它复制手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用。(保密论文在解密后遵守此规定)作者签名:二〇一〇年九月二十日基本要求:写毕业论文主要目的是培养学生综合运用所学知识和技能,理论联系实际,独立分析,解决实际问题的能力,使学生得到从事本专业工作和进行相关的基本训练。 毕业论文应反映出作者能够准确地掌握所学的专业基础知识, 基本学会综合运用所学知识进行科学研究的方法, 对所研究的题目有一定的心得体会, 论文题目的范围不宜过宽,一般选择本学科某一重要问题的一个侧面。毕业论文的基本教学要求是:1、培养学生综合运用、 巩固与扩展所学的基础理论和专业知识,培养学生独立分析、 解决实际问题能力、 培养学生处理数据和信息的能力。2、培养学生正确的理论联系实际的工作作风,严肃认真的科学态度。3、培养学生进行社会调查研究;文献资料收集、阅读和整理、使用;提出论点、综合论证、总结写作等基本技能。毕业论文是毕业生总结性的独立作业, 是学生运用在校学习的基本知识和基础理论,去分析、解决一两个实际问题的实践锻炼过程,也是学生在校学习期间学习成果的综合性总结, 是整个教学活动中不可缺少的重要环节。撰写毕业论文对于培养学生初步的科学研究能力,提高其综合运用所学知识分析问题、 解决问题能力有着重要意义。毕业论文在进行编写的过程中,需要经过开题报告、论文编写、论文上交评定、 论文答辩以及论文评分五个过程, 其中开题报告是论文进行的最重要的一个过程,也是论文能否进行的一个重要指标。撰写意义: 1.撰写毕业论文是检验学生在校学习成果的重要措施,也是提高教学质量的重要环节。 大学生在毕业前都必须完成毕业论文的撰写任务。 申请学位必须提交相应的学位论文, 经答辩通过后,方可取得学位。 可以这么说, 毕业论文是结束大学学习生活走向社会的一个中介和桥梁。 毕业论文是大学生才华的第一次显露, 是向祖国和人民所交的一份有份量的答卷, 是投身社会主义现代化建设事业的报到书。一篇毕业论文虽然不能全面地反映出一个人的才华, 也不一定能对社会直接带来巨大的效益,对专业产生开拓性的影响。但是,实践证明, 撰写毕业论文是提高教学质量的重要环节, 是保证出好人才的重要措施。.通过撰写毕业论文,提高写作水平是干部队伍 “四化”建设的需要。党中央要求, 为了适应现代化建设的需要,领导班子成员应当逐步实现“革命化、年轻化、知识化、专业化 ”。这个“四化”的要求,也包含了对干部写作能力和写作水平的要求。.提高大学生的写作水平是社会主义物质文明和精神文明建设的需要。在新的历史时期, 无论是提高全族的科学文化水平,掌握现代科技知识和科学管理方法, 还是培养社会主义新人, 都要求我们的干部具有较高的写作能力。 在经济建设中, 作为领导人员和机关的办事人员,要写指示、通知、总结、调查报告等应用文;要写说明书、广告、解说词等说明文;还要写科学论文、经济评论等议论文。在当今信息社会中, 信息对于加快经济发展速度, 取得良好的经济效益发挥着愈来愈大的作用。 写作是以语言文字为信号, 是传达信息的方式。信息的来源、信息的收集、信息的储存、整理、传播等等都离不开写作。论文种类: 毕业论文是学术论文的一种形式, 为了进一步探讨和掌握毕业论文的写作规律和特点, 需要对毕业论文进行分类。 由于毕业论文本身的内容和性质不同,研究领域、对象、方法、表现方式不同,因此,毕业论文就有不同的分类方法。按内容性质和研究方法的不同可以把毕业论文分为理论性论文、实验性论文、 描述性论文和设计性论文。 后三种论文主要是理工科大学生可以选择的论文形式, 这里不作介绍。 文科大学生一般写的是理论性论文。 理论性论文具体又可分成两种: 一种是以纯粹的抽象理论为研究对象, 研究方法是严密的理论推导和数学运算, 有的也涉及实验与观测, 用以验证论点的正确性。 另一种是以对客观事物和现象的调查、考察所得观测资料以及有关文献资料数据为研究对象, 研究方法是对有关资料进行分析、综合、概括、抽象,通过归纳、演绎、类比,提出某种新的理论和新的见解。按议论的性质不同可以把毕业论文分为立论文和驳论文。 立论性的毕业论文是指从正面阐述论证自己的观点和主张。 一篇论文侧重于以立论为主,就属于立论性论文。立论文要求论点鲜明,论据充分,论证严密, 以理和事实服人。 驳论性毕业论文是指通过反驳别人的论点来树立自己的论点和主张。 如果毕业论文侧重于以驳论为主, 批驳某些错误的观点、见解、理论,就属于驳论性毕业论文。驳论文除按立论文对论点、 论据、论证的要求以外, 还要求针锋相对, 据理力争。按研究问题的大小不同可以把毕业论文分为宏观论文和微观论文。 凡届国家全局性、 带有普遍性并对局部工作有一定指导意义的论文, 称为宏观论文。它研究的面比较宽广,具有较大范围的影响。反之,研究局部性、 具体问题的论文, 是微观论文。 它对具体工作有指导意义,影响的面窄一些。TOC\o"1-5"\h\z另外还有一种综合型的分类方法, 即把毕业论文分为专题型、 论辩型、综述型和综合型四大类:1.专题型论文。这是分析前人研究成果的基础上,以直接论述的形式发表见解, 从正面提出某学科中某一学术问题的一种论文。 如本书第十二章例文中的 《浅析领导者突出工作重点的方法与艺术》 一文,从正面论述了突出重点的工作方法的意义、方法和原则,它表明了作者对突出工作重点方法的肯定和理解。 2.论辩型论文。这是针对他人在某学科中某一学术问题的见解, 凭借充分的论据, 着重揭露其不足或错误之处,通过论辩形式来发表见解的一种论文。 3.综述型论文。这是在归纳、 总结前人或今人对某学科中某一学术问题已有研究成果的基础上, 加以介绍或评论, 从而发表自己见解的一种论文。4.综合型论文。这是一种将综述型和论辩型两种形式有机结合起来写成的一种论文。如《关于中国民族关系史上的几个问题》一文既介绍了研究民族关系史的现状,又提出了几个值得研究的问题。因此,它是一篇综合型的论文。写作步骤: 毕业论文是高等教育自学考试本科专业应考者完成本科阶段学业的最后一个环节, 它

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论