drno-reg
@drno-reg
см не кратко

Как правильно выполнить pip install если подключение к internet только через proxy?

Здравствуйте.

На одной из машин с ОС Windows подключение к интернету возможно только через proxy.

Каким образом правильно выполнить настроку интерпретатора python (версия 3.5), чтобы появилась возможность накатывать пакеты, используя internet подключение через proxy?

p.s.
пробовал таким образом
cd "C:\Program Files\Python35\Scripts"
set HTTP_PROXY= user_proxy:pwd@proxy.new.ru:1111
pip install pysnmp

и еще вот так
“C:\Program Files\Python35\scripts\pip.exe” –-proxy http://user_proxy:pwd@proxy.new.ru:1111 install requests

результат отрицательный...

Collecting requests
Exception:
Traceback (most recent call last):
  File "c:\program files\python35\lib\site-packages\pip\basecommand.py", line 21
5, in main
    status = self.run(options, args)
  File "c:\program files\python35\lib\site-packages\pip\commands\install.py", li
ne 299, in run
    requirement_set.prepare_files(finder)
  File "c:\program files\python35\lib\site-packages\pip\req\req_set.py", line 37
0, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "c:\program files\python35\lib\site-packages\pip\req\req_set.py", line 52
2, in _prepare_file
    finder, self.upgrade, require_hashes)
  File "c:\program files\python35\lib\site-packages\pip\req\req_install.py", lin
e 268, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "c:\program files\python35\lib\site-packages\pip\index.py", line 442, in
find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "c:\program files\python35\lib\site-packages\pip\index.py", line 400, in
find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "c:\program files\python35\lib\site-packages\pip\index.py", line 545, in
_get_pages
    page = self._get_page(location)
  File "c:\program files\python35\lib\site-packages\pip\index.py", line 648, in
_get_page
    return HTMLPage.get_page(link, session=self.session)
  File "c:\program files\python35\lib\site-packages\pip\index.py", line 757, in
get_page
    "Cache-Control": "max-age=600",
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\session
s.py", line 487, in get
    return self.request('GET', url, **kwargs)
  File "c:\program files\python35\lib\site-packages\pip\download.py", line 378,
in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\session
s.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\session
s.py", line 585, in send
    r = adapter.send(request, **kwargs)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\cachecontrol\ada
pter.py", line 46, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\adapter
s.py", line 370, in send
    conn = self.get_connection(request.url, proxies)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\adapter
s.py", line 273, in get_connection
    proxy_manager = self.proxy_manager_for(proxy)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\adapter
s.py", line 179, in proxy_manager_for
    **proxy_kwargs)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\package
s\urllib3\poolmanager.py", line 284, in proxy_from_url
    return ProxyManager(proxy_url=url, **kw)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\package
s\urllib3\poolmanager.py", line 229, in __init__
    proxy = parse_url(proxy_url)
  File "c:\program files\python35\lib\site-packages\pip\_vendor\requests\package
s\urllib3\util\url.py", line 189, in parse_url
    raise LocationParseError(url)
pip._vendor.requests.packages.urllib3.exceptions.LocationParseError: Failed to p
arse: user_proxy:pwd
  • Вопрос задан
  • 24577 просмотров
Решения вопроса 4
pip install --proxy http://юзер:пароль@прокси:порт <пакет>
То есть, два дефиса перед именем опции и задать протокол
Ответ написан
@Andy_U
Если у Вас Windows, то:

1) установите (и настройте) cntlm (cntlm.sourceforge.net) как локальный прокси

2) в каталоге AppData\Roaming\pip создайте файл pip.ini c содержимым

[global]
proxy = 127.0.0.1:3128
Ответ написан
Комментировать
drno-reg
@drno-reg Автор вопроса
см не кратко
Решение:
вместо # необходимо было написать %23.
Ответ написан
Комментировать
DDDsa
@DDDsa
В командной строке следует писать так:

set HTTP_PROXY=http://user_proxy:pwd@proxy.new.ru:1111
set HTTPS_PROXY=https://user_proxy:pwd@proxy.new.ru:1111


А еще лучше - забить это в переменные среды:
9ed78f1508474ff9b210fdc8768b8e28.png
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы