基本概念:
- crawldb,nutch所处理的所有url信息,包括是否被fetch过,以及url被fetch时间。
- linkdb,url links,包括源url和链接文本信息
- segments集合,每一个segment是一组fetched的urls单元,segments包括以下子目录:
1. crawl_generate, 将要被抓取 urls集合
2. crawl_fetch, 正在被抓取的每一个url的状态信息
3. content,从每一个url中提取的原生内容
4. parse_text, 从每一个url中解析出来的文本信息
5. parse_date, 从每一个url中解析出来的链接和元数据
6. crawl_parse, 从url中解析出来的url链接,用于更新crawldb
分布执行步骤:
- 注入爬取所需种子列表,bin/nutch inject crawl/crawldb urls
- 从crawldb中生成要抓取的url列表,bin/nutch generate crawl/crawldb crawl/segments
- 根据url抓取网页,bin/nutch fetch data/segments/201507151245
- 解析网页内容,bin/nutch parse data/segments/201507151245
- 根据抓取结果更新数据库,bin/nutch updated data/crawldb –dir data/segments/201507151245
- 反转索引,在建立索引之前,我们首先对所有的链接进行反转,这样我们才可以对页面的来源锚文本进行索引。
bin/nutch invertlinks data/linkdb –dir data/segments/201507151245