Nutch模块命令.docx

上传人:b****4 文档编号:4883056 上传时间:2022-12-11 格式:DOCX 页数:11 大小:19.91KB
下载 相关 举报
Nutch模块命令.docx_第1页
第1页 / 共11页
Nutch模块命令.docx_第2页
第2页 / 共11页
Nutch模块命令.docx_第3页
第3页 / 共11页
Nutch模块命令.docx_第4页
第4页 / 共11页
Nutch模块命令.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

Nutch模块命令.docx

《Nutch模块命令.docx》由会员分享,可在线阅读,更多相关《Nutch模块命令.docx(11页珍藏版)》请在冰豆网上搜索。

Nutch模块命令.docx

Nutch模块命令

Nutch索引的字段信息:

网页的结构主要是:

Title,segment,host,site,url,content,anchor,boost,digest,tstamp

其中digest是摘要,是原始内容的hash值,用以去重。

Segment是片段id,指明该文档该网页的存储位置。

Content是解析后的文本。

NUTCH命令解析

Nutch采用了一种命令的方式进行工作,其命令可以是对局域网方式的单一命令也可以是对整个Web进行爬取的分步命令。

主要的命令如下:

1.crawl

      Crawl是“org.apache.nutch.crawl.Crawl”的别称,它是一个完整的爬取和索引过程命令。

      使用方法:

bin/nutchcrawl[-dird][-threadsn][-depthi][-topN]

      参数说明:

      

包括URL列表的文本文件,它是一个已存在的文件夹。

[-dir]:

Nutch保存爬取记录的工作目录,默认情况下值为:

./crawl-[date],其中[date]为当前目期。

[-threads]:

Fetcher线程数,覆盖默认配置文件中的fetcher.threads.fetch值(默认为10)。

[-depth]:

Nutch爬虫迭代的深度,默认值为5。

[-topN]:

限制每一次迭代中的前N条记录,默认值为Integer.MAX_VALUE。

      

      配置文件:

      hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

crawl-tool.xml

      其他文件:

      crawl-urlfilter.txt

2.readdb

      rseaddb命令是“org.apache.nutch.crawl.CrawlDbReader”的别称,返回或者导出Crawl数据库(crawldb)中的信息。

      使用方法:

bin/nutchrseaddb(-stats|-dump|-url

      

      参数说明:

      

crawldb目录.

[-stats]:

在控制台打印所有的统计信息

[-dump]:

导出crawldb信息到指定文件夹中的文件

[-url]:

打印指定URL的统计信息

实例:

$bin/nutchreaddbfullindex/crawldb-stats

CrawlDbstatisticsstart:

fullindex/crawldb

StatisticsforCrawlDb:

fullindex/crawldb

TOTALurls:

    468030

retry0:

       467361

retry1:

       622

retry2:

       32

retry3:

       15

minscore:

     0.0

avgscore:

     0.0034686408

maxscore:

     61.401

status1(db_unfetched):

       312748

status2(db_fetched):

80671

status3(db_gone):

    69927

status4(db_redir_temp):

      1497

status5(db_redir_perm):

      3187

CrawlDbstatistics:

done

      配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

-stats命令是一个快速查看爬取信息的很有用的工作,其输出信息表示了:

DB_unfetched:

链接到已爬取页面但还没有被爬取的页面数(原因是它们没有通过url过滤器的过滤,或者包括在了TopN之外被Nutch丢弃)

DB_gone:

表示发生了404错误或者其他一些臆测的错误,这种状态阻止了对其以后的爬取工作。

DB_fetched表示已爬取和索引的页面,如果其值为0,那肯定出错了。

3.readlinkdb

      它是"org.apache.nutch.crawl.LinkDbReader"的别称,导出链接库中信息或者返回其中一个URL信息。

      使用方法:

Bin/nutchreadlinkdb(-dump|-url

      

      参数说明:

linkdb工作目录

[-dump]:

导出信息到文件夹下

[-url]:

打印某个URL的统计信息

实例:

$bin/nutchreadlinkdbfullindex/linkdb-url

-nolinkinformation.

      配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

4.

4inject

      它是"org.apache.nutch.crawl.Injector"的别称,注入新URL到crawldb中。

      使用方法:

bin/nutchinjector

      

      参数说明:

crawldb文件夹

保存有URL的文件的文件夹目录

      配置文件:

      hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

      

以下配置文件参数影响到了注入方式:

db.default.fetch.interval——按天设置爬取间隔,默认值30.0f

db.score.injected——设置URL的默认打分,默认值1.0f

urlnormalizer.class——规范化URL的类,默认值为.BasicUrlNormalizer

5.generate

      它是“org.apache.nutch.crawl.Generator”,从Crawldb中抓取新的Segment。

      使用方法:

bin/nutchgenerator[-topN][-numFetchers][-adddays]

      

      参数说明:

crawldb目录

新建的爬取Segment目录

[-topN]:

选取前多少个链接,默认值为Long.MAX_VALUE

[-numFetchers]:

抓取分区数量。

Default:

Configurationkey->mapred.map.tasks->1

[-adddays]:

添加到当前时间,配置crawlingurls,以将很快被爬取db.default.fetch.interval默认值为0。

爬取结束时间在当前时间以前的。

示例:

bin/nutchgenerate/my/crawldb/my/segments-topN100-adddays20

      配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

      generate.max.per.host–设置单个主机最大的URL数量,默认情况下:

unlimited。

6.fetch

      它是“org.apache.nutch.fetcher.Fetcher”的代称,它负责一个segment的爬取。

使用方法:

bin/nutchfetcher[-threads][-noParsing]

      

      参数说明:

segment目录

[-threads]:

运行的fetcher线程数默认值为ConfigurationKey->fetcher.threads.fetch->10

[-noParsing]:

禁用自动解析segment数据

      配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

      Fetcher依赖于多个插件以爬取不同的协议,目前已有的协议及支撑插件如下:

      http:

protocol-http

protocol-httpclient

https:

protocol-httpclient

ftp:

protocol-ftp

file:

protocol-file

      当爬取网上文档的时候,不应该使用protocol-file,因为它是用于爬取本地文件的。

如果你想爬取http、https,应当使用protocol-httpclient。

7parse

它是“org.apache.nutch.parse.ParseSegment”的代称,它对一个segment运行ParseSegment。

使用方法:

bin/nutchparse

Crawl-parse,parse-data,parse-text,都是这个命令产生的。

参数说明:

Segment文件夹

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

它依赖于多个插件来解析不同格式的内容,支持的格式及插件有:

内容格式插件备注

text/htmlparse-html使用NekoHTML或者TagSoup解析HTML

application/x-javascriptparse-js解析JavaScript文档(.js).

audio/mpegparse-mp3解析MP3Audio文档(.mp3).

application/vnd.ms-excelparse-msexcel解析MSExcel文档(.xls).

application/vnd.ms-powerpointparse-mspowerpoint解析MSPower!

Point文档

application/mswordparse-msword解析MSWord文档

application/rss+xmlparse-rss解析RSS文档(.rss)

application/rtfparse-rtf解析RTF文档(.rtf)

application/pdfparse-pdf解析PDF文档

application/x-shockwave-flashparse-swf解析Flash文档(.swf)

text-plainparse-text解析Text文档(.txt)

application/zipparse-zip解析Zip文档(.zip)

othertypesparse-ext通过基于content-type或者路径前缀的外部命令来解析文档

默认情况下只有txt、HTML、JS格式的插件可用,其他的需要在nutch-site.xml中配置使用。

8segread

"segread"是"org.apache.nutch.segment.SegmentReader"的代称,它读取并导出Segment数据。

使用方法:

bin/nutchsegread

参数说明:

Segment文件夹

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

在Nutch0.9后的版本中改为了readseg

9updatedb

它是“org.apache.nutch.crawl.CrawlDb”的代称,用fetch过程中获取的信息更新crawldb。

使用方法:

bin/nutchupdatedb[-noadditions]

参数说明:

crawldb目录

已经爬取的segment目录

[-noadditions]:

是否添加新的链接到crawldb中

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

10invertlinks

它是“org.apache.nutch.crawl.LinkDb”的代称,它用从segment中获取到的信息更新linkdb。

使用方法:

bin/nutchinvertlinks(-dirsegmentsDir|segment1segment2...)

参数说明:

:

linkdb目录

:

segment目录,可以指定至少一个的文件夹

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

11index

它是“org.apache.nutch.indexer.Indexer”的代称,创建一个segment的索引,利用crawldb和linkdb中的数据对索引中的页面打分。

使用方法:

bin/nutchindex...

参数说明:

:

索引创建后的保存目录

:

crawldb目录

:

linkdb目录

:

segment目录,可以指定多个

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

12merge

Merge是“org.apache.nutch.indexer.IndexMerger”的代称,它合并多个segment索引。

使用方法:

bin/nutchmerge[-workingdir]...

参数说明:

[-workingdir]:

提定工作目录

合并后的索引存储目录

包含待合并的索引目录,可以指定多个

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

13mergedb

它是“org.apache.nutch.crawl.CrawlDbMerger”的代称,合并多个CrawlDb,URLFilter可选择性地过滤指定内容。

可以合并多个DB到一个中。

当你分别运行爬虫并希望最终合并DB时,它会相当有用。

可选择地,可以运行当前URLFilter过滤数据库中的URL,以滤去不需要的URL。

当只有一个DB时也很有用,它意味着你可以通过这个工作去滤掉那些DB中你不想要的URL。

只用这个工具来过滤也是可能的,在这种情况下,只指定一个crawldb。

如果同一个URL包括在多个CrawlDb中,只有最近版本的才会被保留,即由org.apache.nutch.crawl.CrawlDatum.getFetchTime()值决定的。

然而,所有版本的元数据被聚合起来,新的值代替先前的值。

使用方法:

bin/nutchmergeoutput_crawldbcrawldb1[crawldb2crawldb3...][-filter]

参数说明:

output_crawldb:

CrawlDb输出文件夹

crawldb1[crawldb2crawldb3...]:

一个或者多个CrawlDb(s).

-filter:

采用的URLFilters

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

14mergelinkdb

它是“org.apache.nutch.crawl.LinkDbMerger”的代称,用于合并多个linkdb,可以选择性的使用URLFilter来过滤指定内容。

当分别从多个segment群中分布式建立LinkDb而又需要合并为一个时很有用。

或者,也可以指定单个LinkDb,只是用它来过滤URL。

只用这个工具来过滤也是可能的,在这种情况下,只指定一个LinkDb。

如果一个URL包含在多个LinkDb中,所有的内部链接被聚合,但是最多db.max.inlinks指定的内链数会添加进来。

如果被激活,URLFilter可以应用到所有的目标URL及其内链中。

如果目标链接被禁止,所有的该目标链接的内链将和目标链接一起被移去。

如果某些内链被禁止,那么只有他们会被移去,在校验上面提到的最大限制数时他们不会被计算在内。

使用方法:

bin/nutchmergelinkdboutput_linkdblinkdb1[linkdb2linkdb3...][-filter]

参数说明:

output_linkdb:

输出linkdb

linkdb1[linkdb2linkdb3...]:

多于一个的输入LinkDb(s)

-filter:

ActualURLFilterstobeappliedonurlsandlinksinLinkDb(s).

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

15mergesegs

它是“org.apache.nutch.segment.SegmentMerger”的代称,用于合并多个segment,可以选择性地输出到一个或者多个固定大小的segment中。

使用方法:

bin/nutchmergesegsoutput_dir(-dirsegments|seg1seg2...)[-filter][-sliceNNNN]

参数说明:

output_dir:

结果segment的名称或者segment片的父目录

-dirsegments:

父目录,包括多个segment

seg1seg2...:

segment目录列表

-filter:

通过URLFilters过滤

-sliceNNNN:

创建多个输出segment,每一个中包括了NNNN个URL。

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

说明:

16dedup

“dedup”是“org.apache.nutch.indexer.DeleteDuplicates”的别名,它segmentindexes中去掉重复的页面。

使用方法:

bin/nutchdedup...

参数说明:

indexes索引文件

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

17plugin

它是“org.apache.nutch.plugin.PluginRepository”的代称,用于从插件库中加载一个插件并执行其主方法。

使用方法:

bin/nutchplugin[args...]

参数说明:

期望执行的插件ID

包含主方法的类名

[args]:

传入插件的参数

配置文件:

hadoop-default.xml

hadoop-site.xml

nutch-default.xml

nutch-site.xml

展开阅读全文
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1