Стэнфордский парсер с использованием jpype

когда я пытаюсь использовать синтаксический анализатор Stanford с помощью jpype, я получаю следующую ошибку

Файл "C:\Python26\lib\site-packages\stanford_parser\parser.py", строка 103, в init

self.parser = self.package_lexparser.LexicalizedParser(self.pcfg_model_fname)

Файл "C:\Python26\lib\site-packages\jpype_jpackage.py", строка 55, в вызове

raise TypeError, "Package "+self.__name+" is not Callable"

TypeError: пакет edu.stanford.nlp.parser.lexparser.LexicalizedParser не вызывается


person Julie    schedule 18.07.2011    source источник


Ответы (2)


Я столкнулся с такой же ситуацией. Причиной стал неверный путь.

Верен ли путь к файлу jar?

Чтобы запустить JVM, мы вызываем startJVM(), например

jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % (jar_path),)

Если «jar_path» неверен, он не работает.

person Yuta Hayashibe    schedule 03.01.2012

Прошло много времени с тех пор, как этот вопрос был задан, но все же, если кто-то будет бродить вокруг, у меня когда-то была такая же проблема, и я исправил ее, исправив путь к «stanford-parser.jar». В моем случае (Ubuntu) я исправил эту строку в «parser.py»:

os.environ.setdefault("STANFORD_PARSER_HOME", "../3rdParty/stanford-parser/stanford-parser-2010-08-20")

и ошибка перестала сообщать. Просто убедитесь, что вы указали правильный путь к «stanford-parser.jar» и файлам PCFG.

person Ali    schedule 03.01.2014