如何防止使用apache nutch抓取外部链接



我只想在nutch上抓取特定的域。为此,我将db.ignore.external.links设置为true,如常见问题解答链接中所述

问题是疯子开始只抓取种子列表中的链接。例如,如果我把"nutch.apache.org"放在seed.txt中,它只会找到相同的url(nutch.atache.org)

我通过运行200深度的爬网脚本得到了结果。它完成了一个循环,并生成下面的输出。

我该如何解决这个问题?

我使用的是apache nutch 1.11

Generator: starting at 2016-04-05 22:36:16
Generator: Selecting best-scoring urls due for fetch.
Generator: filtering: false
Generator: normalizing: true
Generator: topN: 50000
Generator: 0 records selected for fetching, exiting ...
Generate returned 1 (no new segments created)
Escaping loop: no more URLs to fetch now

向致以最诚挚的问候

您只想从特定域中获取页面。

您已经尝试过db.ignore.external.links,但这限制了除了seek.txt URL之外的任何内容。

你应该像nutch1教程中的例子一样尝试conf/regex-urlfilter.txt

+^http://([a-z0-9]*.)*your.specific.domain.org/

您正在使用"爬网"脚本吗?如果是,请确保您给出的级别大于1。如果你运行这样的"bin/crawl seedfoldername crawlDbhttp://solrIP:solrPort/solr1"。它将只抓取seed.txt 中列出的URL

要对特定域进行爬网,可以使用regex-urlfilte.txt文件。

在nutch-site.xml 中添加以下属性

<property> 
<name>db.ignore.external.links</name> 
<value>true</value> 
<description>If true, outlinks leading from a page to external hosts will be ignored. This is an effective way to limit the crawl to include only initially injected hosts, without creating complex URLFilters. </description> 
</property>

相关内容

  • 没有找到相关文章

最新更新