首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Scrapy (python)中同时使用deltafetch和splash

如何在Scrapy (python)中同时使用deltafetch和splash
EN

Stack Overflow用户
提问于 2018-03-15 20:26:38
回答 1查看 140关注 0票数 0

我正在尝试使用scrapy构建一个刮板,我计划使用deltafetch来启用增量刷新,但我需要解析基于javascript的页面,这也是我需要使用splash的原因。在settings.py文件中,我们需要添加SPIDER_MIDDLEWARES = {'scrapylib.deltafetch.DeltaFetch': 100,} for enabling deltafetch whereas, we need to add SPIDER_MIDDLEWARES = {'scrapy_splash.SplashDeduplicateArgsMiddleware': 100,} for splash

我想知道,如果它们都使用某种爬虫中间件,它们将如何协同工作。

有没有什么方法可以让我同时使用它们呢?

EN

回答 1

Stack Overflow用户

发布于 2018-05-17 00:24:18

有关其他答案,请参阅herehere。本质上,您可以使用请求元参数来手动设置正在发出的请求的deltafetch_key。通过这种方式,您可以使用Splash请求相同的页面,即使您已经使用Scrapy成功地从该页面中抓取了项目,反之亦然。希望这能有所帮助!

代码语言:javascript
运行
复制
from scrapy_splash import SplashRequest    
from scrapy.utils.request import request_fingerprint

(your spider code here)

    yield scrapy.Request(url, meta={'deltafetch_key': request_fingerprint(response.request)})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49299469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档