python安装包时:timeout

问题:

D:\code_python\scriptLearning>pip install scrapy
Collecting scrapy
  Downloading https://files.pythonhosted.org/packages/3b/e4/69b87d7827abf03dea2ea984230d50f347b00a7a3897bc93f6ec3dafa494/Scrapy-1.8.0-
py2.py3-none-any.whl (238kB)
     |████████████████████████████████| 245kB 105kB/s
Requirement already satisfied: zope.interface>=4.1.3 in d:\programdata\anaconda3\lib\site-packages (from scrapy) (4.5.0)
Requirement already satisfied: cssselect>=0.9.1 in d:\programdata\anaconda3\lib\site-packages (from scrapy) (1.1.0)
Collecting PyDispatcher>=2.0.5 (from scrapy)
  Downloading https://files.pythonhosted.org/packages/cd/37/39aca520918ce1935bea9c356bcbb7ed7e52ad4e31bff9b943dfc8e7115b/PyDispatcher-
2.0.5.tar.gz
Collecting parsel>=1.5.0 (from scrapy)
  Downloading https://files.pythonhosted.org/packages/86/c8/fc5a2f9376066905dfcca334da2a25842aedfda142c0424722e7c497798b/parsel-1.5.2-
py2.py3-none-any.whl
Requirement already satisfied: lxml>=3.5.0 in d:\programdata\anaconda3\lib\site-packages (from scrapy) (4.2.5)
Requirement already satisfied: service-identity>=16.0.0 in d:\programdata\anaconda3\lib\site-packages (from scrapy) (17.0.0)
Requirement already satisfied: six>=1.10.0 in d:\programdata\anaconda3\lib\site-packages (from scrapy) (1.11.0)
Collecting protego>=0.1.15 (from scrapy)
  Downloading https://files.pythonhosted.org/packages/db/6e/bf6d5e4d7cf233b785719aaec2c38f027b9c2ed980a0015ec1a1cced4893/Protego-0.1.1
6.tar.gz (3.2MB)
     |█▌                              | 143kB 64kB/s eta 0:00:48ERROR: Exception:
Traceback (most recent call last):
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 360, in _error_catcher
    yield
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 442, in read
    data = self._fp.read(amt)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py", line 62, in read
    data = self.__fp.read(amt)
  File "d:\programdata\anaconda3\lib\http\client.py", line 447, in read
    n = self.readinto(b)
  File "d:\programdata\anaconda3\lib\http\client.py", line 491, in readinto
    n = self.fp.readinto(b)
  File "d:\programdata\anaconda3\lib\socket.py", line 589, in readinto
    return self._sock.recv_into(b)
  File "d:\programdata\anaconda3\lib\ssl.py", line 1049, in recv_into
    return self.read(nbytes, buffer)
  File "d:\programdata\anaconda3\lib\ssl.py", line 908, in read
    return 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:\programdata\anaconda3\lib\site-packages\pip\_internal\cli\base_command.py", line 178, in main
    status = self.run(options, args)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\commands\install.py", line 352, in run
    resolver.resolve(requirement_set)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\resolve.py", line 131, in resolve
    self._resolve_one(requirement_set, req)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\resolve.py", line 294, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\resolve.py", line 242, in _get_abstract_dist_for
    self.require_hashes
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\operations\prepare.py", line 347, in prepare_linked_requirement
    progress_bar=self.progress_bar
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 886, in unpack_url
    progress_bar=progress_bar
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 746, in unpack_http_url
    progress_bar)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 954, in _download_http_url
    _download_url(resp, link, content_file, hashes, progress_bar)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 683, in _download_url
    hashes.check_against_chunks(downloaded_chunks)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\utils\hashes.py", line 62, in check_against_chunks
    for chunk in chunks:
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 651, in written_chunks
    for chunk in chunks:
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\utils\ui.py", line 156, in iter
    for x in it:
  File "d:\programdata\anaconda3\lib\site-packages\pip\_internal\download.py", line 640, in resp_read
    decode_content=False):
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 494, in stream
    data = self.read(amt=amt, decode_content=decode_content)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 459, in read
    raise IncompleteRead(self._fp_bytes_read, self.length_remaining)
  File "d:\programdata\anaconda3\lib\contextlib.py", line 130, in __exit__
    self.gen.throw(type, value, traceback)
  File "d:\programdata\anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 365, 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.
WARNING: You are using pip version 19.1.1, however version 19.3.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

解决:

  1. 安装时增加:--default-timeout=10000 时间可以自定义

pip install scrapy --default-timeout=10000

  1. 更换国内源:清华

pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple/

阿里云: http://mirrors.aliyun.com/pypi/simple/
中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban): http://pypi.douban.com/simple/
清华大学: https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学: http://pypi.mirrors.ustc.edu.cn/simple/

  1. 下载离线包:https://www.lfd.uci.edu/~gohlke/pythonlibs/
### 解决Python安装包失败的方法 当遇到`pip install`命令执行失败的情况,可能的原因括但不限于pip版本过低、Python版本与所需安装的库版本不兼容以及网络连接问题等[^1]。 对于因pip版本较低而导致的安装失败情况,可以通过更新pip来尝试解决问题。具体操作是在命令行工具中输入如下命令: ```bash python -m pip install --upgrade pip ``` 如果是因为Python版本和待安装库之间的版本冲突所引发的问题,则需考虑调整Python版本或是寻找适用于当前Python版本的库版本。这通常意味着要么升级Python至更高版本以满足某些新特性依赖的要求,要么降级Python以便能顺利使用那些不再维护的老版库。 针对由于网络原因造成的下载超或资源不可达等问题,可以采取更换国内镜像源的方式加以改善。例如清华TUNA镜像站提供了稳定快速的服务,可利用以下命令指定镜像源进行安装: ```bash pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests ``` 另外,在特定情况下可能会碰到缺少编译工具链而致使C扩展模块构建失败的情形。此则应按照官方文档指示先行安装必要的开发工具集,如Windows环境下所需的Microsoft Visual C++ Build Tools,并确保其路径已加入系统的环境变量配置之中[^2]。 最后一种较为稳妥的做法是采用带有额外参数选项的pip指令来进行安装,以此提高成功率并减少潜在的风险因素。下面给出了一条综合性的建议命令,它不仅强制刷新现有缓存中的旧数据,而且设置了较长的默认等待间以防中途断连: ```bash pip install --upgrade --force-reinstall --no-cache-dir --timeout=100 packagename ``` 通过上述措施往往能够有效应对大部分常见的Python第三方库安装障碍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@TangXin

路漫漫其修远兮,吾将上下而求索

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值