我正在尝试运行此程序,以便我可以使用龙卷风了解异步编程。
`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)
SSL错误是因为Python 3.7不再依赖于MacOS的openSSL。它附带了自己的openSSL捆绑,无法访问MacOS的根证书。所以我需要做的就是运行以下命令 -
/Applications/Python\ 3.7/Install\ Certificates.command
我使用python3测试了你的代码,它按预期运行。您可能希望通过浏览器或使用curl来解决从计算机连接到该网站的问题。
这表明由于某种原因,http客户端无法验证网站的SSL证书。如果您无法在浏览器中访问该页面,则需要确定原因,可能是由于基于DNS的广告/内容拦截器或其他(未知)内容。
编辑:这也可能是由于您的计算机离实际时间太远的时间。