You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pd.read_csv从URL加载数据时遭遇SSLCertVerificationError问题

解决pd.read_csv加载URL数据时的SSLCertVerificationError错误

报错信息

SSLCertVerificationError Traceback (most recent call last)
File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/urllib/request.py:1344, in AbstractHTTPHandler.do_open(self, http_class, req, **http_conn_args)
1343 try:
-> 1344 h.request(req.get_method(), req.selector, req.data, headers,
1345 encode_chunked=req.has_header('Transfer-encoding'))
1346 except OSError as err: # timeout error

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/http/client.py:1336, in HTTPConnection.request(self, method, url, body, headers, encode_chunked)
1335 """Send a complete request to the server."""
-> 1336 self._send_request(method, url, body, headers, encode_chunked)

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/http/client.py:1382, in HTTPConnection._send_request(self, method, url, body, headers, encode_chunked)
1381 body = _encode(body, 'body')
-> 1382 self.endheaders(body, encode_chunked=encode_chunked)

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/http/client.py:1331, in HTTPConnection.endheaders(self, message_body, encode_chunked)
1330 raise CannotSendHeader()
-> 1331 self._send_output(message_body, encode_chunked=encode_chunked)

File /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/http/client.py:1091, in HTTPConnection._send_output(self, message_body, encode_chunked)
1090 del self._buffer[:]
-> 1091 self.send(msg)
1093 if message_body is not None:
1094
...
-> 1347 raise URLError(err)
1348 r = h.getresponse()
1349 except:

URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] 证书验证失败:无法获取本地颁发机构证书 (_ssl.c:1000)>

解决方案

1. 临时禁用SSL验证(测试环境适用)

通过修改SSL上下文绕过证书验证,代码如下:

import pandas as pd
import ssl

# 设置未验证的SSL上下文
ssl._create_default_https_context = ssl._create_unverified_context

# 加载数据
df = pd.read_csv("你的目标数据URL")

注意:此方法会降低请求安全性,仅适合测试场景,生产环境请勿使用。

2. 指定合法CA证书文件(安全方案)

如果能获取目标网站的CA证书文件,可通过verify参数指定证书路径:

df = pd.read_csv("你的目标数据URL", verify="/path/to/ca_certificate.pem")

3. 升级相关依赖库

证书信任问题可能源于依赖库版本过旧,执行以下命令升级:

pip install --upgrade pandas urllib3 certifi

certifi库包含了默认的可信CA证书集合,升级后可修复多数证书信任问题。


内容的提问来源于stack exchange,提问作者Deepanshu Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 21:05:07