Apache 仅生成未蚀刻的URL,而不是带分数的Nutch 2.3

Apache 仅生成未蚀刻的URL,而不是带分数的Nutch 2.3,apache,web-crawler,nutch,Apache,Web Crawler,Nutch,有没有办法只生成未抓取的URL而不是基于Nutch 2.x中的分数?好的,对于Nutch 1.x,您可以使用自Nutch 1.12以来提供的jexl支持(我认为): 使用此命令,您可以确保仅考虑具有db_unfetched状态的URL来生成要爬网的段 此功能在2.x branch上仍然不可用,但编写自定义GeneratorJob可以做到这一点 另一方面,由于生成器作业已经在考虑分数,以便对要获取的URL列表进行排序,因此可能更简单的方法是编写一个自定义URL 例如,如果您看一下:ScoringF

有没有办法只生成未抓取的URL而不是基于Nutch 2.x中的分数?

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

使用此命令,您可以确保仅考虑具有
db_unfetched
状态的URL来生成要爬网的段

此功能在2.x branch上仍然不可用,但编写自定义GeneratorJob可以做到这一点

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


例如,如果您看一下:ScoringFilter已经提供了一个
generatorSortValue
方法,仅用于为generator作业生成评分值,因此您可以编写自己的方法来提升这些URL的未蚀刻状态

谢谢!我认为删除“plugin.includes”中的所有评分过滤器也是可能的?是的,但在这种情况下,我认为您将拥有所有URL,分数为1.0,而不区分状态,因此在这种情况下,先到先得,先服务/获取,尽管可能是生成器首先收集未蚀刻的URL(根据文档)所以我们可以工作。不确定在2.x中是否相同。
$ bin/nutch generate -expr "status == db_unfetched"