我使用的是Python 3.6。当我尝试使用pip3安装“模块”时,我遇到了这个问题:
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available
我使用的是Python 3.6。当我尝试使用pip3安装“模块”时,我遇到了这个问题:
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available
当前回答
最新的Python 3.8.4或更高版本应该能够支持https协议开箱即用。如果你的电脑上仍然安装了旧的python,要么手动下载并安装python3,要么使用Chocolatey:
如果你没有Chocolatey,安装它-从这里:https://chocolatey.org/docs/installation
您只需复制粘贴一个命令行行,并从命令提示符中使用提升的特权执行它。
choco install python3
如果你没有安装python3,或者你已经安装了python3,那么:
choco upgrade python3
还要注意,你也可以使用anaconda发行版,因为它有内置的支持https的python,但这个相当古老的指令,不需要再遵循它们了。
使用命令行安装anaconda:
choco install anaconda3
设置环境变量:
set PATH=C:\tools\Anaconda3\Scripts;C:\tools\Anaconda3;C:\tools\Anaconda3\Library\bin;%PATH%
然后运行失败的命令。我的情况是:
pip install conan
Anaconda使用单独的python安装,pip也是Anaconda特定的。
其他回答
对于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上工作
我在使用Ubuntu、pyenv和pyenv管理的Python 3.8.1时遇到了这个问题。实际上没有办法让pip正确工作,因为每次我试图安装任何东西,包括pip本身,都会出现相同的错误。 最终的解决方案是通过pyenv安装一个更新的版本,在本例中是3.8.6。显然,从3.8.4开始,Python已经准备好开箱运行SSL/TLS,所以一切都很好。
如果有人使用Arch Linux操作系统,我通过运行这个解决了TLS/SSL问题:
sudo pacman -S openssl
然后我可以使用pip来安装我需要的包:
pip install openpyxl
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的问题…