2017-04-08 7 views
12

Niedawno trzeba zainstalować niektórych pakietówJak rozwiązać błąd ReadTimeoutError: HTTPSConnectionPool (host = 'pypi.python.org', port = 443) z pip?

pip install future 
pip install scikit-learn 
pip install numpy 
pip install scipy 

Próbowałem też przez writin sudo przed nimi, ale wszystko stało się z następujących błędów w czerwone linie:

Exception: 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 290, in run 
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle) 
    File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1198, in prepare_files 
    do_download, 
    File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1376, in unpack_url 
    self.session, 
    File "/usr/lib/python2.7/dist-packages/pip/download.py", line 572, in unpack_http_url 
    download_hash = _download_url(resp, link, temp_location) 
    File "/usr/lib/python2.7/dist-packages/pip/download.py", line 433, in _download_url 
    for chunk in resp_read(4096): 
    File "/usr/lib/python2.7/dist-packages/pip/download.py", line 421, in resp_read 
    chunk_size, decode_content=False): 
    File "/usr/lib/python2.7/dist-packages/urllib3/response.py", line 256, in stream 
    data = self.read(amt=amt, decode_content=decode_content) 
    File "/usr/lib/python2.7/dist-packages/urllib3/response.py", line 201, in read 
    raise ReadTimeoutError(self._pool, None, 'Read timed out.') 
ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out. 

Storing debug log for failure in /root/.pip/pip.log' 
+1

Chyba że rzeczywiście błąd zwany czerwony ekran Błędy, nie umieścić, że jako tytuł – abccd

+2

Myślę, że to problem z siecią spróbuj 'ping pypi.python.org' sprawdzić, czy to działa. Można go rozwiązać za pomocą czegoś tak prostego jak ponowne uruchomienie routera lub ponowne połączenie z internetem, a nawet po prostu próbowanie ponownie po jakimś czasie. przed wysłaniem proszę postępować zgodnie z [How to ask] (https://stackoverflow.com/help/how-to-ask). –

+0

Może się to również zdarzyć, jeśli musi to być proxy pośredniczące. Do: pip install future --proxy = user3885927

Odpowiedz

24

Yaayy! Znalazłem odpowiedź. Po prostu użyj --default-timeout = 100 parametru podczas instalacji. np

sudo pip install --default-timeout=100 future 
+0

Alternatywnie użyłem 'export PIP_DEFAULT_TIMEOUT = 100', ponieważ miałem polecenie' pip' w udostępnionym pliku Dockerfile i było to dla mnie tymczasowe wymaganie. Ale działa, dzięki! – mass

+1

Dzięki, oszczędza mi to w powolnym stanie internetu. Domyślam się, że 100 to liczba sekund oczekujących na ponowne połączenie po utracie połączenia? – LittleZero