Python3中无法导入ssl模块的解决办法

如果你发现在python3脚本运行过程中发现涉及到ssl模块都无法运行的情况下。那么需要进行如下步骤

第一步:

yum install openssl openssl-devel -y

第二步:

这个问题,已经困扰我好几天了,本萌新刚开始接触python,想爬取几个网页试试

发现urllib无法识别https,百度后才知道要导入ssl模块,可是发现又报错了

本人实在无法理解为什么会报错,因为ssl模块确实在lib/python3.6这个目录下,

求助度娘后,才知道python中要使用ssl需要有openssl作为前置,

于是安装openssl,但是发现openssl已经安装了,进入到系统自带那个

python2.7中,发现导入ssl没有报错,

到这个时候已经能大致确定原因了,就是python3在安装的过程中无法使用openssl,

根据网上的一些博客的做法,要进入到python源码包解压后的那个目录下的Modules/Setup

注意Setup这个文件,只有在python完成安装后才会生成这个文件

用vim编辑,找到上图部分,把上图横线部分部分的#给去掉

然后再编译 make

安装  make install

但是这个时候又特么悲剧的报错了,说是找不到openssl/rsa这个文件,

百度之后,说是缺少openssl的开发包,因为你尝试编译的程序使用openssl

但是缺少和openssl链接的库与头文件,需要安装openssl的开发包。

因为我使用的是linuxmint,是基于ubantu的发行版,需要安装openssl-dev

安装:apt-get install openssl-dev

再来编译 make

安装  make install

这两步是对已近安装的python再进行覆盖安装

到此为止问题就解决了

总结一下:

当你发现无法导入ssl的时候

首先检查一下,是否安装了openssl

再来检查一下是否安装openssl的开发包

Centos6-7安装Python3.5以及SSL的编译安装,识别https的更多相关文章

  1. Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip

    Linux 安装python3.7.3 提示已经自动安装了pip和setuptools 可是使用时bash提示没有找到pip 今天的任务就是找到解决办法 另外就是用布置好python3的路径

  2. WordPress安装篇(5):源码编译安装LNMP并部署WordPress

    与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...

  3. Linux非root安装Python3以及解决SSL问题

    说明 接上一篇. [Linux]非root安装Python3及其包管理 上一篇虽然成功安装了Python3及一些常用的模块,但因为一直装不上SSL模块,导致一些包无法安装,尝试了不少方法都失败了(网上 ...

  4. linux安装python3 大型的软件一定要安装在/ opt中 规范

    关闭页面特效     linux中安装python   1.首先切换目录 大型的软件一定要安装在/ opt中  规范 cd /opt 2.下载python3的源码 wget https://www.p ...

  5. centos6.9下 svn 1.7.10版本 编译安装

    svn安装推荐文章: 1.    http://blog.51cto.com/myhat/786950 2.    https://blog.csdn.net/test1280/article/det ...

  6. 全志a20安卓电视盒子安装可道云kodexplorer服务-编译安装php7.3+nginx

    可道云真的很强大,安装包很小,功能却很齐全,还可以自定义轻应用如果有手机客户端就更好了 研究了一下,可道云根目录放到外置存储设备(移动硬盘)会更合适,改路径的方法下面有提到上传文件时一个文件会在用户目 ...

  7. php自己编译安装后,再给这个编译安装的php版本添加拓展模块的处理办法。

    原文: https://www.cnblogs.com/zongyl/p/5924627.html 说明,给编译安装之后的php 添加pgsql 拓展成功. --------------------- ...

  8. MYSQL5.7的安装(yum、二进制、编译安装)

    目录 一.环境说明 二.YUM安装 1.安装MYSQL-YUM源 2.安装说明 3.安装前的准备 4.安装 5.启动 三.变更root密码 四.BINARY-INSTALL 1.基础环境准备 2.建立 ...

  9. Ubuntu下安装Python3.4及用python编译py文件

    1.安装python 3.4程序 sudo apt-get install python3.4 2.python 3.4是被默认安装在/usr/local/lib/python3.4,删除默认pyth ...

随机推荐

  1. Elasticsearch 在分布式系统中深度分页问题

    理解为什么深度分页是有问题的,我们可以假设在一个有 5 个主分片的索引中搜索. 当我们请求结果的第一页(结果从 1 到 10 ),每一个分片产生前 10 的结果,并且返回给 协调节点 ,协调节点对 5 ...

  2. 辛星笔记——VIM学习篇(推荐阅读)

    转载自:辛星和您一起学vim脚本第一节 如本文侵犯了您的版权,请联系windeal12@qq.com 这几天在网上看了辛星的一些vim教程博文,觉得很有收获,也很实用,适合入门,所以转载其中一篇留个网 ...

  3. 添加courses模块

    startapp courses from django.db import models from datetime import datetime # Create your models her ...

  4. GPU编程自学4 —— CUDA核函数运行参数

    深度学习的兴起,使得多线程以及GPU编程逐渐成为算法工程师无法规避的问题.这里主要记录自己的GPU自学历程. 目录 <GPU编程自学1 -- 引言> <GPU编程自学2 -- CUD ...

  5. CUDA Samples: Calculate Histogram(atomicAdd)

    以下CUDA sample是分别用C++和CUDA实现的计算一维直方图,并对其中使用到的CUDA函数进行了解说,code参考了<GPU高性能编程CUDA实战>一书的第九章,各个文件内容如下 ...

  6. angular 全局 监听路由变化

    app.run(['$rootScope', '$location', function($rootScope, $location) { /* 监听路由的状态变化 */ $rootScope.$on ...

  7. fedora22 安装fcitx 输入法

    <h4>安装fcitx:</h4><blockquote>sudo yum install fcitx fcitx-pinyin fcitx-configtools ...

  8. 封装 一下 php sql 的存储语句

    function get_insert_sql($obj){ $str1 =""; $str2 =""; foreach($obj as $key => ...

  9. linux自学(六)之开始centos学习,更换yum源

    上一篇:linux自学(五)之开始centos学习,Xshell远程连接 1. 备份原来的yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repo ...

  10. 20179223《Linux内核原理与解析》第六周学习笔记

    视频知识学习 给MenuOS增加time和time-asm命令 1.更新menu代码到最新版 2.再main()函数中增加MenuConfig 3.增加对应的Time函数和TimeAsm函数(这里的函 ...