《如何用java编程构建“网络爬虫”》.pdf

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《如何用java编程构建“网络爬虫”》.pdf

爱博文资料下载网 提供海量资料满足您的求知欲!欢迎常去光顾哦! 本站所有资源部分转载自互联网!版权归作者所有! 如何用java 编程构建 “网络爬虫” 简介 “网络爬虫”或者说“网络蜘蛛”,是一种能访问网站并跟踪链接的程序,通过它,可快 速地画出一个网站所包含的网页地图信息。本文主要讲述如何使用Java 编程来构建一个 “蜘蛛”,我们会先以一个可复用的蜘蛛类包装一个基本的“蜘蛛”,并在示例程序中演 示如何创建一个特定的“蜘蛛”来扫描相关网站并找出死链接。 Java 语言在此非常适合构建一个“蜘蛛”程序,其内建了对HTTP 协议的支持,通过它可 以传输大部分的网页信息;其还内建了一个HTML 解析器,正是这两个原因使Java 语言成 为本文构建 “蜘蛛”程序的首选。 使用“蜘蛛” 文章后面例1 的示例程序,将会扫描一个网站,并寻找死链接。使用这个程序时需先输入 一个URL 并单击“Begin”按钮,程序开始之后,“Begin”按钮会变成“Cancel”按钮。 在程序扫描网站期间,会在“Cancel”按钮之下显示进度,且在检查当前网页时,也会显 示相关正常链接与死链接的数目,死链接将显示在程序底部的滚动文本框中。单击 “Cancel”按钮会停止扫描过程,之后可以输入一个新的URL;如果期间没有单击 “Cancel”,程序将会一直运行直到查找完所有网页,此后,“Cancel”按钮会再次变回 “Begin”,表示程序已停止。 下面将演示示例程序是如何与可复用“Spider”类交互的,示例程序包含在例1 的 CheckLinks 类中,这个类实现了ISpiderReportable 接口,如例2 所示,正是通过这个接 口,蜘蛛类才能与示例程序相交互。在这个接口中,定义了三个方法:第一个方法是 “spiderFoundURL”,它在每次程序定位一个URL 时被调用,如果方法返回true,表示程 序应继续执行下去并找出其中的链接;第二个方法是“spiderURLError”,它在每次程序 检测URL 导致错误时被调用(如“404 页面未找到”);第三个方法是 “spiderFoundEMail”,它在每次发现电子邮件地址时被调用。有了这三个方法,Spider 类就能把相关信息反馈给创建它的程序了。 爱博文资料下载网 提供海量资料满足您的求知欲!欢迎常去光顾哦! 本站所有资源部分转载自互联网!版权归作者所有! 在begin 方法被调用后,“蜘蛛”就开始工作了;为允许程序重绘其用户界面,“蜘蛛” 是作为一个单独的线程启动的。点击“Begin”按钮会开始这个后台线程,当后台线程运行 之后,又会调用“CheckLinks”类的run 方法,而run 方法是由Spider 对象实例化时启动 的,如下所示: spider = new Spider(this); spider.clear(); base = new URL(url.getText()); spider.addURL(base); spider.begin(); 首先,一个新的Spider 对象被实例化,在此,需要传递一个“ISpiderReportable”对象 给Spider 对象的构造函数,因为“CheckLinks”类实现了“ISpiderReportable”接口, 只需简单地把它作为当前对象(可由关键字this 表示)传递给构造函数即可;其次,在程 序中维护了一个其访问过的URL 列表,而“clear”方法的调用则是为了确保程序开始时 URL 列表为空,程序开始运行之前必须添加一个URL 到它的待处理列表中,此时用户输入 的URL 则是添加到列表中的第一个,程序就由扫描这个网页开始,并找到与这个起始URL 相链接的其他页面;最后,调用“begin”方法开始运行“蜘蛛”,这个方法直到“蜘蛛” 工作完毕或用户取消才会返回。 当“蜘蛛”运行时,可以调用由“ISpiderReportable”接口实现的三个方法来报告程序当 前状态,程序的大部分工作都是由“spiderFoundURL”方法来完成的,当“蜘蛛”发现一 个新的URL 时,它首先检查其是否有效,如果这个URL 导致一个错误,就会把它当作一个 死链接;如果链接有效,就会继

文档评论(0)

mwap + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档