ImportError: urllib3 v2.0只支持OpenSSL 1.1.1 ,当前'ssl'模块编译时使用了低版本

微笑向暖 2024-08-18 ⋅ 20 阅读

引言

近期在使用Python开发项目时,遇到了一个名为ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the ‘ssl‘ module is compiled with的错误。这个错误表明当前系统中的ssl模块与urllib3版本不兼容。本篇博客将向您介绍该错误的原因,并提供解决方案。

错误原因

这个错误的原因是因为urllib3 v2.0版本对于OpenSSL的最低要求是1.1.1+,而当前我们的系统中的ssl模块可能是使用低版本的OpenSSL编译的。这导致了无法加载urllib3库,从而引发了ImportError异常。

解决方案

为了解决这个错误,我们需要升级Python的ssl模块或者安装支持1.1.1+版本的OpenSSL。

方法1: 升级Python的ssl模块

  1. 检查Python版本

    • 在终端中运行python --version命令,确保您的Python版本是3.8或更高版本。如果不是,请考虑升级 Python。
  2. 使用pip升级urllib3

    • 在终端中运行以下命令来升级urllib3库:
      pip install --upgrade urllib3
      
  3. 更新ssl模块

    • 在终端中运行以下命令来更新ssl模块:
      pip install --upgrade ssl
      

方法2: 安装支持1.1.1+版本的OpenSSL

  1. 检查OpenSSL版本

    • 在终端中运行openssl version命令,检查OpenSSL版本是否低于1.1.1。如果是,请继续下一步安装更新版本。
  2. 更新OpenSSL

    • 根据您的操作系统,可以使用以下命令来更新OpenSSL:
      • Ubuntu/Debian:
        sudo apt-get update
        sudo apt-get install openssl
        
      • macOS with Homebrew:
        brew update
        brew upgrade openssl
        
      • Windows: 请参考OpenSSL官方网站 https://www.openssl.org/source/ 下载并安装最新版本。
  3. 重新安装urllib3

    • 在终端中运行以下命令重新安装urllib3库:
      pip install --upgrade urllib3
      

结论

通过升级Python的ssl模块或者安装支持1.1.1+版本的OpenSSL,我们可以解决ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the ‘ssl‘ module is compiled with错误。请根据您的需求选择适合您的解决方案并按照步骤进行操作。这样,您的项目将能够顺利运行,并且可以正确加载urllib3库。

希望本篇文章对于解决该错误提供了帮助。如果您有任何疑问,请随时在评论中向我提问。谢谢阅读!


全部评论: 0

    我有话说: