Python警告:InsecureRequestWarning、InsecurePlatformWarning、SNIMissingWarning

SSL警告

urllib3将基于证书验证支持的级别发出几种不同的警告。这些警告表示特定情况,可以通过不同方式解决。

  • InsecureRequestWarning
    当在未启用证书验证的情况下对HTTPS URL发出请求时,会发生这种情况。按照证书验证 指南解决此警告。
  • InsecurePlatformWarning
    这在具有过时ssl模块的Python 2平台上会发生这些较旧的ssl模块可能导致一些不安全的请求在失败的地方成功,而安全请求的失败在他们应该成功的地方。请按照pyOpenSSL指南解决此警告。
  • SNIMissingWarning
    这发生在2.7.9之前的Python 2版本上。这些较旧的版本缺少SNI支持。这可能会导致服务器出示客户端认为无效的证书。请按照pyOpenSSL指南解决此警告。

强烈建议不要进行未经验证的HTTPS请求,但是,如果您了解风险并希望禁用这些警告,则可以使用disable_warnings()

>>> import urllib3
>>> urllib3.disable_warnings()

或者,您可以使用标准logging模块捕获警告

>>> logging.captureWarnings(True)

最后,您可以通过设置PYTHONWARNINGS环境变量或使用 -W标志在解释器级别抑制警告 

posted on 2019-11-12 17:12  方圆几百里Idea  阅读(396)  评论(0编辑  收藏  举报

导航