概述
我觉得这应该是一个项目管道,如duplicates filter示例,除了我需要项目的最终内容,而不是爬虫检查的第一页的结果.
因此,我尝试使用request.meta
通过针对给定站点的各种请求传递单个部分填充的项目.为了完成这项工作,我必须让我的解析回调每次调用返回一个新的请求,直到它没有更多的页面可访问,然后最终返回完成的项目.如果我找到了我想要遵循的多个链接,那将是一种痛苦,如果调度程序因链接周期而丢弃其中一个请求,则会完全中断.
我能看到的另一种方法是将蜘蛛输出转储到json-lines并使用外部工具对其进行后处理.但我宁愿把它折叠成蜘蛛,最好是在中间件或物品管道中.我怎样才能做到这一点?
在管道上定义字典(defaultdict(list))以存储每站点数据.在process_item中,您只需将dict(item)附加到每个站点项的列表中,然后引发DropItem异常.然后,在close_spider方法中,您可以将数据转储到您想要的任何地方.
总结
以上是编程之家为你收集整理的python – 如何使用Scrapy将从多个页面中删除的数据分组到一个项目中?全部内容,希望文章能够帮你解决python – 如何使用Scrapy将从多个页面中删除的数据分组到一个项目中?所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧