Python2.7安装Scrapy遇ImportError: No module named importlib问题求助
解决Python2.7安装Scrapy时的
ImportError: No module named importlib问题 解决方案一:降级pip到兼容Python2.7的版本
pip21.0及以上版本弃用了Python2.7支持,且默认启用pep517构建工具,该工具的内部脚本依赖Python3原生的importlib模块,无法识别Python2.7下安装的第三方importlib包。
- 先将pip降级到21.0以下版本:
sudo python2 -m pip install "pip<21.0"
- 重新执行Scrapy安装命令:
sudo python2 -m pip install scrapy
解决方案二:直接安装PyDispatcher的预编译wheel包
错误触发于PyDispatcher的源码构建环节,直接安装预编译的wheel包可跳过构建步骤:
sudo python2 -m pip install PyDispatcher==2.0.7 --only-binary :all:
完成后再次执行Scrapy安装命令即可。
问题根源
Python2.7原生没有importlib模块,你安装的第三方importlib/importlib2包无法被pip的_vendor/pep517/_in_process.py脚本加载——该脚本运行在pip的隔离vendor环境中,无法访问用户全局安装的第三方模块。旧版本pip采用传统的setup.py安装流程,不会触发此依赖问题。
内容的提问来源于stack exchange,提问作者Numbeon
相关产品推荐
相关产品推荐

