我想使用请求连接到具有自签名证书的Web服务器:

try:
    requests.get(url, cert=PATH_CERTIFICATE)
except requests.exceptions.ConnectionError as e:
    logger.info(e)


但是由于以下原因而失败:


  [Errno 336265225] _ssl.c:351:错误:140B0009:SSL例程:SSL_CTX_use_PrivateKey_file:PEM库


我通过运行以下命令获得了此证书:

openssl s_client -showcerts -ssl3 -connect <hostname:port>

最佳答案

使用verify关键字而不是cert

requests.get(url, verify=PATH_CERTIFICATE)

关于python - _ssl.c:351:错误:140B0009:SSL例程:SSL_CTX_use_PrivateKey_file:PEM库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24740230/

10-10 02:40