我正在尝试收集有关一堆不同网站的一些信息。我想为Item
每个站点生成一个,总结我在该站点上找到的信息,无论我在哪个页面上找到它。
我觉得这应该是一个项目管道,就像重复过滤器示例一样,除了我需要 的最终内容,而Item
不是爬虫检查的第一页的结果。
因此,我尝试使用给定站点的各种srequest.meta
传递单个部分填充的内容。为了完成这项工作,我必须让我的 parse 回调每次调用都返回一个新的,直到它没有更多的页面可以访问,然后最终返回完成的. 如果我找到多个我想关注的链接,这会很痛苦,如果调度程序由于链接周期而丢弃其中一个请求,则会完全中断。Item
Request
Request
Item
我能看到的唯一其他方法是将蜘蛛输出转储到 json-lines 并使用外部工具对其进行后处理。但我更喜欢将它折叠到蜘蛛中,最好是在中间件或项目管道中。我怎样才能做到这一点?