python学习中遇到的错误
有时候,使用如下脚本去访问网页时
1 | s = request.get( 'https://www.baidu.com' ) |
会报如下错误
1 | requests.exceptions.SSLError: HTTPSConnectionPool(host = 'passport.cnblogs.com' , port = 443 ): Max retries exceeded with url: / user / signin (Caused by SSLError(SSLError( 1 , '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:646)' ),)) |
解决方法:
1、调用了urllib3.disable_warnings()函数,来确保不会发生警告
1 2 | from requests.packages import urllib3 urllib3.disable_warnings() |
2、调用logging的captureWarning(True)函数
1 2 | import logging logging.captureWarnings( True ) |
3、request可以为https请求SSL证书,但SSL证书默认是开启的,如果证书验证失败,就会报出上述错误,我们可以在get()方法中将verify设置为False,requests将忽略对SSL证书的验证
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步