我该如何修复 SSL 错误,似乎没有任何效果?
How can I fix SSL error, nothing seems to work?
我正要用 Nasa API 做一些测试,看看它是否有效,但每次我 运行 代码时都会收到 SSL 错误。我尝试提供 SSL 上下文并设置 verify=False,但似乎没有任何效果。
请求如下:
with urllib.request.urlopen(url=apod["hdurl"], context=ctx) as u, \
open(filename, 'wb') as f:
f.write(u.read())
在请求上面,我已经定义了上下文:
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
因为我在 MacOS 上,所以我也尝试过 Applications > Python 3.8 > Install certificates 命令,但它似乎不起作用。
我在想我的 Python 解释器可能出了点问题。
此外,这是我得到的异常:
requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1124)
似乎图书馆在发送请求时遇到了问题,如果我去:
nasa = nasapy.Nasa(key=key)
nasa.picture_of_the_day()
我收到相同的 SSL 证书错误。我该如何解决这个问题?
非常感谢帮助!
我修复了它,我不得不进入库文件 venv/bin/api.py 并在请求所在的库代码中设置 verify=False
.
现在有效。
我正要用 Nasa API 做一些测试,看看它是否有效,但每次我 运行 代码时都会收到 SSL 错误。我尝试提供 SSL 上下文并设置 verify=False,但似乎没有任何效果。
请求如下:
with urllib.request.urlopen(url=apod["hdurl"], context=ctx) as u, \
open(filename, 'wb') as f:
f.write(u.read())
在请求上面,我已经定义了上下文:
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
因为我在 MacOS 上,所以我也尝试过 Applications > Python 3.8 > Install certificates 命令,但它似乎不起作用。 我在想我的 Python 解释器可能出了点问题。
此外,这是我得到的异常:
requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1124)
似乎图书馆在发送请求时遇到了问题,如果我去:
nasa = nasapy.Nasa(key=key)
nasa.picture_of_the_day()
我收到相同的 SSL 证书错误。我该如何解决这个问题?
非常感谢帮助!
我修复了它,我不得不进入库文件 venv/bin/api.py 并在请求所在的库代码中设置 verify=False
.
现在有效。