scrapy - Scrapy 与许多蜘蛛
问题描述
我有一个项目需要从不同站点抓取数据。示例:我抓取了站点 1,然后检查了一些条件(检查 DB 等),如果这些条件为真,我需要为下一个站点运行另一个蜘蛛并传递在第一个站点上抓取的数据。哪种项目架构(蜘蛛和管道的组合)最适合这种情况?
解决方案
在 Scrapy 中从一个 Spider 发射另一个 Spider 是不可能的
我曾经有过这样的要求,我所做的是我使用了ScrapyD
,每当我需要启动另一个蜘蛛时,我只需使用requests.get('to_your_scrapyd:6800/schedule.json?project=project&spider=spider')
or发送一个请求scrapy.Request
,新的蜘蛛就会运行
推荐阅读
- javascript - 有没有办法使用 javascript 控制 APNG 从哪个帧开始?
- c - Swift - Swift 中的 C API 枚举
- asp.net-core-webapi - .NET Core Identity - 获取当前登录提供程序
- c# - 在 C# HTTP 请求中添加 GET 参数
- javascript - 单击时设置列表项为选定列表
- python - 如何从 Python 中给定 CDF 的分布中采样
- flutter-web - 扩展的小部件在 Flutter web 中出现渲染错误
- javascript - 在 ReactJs 中动态生成对象作为网格
- python - 从数据框中的列创建字典
- jooq - 级联操作缺失