使用Google API实现指数退避时报错ImportError: No module named apiclient.errors如何解决
报错触发原因
- 未安装Google官方提供的Python API客户端依赖包
google-api-python-client,导致apiclient模块不存在 - 依赖包安装到了非当前代码运行的Python环境中,比如全局环境和虚拟环境不匹配、Python2和Python3的pip混用时安装到了另一个版本的依赖库中
- 依赖包版本过旧或者导入语句写法不符合当前安装的版本规范
排查与解决方法
- 执行对应包的安装升级命令,Python2环境执行:
pip install --upgrade google-api-python-client,Python3环境执行:pip3 install --upgrade google-api-python-client - 验证包是否安装到当前运行环境,执行命令:
pip list | grep google-api-python-client,如果无输出说明当前pip对应的环境没有安装该依赖,需要核对环境后重新安装 - 若使用虚拟环境,先激活对应虚拟环境,再执行上述安装命令,避免依赖安装到全局环境
- 若安装完成后仍然报错,可替换导入语句写法,将
from apiclient.errors import xxx调整为兼容新版的写法from googleapiclient.errors import xxx即可正常导入
内容的提问来源于stack exchange,提问作者Aku
相关产品推荐
相关产品推荐

