python https 无法访问 SSLError("Can\'t connect to HTTPS URL because the SSL module is not available

1,需要检查python 安装的时候是否支持 https 

  进入python 环境,import ssl 如果正常导入就可以使用https,不能导入就需要进入下一步。

 

2,查看系统是否安装了openssl 

  rpm -aq|grep openssl

  必须所有版本必须对应上

      

 

   如果没有需要安装:

  yum install openssl-devel  openssl

 

3,如果系统安装好了openssl ,再安装python 版本一般是可以访问https 的,但是如果系统还没安装openssl就先安装python 版本就不行。

  重新安装python 版本,本人使用python 3.6.6

  地址: https://www.python.org/ftp/python/    (找到自己需要的版本安装)

  或用:  wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz

  tar -xzvf Python-3.6.6.tgz

  cd python-3.6.6

  ./configure --prefix=/usr/local/python-3.6.6 #指定python3.6.6的安装路径,可以自己设置。

  make 

  make install

   安装完成后进入python环境  再次导入ssl 就成功了。

 

4,新安装的python的pip 版本比较低,需要升级,否则安装第三方依赖可能安装不上。提示版本低。

  python -m pip install --upgrade pip  (一般可以升级成功) 

  pip 升级提示python 版本过低 ,无法升级 解决方案

    pip uninstall pip   (先卸载,再安装)

    wget https://files.pythonhosted.org/packages/0b/f5/be8e741434a4bf4ce5dbc235aa28ed0666178ea8986ddc10d035023744e6/pip-20.2.4.tar.gz

    tar -zxvf pip-20.2.4.tar.gz  

         cd pip-20.2.4

    python setup.py install

    这样pip 就离线升级了。

 

5,修改以前的软连接。

  执行:修改软链(ln -snf 新的python环境  目标环境)如下:
  ln -snf  /usr/local/python-3.6.6  /usr/local/bin/python

  

 

你可能感兴趣的:(python https 无法访问 SSLError("Can\'t connect to HTTPS URL because the SSL module is not available)