python代码报错requests.exceptions.SSLError

本文描述了解决浏览器访问SSL错误网站的方法,包括从错误中找到证书,使用Python的certifi库定位其位置,通过VSCode编辑器添加证书到cacert.pem文件,从而解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直接浏览器访问报ssl错误的网站,然后找到证书,选择导出

 然后在cmd里面执行,去查看certifi的位置

python -c "import certifi;print(certifi.where())"

找到之后用文本编辑器打开,我用的vscode 

滚动到最后面,然后用编辑器打开一开始导出的证书,然后粘贴到cacert.pem最后面,保存退出。
 就完成了

### 解决 Python `requests` 库中的 SSLError 当使用 `requests` 发起 HTTPS 请求时,可能会遇到 SSL 错误。以下是几种有效的解决方案: #### 方法一:禁用证书验证 通过设置参数 `verify=False` 可以跳过 SSL 证书的验证过程。这适用于开发环境或测试场景,在生产环境中应谨慎使用。 ```python import requests from urllib3.exceptions import InsecureRequestWarning # 禁用警告信息 requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning) response = requests.get('https://example.com', verify=False) print(response.status_code) ``` 这种方法虽然简单直接[^3],但在实际应用中存在安全隐患,因此建议仅限于特定情况下的临时措施。 #### 方法二:安装额外的安全包 为了增强安全性并修复潜在的 SSL 问题,可以安装 `requests[security]` 扩展模块。该扩展包含了必要的安全依赖项,能够有效处理许多常见的 SSL 认证失败问题。 ```bash pip install "requests[security]" ``` 此操作将会自动下载并配置所需的组件,从而提高连接的安全性和稳定性[^1]。 #### 方法三:更新 certifi 包 有时 SSL 错误可能是由于本地 CA 证书库过期造成的。可以通过升级 `certifi` 来获取最新的受信任根证书列表。 ```bash pip install --upgrade certifi ``` 完成上述命令后重试原来的 HTTP(S) 请求即可。 #### 方法四:指定自定义CA文件路径 如果应用程序运行在一个特殊网络环境下,则可能需要提供一个可信的 CA 文件来替代默认的信任链。 ```python import os import requests ca_path = '/path/to/ca-bundle.crt' if not os.path.exists(ca_path): raise FileNotFoundError(f'Custom CA bundle does not exist at {ca_path}') response = requests.get('https://example.com', verify=ca_path) print(response.status_code) ``` 这种方式允许开发者灵活应对不同部署条件下的需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值