Mac下python中的SSL报错

问题

请求某个https或wss地址会校验ssl证书失败的情况。

报错类似:

ssl.SSLCertVerificationError:[SSL: CERTIFICATE_VERIFY_FAILED]

certificate verify failed: unable to get local issuer certificate(_ssl.c:1056)

与 wss://xxxxxx 的网络连接断开,请检查客户端与网络是否正常

产生原因

在Mac操作系统下,Python不再使用系统操作系统的证书,且本身也不提供证书。需要使用certifi库提供的证书,但SDK不支持指定。

解决办法

cd /Applications #从根目录进入应用子目录

cd Python\ 3.11/ #我的Python版本是3.11,大家根据情况弄

sudo ./Install\ Certificates.Command #进入目录后,可以ls一下,看一下都有哪些,找那个对的