仅生成未获取的网址,而不是获得Nutch 2.3

时间:2017-05-16 05:17:00

标签: apache web-crawler nutch

有没有办法只生成未获取的网址,而不是基于Nutch 2.x的得分?

1 个答案:

答案 0 :(得分:1)

好吧,对于Nutch 1.x,您可以使用自Nutch 1.12以来发布的jexl支持(我认为):

$ bin/nutch generate -expr "status == db_unfetched" 

使用此命令可确保仅考虑db_unfetched状态的网址来生成您要抓取的细分受众群。

此功能在2.x分支上仍然不可用,但编写自定义GeneratorJob可以解决问题。

另一方面,由于生成器Job已经在考虑分数来对要获取的URL列表进行排序,因此可能更简单的方法是编写自定义ScoringFilter

例如,如果您查看:https://github.com/apache/nutch/blob/2.x/src/java/org/apache/nutch/scoring/ScoringFilter.java#L69-L81,ScoringFilter仅提供generatorSortValue方法,仅用于为生成器作业生成评分值,因此您可以编写自己的方法来增强这些URL处于无法获得的状态。