Python3.7 urllib.request https urllib.error.URLError

Python3.7 urllib.request https urllib.error.URLError

在python3.7中,请求https出现urllib.error.URLError异常,导致程序报错;

异常如下:
urllib.error.URLError: urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1045)

SSL?

解决方案:
1、

import ssl
ssl._create_default_https_context = ssl._create_unverified_context

在urllib.request.urlopen()前加上此一句话,在运行,即可;

2、

import ssl
context = ssl._create_unverified_context()

res = urllib.request.urlopen(url, data, context=context);

创建一个未经验证的上下文,在urlopen()中添加,在运行,即可

第一种方法是访问https,在浏览器中访问该网站时会弹出证书不受信任,忽略就行了 ;
第二种是创建一个未经验证的上下文。

你可能感兴趣的:(python)