解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available


Posted in Python onJuly 31, 2019

简述

从官网下载了Python3.7.4,直接编译安装后,使用pip3出现了报错信息: Can't connect to HTTPS URL because the SSL module is not available

错误原因

在Python3.7之后的版本,依赖的openssl,必须要是1.1或者1.0.2之后的版本,或者安装了2.6.4之后的libressl。

解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available

image.png

而本地的openssl依然是1.0.1e的。

[root@localhost ~]# openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013

解决方法

上openssl官网下载1.0.2或者1.1之后的openssl包,编译安装。我选择的是1.0.2r。

[root@localhost ~]# wget http://www.openssl.org/source/openssl-1.0.2r.tar.gz
[root@localhost ~]# tar zxvf openssl-1.0.2r.tar.gz
[root@localhost ~]# ./config --prefix=/opt/openssl1.0.2r --openssldir=/opt/openssl1.0.2r/openssl no-zlib
[root@localhost ~]# make && make install
[root@localhost ~]# echo "/opt/openssl1.0.2r/lib" >> /etc/ld.so.conf
[root@localhost ~]# ldconfig -v

注意:编译openssl1.0.2r的时候建议加上no-zlib,否则后面可能会出现undefined symbol: SSL_CTX_get0_param错误

安装python3.7

下载Python包,编译

[root@localhost ~]# wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz
[root@localhost ~]# tar xvf  Python-3.7.4.tar.xz
[root@localhost ~]# cd Python-3.7.4;./configure --prefix=/data/tools/Python3.7.4

编译完成后不要make,先修改Python源码包中ssl的参数

打开源码解压目录中的 Modules/Setup ,直接搜索 SSL= ,将SSL=后面的目录改为前面openssl的安装目录,并把下面三行的注释去掉。

[root@localhost ~]# vim Modules/Setup
SSL=/opt/openssl1.0.2r
_ssl _ssl.c \
    -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
    -L$(SSL)/lib -lssl -lcrypto

改完之后就在解压目录直接make就行了。

[root@localhost ~]# make && make install
[root@localhost ~]# echo "export PATH=/data/tools/Python3.7.4/bin:$PATH" >> ~/.bashrc
[root@localhost ~]# source ~/.bashrc
[root@localhost ~]# pip3 list
Package  Version
---------- -------
pip    19.0.3 
setuptools 40.8.0 
You are using pip version 19.0.3, however version 19.2.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

总结

以上所述是小编给大家介绍的解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
在Python中使用sort()方法进行排序的简单教程
May 21 Python
编写Python脚本抓取网络小说来制作自己的阅读器
Aug 20 Python
TensorFlow实现卷积神经网络CNN
Mar 09 Python
Python通过调用有道翻译api实现翻译功能示例
Jul 19 Python
pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法
Jun 21 Python
对python中url参数编码与解码的实例详解
Jul 25 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
Nov 27 Python
Python OpenCV读取显示视频的方法示例
Feb 20 Python
python利用datetime模块计算程序运行时间问题
Feb 20 Python
Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
Mar 20 Python
python实现扑克牌交互式界面发牌程序
Apr 22 Python
Python实现简单的猜单词
Jun 15 Python
numpy中的meshgrid函数的使用
Jul 31 #Python
pandas的排序和排名的具体使用
Jul 31 #Python
pandas如何处理缺失值
Jul 31 #Python
详细介绍pandas的DataFrame的append方法使用
Jul 31 #Python
使用pandas读取文件的实现
Jul 31 #Python
python3实现mysql导出excel的方法
Jul 31 #Python
Django接收post前端返回的json格式数据代码实现
Jul 31 #Python
You might like
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
2010/03/23 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel
2017/04/27 PHP
一个简单的弹性返回顶部JS代码实现介绍
2013/06/09 Javascript
javascript实时获取鼠标坐标值并显示的方法
2015/04/30 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
angular分页指令操作
2017/01/09 Javascript
Javascript前端经典的面试题及答案
2017/03/14 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
2017/03/30 Javascript
使用 jQuery 实现表单验证功能
2017/07/05 jQuery
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
js中的闭包学习心得
2018/02/06 Javascript
微信小程序中使用wxss加载图片并实现动画效果
2018/08/13 Javascript
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
JavaScript实现多球运动效果
2020/09/07 Javascript
[02:47]3.19DOTA2发布会 国服成长历程回顾
2014/03/25 DOTA
Python全局变量用法实例分析
2016/07/19 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
2017/11/17 Python
Python cookbook(数据结构与算法)同时对数据做转换和换算处理操作示例
2018/03/23 Python
解决csv.writer写入文件有多余的空行问题
2018/07/06 Python
利用Python将数值型特征进行离散化操作的方法
2018/11/06 Python
Python选择网卡发包及接收数据包
2019/04/04 Python
详解python中的线程与线程池
2019/05/10 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
2020/03/10 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
购买200个世界上最好的内衣品牌:Bare Necessities
2017/02/11 全球购物
德国玩具商店:Planet Happy DE
2021/01/16 全球购物
幼儿园六一主持词开场白
2015/05/28 职场文书
2016年教师节感言
2015/12/09 职场文书
文明医院的标语集锦!
2019/07/24 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS