【发布时间】:2019-09-06 01:40:02
【问题描述】:
我正在抓取大约 20 个域并最终扩展到 300 个。每个域都有自己的解析器配置,作为单独的拓扑提交。
因此,当使用单个状态索引时,所有拓扑似乎都随机获取 url,而不是特定于特定域。
因此每个拓扑都有一个单独的状态索引可以解决问题吗?还有其他方法吗?
此外,我不能对所有域使用单一拓扑,因为抓取速度不同,抓取时间也不同,并且每个域都与另一个域相差甚远。
【问题讨论】:
我正在抓取大约 20 个域并最终扩展到 300 个。每个域都有自己的解析器配置,作为单独的拓扑提交。
因此,当使用单个状态索引时,所有拓扑似乎都随机获取 url,而不是特定于特定域。
因此每个拓扑都有一个单独的状态索引可以解决问题吗?还有其他方法吗?
此外,我不能对所有域使用单一拓扑,因为抓取速度不同,抓取时间也不同,并且每个域都与另一个域相差甚远。
【问题讨论】:
每次抓取可以有一个索引,但是,如果您想为每个域运行 1 个拓扑,只需将 1 个任意元数据添加到抓取的种子并确保它获得 transferred 会简单得多到外链。然后,您可以使用 one filter query for each topology 以便 spout 仅获取该爬网的 URL。例如,元数据键可能类似于 crawlID。
此外,我不能对所有域使用单一拓扑,因为抓取速度不同,抓取时间也不同,并且每个域都与另一个域相差甚远。
可能有办法解决这个问题。拥有一个单一的拓扑会使事情变得简单得多。
【讨论】: