2016-04-14 15 views
10

Czy istnieje podobna konfiguracja do .condarc (anaconda 4.0.0), która umożliwia skonfigurowanie Jupytera do pracy za firmowym proxy na komputerze lokalnym?Używanie Jupytera za proxy

Błąd otrzymali:

HTTPError: HTTP Error 407: Proxy Authentication Required 
+0

Naprawiłem to, ustawiając zmienne środowiskowe 'HTTPS_PROXY' i' HTTPS_PROXY', prawidlowo_. Mój protokół HTTPS był niepoprawny, a także ulegał awarii. –

Odpowiedz

5

podstawie this link.

Musisz zmodyfikować env serwer notebooka Jupyter. Utwórz plik o nazwie 00-something.py pod swoim profilu serwera notebook Jupyter i dodać następujące:

Na przykład:

vi /.jupyter/profile_myserver/startup/00-startup.py 

(lub w systemie Windows otworzyć „C:/Users/nazwa użytkownika /.jupyter/ profile_myserver/startup/00-startup.py”w edytorze wyboru)

i dodać

import sys,os,os.path 
os.environ['HTTP_PROXY']="http://proxy.example.com:80" 
os.environ['HTTPS_PROXY']="https://proxy.example.com:443" 

ty c potwierdzić zmienne env uruchamiając

%env 

w komórce i wyjściem

{'CLICOLOR': '1', 
'GIT_PAGER': 'cat', 
'HOME': '/home/jay', 
'HTTP_PROXY': 'http://proxy.example.com:80', 
.. 

Następny spróbować

import requests 
requests.get("http://google.com") 

Jeśli otrzymasz odpowiedź [200], to jesteś ustawiony.

+0

Jaka byłaby procedura w systemie Windows 7? – toasteez

+0

Nie jestem pewien, ale oczekiwałbym, że jedyną różnicą jest to, gdzie znajduje się profil serwera i ewentualnie to, z czym go edytujesz. –

+0

brakuje litery "s" w adresie https? – tagoma

4

Way łatwiejsze: wystarczy dodać następujące notebooka:

In [1]: import os 
     os.environ['http_proxy'] = "http://user:[email protected]:port" 
     os.environ['https_proxy'] = "https://user:[email protected]:port" 

Po tym, wnioski będą działać OK=200, np

In [2]: import requests 
     requests.get("http://google.com") 
Out[2]: <Response [200]> 
1

Łatwiejsze rozwiązanie dla mnie było dodanie wyjątku do mojej konfiguracji proxy. Właśnie wpisałem adres http://localhost:8888 do mojej listy wyjątków i zadziałało.

1

użyć zmiennej małe zamiast, to działa na mnie:

import sys,os,os.path 
os.environ['http_proxy']="http://user:[email protected]:port" 
os.environ['https_proxy']="http://user:[email protected]:port" 

Następnie sprawdzić zmienną env za pomocą tego:

%env 

Wyjście będzie tak:

{'CLICOLOR': '1', 
'...' 
'...' 
'http_proxy': 'http://gunawan.marbun:[email protected]:8080' 
'https_proxy': 'https://gunawan.marbun:[email protected]:8080' 
'no_proxy': 'localhost,127.0.0.0/8,::1'} 

Uwagi: Ponieważ nie mogę komentować ze względu na moją reputację (wymagane jest 50 i jestem początkującym), przedstawiam nową odpowiedź.