我们正在使用nutch 1.6来抓取网页。根据nutch配置,应该让seedlist和domain url-filter遍历指定的域。但是,如果他们的扩展名是co.uk(仅适用于此扩展名),我们想要获取新发现的URL。我们可以通过将新发现的url的域添加到文件来管理它 - 或者db,无论如何 - 停止爬虫,更新域url-filters和seedlist,然后重新启动它。但是我们如何动态地完成它,而不是停止爬行器?
提前致谢。
P.S:co.uk域名扩展只是一个例子,我们也可以添加多个扩展名来允许。
答案 0 :(得分:0)
知道了。
您可以在第186-189行的“{gov.uk”中将后缀添加为“{gov.uk”作为DomainURLFilter source code:
if (domainSet.contains(suffix) || domainSet.contains(domain)
|| domainSet.contains(host)) {
return url;
}
它会检查后缀,域和主机。
此外,您可以将域URL保留在HBase表中,并通过您自己的过滤器插件管理它们,而不是使用DomainURLFilter。