2012-07-30 31 views
61

Estoy tratando de ejecutar un script que instala pip: get-pip.py y estoy obteniendo un tiempo de espera de conexión debido a que mi red está detrás de un proxy HTTP. ¿Hay alguna forma de que pueda configurar un proxy HTTP en mi instalación de Python 2.7 para poder instalar lo que estoy tratando de instalar?Cómo establecer un proxy HTTP en Python 2.7?

Nota: Estoy usando Windows. A continuación se muestra el error que estoy recibiendo:

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 o OSX? – tMC

+0

Estoy usando Windows. – Rolando

+0

cómo configurarlo de forma permanente? –

Respuesta

111

Parece que get-pip.py se ha actualizado para utilizar las variables de entorno y http_proxyhttps_proxy.

de 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 

Sin embargo, si esto todavía no funciona para usted, siempre se puede instalar a través de un pip proxy utilizando setuptools 'easy_install mediante el establecimiento las mismas variables de entorno

de 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 

A continuación, una vez instalado, utilice:

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

Desde el pip man page:

--proxy
Haz que pip use un servidor proxy para acceder a los sitios. Esto se puede especificar usando la notación "user: [email protected]: port". Si se omite la contraseña , pip la solicitará.

+0

Su respuesta parece suponer que pip ya está instalado, todavía no he instalado pip correctamente. Las instrucciones dicen que ejecute el script get-pip.py, pero obtengo tiempo de espera de conexión, que es con lo que estoy teniendo problemas. – Rolando

+0

Disculpas, mira mi edición. –

+0

Excelente, gracias! – Rolando

8

En mi red, el ajuste de http_proxy no funcionó. Los siguientes puntos fueron relevantes.

1 Configuración http_proxy para el usuario suele ser preservada cuando se ejecuta sudo - para preservarla, hacer:

sudo -E yourcommand 

Tengo mi trabajo de instalación mediante la instalación de primera proxy local cntlm. Las instrucciones aquí es sucinta: http://www.leg.uct.ac.za/howtos/use-isa-proxies

En lugar de número de estudiante, que había puesto su nombre de usuario de dominio

2 Para usar el cntlm proxy local, exec:

pip install --proxy localhost:3128 pygments 
+1

La pregunta era para Windows, vuelve a leer la pregunta. –

3

Puede instalar pip (o cualquier otro paquete) con easy_install casi como se describe en la primera respuesta. Sin embargo, también necesitará un proxy HTTPS.La secuencia completa de comandos es:

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

También puede ser que desee añadir un puerto para el proxy, como http{s}_proxy=http://proxy.myproxy.com:8080

1

Para instalar pip con get-pip.py detrás de un proxy, seguí los pasos a continuación. Mi servidor estaba incluso detrás de un servidor de salto.

Desde el servidor de salto:

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

Por "python-servidor"

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

éxito.

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