Установка модулей через прокси сервер на windows
Добрый день!
На рабочем компьютере установил python3.6. Пытаюсь установить модуль requests через pip. Выход в интернет в нашей организации осуществляется через прокси. Вид прокси имеет следующий: proxy.name.ru:9090. В командной строке вводил следующие команды:
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy=»proxy.name.ru:9090″ requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy proxy.name.ru:9090 requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy=»http://proxy.name.ru:9090″ requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy http://proxy.name.ru:9090 requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy=»https://proxy.name.ru:9090″ requests
c:\Users\myname\AppData\Local\Programs\Python\Python36-32\Scripts\pip.exe install —proxy https://proxy.name.ru:9090 requests
ничего не работает, на всякий запрос в качестве ответа я получаю:
Collecting requests
Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 authenticationrequired’,))’: /simple/requests/
Retrying (Retry(total=3, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 authenticationrequired’,))’: /simple/requests/
Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 authenticationrequired’,))’: /simple/requests/
Retrying (Retry(total=1, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 authenticationrequired’,))’: /simple/requests/
Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 authenticationrequired’,))’: /simple/requests/
Could not find a version that satisfies the requirement requests (from versions: )
No matching distribution found for requests
Помогите решить сложившуюся задачу.
Заранее спасибо.
При передаче post запроса через прокси сервер в ответ приходят ошибки с прокси сервера
При передаче post запроса через прокси сервер в ответ прилетают ошибки с прокси сервера.
Установка прокси сервер (SQUID) на виртуальной машине (VMware Workstation)
Всем доброго времени суток. Нужна Ваша помощь. Ваши советы. Надо поднять прокси сервер на.
Использование 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 –H
Ubuntu / Linux cntlm -v -H -c /etc/cntlm.conf
удалите обычный текстовый пароль из конфигурации и замените их сгенерированными паролями.
чтобы проверить, работает ли:
Windows cntlm –M http://www.google.com
Ubuntu / Linux sudo cntlm -M http://www.google.com/
дополнительные подробные инструкции см. По ссылкам выше.
обновление:
просто для полноты картины, я был в состоянии настроить и использовать CNTLM в Windows, недавно. Я столкнулся с проблемой во время процесса синхронизации Kindle для ПК из-за нашего прокси-сервера и установки и настройки CNTLM для Windows исправлена эта проблема для меня. См.мои статьи для более подробной информации.
С Ubuntu я не мог заставить прокси-сервер работать так, как рекламируется – поэтому следующая команда сделала не работы:
но экспорт https_proxy переменная окружения (обратите внимание на ее https_proxy не http_proxy ) сделал свое дело:
под Windows не забудьте установить
что мне нужно было установить для
Я не работал для меня. Я использовал https для работ:
для того, чтобы обновлять, добавлять -У.
вы можете продолжать использовать pip по HTTPS, добавив корневой сертификат вашей корпорации в cacert.PEM-файл в папке site-packages/pip. Затем настройте pip для использования прокси-сервера, добавив следующие строки в
/pip / pip.conf (или
\pip\pip.ini, если вы находитесь на Windows):
вот и все. Нет необходимости использовать сторонние пакеты или отказаться от HTTPS (конечно, ваш сетевой администратор все еще может видеть, что вы делаете).
это сработало для меня (на Windows через CMD):
для windows; установите прокси в командной строке как
set HTTP_PROXY=domain\username:password@myproxy:myproxyport
пример:
set http_proxy=IND\namit.kewat:xl123456@192.168.180.150:8880
в соответствии с нашей политикой безопасности Я не могу использовать https С pypi, SSL-инспекция переписывает сертификаты, он нарушает встроенную безопасность pip для www.python.org человек посередине-это сетевой админ.
Так мне нужно использовать простой http. Для этого мне нужно переопределить системный прокси, а также PyPI по умолчанию:
телефон как мобильная точка доступа / USB-модем
Если у меня есть много проблем с поиском пути через корпоративный прокси-сервер, я подключаюсь к интернету через свой телефон (беспроводная точка доступа, если у меня есть wifi, USB-трос, если нет) и делаю быстрый pip install .
может не работать для всех установок, но большинство людей в крайнем случае.
Это то, что сработало для меня на
у меня была та же проблема : за корпоративным прокси с auth на работе я не мог работать с pip, а также с Sublime Text 2 (Ну, он работал с пользовательской настройкой моих настроек прокси). Для pip (и я попробую это на git), я решил его установить cntlm прокси. Настроить его было очень просто:
- изменить cntlm.ini
- редактировать поля» Имя пользователя»,» домен»,» пароль»
- добавить строку «прокси», с настройками прокси: server:port
- убедитесь, что строка «NoProxy» интегрирует » localhost «(как это по умолчанию)
- обратите внимание на порт по умолчанию: 3128
- сохранить и все.
чтобы проверить, что работает, просто запустите новый инструмент командной строки и попробуйте:
это сработало для меня. Надеюсь, это поможет вам.
Если вы хотите обновить pip через прокси, можно использовать (например, в Windows):
для пользователей windows: Если вы хотите установить Flask-MongoAlchemy, используйте следующий код
настройка переменной invironment в расширенных системных настройках. В командной строке он должен вести себя так :
C:\Windows\system32 > echo %https_proxy%
Позже , Просто pip install whatEver должны работать.
Откройте командную строку Windows.
установить переменные среды прокси.
установите пакеты Python с помощью прокси-сервера в той же командной строке Windows.
в CentOS (на самом деле я думаю, что все дистрибутивы linux похожи) запустите
проверьте, что выводят эти команды (они должны содержать ваши прокси-адреса).
если выходные данные пусты или имеют неправильные значения, измените их, например:
теперь попробуйте извлечь и установить некоторые пакеты с помощью pip:
и на самом деле я никогда не встречал случая, когда он не работал. Для некоторых систем вы нужно быть корнем (судо не достаточно).
внимание, есть что-то очень плохое с командой «pip search». Команда поиска не использует параметр прокси независимо от способа его передачи.
Я пытался выяснить проблему, только попробовав команду «поиск», и нашел этот пост с подробным объяснением об этой ошибке:https://github.com/pypa/pip/issues/1104
Я могу подтвердить, что ошибка остается с pip 1.5.6 на Debian 8 С python 2.7.9. Команда «pip install» работает как шарм.
(порт прокси-сервера-это ssh-порт, перенаправленный на localhost:3128 ).
Я должен был установить оба HTTP и https прокси, чтобы заставить его работать:
как http://pypi.python.org/simple/ перенаправляет на https://pypi.python.org/simple но pip ошибка не говорит вам.
Я также не эксперт в этом, но я сделал его работу, установив all_proxy переменной в
/.файл bashrc. Чтобы открыть
/.bashrc файл и редактировать его из терминала выполните следующие команды,
добавить следующее В конце файла,
затем откройте новый терминал или запустите следующий в том же терминале,
просто http_proxy и https_proxy переменных недостаточно для простого использования pip install somepackage . Хотя как-то sudo -E pip install somepackage работает, но это дало мне некоторые проблемы в случае, если я использую локальную установку Anaconda в папке моих пользователей.
П. С. — Я использую Ubuntu 16.04.
Как насчет просто сделать это локально? Скорее всего, вы можете скачать с источника https через ваш браузер
- загрузите файл модуля (mysql-connector-python-2.0.3.молния /ГЗ. прием.)
Installing a Python pip package on Windows 10, through a proxy
I’m trying to install a Python pip package on Windows 10. Unfortunately, the proxy at my work is giving me trouble.
Things I’ve tried:
- python -m pip install —proxy «http://sam.s1:1234@proxy.det.nsw.edu.au:8080»
- python -m pip install —proxy http://sam.s1:1234@proxy.det.nsw.edu.au:8080
-
- & 2. with the protocol changed to https
-
- & 2. omitting the protocol, eg: python -m pip install —proxy sam.s1:1234@proxy.det.nsw.edu.au:8080
- set HTTP_PROXY=sam.s1:1234@proxy.det.nsw.edu.au:8080 set HTTPS_PROXY=%HTTP_PROXY% set FTP_PROXY=%HTTP_PROXY%
- Editing the proxy address for the HTTP_PROXY env variable in the same way described in steps 1 to 4.
- Creating a pip.ini file at %APP_DATA%/pip/ with the following contents:
[global] proxy = «http://sam.s1:1234@proxy.det.nsw.edu.au:8080» trusted-host = pypi.python.org
- Editing the proxy address in the pip.ini file in the same way described in steps 1 to 4.
They all give me similar errors such as:
Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, NewConnectionError(‘
: Failed to establish a new connection: [Errno 11001] getaddrinfo failed’,))’: /simple/django/
Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by ‘ConnectTimeoutError(
, ‘Connection to pypi.python.org timed out. (connect timeout=15)’)’: /simple/django/
Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 Proxy Authentication Required’,))’: /simple/django/
Although sorting out once and for all how to download packages though the proxy would be nice, I’ll settle for instructions on any methods that circumvent the proxy entirely, like downloading the package and compiling from source (I usually use Ubuntu, so I have no idea how to do this type of thing on Windows).
- The proxy is configured via a pac script
- The package I’m currently trying to install is Django, but there will probably be others in the future.
- I installed pip when I installed Python 3.6.3 (via the checkbox that says something like, do you also want to install pip as well as Python).
- I know that pip is grabbing the settings from the .ini file, since I can change the output of $ pip list by setting a value for [list] .
How to use pip on windows behind an authenticating proxy
My computer is running windows behind a proxy on a windows server (using active directory), and I can’t figure out how to get through it with pip (in python3). I have tried using —proxy , but it still just timeouts. I have also tried setting a long timeout (60s), but that made no difference. My proxy settings are correct, and I compared them with those that I’m using successfully in TortoiseHG to make sure.
Are there any other tricks that anyone knows of that I can try, or is there some limitation in pip with regards to windows proxies?
Update: My failed attempts involved searching pypi. I’ve just tried actually installing something and it worked. Searching still fails though. Does this indicate a bug in pip or do they work differently?
11 Answers 11
I have tried 2 options which both work on my company’s NTLM authenticated proxy. Option 1 is to use —proxy http://user:pass@proxyAddress:proxyPort
If you are still having trouble I would suggest installing a proxy authentication service (I use CNTLM) and pointing pip at it ie something like —proxy http://localhost:3128
It took me a couple hours to figure this out but I finally got it to work using CNTLM and afterwards got it to work with just a pip config file. Here is how I got it work with the pip config file.
Solution:
1. In Windows navigate to your user profile directory (Ex. C:\Users\Sync) and create a folder named «pip«
2. Create a file named «pip.ini» in this directory (Ex. C:\Users\Sync\pip\pip.ini) and enter the following into it:
Replace [domain name], [username], [password], [proxy address] and [proxy port] with your own information.
Note, if your [domain name], [username] or [password] has special characters, you have to percent-encode | encode them.
3. At this point I was able to run «pip install» without any issues.