Python 使用请求验证SSL证书
我正在尝试验证SSL,但它不起作用Python 使用请求验证SSL证书,python,ssl,python-requests,ssl-certificate,Python,Ssl,Python Requests,Ssl Certificate,我正在尝试验证SSL,但它不起作用 我在我的浏览器上访问了我想访问的机密网站 在Chrome上,我点击了locker>certificates>Details>copy in a file>base 64>certif.cer 我的代码是: test = requests.get('https://confidential.xx/', verify='certif.cer') 错误是: 文件 “C:\Users\xxxxx\Downloads\WinPython\WPy64-3850\pyth
test = requests.get('https://confidential.xx/', verify='certif.cer')
错误是:
文件
“C:\Users\xxxxx\Downloads\WinPython\WPy64-3850\python-3.8.5.amd64\lib\site packages\requests\adapters.py”,
发送中的第514行
raise SSLError(e,请求=请求)
SSLError:HTTPSConnectionPool(主机='xxxxx',
端口=443):url:/(由以下原因导致)超过了最大重试次数
SSLError(SSLCertVerificationError(1),[SSL:证书验证失败]
证书验证失败:证书中的自签名证书
链(_ssl.c:1123)'))
我不想使用verify=False,它可以工作,但不安全
我试过使用和不使用代理,同样的错误
我需要使此工作,请如何使此代码工作?若要发出
请求
不抱怨有效证书,提供给验证=
的证书必须包含任何中间证书。要下载完整链,您可以使用Firefox(屏幕截图):
点击页面信息:
然后下载完整的PEM链:
试试这个:注意:你必须包括服务器的证书和任何中间证书。@AndrejKesely谢谢,你知道我在哪里可以找到中间证书吗?我发布了一个带有屏幕截图的答案。@Totopildo你什么意思不可用?我看不到图片。然而,我在Firefow中发现了两件事,请问我可以选择哪一件?下载:PEM(cert)/PEM(chain)@totopildo
PEM(chain)
包含完整的链。(注意:奇怪,我能看到图像。你支持代理吗?)是的,但我在搜索图像时,在手机上搞错了我和我。看起来很有效,谢谢!