码迷,mamicode.com
首页 > 其他好文 > 详细

[Nutch]Nutch抓取过程分析

时间:2016-04-29 19:20:04      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

上一篇文章有说明nutch的按照和编译过程,本篇日志主要讲解nutch抓取的过程。

1.抓取的条件

在urls目录下面建立一个文本文件url.txt,将需要抓取的连接写入,如:

http://blog.tianya.cn

2.执行抓取命令

在runtime/local目录下面执行如下命令:

nohup bin/nutch crawl urls -dir data -depth 3 -threads 100 &

3.抓取的过程

运行抓取命令之后,会生成2个目录和1个文件:
技术分享
在logs目录下面有两个文件:
技术分享
在hadoop.log里面有比nohup.out更加详细的执行信息。

来看下nohup.out的log:
技术分享

其中第一句log表示没有solrUrl,直接跳过:
技术分享

后面就是一些执行的参数,在我们执行bin/nutch命令的时候带的参数:
技术分享

然后就开始注入了,注入的目的是将文本的URL传入到CrawlDB里面:
技术分享
从注入的log可以看出,整个过程只花了15s时间。

注入完成之后,就开始创建抓取列表:
技术分享
整个过程花了15s。

然后就开始正式的进行抓取操作了:
技术分享
将抓取的结果保持在如下路径:

data/segments/20160423200417

下面的log是列出当前线程的状态,因为我们在执行抓取命令的时候,有设置 100个线程:
技术分享

一直到如下log出现,表示这次抓取已经完成:
技术分享
这个抓取过程花了10s时间。

抓取完成之后,就会对抓取的结果进行解析:
技术分享
解析的过程大概花了10s时间。

由于在抓到的结果里面也有很多输出链接,而在解析的过程之中,就能够得到这些链接,然后将获取得到的这些新的链接,存入crawldb里面:
技术分享

到这里,一个抓取的执行周期就已经完成了,之后就进入到第二个执行周期中:
技术分享

4.过程总结

用一个架构图来表示整个抓取过程为:
技术分享
整个的过程就是从上图中的1–》2–》3–》4. 表示一个抓取周期。

[Nutch]Nutch抓取过程分析

标签:

原文地址:http://blog.csdn.net/kandy_ye/article/details/51232633

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!