python3解决 ModuleNotFoundError: No module named ‘_ssl’
python3解决 ModuleNotFoundError: No module named ‘_ssl’

python3解决 ModuleNotFoundError: No module named ‘_ssl’

问题:

当我在python3虚拟环境中导入ssl模块时报错,报错如下:

(py3) [root@localhost Python-3.6.3]# python3
Python 3.6.3 (default, Nov 19 2018, 14:18:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/python3/lib/python3.6/ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ModuleNotFoundError: No module named '_ssl'

解决:

1.前提是已经安装了openssl

如果没按装,需要yum安装
安装依赖:yum install openssl-devel 

2.首先进入Python-3.6.3目录,就是你解压后安装python3.6的目录文件。
3.cd 到 Modules 目录里,找到Setup和Setup.dist文件,将下面几行注释去掉。

  • Setup下更改
  • vim Setup (大概在51%的位置)
    img
  • Setup.dist下的更改
  • vim Setup.dist (大概在50%的位置)
    img
    4.编译安装
    cd ..
    ./configure --prefix=/usr/local/python3
    make && make install

    5.删除旧的软连接,创建新的软连接(很重要)

    rm -rf /usr/bin/python3
    ln -s /usr/local/bin/python3.6 /usr/bin/python3

参考链接:https://www.cnblogs.com/hanfe1/p/13071020.html

发表回复

您的电子邮箱地址不会被公开。