pip安装几乎任何库时出现问题

13 浏览
0 Comments

pip安装几乎任何库时出现问题

我在使用pip安装几乎任何东西时都遇到了困难。我刚开始学编程,所以我以为可能是我做错了什么,于是选择使用easy_install来完成我需要的大部分工作,这通常是有效的。然而,现在我正在尝试下载nltk库,但是两者都无法完成任务。

我尝试输入以下命令:

sudo pip install nltk

但是得到了以下回应:

/Library/Frameworks/Python.framework/Versions/2.7/bin/pip run on Sat May 4 00:15:38 2013

下载/安装nltk

获取页面https://pypi.python.org/simple/nltk/

无法获取URL [需要更多声望以发布链接]:确认ssl证书时出现问题:

在查找nltk的下载链接时将跳过URL [需要更多声望以发布链接]/simple/nltk/

获取页面[需要更多声望以发布链接]/simple/

无法获取URL https://pypi.python. org/simple/:确认ssl证书时出现问题:

在查找nltk的下载链接时将跳过URL [需要更多声望以发布链接]

无法获取基本URL [需要更多声望以发布链接]的索引

查找nltk的版本URL:

* [需要更多声望以发布链接]

获取页面[需要更多声望以发布链接]

无法获取URL [需要更多声望以发布链接]:确认ssl证书时出现问题:

在查找nltk的下载链接时将跳过URL [需要更多声望以发布链接]

找不到满足nltk需求的任何下载

异常信息:

Traceback (most recent call last):

File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/basecommand.py", line 139, in main

status = self.run(options, args)

File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/commands/install.py", line 266, in run

requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)

File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/req.py", line 1026, in prepare_files

url = finder.find_requirement(req_to_install, upgrade=self.upgrade)

File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/index.py", line 171, in find_requirement

raise DistributionNotFound('找不到满足%s的任何分发' % req)

DistributionNotFound: 找不到满足nltk需求的任何下载

--easy_install只安装了部分库,而且代码在尝试运行时很快遇到了问题。

对此问题有什么想法吗?我真的很希望能得到一些关于如何使pip工作或者暂时解决此问题的反馈。

0
0 Comments

pip安装几乎任何库时出现问题的原因是pip版本过低,解决方法是升级pip版本。以下是具体步骤:

1. 下载正确版本的pip:https://pypi.org/simple/pip/

2. 使用以下命令安装pip:sudo python3 pip-9.0.3.tar.gz

3. 或者可以使用以下命令安装最新版本的pip:curl https://bootstrap.pypa.io/get-pip.py | python

4. 如果conda/anaconda是导致无法使用brew或pip更新pip的原因,则可以使用conda install pip在conda环境中安装/升级pip。如果已经安装了conda,则应在根/基本conda环境中执行此操作。

5. 可以尝试直接安装pip:curl https://bootstrap.pypa.io/get-pip.py | python

以上方法也适用于Python 2版本。

这个问题的发生与pip的TLS协议更新有关,具体细节可以参考这个答案

感谢原帖的回答者提供的解决方案,并且已经确认这些方法也适用于Python 2版本。

如果无法使用brew或pip更新pip,可以尝试使用conda install pip命令在conda环境中安装/升级pip。如果已经安装了conda,则应在根/基本conda环境中执行此操作。

如果无法使用brew或pip更新pip,则可以使用conda install pip命令在conda环境中安装/升级pip。如果已经安装了conda,则应在根/基本conda环境中执行此操作。

如果无法使用brew或pip更新pip,则可以使用conda install pip命令在conda环境中安装/升级pip。如果已经安装了conda,则应在根/基本conda环境中执行此操作。

如果无法使用brew或pip更新pip,则可以使用conda install pip命令在conda环境中安装/升级pip。如果已经安装了conda,则应在根/基本conda环境中执行此操作。

0
0 Comments

Pypi移除了对小于1.2版本的TLS的支持。要解决这个问题,需要重新安装Pip。可以执行以下命令来重新安装Pip:

curl https://bootstrap.pypa.io/get-pip.py | python

如果是全局Python环境,可以使用以下命令:

curl https://bootstrap.pypa.io/get-pip.py | sudo python

这个方法解决了Mac OS版本Sierra 10.12.6上的问题。在High Sierra上也适用。感谢!

0
0 Comments

问题的出现原因是SSL证书验证失败,解决方法是指定pypi主机为可信任主机,或者升级pip版本,或者升级解释器版本。具体的解决方法如下:

1. 指定pypi主机为可信任主机:

pip install --trusted-host pypi.python.org pytest-xdist
pip install --trusted-host pypi.python.org --upgrade pip

2. 升级解释器版本:

因为TLSV1_ALERT_PROTOCOL_VERSION错误与可信任主机/验证问题无关,而是因为解释器不支持TLS v1.2,需要升级解释器版本。

3. 升级pip版本:

有些情况下,升级pip版本即可解决问题。如果上述错误阻止了pip的升级,可以使用get-pip.py进行安装。例如,在Linux系统上可以执行以下命令:

curl https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

注意:以上方法在不同的操作系统和环境中可能有所不同,具体操作请参考相关文档。

0