zoukankan      html  css  js  c++  java
  • Python3中无法导入ssl模块的解决办法

    这个问题,已经困扰我好几天了,本萌新刚开始接触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的开发包。

  • 相关阅读:
    32-数据链路层,PPP协议
    31-NAT
    30-安全技术,ACL
    ensp实验:配置DHCP
    29-应用层,DHCP协议
    ensp实验:配置stp
    28-STP,选举过程、端口状态、计时器、拓扑变化
    27-交换机,STP
    26-交换机,GVRP
    Manually APK Downgrade for split apks
  • 原文地址:https://www.cnblogs.com/mlgjb/p/7976561.html
Copyright © 2011-2022 走看看