解决Python找不到ssl模块问题 No module named _ssl

很多Python初学者,在完成python安装后,却提示找不到ssl模块,下面分享解决Python找不到ssl模块问题 No module named _ssl

1
2
3
4
5
6
7
8
9
10
11
[www@zihi888.cn ~]$ python
Python 2.7.15 (default, Oct 23 2018, 18:08:43) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2
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/python27/lib/python2.7/ssl.py", line 60, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: No module named _ssl
>>>

解决方法:

1. 查看openssl安装包,发现缺少openssl-devel包

1
2
3
4
[www@zihi888.cn ~]$ rpm -aq|grep openssl
openssl-0.9.8e-20.el5
openssl-0.9.8e-20.el5
[www@zihi888.cn ~]$

2. yum安装openssl-devel

1
2
3
4
5
[www@zihi888.cn ~]$ yum install openssl-devel -y
#查看安装结果
[www@zihi888.cn ~]$ rpm -aq|grep openssl
openssl-devel-1.0.1e-57.el6.x86_64
openssl-1.0.1e-57.el6.x86_64

3. 重新编译python

修改Setup文件

1
vi /src/Python-2.7.15/Modules/Setup

修改结果如下:

1
2
3
4
5
6
7
8
# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
_ssl _ssl.c 
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl 
-L$(SSL)/lib -lssl -lcrypto


4. 重新编译

进入源码目录,重新编译安装

1
2
3
[www@zihi888.cn ~]$ cd /src/Python-2.7.15/
[www@zihi888.cn ~]$ make
[www@zihi888.cn ~]$ make install


5. 测试,已可正常使用。

1
2
3
4
5
6
[www@zihi888.cn ~]$ python
Python 2.7.15 (default, Oct 23 2018, 19:08:43)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>>


郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: