解决 python 下 urllib open 的 CERTIFICATE_VERIFY_FAILED 错误

错误提示信息

1
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749)>

错误原因

网站使用了自签名证书等问题

解决办法

1
2
3
4
5
6
import ssl  
# import urllib
# from urllib import request

context = ssl._create_unverified_context()
urllib.request.urlopen(url, context=context)

1
2
3
4
5
6
import ssl  
# import urllib
# from urllib import request

ssl._create_default_https_context = ssl._create_unverified_context
urllib.request.urlopen(url)