python3中pip3安装出错,找不到SSL的解决方式


Posted in Python onDecember 12, 2019

最近在Ubuntu16.04上安装Python3.6之后,使用pip命令出现了问题,提示说找不到ssl模块,出现错误如下:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

Could not fetch URL https:*******: There was a problem confirming the ssl certificate: 
Can't connect to HTTPS URL because the SSL module is not available. - skipping

本人安装Python3.6的操作如下:

1.wget获取安装包:
  wget http://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz

2.解压安装包:
  tar -xvzf Python-3.6.2.tgz

3.检查安装平台属性,系统是否有编译时所需要额库,以及库的版本是否满足编译需要
  ./configure

4.编译源码
  make

5.成功编译之后,安装
  sudo make install

在安装完之后,我们希望用pip3命令来安装numpy。首先,用如下命令安装pip3:

sudo install python3-pip

安装完之后,使用pip3安装numpy:

sudo pip install python-numpy

但是此时就出错了,显示本文开始提到的错误,大致意思就是安装过程需要SSL,但是那个SSL找不到。

本人查阅网上资料,发现openSSL是系统自带的,所以一定是安装了的,本人用以下命令尝试再次安装openssl:

sudo apt-get install openssl
sudo apt-get install libssl-dev

但是安装结果显示是对其进行更新(update),这说明系统已经安装了openssl。但是pip3就是找不到ssl模块。

本人进入python3中,然后进行ssl导入操作:

import ssl

结果出错,错误如下:

no moudle named _ssl

显示没有ssl模块。本人再进入python中(即系统自带的python2.7中),进行ssl导入操作:

import ssl

发现并没有显示错误,导入正常。这说明openssl已经安装了,只是python2可以调用,新安装的python3却不能调用。

本人查阅资料发现,在./configure过程中,如果没有加上?with-ssl参数时,默认安装的软件涉及到ssl的功能不可用,刚好pip3过程需要ssl模块,而由于没有指定,所以该功能不可用。

解决办法是重新对python3.6进行编译安装,用一下过程来实现编译安装:

cd Python-3.6.2
./configure --with-ssl
make
sudo make install

这样就允许安装的python3使用ssl功能模块,进入python3中,执行import ssl发现未出错,正常再次调用pip3指令来安装numpy,发现正常,问题解决!

以上这篇python3中pip3安装出错,找不到SSL的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 除法小技巧
Sep 06 Python
python使用百度翻译进行中翻英示例
Apr 14 Python
python中常用的各种数据库操作模块和连接实例
May 29 Python
Python version 2.7 required, which was not found in the registry
Aug 26 Python
python创建和删除目录的方法
Apr 29 Python
Pycharm无法使用已经安装Selenium的解决方法
Oct 13 Python
Python3+Appium实现多台移动设备操作的方法
Jul 05 Python
详解PyTorch手写数字识别(MNIST数据集)
Aug 16 Python
python代数式括号有效性检验示例代码
Oct 04 Python
Appium+Python实现简单的自动化登录测试的实现
Jan 26 Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 Python
Python自动化测试PO模型封装过程详解
Jun 22 Python
python 使用opencv 把视频分割成图片示例
Dec 12 #Python
Python2与Python3的区别点整理
Dec 12 #Python
opencv3/C++实现视频背景去除建模(BSM)
Dec 11 #Python
opencv3/C++实现视频读取、视频写入
Dec 11 #Python
django框架两个使用模板实例
Dec 11 #Python
Python enumerate函数遍历数据对象组合过程解析
Dec 11 #Python
django框架基于queryset和双下划线的跨表查询操作详解
Dec 11 #Python
You might like
基于xcache的配置与使用详解
2013/06/18 PHP
PHP使用json_encode函数时不转义中文的解决方法
2014/11/12 PHP
php实现图片添加描边字和马赛克的方法
2014/12/10 PHP
php获取错误信息的方法
2015/07/17 PHP
PHP弹出对话框技巧详细解读
2015/09/26 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
关于Curl在Swoole协程中的解决方案详析
2019/09/12 PHP
php设计模式之单例模式用法经典示例分析
2019/09/20 PHP
JavaScript设置IFrame高度自适应(兼容各主流浏览器)
2013/06/05 Javascript
获取表单控件原始(初始)值的方法
2013/08/21 Javascript
一张Web前端的思维导图分享
2015/07/03 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
又一枚精彩的弹幕效果jQuery实现
2016/07/25 Javascript
js 判断各种数据类型的简单方法(推荐)
2016/08/29 Javascript
jQuery实现立体式数字动态增加(animate方法)
2016/12/21 Javascript
JS常用正则表达式总结【经典】
2017/05/12 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
iframe与主框架跨域相互访问实现方法
2017/09/14 Javascript
Parcel 打包示例(React HelloWorld)
2018/01/16 Javascript
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
vue如何获取自定义元素属性参数值的方法
2019/05/14 Javascript
仅利用30行Python代码来展示X算法
2015/04/01 Python
Python的Django框架中的数据过滤功能
2015/07/17 Python
详解python3实现的web端json通信协议
2016/12/29 Python
Python获取当前路径实现代码
2017/05/08 Python
Python有序查找算法之二分法实例分析
2017/12/11 Python
关于Python 的简单栅格图像边界提取方法
2019/07/05 Python
python 实现超级玛丽游戏
2020/11/25 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
html5的websockets全双工通信详解学习示例
2014/02/26 HTML / CSS
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
社区志愿者心得体会
2014/01/03 职场文书
家长对孩子的感言
2014/03/10 职场文书
结对共建协议书
2014/08/20 职场文书
python 安全地删除列表元素的方法
2022/03/16 Python