python - 依赖解析器不工作 - 斯坦福核心 NLP
问题描述
我一直在做一个关于 NLP 的项目,我正在使用斯坦福核心 NLP 库,但它的解析器功能似乎不起作用。我运行代码,它总是挂断,几个小时没有响应。
尝试更改我将目录地址传递给函数的方式,尝试再次重新下载 Stanford Core NLP 文件。
from nltk.tokenize import sent_tokenize
import re
import os
import itertools
from nltk.corpus import wordnet as wn
from stanfordcorenlp import StanfordCoreNLP
import json
sentences = []
sents_clauses = []
def feature_extraction():
print("Directory Access")
os.chdir('C://Users/mohdm/Documents/FYP/stanford-corenlp-full-2018-10-05/')
print("Directory Accessed")
CORE_NLP_DIR = os.getcwd()
print(CORE_NLP_DIR)
print("Setting Parser")
PARSER = StanfordCoreNLP(CORE_NLP_DIR, memory='4g', lang='en')
print("Parser Set")
实际输出:
Code Started
Directory Access
Directory Accessed
C:\Users\mohdm\Documents\FYP\stanford-corenlp-full-2018-10-05
Setting Parser
预期输出:
Code Started
Directory Access
Directory Accessed
C:\Users\mohdm\Documents\FYP\stanford-corenlp-full-2018-10-05
Setting Parser
Parser Set
解决方案
当您在中使用 corenlp 路径时StanfordCoreNLP(CORE_NLP_DIR, memory='4g', lang='en')
,您能否确保服务器已启动?最好以这种方式进行。它将有 corenlp 指向 url:
standfordnlp = StanfordCoreNLP('http://localhost', port=9000)
并在命令行中运行服务器
java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000
推荐阅读
- python - 将我从 API 获得的 JSON 数据转换为 Python 中更可用的数据的问题
- azure - 使用 terraform 在第三个 vm 的 nginx.conf 文件中添加 Web 服务器(vm1&vm2)私有 IP
- node.js - 网络连接错误 - 使用 expo cli 进行本机反应
- python - 当 .exe 文件带有参数时,Subprocess.Popen 返回空字符串
- r - r - 以闪亮的方式打印蜡笔输出颜色
- python - 如何在 django 中的服务器端验证后在客户端显示错误
- python - 网页抓取 - HTTP 错误 403:禁止 - Ziprecruiter
- python - JSON数组到pyspark中的Dataframe
- javascript - 在不使用任何内置数组方法的情况下重新实现/重新创建 .concat 方法
- java - 如何通过 Spark WORKER 节点从 MySQL 读取数据?