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