0

As an experiment I'm trying to do a GET request to https://google.com with a specified ca file.

The certificate of Google was retrieved through the following openssl command:

openssl s_client -showcerts -connect google.com:443 </dev/null 2>/dev/null|openssl x509 -outform PEM >mycertfile.pem

Using this certificate, I make a GET request with the following code:

cafile = "mycertfile.pem"
r = requests.get("https://google.com", verify=cafile)
print(r.status_code)

Why does this not work and result in an SSL certificate verification failure?

Traceback (most recent call last):
  File "C:/Users/jarno/Projects/pyplayground/main.py", line 6, in <module>
    r = requests.get("https://google.com", verify=cafile)
  File "C:\Users\jarno\Projects\flasktest\venv\lib\site-packages\requests\api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "C:\Users\jarno\Projects\flasktest\venv\lib\site-packages\requests\api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Users\jarno\Projects\flasktest\venv\lib\site-packages\requests\sessions.py", line 530, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Users\jarno\Projects\flasktest\venv\lib\site-packages\requests\sessions.py", line 643, in send
    r = adapter.send(request, **kwargs)
  File "C:\Users\jarno\Projects\flasktest\venv\lib\site-packages\requests\adapters.py", line 514, in send
    raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='google.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1076)')))
  • Does this answer your question? [Python Requests - How to use system ca-certificates (debian/ubuntu)?](https://stackoverflow.com/questions/42982143/python-requests-how-to-use-system-ca-certificates-debian-ubuntu) – Sazzy Apr 18 '20 at 20:37
  • @Sazzy Unfortunately it gives the same error. – dave clarke Apr 18 '20 at 22:08

0 Answers0