问题复现
在使用django框架编写项目时,启动项目正常,访问url时报错
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issue …
分析
通过报错内容,可以发现是打开了一个https的链接,校验SSL证书时报错,由于文件中使用了urllib模块的urlopen方法,猜测是该方法造成的错误
查找资料,找到原因如下:
当使用urllib.urlopen打开一个https的链接时,会验证SSL证书,如果该证书是自签的就会报错
解决办法
在用到urllib模块的文件中添加如下代码
import sslssl._create_default_https_context = ssl._create_unverified_context
参考链接
/wsygdb/p/7902956.html