网络爬虫实验手册.docx

上传人:b****1 文档编号:2337408 上传时间:2023-05-03 格式:DOCX 页数:10 大小:454.05KB
下载 相关 举报
网络爬虫实验手册.docx_第1页
第1页 / 共10页
网络爬虫实验手册.docx_第2页
第2页 / 共10页
网络爬虫实验手册.docx_第3页
第3页 / 共10页
网络爬虫实验手册.docx_第4页
第4页 / 共10页
网络爬虫实验手册.docx_第5页
第5页 / 共10页
网络爬虫实验手册.docx_第6页
第6页 / 共10页
网络爬虫实验手册.docx_第7页
第7页 / 共10页
网络爬虫实验手册.docx_第8页
第8页 / 共10页
网络爬虫实验手册.docx_第9页
第9页 / 共10页
网络爬虫实验手册.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

网络爬虫实验手册.docx

《网络爬虫实验手册.docx》由会员分享,可在线阅读,更多相关《网络爬虫实验手册.docx(10页珍藏版)》请在冰点文库上搜索。

网络爬虫实验手册.docx

网络爬虫实验手册

网络爬虫

1.实验目标

1.熟悉网络爬虫的相关概念及实现网络爬虫的相关流程。

2.了解WebCollector框架的基本原理。

3.熟练掌握在Eclipse项目中配置使用WebCollector爬虫。

2.前提条件

1.正确安装和配置Java开发环境。

2.了解网络爬虫的相关知识

3.进入WebCollector官方网站下载所需jar包。

3.实验任务及完成标准

本次实验通过WebCollector框架实现一个简单的聚焦网络爬虫。

用户可根据自己的需求定制网络爬虫,设定待爬取的网址、爬取网页的数量、爬取网页的内容等。

通过对该实例的详细介绍来探讨网络爬虫的原理及在实际生活中的应用。

在此实例的基础上,学生需要独立完成更为复杂的聚焦网络爬虫,来爬取更有意义的内容。

具体要求见“4扩展内容”。

3.1建立应用程序项目

打开eclipse,创建本次实验项目htmlCrawler(【File】->【New】->【JavaProject】

)如图1所示。

图1创建工程

3.2在Eclipse项目中配置使用WebCollector爬虫

1选中htmlCrawler右键,选中【New】->【Folder】,输入文件名称“lib”,如下图2所示。

图2创建文件夹

2解压缩webcollector-2.26-bin.zip,拷贝所有的Jar包,放到lib目录中,如图3所示。

图3目录结构图

3将文件夹lib中的所有jar包添加到buildpath中,如图4、图5、图6所示。

图4

图5

图6

依次选中jar包,导入到工程中。

4如果想看WebCollector的源码,可以为Jar包关联源码(可选),如图6、图7所示。

图6

图7

3.3现在可以编写WebCollector爬虫的代码了

新建一个类Crawler.java,继承自BreadthCrawler。

重写visit方法,来实现满足自己需求的爬虫即可。

如图8、图9所示。

图8

图9

3.4抓取河北师大软件学院网站首页的源代码

packagehtmlCrawler;

importjava.io.IOException;

importcn.edu.hfut.dmic.webcollector.model.CrawlDatums;

importcn.edu.hfut.dmic.webcollector.model.Page;

importcn.edu.hfut.dmic.webcollector.plugin.berkeley.BreadthCrawler;

importcn.edu.hfut.dmic.webcollector.util.FileUtils;

publicclassCrawlerextendsBreadthCrawler{

publicCrawler(StringcrawlPath,booleanautoParse){

super(crawlPath,autoParse);

//TODOAuto-generatedconstructorstub

}

@Override

publicvoidvisit(Pagepage,CrawlDatumsnext){

//TODOAuto-generatedmethodstub

try{

System.out.println("正在提取:

"+page.getUrl());

//将爬取的内容写到test.html页

FileUtils.writeFileWithParent("downloads/test.html",page.getContent());

}catch(IOExceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

}

publicstaticvoidmain(String[]args){

//创建爬虫对象

Crawlercrawler=newCrawler("html_crawler",true);

crawler.addSeed("

try{

//启动爬虫

crawler.start

(1);

}catch(Exceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

}

}

控制台输出结果:

2016-02-2514:

23:

06INFOcn.edu.hfut.dmic.webcollector.crawler.Crawler-startdepth1

2016-02-2514:

23:

06INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-opengenerator:

cn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyGenerator

2016-02-2514:

23:

06INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-initsegmentWriter:

cn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager

2016-02-2514:

23:

07INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher--activeThreads=1,spinWaiting=0,fetchQueue.size=0

2016-02-2514:

23:

07INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-fetchURL:

正在提取:

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher--activeThreads=0,spinWaiting=0,fetchQueue.size=0

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-clearallactiveThread

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-closegenerator:

cn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyGenerator

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.fetcher.Fetcher-closesegmentwriter:

cn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager-startmerge

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager-mergefetchdatabase

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager-mergelinkdatabase

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.plugin.berkeley.BerkeleyDBManager-endmerge

2016-02-2514:

23:

08INFOcn.edu.hfut.dmic.webcollector.crawler.Crawler-depth1finish:

TOTALurls:

1

TOTALtime:

2seconds

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2