【问题标题】:Python Cannot install module spaCyPython无法安装模块spaCy
【发布时间】:2018-11-02 03:21:46
【问题描述】:

我是 python 新手,遇到了一个我无法解决的问题。 我想在 python 中安装和使用包 spacy。 因此我打开了 cmd 并运行了

pip install spacy

在安装依赖项时,我收到一条错误消息:

    ----------------------------------------

命令 ""c:\users\xxx\appdata\local\programs\python\python37\python.exe" -u -c "import setuptools, tokenize;file='C:\ Users\xxx\AppData\Local\Temp\pip-install-6vcdnb_4\numpy\setup.py';f=getattr(tokenize, 'open', open)(file);code=f. read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record C:\Users\xxx\AppData\Local\Temp\pip-record-jhmti8_8\install-record.txt --single-version-externally-managed --compile" 在 C:\Users\xxx\ 中出现错误代码 1 失败AppData\Local\Temp\pip-install-6vcdnb_4\numpy\

但我不知道是什么问题......

有人对此有解决方案吗?

我使用 Windows 和 python 版本 3.7.0b4

【问题讨论】:

  • 请发布完整的输出。这不是实际的错误消息。
  • 你是什么python版本的?在什么操作系统上?
  • 我在 Windows 上使用 python 版本 3.7.0b4。
  • 如果您查看输出的其余部分,您会发现问题不是spacy,而是preshed
  • 尝试pip install numpy 然后pip install spacy

标签: python installation spacy


【解决方案1】:

好的,这是一个可行的解决方案(至少在 Windows 10 和 python3.7 上):

去这里:https://www.lfd.uci.edu/~gohlke/pythonlibs/#spacy

搜索SpaCy 并为您的平台下载正确的*:-

  • 预知
  • cymem
  • 杂音
  • 空旷

那么你需要按照上面的顺序用pip install [wheel]安装它们。

如果这不起作用,请尝试从同一站点安装 scipy 甚至是 numpy

【讨论】:

  • 一切安装正常,直到 murmurhash。但是安装thinc时出现与问题相同的错误,有什么想法吗?
【解决方案2】:

我花了一段时间才正确安装 spaCy,我在 Windows 上运行 python 3.6.4。我会分享我的安装过程,以防对任何人有帮助。

我使用 pycharm 作为我的 IDE,并使用它创建的 venv 工作。

我也遇到了与 OP 类似的问题,并设法让它在 venv 之外工作。

主要问题似乎是 pip

首先,我删除了我的 pip 缓存,因为它似乎造成了问题(至少在我的机器上)。在 Windows 上,它位于:

C:\Users\YOUR_USERNAME\AppData\Local\pip\cache

删除文件夹即可。

然后我必须将 pip 更新到最新版本才能安装,

python -m pip install --upgrade pip

检查您的 pip 版本(在发表此评论时,最新版本是 10.0.1)

python -m pip --version

在这个过程之后,我设法通过使用 pip 安装它来让它工作

python -m pip install spacy

【讨论】:

    【解决方案3】:

    升级 pip 和 setuptools 通常会有所帮助。
    以下是 3 个步骤:

    pip install pip -U
    pip install setuptools -U
    pip install -U spacy
    

    密钥是-U,它将所有软件包升级到最新的可用版本。

    【讨论】:

      【解决方案4】:

      以下两个命令就足够了:

      pip install -U spacy
      
      python -m spacy download en
      

      请注意,在 Windows 上,您应该以“以管理员身份运行”权限执行命令。

      【讨论】:

        【解决方案5】:

        我今天遇到了同样的问题。

        原来我安装的 Python 是 32 位的。卸载它并添加64位版本。我的 Windows 10 也是 64 位的。再次尝试安装 spaCy 并且成功了。

        【讨论】:

          【解决方案6】:

          您可能正在使用需要卸载的 python 32 位版本,您需要切换到 python 64 位版本。

          切换后一切正常,安装前只需升级 pip 和 setuptools。

          【讨论】:

            【解决方案7】:

            卸载 Python32 位并安装 Python 64 位..

            为我工作!

            【讨论】:

              【解决方案8】:

              我使用的是 windows10 64bits 和 python 3.8.2(32bits),不适合我。我卸载了python 32位并安装了python 64位,所以它现在可以工作了!

              【讨论】:

                【解决方案9】:

                能够通过安装 64 位的 Python 3.7 来解决问题。可以参考https://github.com/explosion/spaCy/issues/4581

                【讨论】:

                  【解决方案10】:

                  原因

                  这通常发生在您的安装意外停止时,一些数据保留在缓存中导致问题。

                  注意:其他包也可能出现此类错误。

                  解决方案

                  • 转到那个目录

                    C:\Users\User_Name\AppData\Local\pip\cache

                  • 删除缓存文件

                  • 然后升级pip

                    python -m pip install --upgrade pip

                  • 安装你想要的包

                    python -m pip install spacy

                  【讨论】:

                    【解决方案11】:

                    如果您使用的是 Python 3.8,我强烈建议您将 Python 版本降级到 3.7。 我试图解决这个问题 5 个小时,最后,在将 eve 更改为 3.7 之后它工作了。

                    conda create --name chatterbot_example python=3.7
                    
                    source activate chatterbot_example
                    
                    pip install chatterbot
                    pip install chatterbot-corpus
                    

                    【讨论】:

                      【解决方案12】:

                      我最近遇到了同样的问题,不幸的是,这些解释有助于取得进展,但并没有解决问题。我有 Windows 64 位笔记本电脑。 Python 版本为 3.8.5 和 64 位。

                      我按照以下步骤安装了 stacy

                      1. 卸载我系统上的所有 python 安装(32 位安装会导致问题)
                      2. 转到此链接以确保哪个版本的 python 具有以下所有包。所有这些软件包都是 spacy 的先决条件

                      去这里:https://www.lfd.uci.edu/~gohlke/pythonlibs/#spacy

                      preshed、cymem、murmurhash、thinc、spacy

                      示例:preshed‑3.0.2‑cp38‑cp38‑win_amd64.whl > cp38 表示 3.8 版本。您可以升级到所有这些软件包的最新版本并安装相同的 python 版本。

                      1. 安装 Python 3.8.5 版本

                      2. 运行 pip3 install spacy

                      在撰写本文时,python 3.8 是您可以安装 spacy 的最高版本。

                      对我来说,问题是我试图在 python 3.9 版本上安装 spacy 并降级到 3.8.6 解决了这个问题。

                      注意:我花了将近 4 个小时来解决这个问题,这是唯一一个包含解决问题所需的几乎所有选项的页面。

                      【讨论】:

                        【解决方案13】:

                        在我从 Python 3.9.0 切换到 3.8.6 后它工作了

                        【讨论】:

                        • 这不是问题的答案(顺便说一句,已经有一个公认的答案):2 年前没有 Python 3.9。
                        【解决方案14】:

                        我在 Ubuntu 上也遇到了同样的问题,最后关注了这个guide

                        在 Ubuntu(python v3.7.9)上,

                        pip install -U pip setuptools wheel
                        pip install -U spacy
                        python -m spacy download en_core_web_sm
                        

                        希望这可以帮助您节省时间。

                        【讨论】:

                          【解决方案15】:

                          我必须先删除缓存文件夹。

                          1. 转到 C:\Users\XYZ\AppData\Local\pip 然后删除缓存文件夹

                          2. 然后升级你的点子

                            python -m pip install --upgrade pip
                            
                          3. 现在安装 spacy

                            pip install spacy
                            

                          【讨论】: