pip安装超时( Read timed out)解决办法

一、起因

          之前用的是virtualenv 创建虚拟环境,后来发现pipenv比virtualenv强大多了,一直想用这个试试,每次下载都报

pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

一开始以为是网速的原因,下载了多次一直是这个问题,后来百度了下,原来是国内外网速的差异导致下载超时

C:\Users\tan_g>pip install pipenv
Collecting pipenv
  Downloading https://files.pythonhosted.org/packages/13/b4/3ffa55f77161cff9a5220f162670f7c5eb00df52e00939e203f601b0f579/pipenv-2018.11.26-py3-none-any.whl (5.2MB)
    5% |█▊                              | 286kB 3.5kB/s eta 0:23:11Exception:
Traceback (most recent call last):
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\urllib3\response.py", line 302, in _error_catcher
    yield
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\urllib3\response.py", line 384, in read
    data = self._fp.read(amt)
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 60, in read
    data = self.__fp.read(amt)
  File "D:\software\anaconda\lib\http\client.py", line 449, in read
    n = self.readinto(b)
  File "D:\software\anaconda\lib\http\client.py", line 493, in readinto
    n = self.fp.readinto(b)
  File "D:\software\anaconda\lib\socket.py", line 586, in readinto
    return self._sock.recv_into(b)
  File "D:\software\anaconda\lib\ssl.py", line 1009, in recv_into
    return self.read(nbytes, buffer)
  File "D:\software\anaconda\lib\ssl.py", line 871, in read
    return self._sslobj.read(len, buffer)
  File "D:\software\anaconda\lib\ssl.py", line 631, in read
    v = self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\software\anaconda\lib\site-packages\pip\_internal\basecommand.py", line 228, in main
    status = self.run(options, args)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\commands\install.py", line 291, in run
    resolver.resolve(requirement_set)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\resolve.py", line 103, in resolve
    self._resolve_one(requirement_set, req)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\resolve.py", line 257, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\resolve.py", line 210, in _get_abstract_dist_for
    self.require_hashes
  File "D:\software\anaconda\lib\site-packages\pip\_internal\operations\prepare.py", line 310, in prepare_linked_requirement
    progress_bar=self.progress_bar
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 837, in unpack_url
    progress_bar=progress_bar
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 674, in unpack_http_url
    progress_bar)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 898, in _download_http_url
    _download_url(resp, link, content_file, hashes, progress_bar)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 618, in _download_url
    hashes.check_against_chunks(downloaded_chunks)
  File "D:\software\anaconda\lib\site-packages\pip\_internal\utils\hashes.py", line 48, in check_against_chunks
    for chunk in chunks:
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 586, in written_chunks
    for chunk in chunks:
  File "D:\software\anaconda\lib\site-packages\pip\_internal\utils\ui.py", line 159, in iter
    for x in it:
  File "D:\software\anaconda\lib\site-packages\pip\_internal\download.py", line 575, in resp_read
    decode_content=False):
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\urllib3\response.py", line 436, in stream
    data = self.read(amt=amt, decode_content=decode_content)
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\urllib3\response.py", line 401, in read
    raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
  File "D:\software\anaconda\lib\contextlib.py", line 99, in __exit__
    self.gen.throw(type, value, traceback)
  File "D:\software\anaconda\lib\site-packages\pip\_vendor\urllib3\response.py", line 307, in _error_catcher
    raise ReadTimeoutError(self._pool, None, 'Read timed out.')
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

二、解决方法

      使用代理,我用的是豆瓣的代理

   命令为: pip install --index-url https://pypi.douban.com/simple pipenv

和之前命令比较,中间加了  --index-url https://pypi.douban.com/simple 

然后就成功了

C:\Users\tan_g>pip install --index-url https://pypi.douban.com/simple pipenv
Looking in indexes: https://pypi.douban.com/simple
Collecting pipenv
  Downloading https://pypi.doubanio.com/packages/13/b4/3ffa55f77161cff9a5220f162670f7c5eb00df52e00939e203f601b0f579/pipenv-2018.11.26-py3-none-any.whl (5.2MB)
    100% |████████████████████████████████| 5.2MB 17.1MB/s
Collecting virtualenv-clone>=0.2.5 (from pipenv)
  Downloading https://pypi.doubanio.com/packages/b3/ff/161270311f52f6ce6e7a9047d4279755fa3dcb3645ac2554295a626ce508/virtualenv_clone-0.5.1-py3-none-any.whl
Requirement already satisfied: setuptools>=36.2.1 in d:\software\anaconda\lib\site-packages (from pipenv) (39.1.0)
Requirement already satisfied: virtualenv in d:\software\anaconda\lib\site-packages (from pipenv) (16.0.0)
Requirement already satisfied: certifi in d:\software\anaconda\lib\site-packages (from pipenv) (2018.11.29)
Requirement already satisfied: pip>=9.0.1 in d:\software\anaconda\lib\site-packages (from pipenv) (10.0.1)
distributed 1.21.8 requires msgpack, which is not installed.
Installing collected packages: virtualenv-clone, pipenv
Successfully installed pipenv-2018.11.26 virtualenv-clone-0.5.1

 

你可能感兴趣的:(学习)