我是 python 新手,一直被一个问题困扰:我必须在 Visual Studio 代码中执行 python 文件,这给了我一个错误
ModuleNotFoundError: No module named 'en_core_web_sm'
,
即使我已经下载了 en-core-web-sm 2.2.5。
请帮我解决这个问题谢谢和问候,
import spacy
import re
import json
import pymongo
import datetime
import sys
import xlrd
import xlsxwriter
import openpyxl
from openpyxl import Workbook
from pathlib import Path
nlp = spacy.load("en_core_web_sm")
Run Code Online (Sandbox Code Playgroud)
zer*_*ewl 11
您可以whl通过python 包管理器 pip安装下载的 python 文件,例如:
pip install en_core_web_sm-3.1.0-py3-none-any.whl
en_core_web_sm您可以从此页面下载:
https://github.com/explosion/spacy-models/releases/tag/en_core_web_sm-3.1.0
spacy首页的示例看起来很简单,您是否尝试过终端中注释的第一行?来自 spacy 页面的示例:
# pip install -U spacy
# python -m spacy download en_core_web_sm
import spacy
# Load English tokenizer, tagger, parser and NER
nlp = spacy.load("en_core_web_sm")
Run Code Online (Sandbox Code Playgroud)
在 python 中使用之前要在终端中执行的行:
pip install -U spacy
python -m spacy download en_core_web_sm
Run Code Online (Sandbox Code Playgroud)
也许您需要安装整个spacy 包,而不仅仅是一个子包,例如:
pip install -U pip setuptools wheel
pip install spacy
Run Code Online (Sandbox Code Playgroud)
学习 python 的一个很好的起点是阅读一些文档;-) 也许这也有帮助:
也可以在该包的 spacy 文档页面上找到完整的工作示例。注意它使用包版本3.1.0。
import spacy
from spacy.lang.en.examples import sentences
nlp = spacy.load("en_core_web_sm")
doc = nlp(sentences[0])
print(doc.text)
for token in doc:
print(token.text, token.pos_, token.dep_)
Run Code Online (Sandbox Code Playgroud)