我使用的是Python 3.6。当我尝试使用pip3安装“模块”时,我遇到了这个问题:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available

当前回答

如果您已经通过scoop安装了anaconda,并且在conda环境中使用pip时遇到此错误,您可以通过…

将这些添加到路径中

C:\Users\YOUR_USERNAME\scoop\apps\anaconda3\current
C:\Users\YOUR_USERNAME\scoop\apps\anaconda3\current\Scripts
C:\Users\YOUR_USERNAME\scoop\apps\anaconda3\current\Library
C:\Users\YOUR_USERNAME\scoop\apps\anaconda3\current\Library\bin

通过scoop安装openssl

scoop install openssl

并从..复制以下dll。\anaconda3\Library\bin到..\anaconda3\ dll

引用:

https://stackoverflow.com/a/54897379 https://stackoverflow.com/a/60405693

其他回答

Windows 10, Windows 7 如果pip install在CMD提示符下不工作,使用Anaconda提示符运行它-它工作。

https://github.com/pypa/virtualenv/issues/1139

centos 7:

安装openssl:

sudo yum install openssl-devel

现在进入python目录,在那里我们提取了python tar文件,

运行以下命令

sudo ./configure
sudo make
sudo make install

这将解决centos的问题…

在尝试自己编译python后,仍然缺乏ssl模块,我最终尝试从apt安装缺少的模块,就像这样:

安装python3-openssl

对于OpenSUSE,以同样的方式,但对上面列出的包做了一些更改:

zypper install zlib-devel libopenssl-devel ncurses-devel sqlite3-devel readline-devel tk-devel gdbm-devel libpcap-devel xz-devel

然后cd到Python源代码dir和

make
make install

or

make
make altinstall

也许

ln -s /usr/local/lib64/python3.6/lib-dynload/ /usr/local/lib/python3.6/lib-dynload

应该为OpenSUSE用户执行。请参见Python 3.7安装无法在openSUSE Leap 42.3上工作

苹果操作系统

我在Mac OS(Mojave)上遇到了同样的问题,并解决了这个链接中提到的问题- Openssl问题。

如果你没有Homebrew或不知道什么是Homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

或者如果你已经安装了Homebrew:

brew update && brew upgrade
brew uninstall --ignore-dependencies openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

更新: 请记住,我必须使用——ignore-dependencies标记,因为安装的其他包依赖于OpenSSL。

另外,如果问题是在使用pyenv后引起的,您可以通过使用以下方法修复:

brew reinstall python