如何用java编程构建“网络爬虫”.pdf 立即下载
2024-09-12
约1.6万字
约21页
0
217KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

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

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

预览

免费试读已结束,剩余 16 页请下载文档后查看

15 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

http://www.ibwen.com爱博文资料下载网
提供海量资料满足您的求知欲!欢迎常去光顾哦!
本站所有资源部分转载自互联网!版权归作者所有!
-------------------------------------------------------
如何用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

类就能把相关信息反馈给创建它的程序了。
http://www.ibwen.com爱博文资料下载网
提供海量资料满足您的求知欲!欢迎常去光顾哦!
本站所有资源部分转载自互联网!版权归作者所有!
-------------------------------------------------------

在begin方法被调用后,“蜘蛛”就开始工作了;为允许程序重绘其用户界面,“蜘蛛”

是作为一个单独的线程启动的。点击“Begin”按钮会开始这个后台线程,当后台线程运行

之后,又会调用“CheckLinks”类的run方法,而run方法是由Spider对象实例化时启动

的,如下所示:

spider=newSpider(this);
spider.clear();
base=newURL(url.getText());
spider.addURL(base);

spider.begin();

首先,一个新的Spider对象被实例化,在此,需要传递一个“ISpiderReportable”对象

给Spider对象的构造函数,因为“CheckLinks”类实现了“ISpiderReportable”接口,

只需简单地把它作为当前对象(可由关键字this表示)传递给构造函数即可;其次,在程

序中维护了一个其访问过的URL列表,而“clear”方法的调用则是为了确保程序开始时

URL列表为空,程序开始运行之前必须添加一个URL到它的待处理列表中,此时用户输入

的URL则是添加到列表中的第一个,程序就由扫描这个网页开始,并找到与这个起始URL

相链接的其他页面;最后,调用“begin”方法开始运行“蜘蛛”,这个方法直到“蜘蛛”

工作完毕或用户取消才会返回。

当“蜘蛛”运行时,可以调用由“ISpiderReportable”接口实现的三个方法来报告程序当

前状态,程序的大部分工作都是由“spiderFoundURL”方法来完成的,当“蜘蛛”发现一

个新的URL时,它首先检查其是否有效,如果这个URL导致一个错误,就会把它当作一个

死链接;如果链接有效,就会继续检查它是否在一个不同的服务器上,如果链接在同一服

务器上,“spiderFoundURL”返回true,表示“蜘蛛”应继续跟踪这个URL并找出
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

如何用java编程构建“网络爬虫”

文档大小:217KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用