当我运行bin/nutch solrindex
命令时,如何防止我获取的某些页面被编入索引?我想定义并使用regex-urlfilter.txt,就像我在获取时所做的那样。
我正在使用Nutch 2.1并根据http://wiki.apache.org/nutch/bin/nutch%20solrindex选项刚刚消失。我检查了源代码,无法找到有关此事的任何线索。
有没有解决方法?
答案 0 :(得分:2)
似乎应该使用索引过滤器插件。
我跟着Hartl's tutorial组织并链接了源代码。
以下是代码的有趣部分:
public NutchDocument filter(NutchDocument doc, String url, WebPage page)
throws IndexingException {
String input_url = url;
try {
url = urlNormalizers.normalize(url, URLNormalizers.SCOPE_DEFAULT);
url = urlFilters.filter(url); // filter the url
} catch (Exception e) {
LOG.warn("Skipping " + input_url + ":" + e);
return null;
}
if (url == null) {
LOG.info("Skipping (filter): " + input_url);
return null;
}
return doc;
}
public void setConf(Configuration conf) {
this.conf = conf;
this.urlFilters = new URLFilters(conf);
urlNormalizers = new URLNormalizers(conf, URLNormalizers.SCOPE_INJECT);
}
答案 1 :(得分:0)
您的排除标准是什么?
你可以在fetch / parse阶段排除它们吗?