You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用命令行下载spaCy的en_core_web_md时遇连接超时错误求助

解决spaCy en_core_web_md模型下载超时问题

问题描述

我刚开始学习NLP教程,在学习词向量部分时需要用到spaCy库的en_core_web_md模型。使用命令python -m spacy download en_core_web_md在命令提示符执行下载操作时,出现了连接raw.githubusercontent.com超时的Traceback错误。我的网络连接正常,目前仅了解到可直接从官网下载的方案,希望能获得其他可行的解决办法。

错误详情

Traceback (most recent call last):
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行403, in _make_request
    self._validate_conn(conn)
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行1053, in _validate_conn
    conn.connect()
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connection.py", 行419, in connect
    self.sock = ssl_wrap_socket(
                ^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\util\ssl_.py", 行449, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(
               ^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\util\ssl_.py", 行493, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\ssl.py", 行517, in wrap_socket
    return self.sslsocket_class._create(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\ssl.py", 行1075, in _create
    self.do_handshake()
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\ssl.py", 行1346, in do_handshake
    self._sslobj.do_handshake()
TimeoutError: [WinError 10060] 连接尝试失败,因为连接方在一段时间后没有正确响应,或者已建立的连接失败,因为连接的主机未能响应

在处理上述异常期间,发生了另一个异常:

Traceback (most recent call last):
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\adapters.py", 行486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行798, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\util\retry.py", 行550, in increment
    raise six.reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\packages\six.py", 行770, in reraise
    raise value
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行714, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行406, in _make_request
    self._raise_timeout(err=e, url=url, timeout_value=conn.timeout)
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\urllib3\connectionpool.py", 行357, in _raise_timeout
    raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): 读取超时。(read timeout=None)

在处理上述异常期间,发生了另一个异常:

Traceback (most recent call last):
  文件 "<frozen runpy>", 行198, in _run_module_as_main
  文件 "<frozen runpy>", 行88, in _run_code
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\spacy\__main__.py", 行4, in <module>
    setup_cli()
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\spacy\cli\_util.py", 行87, in setup_cli
    command(prog_name=COMMAND)
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", 行1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\typer\core.py", 行783, in main
    return _main(
           ^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\typer\core.py", 行225, in _main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", 行1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", 行1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", 行783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\typer\main.py", 行683, in wrapper
    return callback(**use_params)  # type: ignore
           ^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\spacy\cli\download.py", 行43, in download_cli
    download(model, direct, sdist, *ctx.args)
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\spacy\cli\download.py", 行77, in download
    compatibility = get_compatibility()
                    ^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\spacy\cli\download.py", 行122, in get_compatibility
    r = requests.get(about.__compatibility__)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\api.py", 行73, in get
    return request("get", url, params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\api.py", 行59, in request
    return session.request(method=method, url=url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\sessions.py", 行589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\sessions.py", 行703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  文件 "C:\Users\user\AppData\Local\Programs\Python\Python311\Lib\site-packages\requests\adapters.py", 行532, in send
    raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): 读取超时。(read timeout=None)

可行解决办法

  • 修改本地Hosts文件
    找到raw.githubusercontent.com的可用IP地址,添加到系统Hosts文件中:

    1. 打开C:\Windows\System32\drivers\etc\hosts(Windows系统)或/etc/hosts(Linux/macOS)
    2. 在文件末尾添加一行:185.199.108.133 raw.githubusercontent.com(可通过在线IP查询工具获取最新有效IP)
    3. 保存文件后,重新执行下载命令
  • 使用国内PyPI镜像源安装
    直接通过国内镜像下载模型包并安装,命令如下:

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

    安装完成后,执行以下命令将模型链接到spaCy:

    python -m spacy link en_core_web_md en_core_web_md
    
  • 手动下载后本地安装

    1. 找到对应版本的en_core_web_md模型包(需匹配你的spaCy版本)
    2. 下载模型的tar.gz压缩包到本地
    3. 执行本地安装命令:
    pip install /path/to/en_core_web_md-x.x.x.tar.gz
    
  • 设置临时代理
    如果有可用的代理服务器,可在执行下载命令前设置环境变量:
    Windows命令提示符:

    set http_proxy=http://你的代理地址:端口
    set https_proxy=https://你的代理地址:端口
    python -m spacy download en_core_web_md
    

    Linux/macOS终端:

    export http_proxy=http://你的代理地址:端口
    export https_proxy=https://你的代理地址:端口
    python -m spacy download en_core_web_md
    

内容的提问来源于stack exchange,提问作者Al-Amin Baba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 17:07:02