Как установить прокси-сервер HTTP в Python 2.7?

Я пытаюсь запустить script, который устанавливает pip: get-pip.py, и я получаю таймаут соединения из-за того, что моя сеть находится за прокси-сервером HTTP. Есть ли способ настроить HTTP-прокси в моей установке Python 2.7, чтобы установить то, что я пытаюсь установить?

Примечание. Я использую 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

Ответ 1

Похоже, что get-pip.py был обновлен для использования переменных окружения http_proxy и https_proxy.

Окна:

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

Однако, если это все еще не работает для вас, вы всегда можете установить pip через прокси-сервер, используя setuptools 'easy_install, установив одинаковые переменные среды.

Окна:

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:

- прокси
           Попробуйте использовать прокси-сервер для доступа к сайтам. Это можно указать            используя "user: [email protected]: port". Если пароль            не указано, пип попросит об этом.

Ответ 2

В моей сети настройка 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

Ответ 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

Ответ 5

Для установки pip с get-pip.py за прокси я пошел с приведенными ниже инструкциями. Мой сервер был даже за сервером перехода.

От сервера перехода:

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

На "python-сервере"

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

Success.

Ответ 6

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