所以我跟随Storm-Crawler-ElasticSearch教程并玩弄它。
当使用Kibana进行搜索时,我注意到索引名称和状态'的点击次数。远远超过'指数'。
示例:
在左上方,您可以看到 846次点击 状态' 索引我认为这意味着它已经抓取了通过846页。
现在使用' index'指数,显示仅有31次点击。
我理解功能性索引和状态是不同的,因为状态只负责链接元数据。问题是看起来StormCrawler正在解析许多页面而不是索引它们。
所以我希望得到的是' index'也显示内容。而不只是31。
答案 0 :(得分:2)
'status'索引包含有关抓取工具提取或发现的所有网址的信息。这大致相当于Nutch中的crawldb。'index'索引包含已经获取,解析并且索引的页面。
现在,如果您查看状态索引中的“状态”字段,您会发现有不同的值指示URL是否已被DISCOVERED,FETCHED等...请参阅WIKI about status stream。 标记为DISCOVERED的那些尚未获取,因此不能在“索引”索引中。如果按状态过滤状态索引的内容:FETCHED,您应该看到与目标索引相当的数字。
SC中的Elasticsearch模块包含kibana模板,允许您查看每个状态的URL细分。如果您还没有这样做,我建议您查看video tutorials on Youtube。
所以我希望得到的是与'index'相同的点击次数与显示的内容。而不只是31。
它最终会到达那里,你只需要给爬行器一些时间来完成它的工作(并且礼貌地这样做)。请记住,爬虫会比获取URL更快地发现URL。在询问速度之前,请阅读FAQ。
答案 1 :(得分:0)
重定向和提取错误是造成差异的另一个可能原因。它们存在于状态索引中,但不存在于内容索引中。