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. 从userAgent判断浏览器是什么(chorme ie 火狐)浏览器类型检测、浏览器检测

    一.正确的方法: 通过navigator对象的userAgent属性来判断, 主要是判断userAgent 的信息里是否含有以下字段信息: js代码(非完整版) /************ navig ...

  2. eclipse ndk 配置和简单开发demo

    记录下以备忘: android开发的各种资源国内镜像 http://www.androiddevtools.cn/ 前端时间尝鲜用android stuido1.5开发了个android的小项目,发现 ...

  3. 實現多个checkbox單選功能(转)

    <script type="text/javascript">        function check(obj) {            var checkbox ...

  4. HM visual studio编译报错

    今天,编译HM的代码,发现编译报如下错误. error MSB6003: The specified task executable "cl.exe" could not be r ...

  5. vue-parcel打包入门

    what 快速,零配置的 Web 应用程序打包器 why 快捷,配置比较少 使用 Parcel 打包的 vue HelloWorld 应用.GitHub 地址: https://github.com/ ...

  6. Selenium+PhantomJS使用初体验

    抓取使用Ajax技术完成的网页内容时可以使用Selenium+PhantomJS技术 1.pip install selenium 2.下载Phantomjs不需要用pip   武汉科技大学首页有一块 ...

  7. iOS NSRunloop

    什么是Runloop Runloop即运行循环.为什么你的APP放在那里不去动它,在某个时间点去操作它,它还会给你反馈.就是因为Runloop的存在. 总结一下,因为Runloop的存在,保证你的程序 ...

  8. ibatis 参数类型为map,map里面有list

    <select id="getChannelLayerList" parameterClass="java.util.HashMap"        re ...

  9. table中文字过长使用省略号

    1.设置table固定布局,否则自适应布局会不受控制 table{ table-layout: fixed; } 2.设定td宽度占比 <table> <col width=&quo ...

  10. UI 设计中的视觉无障碍设计

    我给博客改了主题色,从 这样的 改成了 这样的:然而我问小伙伴看看效果他却并没有发现改变. 红绿色盲在亚洲人中占比,男性约 5%,女性则小得多.也就是说,就算仅考虑为国内用户开发应用,这也是很大的一部 ...