我已经在我的本地机器上成功安装了Python 3.4和Python 3.6,但无法安装带有pip3的包。

当我执行pip3 install <package>时,我得到以下SSL相关错误:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting <package>
  Could not fetch URL https://pypi.python.org/simple/<package>/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement <package> (from versions: )
No matching distribution found for <package>

如何修复我的Python3。pip install <package>?


当前回答

在使用pyenv来管理Mac OS Catalina上的python安装的情况下,我必须先用brew安装openssl,然后运行pyenv install 3.7.8,这似乎是使用homebrew中的openssl来构建python安装(它甚至在安装输出中这样说)。然后pyenv global 3.7.8,我离开了。

其他回答

如果你在OSX上,万一其他解决方案不适合你(就像我一样)。

您可以尝试卸载python3并升级pip3

brew uninstall --ignore-dependencies python3
pip3 install --upgrade pip   

这对我很有用;)

在Ubuntu中,这可以帮助:

cd Python-3.6.2
./configure --with-ssl
make
sudo make install

在Ubuntu中安装Python 3.6和pip3的分步指南

安装Python和ssl所需的包:$ sudo apt-get Install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev 下载并解压“Python-3.6.8.tar. zip”。Xz”从https://www.python.org/ftp/python/到您的主目录。 打开该目录下的终端,执行:$ ./configure 编译和安装:$ make && sudo make install 使用$ pip3 Install package_name安装包

声明:以上命令未在Ubuntu 20.04 LTS中测试。

我在ubuntu14.04机器上安装python3.7时遇到了同样的问题。 问题是我的PKG_CONFIG_PATH和LD_LIBRARY_PATH中有一些自定义文件夹,这阻止了python构建过程找到系统openssl库。

所以试着清除它们,看看会发生什么:

export PKG_CONFIG_PATH=""
export LD_LIBRARY_PATH=""

适用于osx brew用户

我的问题似乎与我的python安装有关,并通过重新安装python3和pip迅速解决。我认为它在操作系统更新后开始出错,但谁知道呢(此时我使用的是Mac OS 10.14.6)

brew reinstall python3 --force
# setup pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
# installa pkg successfully 
pip install pandas