网络爬虫软件研究与开发.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络爬虫软件研究与开发

网络爬虫软件研究与开发   摘 要:作为一种快捷、高效访问网络海量数据的工具,通用搜索引擎自诞生以来备受人们喜爱。然而在设计上它却存在着很多不足,并且随着万维网的快速发展而日益不能满足人们的需求。基于这种背景,用于对网页进行定向抓取的主题爬虫应运而生。主题爬虫的设计理念是利用最少的资源,尽可能快而准确地抓取网络中用户关心的网页,目前已经有着非常广泛的应用。首先,了解主题爬虫提出的历史背景及当前国内外的发展状况,分析与主题爬虫设计相关的技术知识,如HTTP协议、HTML解析、中文分词等。其次,提出使用向量空间模型进行主题相关度计算。为了能够充分利用网页中丰富的启发式信息,综合运用了网页内容分析和网页链接分析技术。最后,基于对主题爬虫设计与实现方法的研究,使用Java开发一个多线程主题爬虫。      ??   关键词:主题爬虫;向量空间模型;主题相关度;爬虫阻止协议??   中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2011)05-0142-03?お?   ??      1 背景及发展状况??    万维网诞生以来,其独特的魅力极大地激发了人类创作的积极性,短短十几年便发展成为了目前世界上规模最大的公共数据源。然而人类的接受能力却是十分有限的,因此便产生了一种能够高效访问网络资源的需求。在这种背景下,通用搜索引擎应运而生,如比较知名的Baidu、Google。??    爬虫(Crawler),又称蜘蛛(Spider)或者机器人(Robot),是一种能够高效抓取网络资源的程序。通用搜索引擎设计中用于抓取网络资源的爬虫被称为通用爬虫,这种爬虫的设计目标是尽可能快而多地抓取网络中的各种资源,具有很强的通用性。但是,随着万维网的不断发展及人类的进步,通用爬虫的应用暴露出了很大的局限性。比如大量不相关网络资源被抓取、严重浪费网络带宽、不能够支持语义查询等等。为解决所面临的问题,用于定向抓取网络资源的主题爬虫被提上了研究日程。??    最佳优先爬虫是一种简单、高效的主题爬虫。在页面主题相关度评价上,它采用了经典的向量空间模型;而在对页面中所含链接进行主题相关度预测打分时则充分考虑了链接锚文本、链接所在页面的主题相关度、兄弟链接等等各种启发式信息。随着人们对主题爬虫认识和研究的深入,各种具有智能性的算法被相继用于了主题爬虫的设计实现,如蚁群算法、遗传算法、人工鱼群算法等等。这类智能爬虫所搜集到的网页具有更强的主题相关性,并且在查全率、查准率上有了很大的提高。??   2 研究分析??   (1)异于通用爬虫,主题爬虫设计中加入了主题相关度评价模块。所以不能苛求它达到通用爬虫的工作效率,但是我们应该将其维持在可以接受的范围之内。因为无论主题爬虫的设计有多么巧妙,如果工作效率不能提升上去,是不可能得到用户认同的。??   (2)为充分利用CPU空闲时间(包括其他各种系统资源)、提高主题爬虫的工作性能,采用多线程编程技术来设计实现主题爬虫。??   (3)主题爬虫需要与Web服务器进行礼貌的交互:其一要通过HTTP请求中的User-Agent域报告自己的身份;其二要遵循爬虫阻止协议,分析robots.txt文件。??   (4)由于相同或者相似页面的重复抓取不仅会浪费网络带宽、系统资源,还会严重降低用户体验,主题爬虫应该避免同一个网页或者相似网页的重复抓取。??   (5)主题爬虫工作过程中应尽力避免爬虫陷阱,以免对Web服务器造成不友好的DoS攻击。??   (6)爬虫程序通常都是在无人照顾的情况下运行的,因而设计一个用于事后问题诊断的爬行日志则显得尤为重要。并且所设计的日志文件应至少包括时间戳和URL,以便同时为之后的数据统计分析打下基础。??   (7)主题爬虫的工作性能是受多方面因素影响的,如网络带宽、系统资源、种子质量等。需要支持用户对主题爬虫进行一些爬取参数上的设置,以便更好的发挥主题爬虫的工作效率。??   (8)为了便于了解主题爬虫的工作状况,所设计的主题爬虫应该实时的向用户提供多方面爬取信息,如抓取时间、网页数目、抓取速度等。??   3 系统分析??   3.1 系统架构??    在主题爬虫正式开始页面抓取之前需要由用户提供一些种子。它们是用户精选的一些质量比较高的页面链接,用于对爬取主题的描述。主题爬虫就会启动多个工作线程用于爬取网络中主题相关的资源。为了能够方便、简单的管理各个工作线程,需要设置爬虫管理员,主要任务在于保证各个工作线程对工作队列的同步访问。其中的线程调度模块是由计算机操作系统来管理。由于各个工作线程的工作流程及职能是相同的,需要以一个工作线程作为分析对象。一个工作线程启动后,首先需要向爬虫管理员申请一个任务(即待下载页面的UR

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档