我正在使用Python 3.6。当我尝试使用pip3
安装“模块”时,我遇到了这个问题:
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available
对于Windows 10,如果您想在正常的命令提示符中使用pip,而不仅仅是在Anaconda提示符中,您需要添加3个环境路径。如下所示:
D:\Anaconda3
D:\Anaconda3\Scripts
D:\Anaconda3\Library\bin
大多数人只是添加D:\ Anaconda3 \ Scripts
C:\Program Files\QGIS 3.10\apps\Python37\Scripts
)。 - CNIDogC:\Users\myUsername\Anaconda3
。 - Renel Chesak我在Mac OS(Mojave)上遇到了同样的问题,并按照此链接中提到的方法解决了该问题- Openssl issue 。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
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
Mojave
升级到Catalina
后,我遇到了这个问题。只需要运行 brew update && brew upgrade
命令就可以让它再次工作。感谢您的建议! - rustyMagnetbrew upgrade
(这将全局升级所有依赖项,从而可能导致其他问题),这真的很烦人。 - Rafael Eyngbrew update && brew upgrade
确实有效;但如果你和我一样,不要忘记 source ~/.bashrc
或者 source ~/.zshrc
。 - maininformer对于Debian用户,以下内容可能会有所帮助:
sudo apt install libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev libtk8.6 libgdm-dev libdb4o-cil-dev libpcap-dev
然后进入带有Python 3.X库源代码的文件夹并运行:
./configure
make
sudo make install
libffi<X>
添加到此列表中。在运行sudo apt install ...
之后,我仍然需要安装libffi7
。 - S3DEV--with-openssl=/path/to/openssl --with-openssl-rpath=auto
运行./configure
。 - brainfrozenC:\Users\<user>\Miniconda3\Library\bin
复制到C:\Users\<user>\Miniconda3\DLLs
目录中。
C:\Users\<user>\Miniconda3\envs\<name>\Library\bin
到 C:\Users\<user>\Miniconda3\envs\<name>\DLLs
。对于CentOS 7:
安装 OpenSSL:
sudo yum install openssl-devel
现在进入我们提取Python tar文件的Python目录,
运行以下命令:
sudo ./configure
sudo make
sudo make install
这将修复CentOS中的问题...
对于未来尝试解决此问题的 Oracle Linux 用户,以下是对我有效的解决方法。首先安装缺失的库:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
然后进入你的Python3.X库并运行:
make
make install
如果你的 Python 是通过在 macOS 上使用 homebrew 安装的 pyenv 安装的,那么可能会有一个更新的版本可用,可以解决这个问题:
$ brew update && brew upgrade pyenv
然后重新安装Python版本:
$ pyenv install 3.7.2
pyenv: /Users/luckydonald/.pyenv/versions/3.7.2 already exists
continue with installation? (y/N)
注意,像这样覆盖现有的Python安装可能会有些不太干净,但在我的情况下它确实起作用了。最好的做法可能是将其删除,然后正确地重新创建。
openssl@1
已经过时了。我用brew
将其移除了。我没有意识到有这么多的brew软件包与它相关联。我通过移除和重新安装来纠正了这些问题。我没有意识到一些Python软件包也与同一个brew安装的openssl@1
软件包相关联。你的建议解决了我的问题。 - undefined针对Windows 10和Windows 7操作系统,如果在CMD命令提示符上无法运行pip install,请使用Anaconda提示符运行pip install - 这样可以解决问题。
对我有用。
sudo apt-get install libssl-dev
使用此选项可为pip启用SSL。如果有人遇到问题,请告诉我。
在Ubuntu上从源代码安装Python 3.8时,遇到了这个问题。要成功地与默认的Python 3.7一起安装它,需要执行以下步骤:
sudo apt -y install libssl-dev zlib1g-dev build-essential
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
tar -xf Python-3.8.0.tgz
cd Python-3.8.0/
./configure --enable-optimizations
make
sudo make altinstall
zlib1g-dev 和 build-essential 的安装指令是多余的,因为Ubuntu桌面版已经包含这些,但某些Amazon's EC2实例需要这些软件。目前最新的Python版本是3.8.0,但应该替换为可用的最新版本。
这些指令最适合将Python 3.7保留为python3的默认版本,并在虚拟环境中运行Python 3.8。
libssl-dev
或者通过pip安装sslpip install ssl
https://dev59.com/3FgR5IYBdhLWcg3woebW - ZiTAL