返回信息流需要分析句法,于是就尝试安装stanfordparser,但是这个过程太心酸了
python3,已安装了nltk
但在安装stanfordparser时出现很大问题
[1]用import nltk
nltk.download()
卡住了,只能换其他方法安装
[2]直接下载了stanfordparser
但在实际用例子操作时出现问题
代码:
import os
import nltk
from nltk.parse import stanford
os.environ['STANFORD_PARSER'] = 'C:/Users/Administrator/AppData/Roaming/nltk_data/jars/stanford-parser.jar'
os.environ['STANFORD_MODELS'] = 'C:/Users/Administrator/AppData/Roaming//nltk_data/jars/stanford-parser-3.6.0-models.jar'
nltk.internals.config_java("C:/Program Files/Java/jdk1.8.0_31/bin/java.exe")
#java_path = "C:/Program Files/Java/jdk1.8.0_31/bin/java.exe"
#os.environ['JAVAHOME'] = java_path
parser = stanford.StanfordParser(model_path="C://Users//Administrator//AppData//Roaming//nltk_data//jars//stanford-parser-3.6.0-models//edu//stanford//nlp//models//lexparser//englishPCFG.ser.gz")
sentences = parser.raw_parse_sents(("Hello, My name is Melroy.", "What is your name?"))
print(sentences)
# GUI
for line in sentences:
for sentence in line:
sentence.draw()
出现问题:
File "C:\Users\Administrator\Anaconda3\lib\site-packages\nltk\internals.py", line 134, in java
raise OSError('Java command failed : ' + str(cmd))
OSError: Java command failed : ['C:/Program Files/Java/jdk1.8.0_31/bin/java.exe', '-mx1000m', '-cp', 'C:/Users/Administrator/AppData/Roaming/nltk_data/jars/stanford-parser.jar;C:/Users/Administrator/AppData/Roaming//nltk_data/jars/stanford-parser-3.6.0-models.jar', 'edu.stanford.nlp.parser.lexparser.LexicalizedParser', '-model', 'C://Users//Administrator//AppData//Roaming//nltk_data//jars//stanford-parser-3.6.0-models//edu//stanford//nlp//models//lexparser//englishPCFG.ser.gz', '-sentences', 'newline', '-outputFormat', 'penn', '-encoding', 'utf8', 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\tmpvlsov9it']
实在不知道怎么办,求大牛帮忙分析一下。
这是一条镜像帖。来源:北邮人论坛 / python / #13047同步于 2016/4/1
Python机器人发帖
求问使用nltk和stanfordparser问题
zyf123
2016/4/1镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。