StormCrawler在抓取一个域完成后执行操作

当爬虫完成对一个域的爬行时,我想做一个动作(在我的情况下,将一个元组发送到一个螺栓)。

我看到StormCrawler能够在给定的间隔后重新访问网站。 在同时抓取多个域的方案中,哪个组件或如何查看一个域何时完成爬网?

我目前的设置是使用StormCrawler与Elasticsearch和Kibana。

请参阅“我何时知道爬网何时完成?” 在FAQ中 。

我看到StormCrawler能够在给定的间隔后重新访问网站。

StormCrawler不会像这样安排网站,而是单独的URL。

在同时抓取多个域的方案中,哪个组件或如何查看一个域何时完成爬网?

根据您要爬网的站点数量,您可以编写一个自定义螺栓,该查询将查询状态索引中所有主机名的ES,并检测那些状态为DISCOVERED的URL不再存在的螺栓。

或者,定制螺栓将跟踪您正在爬行的站点,并在最近N分钟内未获取特定站点的URL时触发操作。

我实施了一个遵循前一种方法的定制Bolt ,但也可以针对Julien Nioche的答案中提到的第二种方法进行扩展或修改