Python调用谷歌Gmail API运行验证程序报ssl.SSLCertVerificationError错误如何解决
SSL证书验证错误解决方案
该错误是Python请求Gmail API时SSL证书校验不通过导致,通常由Python环境根证书缺失、内网/代理设备注入自签名证书触发,可按以下方案逐一排查解决:
- 修复Python根证书
如果你使用Mac系统,直接运行Python安装目录下的证书安装脚本:open /Applications/Python\ 3.x/Install\ Certificates.command
(将3.x替换为你实际使用的Python版本号)
其他系统可直接升级证书依赖包:pip install --upgrade certifi - 导入自定义信任证书
如果处于公司内网、使用了代理或防火墙抓包工具,通常是网络设备注入了自签名证书,可先查询Python证书库的存储路径:
把你使用的自签名根证书内容追加到上述路径输出的pem文件末尾即可解决信任问题。import certifi print(certifi.where()) - 临时关闭SSL校验(仅测试环境使用,存在数据泄露安全风险,生产环境禁止使用)
不想修改证书配置的测试场景,可构造service时传入禁用SSL校验的HTTP对象,修改对应代码如下:import httplib2 # 原有逻辑不变,替换service构造代码 http = httplib2.Http(ssl_validate_certs=False) service = build('gmail', 'v1', credentials=creds, http=http) - 检查代理配置
确认系统或当前终端的HTTP_PROXY、HTTPS_PROXY环境变量是否配置,不需要使用代理的话可先清空变量后重新运行程序。
内容的提问来源于stack exchange,提问作者ARNO
相关产品推荐
相关产品推荐

