使用请求包时发生SSL InsecurePlatform错误

发布于 2021-01-29 15:00:13

我正在使用Python 2.7.3和请求。我通过pip安装了请求。我相信这是最新版本。我正在Debian Wheezy上运行。

过去,我已经使用Requests多次,但从未遇到过此问题,但是似乎在通过https发出请求时Requests会出现InsecurePlatform异常。

错误提到urllib3,但我没有安装。我确实安装了它以检查它是否解决了错误,但没有成功。

/usr/local/lib/python2.7/dist-packages/requests/packages/urllib3
/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not
available. This prevents urllib3 from configuring SSL appropriately and 
may cause certain SSL connections to fail. For more information, see 
https://urllib3.readthedocs.org/en/latest  
/security.html#insecureplatformwarning.

关于我为什么要得到这个的任何想法?我已经按照错误消息中的说明检查了文档,但是文档说要导入urllib3并禁用警告或提供证书。

关注者
0
被浏览
79
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    使用有些隐藏的 安全 功能:

    pip install requests[security] 要么 pip install pyOpenSSL ndg-httpsclient pyasn1

    这两个命令都安装以下额外的软件包:

    • pyOpenSSL
    • 密码学
    • 艾德娜

    请注意,这对于python-2.7.9
    +
    不是必需的。

    如果pip install失败并出现错误,请检查您是否具有所需的开发包libffilibssl
    使用发行版的包管理器将其*python安装在系统中: *

    • Debian的 / Ubuntu的 -python-dev libffi-dev libssl-dev包。

    • Fedora的 -openssl-devel python-devel libffi-devel包。

    上面的发行版列表不完整。

    解决方法请参阅@TomDotTom的原始答案

    万一您无法安装某些必需的开发包,还有一个选项可以禁用该警告:

    import requests.packages.urllib3
    requests.packages.urllib3.disable_warnings()
    

    如果您pip自己受到InsecurePlatformWarningPyPI的影响并且无法从PyPI安装任何东西,则可以通过此逐步指南进行修复,以手动部署其他python软件包。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看