spacy环境搭建

在这里插入图片描述

0.前言

  • 博主默认各位读者在自己的电脑上已经搭建好 python 的环境。
  • 下面的安装默认以 pip 方式进行安装。
  • 全文开发环境为 windows 10 x64。

1.spacy安装

打开命令行窗口,输入以下命令,进行 spacy 的安装。

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

上述方式,在国内安装的话,经常安装到一半,或者安装到一大半后,就报错终止了,估计是因为网络问题。建议换成下述方式安装:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U pip setuptools wheel
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  -U spacy

其中,https://pypi.tuna.tsinghua.edu.cn/simple 是国内的代理,下载速度飕飕,妈妈再也不用担心我砸电脑了。

  • -i: 指定库的安装源。
  • -U: 升级 原来已经安装的包,不带U不会装新版本,带上U才会更新到最新版本。

按照上述安装完spacy后,打开命令行窗口,输入python进入python操作界面,输入import spacy后回车,没有报错就代表安装成功了:

在这里插入图片描述

2. spacy中文模型包

2.1spacy中文模型包安装(推荐方式一)

安装之前,建议看一下附录,修改pip install的默认安装路径:4.1 附录一:更改 Python 的 pip install 默认安装依赖路径

2.1.1 离线安装方式一:

首先,去https://github.com/explosion/spacy-models/releases网址选择适合自己项目的中文模型包。

这里以 https://github.com/explosion/spacy-models/releases/download/zh_core_web_lg-3.0.0a0/zh_core_web_lg-3.0.0a0.tar.gz为例,

下载地址组装: 加粗部分参考模块命令自行替换
https://github.com/explosion/spacy-models/releases/download/zh_core_web_lg-3.0.0a0/zh_core_web_lg-3.0.0a0.tar.gz

命令行进入下载的文件所在的目录,然后执行pip install --user zh_core_web_lg-3.0.0a0.tar.gz,喝杯大红袍等待一会儿。安装完成后,撸一段下面这样的代码,执行一下:

# -*- coding: utf-8 -*-
import spacy

nlp = spacy.load('zh_core_web_lg')
doc = nlp("中国,你好吗?")
print([(w.text,w.pos_) for w in doc])

如果输出结果如下:

在这里插入图片描述

万事大吉,睡觉!

如果在执行程序时,碰到jiebapkuseg没有安装的问题,可以参考离线安装方式二中jiebapkuseg的安装教程。


2.1.2 离线安装方式二:

将下载的模型包直接解压到项目路径中,然后直接在项目中引用。如:我在新建的项目中创建了一个测试demo,然后将红框中的路径解压到与你写的测试案例文件同级的目录中。
在这里插入图片描述

然后在项目中进行引用,demo代码如下:

import spacy
#路径按需修改
spacyModel='zh_core_web_lg-3.0.0a0/zh_core_web_lg/zh_core_web_lg-3.0.0a0'
nlp = spacy.load('spacyModel')
doc = nlp("中国,你好吗?")
print([(w.text,w.pos_) for w in doc])

这个时候你运行是会保存的,这种方式会少安装许多东西。

2.1.2.1.安装jieba
  • a.来自于网络:
    • 全自动安装:easy_install jieba 或者 pip install jieba / pip3 install jieba
    • 半自动安装:先下载 http://pypi.python.org/pypi/jieba/,解压后运行 python setup.py install
    • 手动安装:将jieba 目录放置于当前目录或者 site-packages 目录。
    • 通过 import jieba 来引用 。
  • b.本地实验:pip install jieba
  • c.推荐安装方法:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jieba
2.1.2.2.安装pkuseg
pip install pkuseg

建议换成:

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

jieba 与 pkuseg 安装完成后,就可以正常运行上面的 demo了。

3.遇到的问题

1.ModuleNotFoundError: No module named ‘pip’

解决方案:

python -m ensurepip
python -m pip install --upgrade pip

2.使用官网命令安装模型包遇到的坑

在这里插入图片描述

报错内容是:requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /explosion/spacy-models/master/shortcuts-v2.json (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x000002368F92A7B8>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积 极拒绝,无法连接。'))

解决方案:

一直连接一直错,建议采用离线安装的方式。

3.离线安装模型包的坑

在这里插入图片描述

解决方法:

在pip install 后面加上 --user + 需要安装的包名

例如:

pip install --user en_core_web_lg-3.0.0a0.tar.gz

4.附录

4.1 附录一:更改 Python 的 pip install 默认安装依赖路径

总体步骤

先查看自己的默认安装路径到底是在哪?列出全局的packages包的安装路径在哪?

  1. 按键(win+R) ->打开cmd命令窗口

  2. 键入 python -m site,显示如下:

sys.path = [
    'C:\\Users\\WangHY',
    'D:\\python\\Python38\\python38.zip',
    'D:\\python\\Python38\\DLLs',
    'D:\\python\\Python38\\lib',
    'D:\\python\\Python38',
    'D:\\python\\Python38\\Lib\\site-packages',
]
USER_BASE: 'D:\\python\\Python38\\Scripts' (exists)
USER_SITE: 'D:\\python\\Python38\\Lib\\site-packages' (exists)
ENABLE_USER_SITE: True

说明:

  • USER_BASE:用户自定义的启用Python脚本的基础路径。
  • USER_SITE:用户自定义的启用Python依赖安装包的基础路径。

如果上述两个地址不做配置,默认为Node,当使用 pip install安装时,会将安装的东西安装在系统盘的相应位置,如我的默认位置为:

C:\Users\WangHY\AppData\Roaming\Python\Python38

建议修改成python安装路径中的相应位置,如我的修改成了:

# for distutils.commands.install
# These values are initialized by the getuserbase() and getusersitepackages()
# functions, through the main() function when Python starts.
USER_SITE = "D:\python\Python38\Lib\site-packages"
USER_BASE = "D:\python\Python38\Scripts"

在cmd命令行窗口中输入python -m site -help,会出现以下信息:

D:\python\Python38\lib\site.py [--user-base] [--user-site]

Without arguments print some useful information
With arguments print the value of USER_BASE and/or USER_SITE separated
by ';'.

Exit codes with --user-base or --user-site:
  0 - user site directory is enabled
  1 - user site directory is disabled by user
  2 - uses site directory is disabled by super user
      or for security reasons
 >2 - unknown error

可以看待site.py的路径为D:\python\Python38\lib\site.py,这个就是我们要修改的文件,找到这个文件打开后进行相应的修改就可以了。


早,就是优势!希望我们彼此都成为牛 啤的人!

公众号&微博&视频号:冬月末

Wechat:terrytian1125(本人)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值