- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北京大学计算机网络体系结构课程
Heritrix 研究报告
Heritrix安装使用代码分析及网站链接分析
北大深圳研究生院信息工程学院
组长:闫应威
组员:霍佳森 胡钊 王超
题目:Heritrix 研究试验报告
摘要:
Heritrix 是一款开源的由Java写成的网络爬虫项目,通过对项目进行安装使用能够了解网络爬虫的一般结构并了解爬虫的各种机制的实现方法,通过对下载网站进行连接分析可以系统掌握pagerank算法并理解网络的一般结构。研究报告主要介绍对Heritrix的研究方法,并对实验结果进行分析。通过介绍Heritrix的使用方法以求用简便的方式加速抓取并输出抓取网站URL之间的图连接关系。
简介:
报告主要针对作业内容进行试验方法上的研究与实验结果上的分析,首先在方法中介绍爬虫安装使用上的技巧,然后介绍如何通过修改代码得到获取网站的连接关系图,最后在实验结果中回答连接关系的数据以及Heritrix的两种机制的实现方式。在连接关系的分析上主要通过PageRank算法来实现对整个拓扑结构的分析。在分析方法上面主要使用了五种方法来提高Heritrix的抓取速度。分析代码的过程中主要参照了Heritrix的参考文档,查找到相应机制的实现类内容。通过对Heritrix的研究与使用可以帮助我们更深入的了解爬虫的实现原理,对以后研究爬虫的各方面性质提供很有意义的参考。通过对获取URL连接的分析有助于了解整个web图结构的性质。
试验使用方法:
1 启动多线程更快
Heritrix采用HostnameQueueAssignmentPolicy来进行对URL处理。url队列以hostname为key,所有相同key的url放置在同一个队列里面,也就是说同一个host下面的所有url都放在一个队列里面,当线程获取url时候,会将该队列放置到同步池中public?class?ELFHashQueueAssignmentPolicy?extends?QueueAssignmentPolicy?
然后 在AbstractFrontiers中加入ELFHashQueueAssignmentPolicy.class.getName()?。
2 修改order.xml更快
序号 配置名 理想值 说明 ?long name=max-time-sec0/long ?3 ?抓取一个网页的最大时间(秒),超过了该时间则不抓取,0表示没有这个限制 ?integer name=max-toe-threads3/integer ?50 ?抓取的线程数,表示有多少个线程去抓取,一般50足够了 ?float name=delay-factor4.0/float ?1.0 ?如果从某个队列抓取一个URL花费N秒,则下次从该队列获取URL去抓取则要延迟N*该值 ?integer name=max-delay-ms20000/integer ?2000 ?队列的最大延迟时间,单位为毫秒 ?integer name=min-delay-ms2000/integer ?0 ?队列的最小延迟时间,单位为毫秒 ?integer name=max-retries30/integer ?5 ?URL抓取失败可以重试的次数,重试次数越少越好 integer name=target-ready-backlog50/integer 200 准备队列中待抓取的URL个数,这些URL无需经过队列等待可以立刻去抓取
解决方法就是添加一个rule,过虑掉非文本类型的文件从而节省抓取时间。
5 修改ExtractorHTML 输出URL图
因为最终进行统计与PageRank算法迭代需要输入的数据为图的邻接表表示结构,因此在抓取过程中能过同时输出URL的图结构将有助于数据统计工作的完成。首先,定义输出的格式为如下:
URL1 URL2 URL4 URL7 URLi *****
URL1为当前的页面URL地址,之后为当前页面解析出来的URL地址,以上面结构排列一行为一个邻接表的一项,将所有URL按照上述格式输出就得到了所需的URL图结构。
然后,对Heritrix中ExtractorHTML进行修改, 具体修改如下:
函数:public void extract(CrawlURI curi)
中添加:
在函数:protected void processLink(CrawlURI curi, final CharSequence value, CharSequence context)中加入:
6 统计URL图中的连接信息:
您可能关注的文档
最近下载
- 2023年教师职称计算机考试题库.pdf
- 建筑工程图集 16J914-1:公用建筑卫生间.pdf VIP
- 小学数学五年级上册期末测试卷及参考答案(能力提升).docx
- 小学生行为习惯的养成教育.pptx VIP
- 小学六年级上册数学期末测试卷含答案(巩固).docx
- 提高预制箱梁外观一次交验合格率QC小组.pptx
- 小学数学三年级下册期中测试卷附答案(达标题).docx
- 人教版四年级数学上册课件 第3单元 角的度量 第1课时 线段、直线、射线和角.pptx VIP
- 小学数学六年级上册期末测试卷带答案(实用).docx
- 父母教育态度的一致性对幼儿社会性发展的研究(国家开放大学、普通本科毕业生适用).docx
文档评论(0)