deep-translator库SSL证书验证失败错误求助
SSL证书验证失败问题解决
环境信息
- deep_translator版本:1.9.1
- Python版本:3.9
- 操作系统:Win 11
问题代码
from deep_translator import GoogleTranslator translator = GoogleTranslator(source='en', target='pt') data = 'my name is python' translator.translate(data)
报错信息
错误输出:HTTPSConnectionPool(host='translate.google.com', port=443): 超过URL的最大重试次数: /m?tl=pt&sl=en&q=my+name+is+python(由SSLError引起(SSLCertVerificationError(1, '[SSL: 证书验证失败] 证书验证失败: 证书链中存在自签名证书 (_ssl.c:1129)')))
解决方案
方案1:临时禁用SSL验证(测试场景可用)
修改代码,在初始化GoogleTranslator时添加verify=False参数,跳过证书验证:
from deep_translator import GoogleTranslator translator = GoogleTranslator(source='en', target='pt', verify=False) data = 'my name is python' result = translator.translate(data) print(result)
注意:该方案仅适合测试环境,生产环境禁用SSL验证存在安全风险,不推荐使用。
方案2:更新证书库或导入根证书
- 更新Python证书库:
打开命令提示符,执行以下命令:
然后设置环境变量指定证书路径(替换为你的Python实际安装路径):pip install --upgrade certifisetx SSL_CERT_FILE "C:\Python39\Lib\site-packages\certifi\cacert.pem" - 导入Google根证书到Windows系统:
- 下载GlobalSign Root CA等Google信任的根证书文件
- 打开控制面板 → 管理工具 → 证书管理器
- 展开“受信任的根证书颁发机构”,右键选择“所有任务” → “导入”
- 按照向导完成证书导入操作
方案3:检查代理/VPN
若当前使用代理或VPN服务,尝试关闭后重新运行代码,部分代理会替换SSL证书导致验证失败。
内容的提问来源于stack exchange,提问作者SOURAV KUMAR PATHAK
相关产品推荐
相关产品推荐

