- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Crawler实验报告
Crawler实验报告
200730482084 余悦
1. 实验目的
? 掌握 crawler 的工作原理及实现方法;
? 熟悉网页搜集的整个流程及操作步骤;
? 掌握 crawler 应用程序的编写、调试和运行
2. 实验内容
以 为种子开始机抓取。
2.1 设计并实现crawler 程序
对 crawler 的功能要求如下,但不限于此:
(1) 能够搜集本站内的所有网页,能提取出其中的URL 并加入到待搜集的URL 队列
中,对非本网站域名的URL,只允许搜集首页,记录发现的URL 即可;对搜集的结果,产
生2 个URL 列表:站内搜集URL、非站内(站外)发现URL;
(2)使用User-agent 向服务器表明自己的身份;
(3)能对HTML 网页进行解析,提取出链接URL,能判别提取的URL 是否已处理过,
不重复下载和解析已搜集过的网页;
(4)能够对crawler 的一些基本参数进行设置,包括:搜集深度(depth)、文件类型、
文件大小等。
(5)对搜集的过程生成日志文本文件,格式为三元组:
时间戳(timestamp) Action URL
Action 可表示当前的处理动作,例如processing(处理),parsing(解析),downloading
(下载)等。对Action 的定义,请在实验报告中详细说明。
(6)遵循礼貌规则。必须分析robots.txt 文件和meta tag 有无限制;一个线程抓完一个
网页后要适当停顿(sleep);最多允许与被搜集站点同时建立2 个连接(本地做网页解析的
线程数则不限)。
采用多线程并行编程技术,提高搜集速度。
2.2 实验结果统计分析
基于所生成的日志文件,产生搜集统计信息:包括搜集速度(网页数/秒)、搜集完成所
需时间、搜集深度与站内总共搜集的网页个数、发现的站外网页个数等的关系等,最好图表
说明;并做实验分析。
2.3 Crawler 图形界面(可选)
设计并实现 GUI 图形用户界面或web 界面,通过界面管理crawler,包括crawler 参数
设置、carwler 启停、URL 队列管理(增删)、crawler 状态监控(已搜集的页面、深度等、
平均搜集时间、网络流量)等。
【注】
(1)编程语言每个人根据自己的情况选择,鼓励使用java 语言;
(2)需对源代码的重要变量和所有类、方法加注释;请遵守编程规范,如类、方法、
文件等的命名规范;
3.实验环境
Windows操作系统,安装elipse/Myelipse等Java编辑软件。
4.Crawler设计思路
首先抓取网页,然后分析、输出未检索过的网页并将该网页存储在记录中,以便判断后续网页是否已经检索过。
设计流程:
具体设计如下:
Callback.java用来判断网页是否已经访问过,并将未访问过的网页加入到URLList.java的记录中。
Crawler.java是主程序,用来执行Crawler,浏览网页:
Fetcher.java抓取网页:
Parser.java分析网页的组成:
URLList.java存储已经访问过的网页:
5.实验结果
实验结果基本达到预期实验目标。Crawler的爬行策略是指当Crawler搜索到一个网页之后,下一步应该转移到哪一个网页的方法。优点是能遍历所有网页,缺点是资源耗费大。我认为Crawler不具备访问动态网页的功能,有待改进。
6.实验心得与体会
通过本次实验,我初步了解了Crawler的工作原理及设计Crawler程序的一般步骤,加深了我对网页检索的理解,在本次实验中,我也遇到了不少问题,通过查阅资料,最后都得到了解决。该程序还有许多待完善的地方,在以后学习中我力争加以完善。
文档评论(0)