python3.8 certificate verify failed: unable to get local issuer certificate (_ssl.c:1125)
时间: 2024-12-27 13:29:53 浏览: 28
这个错误信息 "certificate verify failed: unable to get local issuer certificate" 出现在Python 3.8及以上版本的requests库中,当尝试访问一个使用了自签名证书或者其根证书不在系统内置的证书信任列表中的HTTPS网站时。具体来说,_ssl.c:1125是指向Python内建的SSL模块的一个错误代码,提示ssl验证过程中找不到证书的发行者。
原因可能是:
1. **系统证书库缺失或不信任该证书**:你的操作系统没有把该网站使用的CA证书添加到默认的信任库中。
2. **证书链断裂**:证书的签发者与最终的受信者之间缺少有效的链接,导致验证失败。
3. **证书过期或损坏**:证书的有效期限已过或者证书本身存在问题。
解决方案可能有:
- **手动导入证书**:你可以下载并安装缺失的证书,将其添加到你的系统或requests库的信任目录。
- **使用requests库的verify参数**:设置`verify=False`来临时禁用验证,但这会带来安全风险,仅适用于测试环境。
- **修改系统证书信任设置**:在某些Linux或macOS系统中,可以编辑`ca-certificates.crt`文件或使用命令行工具(如`update-ca-certificates`)更新证书。
```python
import requests
response = requests.get('https://your-url.com', verify=False) # 注意这是临时解决方案,不适合生产环境
```
阅读全文
相关推荐








