加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – pip3读取超时错误

发布时间:2020-12-13 23:52:42 所属栏目:Linux 来源:网络整理
导读:sudo pip3安装scikit-learn(任何模块真的只是使用最近的尝试) sudo pip3 install -U scikit-learnsudo -H pip3 install -U scikit-learnsudo -H pip3 --default-timeout=200 install -U scikit-learnsudo python3 -m pip install scikit-learn 每个命令和上
sudo pip3安装scikit-learn(任何模块真的只是使用最近的尝试)

sudo pip3 install -U scikit-learn

sudo -H pip3 install -U scikit-learn

sudo -H pip3 --default-timeout=200 install -U scikit-learn

sudo python3 -m pip install scikit-learn

每个命令和上述任何组合都会导致相同的错误:读取超时.错误总是发生在同一点(scikit-learn发生在24%).我正在使用最新版本的pip(8.1.2),而我正在使用ubuntu mate 16.04.确切的错误是:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/requests/packages/urllib3/response.py",line 228,in _error_catcher
    yield
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/requests/packages/urllib3/response.py",line 310,in read
    data = self._fp.read(amt)
   File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/cachecontrol/filewrapper.py",line 49,in read
     data = self.__fp.read(amt)
  File "/usr/lib/python3.5/http/client.py",line 448,in read
    n = self.readinto(b)
  File "/usr/lib/python3.5/http/client.py",line 488,in readinto
    n = self.fp.readinto(b)
  File "/usr/lib/python3.5/socket.py",line 575,in readinto
    return self._sock.recv_into(b)
  File "/usr/lib/python3.5/ssl.py",line 929,in recv_into
    return self.read(nbytes,buffer)
  File "/usr/lib/python3.5/ssl.py",line 791,in read
    return self._sslobj.read(len,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 "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/basecommand.py",line 215,in main
    status = self.run(options,args)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/commands/install.py",in run
    wb.build(autobuilding=True)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/wheel.py",line 750,in build
    self.requirement_set.prepare_files(self.finder)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/req/req_set.py",line 370,in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/req/req_set.py",line 587,in _prepare_file
    session=self.session,hashes=hashes)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 810,in unpack_url
    hashes=hashes
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 649,in unpack_http_url
hashes)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 871,in _download_http_url
_download_url(resp,link,content_file,hashes)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 595,in _download_url
    hashes.check_against_chunks(downloaded_chunks)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/utils/hashes.py",line 46,in check_against_chunks
    for chunk in chunks:
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 563,in written_chunks
    for chunk in chunks:
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/utils/ui.py",line 139,in iter
    for x in it:
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/download.py",line 552,in resp_read
decode_content=False):
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/requests/packages/urllib3/response.py",line 353,in stream
    data = self.read(amt=amt,decode_content=decode_content)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/requests/packages/urllib3/response.py",line 320,in read
    flush_decoder = True
  File "/usr/lib/python3.5/contextlib.py",line 77,in __exit__
    self.gen.throw(type,value,traceback)
  File "/usr/local/lib/python3.5/dist-packages/pip-8.1.2-py3.5.egg/pip/_vendor/requests/packages/urllib3/response.py",line 233,in _error_catcher
    raise ReadTimeoutError(self._pool,None,'Read timed out.')
pip._vendor.requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org',port=443): Read timed out.

解决方法

将默认套接字超时设置为更高的值(例如1000秒)应该可以解决您的问题:

pip3 install -U --timeout 1000 scikit-learn

当然,合适的超时值取决于您的连接速度和质量.请注意,套接字超时AFAIK是在引发错误之前套接字级数据流中断的最长时间,而不是下载软件包所需的总时间.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读