Использование pip за прокси-сервером
Я пытаюсь использовать pip за прокси на работе.
один из ответов этот пост предложил использовать CNTLM. Я установил и настроил его на этот пост, но cntlm.exe -c cntlm.ini -I -M http://google.com дал ошибку Connection to proxy failed, bailing out.
Я тоже пробовал pip install -–proxy=user:pass@localhost:3128 (порт CNTLM по умолчанию) но это подняло Cannot fetch index base URL http://pypi.python.org/simple/. Очевидно, что-то случилось с прокси.
кто-нибудь знает, как проверить более определенно, установлен ли CNTLM правильно, или если есть способ обойти это? Я знаю, что вы также можете установить http_proxy переменная окружения, как описано здесь но я не уверен, что учетные данные поставить. Те, что из cntlm.ini?
24 ответов:
чтобы настроить CNTLM для windows, выполните следующие действия статьи. Для Ubuntu, читать мой блог.
Edit:
в принципе, чтобы использовать CNTLM на любой платформе, вам нужно настроить свое имя пользователя и hashed пароль, прежде чем использовать
http://127.0.0.1:3128как прокси для вашего родительского прокси.
отредактируйте конфигурацию и добавьте важную информацию, такую как домен, имя пользователя, пароль и родительский прокси.
создать хешированный пароль.
Windows
cntlm –c cntlm.ini –HUbuntu / Linux
cntlm -v -H -c /etc/cntlm.confудалите обычный текстовый пароль из конфигурации и замените их сгенерированными паролями.
чтобы проверить, работает ли:
Windows
cntlm –M http://www.google.comUbuntu / Linux
sudo cntlm -M http://www.google.com/дополнительные подробные инструкции см. По ссылкам выше.
обновление:
просто для полноты картины, я был в состоянии настроить и использовать CNTLM в Windows, недавно. Я столкнулся с проблемой во время процесса синхронизации Kindle для ПК из-за нашего прокси-сервера и установки и настройки CNTLM для Windows исправлена эта проблема для меня. См.мои статьи для более подробной информации.
С Ubuntu я не мог заставить прокси-сервер работать так, как рекламируется – поэтому следующая команда сделала не работы:
sudo pip --proxy http://web-proxy.mydomain.com install somepackageно экспорт
https_proxyпеременная окружения (обратите внимание на ееhttps_proxyнеhttp_proxy) сделал свое дело:export https_proxy=http://web-proxy.mydomain.comзатем
sudo -E pip install somepackage
под Windows не забудьте установить
SET HTTPS_PROXY=<proxyHost>:<proxyPort>что мне нужно было установить для
pip install pep8
Я не работал для меня. Я использовал https для работ:
pip install --proxy=https://user@mydomain:port somepackageдля того, чтобы обновлять, добавлять -У.
вы можете продолжать использовать pip по HTTPS, добавив корневой сертификат вашей корпорации в cacert.PEM-файл в папке site-packages/pip. Затем настройте pip для использования прокси-сервера, добавив следующие строки в ~/pip / pip.conf (или ~\pip\pip.ini, если вы находитесь на Windows):
[global] proxy = [user:passwd@]proxy.server:portвот и все. Нет необходимости использовать сторонние пакеты или отказаться от HTTPS (конечно, ваш сетевой администратор все еще может видеть, что вы делаете).
для windows; установите прокси в командной строке как
set HTTP_PROXY=domain\username:password@myproxy:myproxyportпример:
set http_proxy=IND\namit.kewat:[email protected]:8880
в соответствии с нашей политикой безопасности Я не могу использовать https С pypi, SSL-инспекция переписывает сертификаты, он нарушает встроенную безопасность pip для www.python.org человек посередине-это сетевой админ.
Так мне нужно использовать простой http. Для этого мне нужно переопределить системный прокси, а также PyPI по умолчанию:
bin/pip install --proxy=squidproxy:3128 -i http://www.python.org/pypi --upgrade "SQLAlchemy>=0.7.10"
телефон как мобильная точка доступа / USB-модем
Если у меня есть много проблем с поиском пути через корпоративный прокси-сервер, я подключаюсь к интернету через свой телефон (беспроводная точка доступа, если у меня есть wifi, USB-трос, если нет) и делаю быстрый
pip install.может не работать для всех установок, но большинство людей в крайнем случае.
В Windows 7:
pip install --proxy DOMAIN\user:password@proxyaddress:port packageт. е.:
pip install --proxy BR\neo:[email protected]:8080 virtualenv
у меня была та же проблема : за корпоративным прокси с auth на работе я не мог работать с pip, а также с Sublime Text 2 (Ну, он работал с пользовательской настройкой моих настроек прокси). Для pip (и я попробую это на git), я решил его установить cntlm прокси. Настроить его было очень просто:
- изменить cntlm.ini
- редактировать поля" Имя пользователя"," домен"," пароль"
- добавить строку "прокси", с настройками прокси:
server:port- убедитесь, что строка "NoProxy" интегрирует " localhost "(как это по умолчанию)
- обратите внимание на порт по умолчанию: 3128
- сохранить и все.
чтобы проверить, что работает, просто запустите новый инструмент командной строки и попробуйте:
pip install django --proxy=localhost:3128это сработало для меня. Надеюсь, это поможет вам.
Если вы хотите обновить pip через прокси, можно использовать (например, в Windows):
python -m pip --proxy http://proxy_user:proxy_password@proxy_hostname:proxy_port insta ll --upgrade pip
для пользователей windows: Если вы хотите установить Flask-MongoAlchemy, используйте следующий код
pip install Flask-MongoAlchemy --proxy="http://example.com:port"**
настройка переменной invironment в расширенных системных настройках. В командной строке он должен вести себя так :
C:\Windows\system32 > echo %http_proxy%
http://username:passowrd@proxy:port
C:\Windows\system32 > echo %https_proxy%
Позже , Просто
pip install whatEverдолжны работать.
Откройте командную строку Windows.
установить переменные среды прокси.
set http_proxy=http://user:password@proxy_ip:port set https_proxy=https://user:password@proxy_ip:portустановите пакеты Python с помощью прокси-сервера в той же командной строке Windows.
pip install --proxy="user:password@proxy_ip:port" package_name
в CentOS (на самом деле я думаю, что все дистрибутивы linux похожи) запустите
env|grep http_proxyи
env|grep https_proxyпроверьте, что выводят эти команды (они должны содержать ваши прокси-адреса).
если выходные данные пусты или имеют неправильные значения, измените их, например:
export http_proxy=http://10.1.1.1:8080 export https_proxy=http://10.1.1.1:8080теперь попробуйте извлечь и установить некоторые пакеты с помощью pip:
pip --proxy http://10.1.1.1:8080 install robotframeworkи на самом деле я никогда не встречал случая, когда он не работал. Для некоторых систем вы нужно быть корнем (судо не достаточно).
внимание, есть что-то очень плохое с командой "pip search". Команда поиска не использует параметр прокси независимо от способа его передачи.
Я пытался выяснить проблему, только попробовав команду "поиск", и нашел этот пост с подробным объяснением об этой ошибке:https://github.com/pypa/pip/issues/1104
Я могу подтвердить, что ошибка остается с pip 1.5.6 на Debian 8 С python 2.7.9. Команда "pip install" работает как шарм.
я получил ошибку:
chris@green:~$ sudo http_proxy=http://localhost:3128 pip install django==1.8.8 Downloading/unpacking django==1.8.8 Cannot fetch index base URL http://pypi.python.org/simple/ Could not find any downloads that satisfy the requirement django==1.8.8 No distributions at all found for django==1.8.8 Storing complete log in /home/chris/.pip/pip.log(порт прокси-сервера-это ssh-порт, перенаправленный на
localhost:3128).Я должен был установить оба HTTP и https прокси, чтобы заставить его работать:
chris@green:~$ sudo http_proxy=http://localhost:3128 https_proxy=http://localhost:3128 pip install django==1.8.8 Downloading/unpacking django==1.8.8 Downloading Django-1.8.8.tar.gz (7.3Mb): 7.3Mb downloaded Running setup.py egg_info for package django warning: no previously-included files matching '__pycache__' found under directory '*' warning: no previously-included files matching '*.py[co]' found under directory '*' Installing collected packages: django Running setup.py install for django warning: no previously-included files matching '__pycache__' found under directory '*' warning: no previously-included files matching '*.py[co]' found under directory '*' changing mode of build/scripts-2.7/django-admin.py from 644 to 755 changing mode of /usr/local/bin/django-admin.py to 755 Installing django-admin script to /usr/local/bin Successfully installed django Cleaning up...как
http://pypi.python.org/simple/перенаправляет наhttps://pypi.python.org/simpleноpipошибка не говорит вам.
Я также не эксперт в этом, но я сделал его работу, установив
all_proxyпеременной в ~/.файл bashrc. Чтобы открыть~/.bashrcфайл и редактировать его из терминала выполните следующие команды,gedit ~/.bashrc &добавить следующее В конце файла,
export all_proxy="http://x.y.z.w:port"затем откройте новый терминал или запустите следующий в том же терминале,
source ~/.bashrcпросто
http_proxyиhttps_proxyпеременных недостаточно для простого использованияpip install somepackage. Хотя как-тоsudo -E pip install somepackageработает, но это дало мне некоторые проблемы в случае, если я использую локальную установку Anaconda в папке моих пользователей.П. С. - Я использую Ubuntu 16.04.
Как насчет просто сделать это локально? Скорее всего, вы можете скачать с источника https через ваш браузер
- загрузите файл модуля (mysql-connector-python-2.0.3.молния /ГЗ... прием.)
извлеките его и перейдите в извлеченный каталог, где setup.py находится и звонят:
C:\mysql-connector-python-2.0.3>python.exe setup.py install
Я решил проблему с PIP в Windows с помощью "Fiddler" (https://www.telerik.com/download/fiddler). после загрузки и установки выполните следующие действия:
"правила" = > нажмите кнопку "автоматически аутентифицировать"
пример: pip install virtualenv-proxy 127.0.0.1: 8888
просто откройте приглашение и используйте.
https://github.com/pypa/pip/issues/1182 Поиск "voltagex "(прокомментировано 22 мая 2015 года)
Comments