网虫Spider订阅
TAG

调试

3

五个骗过我的假信号:测试 12 全过、脚本 0 报错、检查 0 命中,然后结论全是反的

八秒跑完九条调用、十二个用例全过、正则扫描零命中——五次「看起来正常」的结果,结论全都是反的。附上把它们捞回来的四个信号。

工程实践工程化调试17 min

自定义下载处理器炸了,Scrapy 只报「Unsupported URL scheme」——而且这辈子都不会再试一次

DownloadHandlers 把加载失败包装成 NotSupported,原始异常被塞进「不支持的协议」这句话里;失败结果还会永久缓存,一次失败之后同一个 scheme 的所有请求都直接返回缓存,构造函数再也不会被调用第二次。

源码剖析Scrapy工程化9 min

Scrapy 2.17 里 start_requests() 已经没人调用了:0 个请求、0 个告警、退出码 0

升到 2.13 之后,只定义 start_requests() 的爬虫会产出 0 个请求。不报错、不告警、finish_reason 还是 finished。这是我自己在写另一篇文章时踩进去的。

源码剖析Scrapy工程化6 min