python – Scrapy:如何构建从多个URL收集信息的项目?

经过多年不情愿地编写刮刀作为正则表达式和BeautifulSoup等的混搭,我找到了
Scrapy,我几乎算作今年的圣诞礼物给自己!使用起来很自然,它似乎是为了使几乎所有东西都优雅和可重复使用而建造的.

但我处于这种情况,我不知道如何解决:我的蜘蛛爬行并刮擦列表页面A,我从中生成一组项目.但是对于每个项目,我需要获取一个独特的互补链接(从一些已删除的信息构建,但不是显式的Scrapy可以遵循的页面上的链接)来获取其他信息.

我的问题分为两部分:在抓取过程之外获取URL的协议是什么?如何以优雅的方式从多个来源构建项目?

在StackOverflow上的previous question中已经部分地询问(并回答了).但是我更感兴趣的是Scrapy的理念应该是在这个用例中 – 当然不是无法预料的可能性?我想知道这是否是管道注定要用于的事情之一(从主要信息推断的辅助源中添加信息是“后处理”的实例),但是最好的方法是什么,不完全搞乱Scrapy的高效异步组织?

最佳答案

what is the protocol to fetch an URL outside of the crawling process?

当您创建一个请求为其提供网址时,您从哪里下载网址并不重要.您可以从页面中提取它,或以其他方式构建它.

how do I build items from several sources in an elegant way?

使用Request.meta

点赞