1

我想让 nutch 抓取 abc.com,但我只想索引 car.abc.com。car.abc.com 链接可以在 abc.com 的任何级别。所以,基本上,我希望 nutch 保持正常抓取 abc.com,但只索引以 car.abc.com 开头的页面。例如 car.abc.com/toyota...car.abc.com/honda...

我将 regex-urlfilter.txt 设置为仅包含 car.abc.com 并运行命令“generate crawl/crawldb crawl/segments”,但它只是说“Generator: 0 records selected for fetching, exiting ...”。我猜 car.abc.com 链接只存在于几个层次。

这个怎么做?谢谢。

4

1 回答 1

1

一种方法是使用 mergeb 命令的 -filter 开关。该命令将抓取数据库作为输入,并创建了一个过滤了一些 url 的新抓取数据库。只需使用过滤后的爬网数据库进行索引。

唯一的缺点是我还没有找到一种方法来让 mergeb 命令使用另一个文件,而不是 regex-urlfilter.txt,这是生成器使用的文件。您将必须维护两个文件,例如 regex-urlfilter.txt:一个用于带有abc.com的生成器,另一个用于 mergeb 命令,它排除了不像car.abc.com的 url 。但是由于这两个命令都尝试加载同一个文件,因此在调用这两个命令之一之前,您必须将相应的文件重命名为 regex-urlfilter.txt。

如果有人知道一种配置 mergeb 命令以使用另一个文件的方法,我会很高兴听到它!

于 2010-07-15T17:09:23.667 回答