最近需要用一个软件,只提供了python包,所以用conda或者pip都可以很容易的下载
我的电脑上装的是原生python2、python3和anaconda3,很少用原生,一直在用anaconda托管。结果昨天在使用anaconda3安装该软件的的时候发现报错:
——pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available
首先,需要看一下从anaconda的python里面,能不能import ssl,如果不可以的话,那就是我这种情况。说明anaconda的python没有把ssl编译进去。关于这个问题,居然折腾了我的很久。根据网上的内容,给出一些建议:
1、在环境变量中增加/Library/bin的路径,原因是正常安装的anaconda里,openssl.exe就在这个文件夹中。很多人只加了/anaconda和/anaconda/Scripts,而这个/anaconda/Library/bin的路径也应该加进去;
2、如果看到了那个Library/bin里面没有ssl,说明最初安装时有一些错误(我就是这样,该文件夹中没有openssl.exe这个文件),那么可以重新安装openssl,下载最新版本并重装。地址:https://oomake.com/download/openssl
3、终极解决方法——也是我多次尝试各种方法失败后的解决方法:到Python官网,下载对应anaconda里python版本的python安装包,打开安装包,把原生python里的东西替换到anaconda文件夹下,重启anaconda,就可以了。具体步骤如下:
——查看自己的anaconda托管python的版本:
——看到对应版本后,去到官网下载,比如我这里是3.7.4,那么就下载原生python安装包3.7.4。当然你也可以下载3.7系列其他版本,我没有尝试过,但是我觉得应该可以,不过最好还是精准对应:
下载地址:https://www.python.org/downloads/
找到对应版本并下载
——安装
——安装完成后,打开下载目录:
将原python安装目录下的【DLLs】【include】【Lib】【libs】【tcl】【Tools】这六个文件夹的所有内容复制到anaconda文件夹中的对应文件夹里。如果是同名文件选择替换即可。注意,一定要复制到对应的文件夹里,比如DLLs里的内容,就复制到anaconda/DLLs里
——重启anaconda,进入托管python,尝试import ssl,发现成功
——安装你需要的包