我正在尝试使用pip安装多个软件包。当我使用sudo执行此操作时,会出现此错误:“无法获取索引基本URL https://pypi.python.org/simple/”。当我执行不带sudo的命令时,包下载成功,但我没有足够的权限。这种不同行为可能是什么原因?我坐在代理人后面。
答案 0 :(得分:31)
也许尝试使用sudo -E
:
-E The -E (preserve environment) option indicates to the secu‐
rity policy that the user wishes to preserve their existing
environment variables. The security policy may return an
error if the -E option is specified and the user does not
have permission to preserve the environment.
假设您的代理设置是在普通用户环境中设置的,而不是您在运行sudo
时获得的代理设置。
答案 1 :(得分:4)
尝试使用pip==1.5.4
这是与PIP和Python的PYPI信任SSL证书相关的问题。如果您查看Mac OS X中的PIP日志: /Users/username/.pip/pip.log ,它将为您提供更多详细信息。
让我的解决方法是在经过数小时尝试不同的东西后恢复和运行PIP是我的 site-packages ,无论是在 virtualenv 还是在您正常的 site-packages ,并摆脱当前的PIP版本。对我来说,我有pip==1.5.4
我删除了PIP目录和PIP egg文件。然后我跑了
easy_install pip==1.2.1
此版本的PIP没有SSL问题,然后我能够在我的virtualenv中运行我的正常pip install -r requirements.txt
来设置我希望列在我的{{ {1}}档案。
这也是我发现Google群组中有几个人通过该问题的推荐黑客:
https://groups.google.com/forum/#!topic/beagleboard/aSlPCNYcVjw
[编辑]
如果您在全球范围内安装了不同版本的PIP,则每次创建新的virtualenv时都会安装该版本的PIP,因此除非您更改全局安装的版本,否则每次为每个新PIP都必须执行此操作。我在开始一个新项目时遇到了这个问题,并且不得不再次进行修复并恢复到requirements.txt
答案 2 :(得分:2)
如果您在代理服务器后面安装,请从pip docs开始:
python get-pip.py --proxy =" [user:passwd @] proxy.server:port"
答案 3 :(得分:2)
如果您想使用pip安装任何软件包,那么最好遵循以下语法:
sudo pip --proxy=http://username:password@proxyURL:portNumber install yolk
答案 4 :(得分:1)
我遇到了这个问题,发现答案终于解决了。
您可以尝试添加新文件/root/.pip/pip.conf
,然后写:
[global]
index-url=http://pypi.douban.com/simple/
在文件中。
答案 5 :(得分:0)
针对此问题,我的解决方案有所不同。
我系统的日期和时间未同步。
如果出现问题,请检查系统数据/时间,如果不是问题,请继续执行其他建议。