Стэнфордский парсер все еще не может найти - PullRequest
0 голосов
/ 15 марта 2019

Я скачал два файла с именем 1) Stanford-parser-python-r22186.tar 2) stanford-english-corenlp-2018-10-05-models

Я создал папку с именем 'jars'в C: / Users / Arsalan / AppData / Local / Programs / Python / Python37 / ЗАГРУЖЕННЫЕ МОДУЛИ / jars

Теперь я извлек файл 1 и файл 2 в папку jars.Затем найдите «englishPCFG.ser», который находится в C: / Users / Arsalan / AppData / Local / Programs / Python / Python37 / ЗАГРУЖЕННЫЕ МОДУЛИ / jars / edu / stanford / nlp / models / lexparser / englishPCFG.ser

Я создал переменные окружения 1) CLASSPATH в C: / Users / Arsalan / AppData / Local / Programs / Python / Python37 / ЗАГРУЖЕННЫЕ МОДУЛИ / jars 2) STANFORD_MODELS в C: / Users / Arsalan / AppData / Local / Programs / Python /Python37 / СКАЧАТЬ МОДУЛИ / jars 3) STANFORD_PARSER на C: / Users / Arsalan / AppData / Local / Programs / Python / Python37 / DOWNLOADED MODULES / jars, и я также добавил все 3 переменные среды в path.

IПолагаю, я сделал все необходимое для запуска анализатора Standford.Ниже приведен код.

import os
from nltk.parse import stanford
os.environ['STANFORD_PARSER'] = 'C:/Users/Arsalan/AppData/Local/Programs/Python/Python37/DOWNLOADED MODULES/jars'
os.environ['STANFORD_MODELS'] = 'C:/Users/Arsalan/AppData/Local/Programs/Python/Python37/DOWNLOADED MODULES/jars'
parser = stanford.StanfordParser(model_path="C:/Users/Arsalan/AppData/Local/Programs/Python/Python37/DOWNLOADED MODULES/jars/edu/stanford/nlp/models/lexparser/englishPCFG.ser")
sentences = parser.raw_parse_sents(("Hello, My name is Melroy.", "What is your name?"))
print(sentences)

Результат был бы верным, но я получаю

Предупреждение (из модуля предупреждений): Файл "C: \ Users \ Arsalan \ AppData \Local \ Programs \ Python \ Python37 \ МОИ РАБОЧИЕ ФАЙЛЫ \ nltk test.py ", строка 186 parser = stanford.StanfordParser (model_path =" C: / Users / Arsalan / AppData / Local / Programs / Python / Python37 / СКАЧАТЬ МОДУЛИ / jars/edu/stanford/nlp/models/lexparser/englishPCFG.ser ") DeprecationWarning: StanfordParser устареет. Вместо этого используйте [91mnltk.parse.corenlp.CoreNLPParser [0m.Трассировка (последний вызов был последним): Файл "C: \ Users \ Arsalan \ AppData \ Local \ Programs \ Python \ Python37 \ МОИ РАБОЧИЕ ФАЙЛЫ \ nltk test.py", строка 186, в parser = stanford.StanfordParser (model_path = "C: / Users / Arsalan / AppData / Local / Программы / Python / Python37 / ЗАГРУЖАЕМЫЕ МОДУЛИ / jars / edu / stanford / nlp / models / lexparser / englishPCFG.ser ")
Файл" C: \ Users \ Arsalan \ AppData\ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ nltk \ parse \ stanford.py ", строка 342, в init super (StanfordParser, self). init (* args, ** kwargs) Файл "C: \ Users \ Arsalan \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ nltk \ parse \ stanford.py", строка 67, в init key = lambda model_path: os.path.dirname (model_path), файл "C: \ Users \ Arsalan \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ nltk \ internals.py", строка 839, в find_jar_iter поднять LookupError ('\ n \ n% s \ n% s \ n% s'% (div, msg, div)) LookupError:

=========================================================================== НЛТК был UnaБле, чтобы найти stanford-parser.jar!Установите переменную среды CLASSPATH
.

Для получения дополнительной информации о stanford-parser.jar см.

https://nlp.stanford.edu/software/lex-parser.shtml

.делать.Спасибо, что помогли мне заранее.

...