ImportError: cannot import name 'HTTPClientFactory' from 'twisted.web.client' (unknown location)
一、背景
以前使用py37+scrapy2.3.0 可以正常运行,后来不可以了,会报错。
可是我以前部署的服务,却仍然可以正常运行。需要排查问题。
二、分析
以前的可以,现在的不行,需要对比python环境的差异。
结合报错信息中提及的关键词Twisted。
ImportError: cannot import name 'HTTPClientFactory' from 'twisted.web.client' (unknown location)
通过对比发现:
以前的Twisted版本低(20.3.0)
现在的Twisted版本高( 22.4.0)
三、解决
既然版本有差异,试一下降低Twisted版本
pip install Twisted==20.3.0
运行项目,发现好了。一切又恢复正常了。
四、结论
是Twisted的高版本22.4.0不兼容低版本的scrapy2.3.0,需要低的旧版本Twisted20.3.0
重装一下Twisted的低版本即可:
pip install Twisted==20.3.0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决