我正在尝试运行该程序,以便可以理解使用龙卷风进行的异步编程。
`import tornado.ioloop
from tornado.httpclient import AsyncHTTPClient
url = 'https://jsonplaceholder.typicode.com/posts'
def handle_response(response):
url = response.request.url
data = response.body
print('{}: {} bytes: {}'.format(url, len(data), data))
http_client = AsyncHTTPClient()
http_client.fetch(url, handle_response)
tornado.ioloop.IOLoop.instance().start()`
但是,当我尝试运行该错误时,会出现此错误
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)
答案 0 :(得分:1)
SSL错误是因为Python 3.7不再依赖MacOS的openSSL。它带有捆绑的自己的openSSL,无法访问MacOS的根证书。 所以我所要做的就是运行以下命令-
/Applications/Python\ 3.7/Install\ Certificates.command
答案 1 :(得分:0)
我使用python3测试了您的代码,它按预期运行。您可能要对通过浏览器或使用curl从计算机连接到该网站进行故障排除。
这表示出于某种原因,http客户端无法验证网站的SSL证书。如果您无法在浏览器中访问该页面,则需要确定原因,这可能是由于基于DNS的广告/内容阻止程序或其他(未知)原因所致。
编辑:这也可能是由于您的计算机偏离实际时间太远的时间所致。