You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

咨询scrapy_wayback-machine兼容的Scrapy版本及替代工具

Scrapy-Wayback-Middleware 兼容问题及替代方案

问题背景

尝试使用scrapy_wayback_machine中间件通过Scrapy抓取Wayback Machine归档内容时,遇到版本兼容警告:
第一次运行基础爬虫时的警告:

2023-12-11 18:43:33 [py.warnings] WARNING: /Users/meganegler/opt/anaconda3/lib/python3.9/site-packages/scrapy_wayback_machine/__init__.py:83: ScrapyDeprecationWarning: ExecutionEngine.schedule is deprecated, please use ExecutionEngine.crawl or ExecutionEngine.download instead
  self.crawler.engine.schedule(snapshot_request, spider)

将代码中schedule改为crawl后,仍出现警告:

2023-12-11 18:54:52 [py.warnings] WARNING: /Users/meganegler/opt/anaconda3/lib/python3.9/site-packages/scrapy_wayback_machine/__init__.py:83: ScrapyDeprecationWarning: Passing a 'spider' argument to ExecutionEngine.crawl is deprecated
  self.crawler.engine.crawl(snapshot_request, spider)

由此推测存在Scrapy版本不兼容问题。

关于scrapy_wayback_machine的疑问解答

  1. 近期使用情况:该中间件最后一次代码更新在2021年,社区活跃度极低,近期几乎没有用户反馈或维护记录,属于半废弃状态。
  2. 适配Scrapy版本:官方适配的版本为Scrapy 2.5及以下,Scrapy 2.6及以上版本对ExecutionEngine的API做了调整,导致旧版中间件的调用方式触发弃用警告,甚至可能出现运行错误。

适配Wayback Machine的替代工具

  • 直接调用Wayback Machine API:无需依赖第三方中间件,自行构造API请求(如获取目标URL的快照列表、指定快照内容),在Scrapy爬虫中处理请求与响应,完全适配新版Scrapy,灵活性最高。
  • waybackpack:专注于批量下载Wayback Machine快照的工具,支持命令行使用,也可作为Python库集成到Scrapy项目中,支持自定义快照时间范围、过滤规则等,维护状态良好。
  • 自定义Scrapy中间件:基于Wayback Machine的API规范,编写轻量级中间件,替换旧版中间件的逻辑,适配新版Scrapy的API(例如调用crawl时不传递spider参数,或改用download方法)。

内容的提问来源于stack exchange,提问作者egg_yolk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 08:08:20