我一直在从事有关NLP的项目,并且我正在使用Stanford Core 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
答案 0 :(得分:0)
在StanfordCoreNLP(CORE_NLP_DIR, memory='4g', lang='en')
中使用corenlp路径时,是否可以确保服务器已启动?
最好采用这种方式。
它将使corenlp指向url:
standfordnlp = StanfordCoreNLP('http://localhost', port=9000)
并在命令行中运行服务器
java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000