如何防止我在运行bin/nutch solrindex
命令时获取索引的某些页面?我想定义和使用正则表达式-urlfilter.txt,就像我在获取时一样。如何在Nutch 2.1中过滤网址solrindex命令
我使用Nutch 2.1并根据http://wiki.apache.org/nutch/bin/nutch%20solrindex该选项刚刚消失。我检查了源代码,找不到任何关于此事的线索。
是否有任何解决方法?
如何防止我在运行bin/nutch solrindex
命令时获取索引的某些页面?我想定义和使用正则表达式-urlfilter.txt,就像我在获取时一样。如何在Nutch 2.1中过滤网址solrindex命令
我使用Nutch 2.1并根据http://wiki.apache.org/nutch/bin/nutch%20solrindex该选项刚刚消失。我检查了源代码,找不到任何关于此事的线索。
是否有任何解决方法?
似乎应该使用索引过滤器插件。我跟着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);
}
您的排除标准是什么?
你可以在提取/分析阶段排除它们吗?
我爬行有两种类型的页网站:“记录单”(链接)和“记录”。我需要取得第一个检索通往记录的链接。但我只对索引“记录”页面感兴趣。 – Thomas 2013-05-16 09:54:20
你有权访问这些页面吗?如果是这样,你可以添加一个元标记内容=“noindex,跟随”和Nutch将尊重,提取outlinks但不抓取内容。 – nimeshjm 2013-05-16 20:51:45
如果您不这样做,那么您可以在SOLR – nimeshjm 2013-05-16 20:54:04