2012-07-30 68 views
61

我想运行一个安装pip的脚本:get-pip.py,并且由于我的网络在HTTP代理后面而正在获取连接超时。有什么方法可以在我的Python 2.7安装中配置HTTP代理,以便能够安装我想安装的内容?如何在Python 2.7中设置HTTP代理?

注意:我正在使用Windows。下面是我得到的错误:

C:\SetupFiles>python get-pip.py 
Downloading/unpacking pip 
    Cannot fetch index base URL http://pypi.python.org/simple/ 
    Could not find any downloads that satisfy the requirement pip 
No distributions at all found for pip 
+0

Windows,Linux或OSX? – tMC 2012-07-30 17:59:21

+0

我正在使用Windows。 – Rolando 2012-07-30 18:02:06

+0

如何永久设置它? – 2016-04-06 06:33:52

回答

111

它看起来像get-pip.py已更新为使用环境变量http_proxyhttps_proxy

的Windows:

set http_proxy=http://proxy.myproxy.com 
set https_proxy=https://proxy.myproxy.com 
python get-pip.py 

的Linux/OS X:

export http_proxy=http://proxy.myproxy.com 
export https_proxy=https://proxy.myproxy.com 
sudo -E python get-pip.py 

然而,如果这还不适合你,你可以随时使用setuptoolseasy_install通过设置安装通过代理点子相同的环境变量。

的Windows:

set http_proxy=http://proxy.myproxy.com 
set https_proxy=https://proxy.myproxy.com 
easy_install pip 

的Linux/OS X:

export http_proxy=http://proxy.myproxy.com 
export https_proxy=https://proxy.myproxy.com 
sudo -E easy_install pip 

然后,一旦它的安装,使用:

pip install --proxy="user:[email protected]:port" packagename 

pip man page

--proxy
让pip使用代理服务器访问网站。这可以使用“user:[email protected]:port”表示法指定为 。如果遗漏密码 ,pip将要求它。

+0

你的答案似乎假设PIP已经安装,我还没有成功安装PIP。指导说运行get-pip.py脚本,但我得到连接超时,这是我遇到的麻烦。 – Rolando 2012-07-30 18:11:42

+0

道歉,请参阅我的编辑。 – 2012-07-30 18:18:13

+0

非常好,谢谢! – Rolando 2012-07-30 18:19:42

8

在我的网络上,只需设置http_proxy并不适用于我。以下几点是相关的。

1设置HTTP_PROXY您的用户,当你执行sudo的不会被保留 - 为了保护它,这样做:

sudo -E yourcommand 

我得到了我的安装首先安装cntlm本地代理工作。这里的指令是简洁:http://www.leg.uct.ac.za/howtos/use-isa-proxies

取而代之的学生数量,你把你的域用户名

2要使用cntlm本地代理,EXEC:

pip install --proxy localhost:3128 pygments 
+1

问题是针对windows,请重新阅读问题。 – 2014-10-14 09:45:15

3

您可以安装pip(或任何其他包)与easy_install几乎如第一个答案中所述。但是,您也需要一个HTTPS代理。命令的完整序列是:

set http_proxy=http://proxy.myproxy.com 
set https_proxy=http://proxy.myproxy.com 
easy_install pip 

您可能还需要一个端口添加到代理,如http{s}_proxy=http://proxy.myproxy.com:8080

1

对于在代理后面安装带有get-pip.py的pip,我按照以下步骤进行操作。我的服务器甚至在跳转服务器后面。

从跳转服务器:

ssh -R 18080:proxy-server:8080 my-python-server 

在 “蟒蛇服务器”

export https_proxy=https://localhost:18080 ; export http_proxy=http://localhost:18080 ; export ftp_proxy=$http_proxy 
python get-pip.py 

成功。

0
cd C:\Python34\Scripts 

set HTTP_PROXY= DOMAIN\User_Name:[email protected]_SERVER_NAME_OR_IP:PORT# 

set HTTP_PROXY= DOMAIN\User_Name:[email protected]_SERVER_NAME_OR_IP:PORT# 

pip.exe install PackageName 
相关问题