Web crawler 使用StormCrawler和Elasticsearch归档旧网站

Web crawler 使用StormCrawler和Elasticsearch归档旧网站,web-crawler,stormcrawler,Web Crawler,Stormcrawler,当storm crawler重新访问之前已获取的网站时,它会更新elasticsearch索引中的相应文档。即,旧内容被新内容覆盖 是否有任何stormcrawler功能允许我们保留某些字段的旧版本并使用时间戳对其进行注释 我们研究了elasticsearch滚动api和摄取管道。摄取管道看起来有望在更新操作中修改elasticsearch文档。有没有办法通过stormcrawler配置将管道参数(即?pipeline=xxx)附加到相关elasticsearch请求中?一个选项可以是使用URL

当storm crawler重新访问之前已获取的网站时,它会更新elasticsearch索引中的相应文档。即,旧内容被新内容覆盖

是否有任何stormcrawler功能允许我们保留某些字段的旧版本并使用时间戳对其进行注释


我们研究了elasticsearch滚动api和摄取管道。摄取管道看起来有望在更新操作中修改elasticsearch文档。有没有办法通过stormcrawler配置将管道参数(即?pipeline=xxx)附加到相关elasticsearch请求中?

一个选项可以是使用URL+时间戳作为键,并分别存储文档的每个版本。不过,您必须在搜索时进行重复数据消除。这需要对代码做一点小的修改


我们目前无法通过配置附加参数,但它应该是可行的。我从未在ES中使用过管道,难道不能将它们配置为在特定索引上默认使用吗?

当前github()上讨论了索引上的默认管道但是还没有实现/发布。see将很快尝试查看它。在请求对象上还有一个setPipeline方法-我们可以添加一个配置,以便在索引器中使用它。我们已经为上述问题推送了提交@你能试试看,让我知道它是否管用吗?真的管用。通过ingest支持,现在可以轻松地丰富/修改elasticsearch中的爬行数据。感谢您的快速支持。