2012-11-20 38 views
6

Đây là mã của tôi và thông báo lỗi:Lỗi khi sử dụng stanford tagger trong python

>>> from nltk.tag.stanford import StanfordTagger 
>>> st = StanfordTagger('bidirection-distsim-wsj-0-18.tagger') 

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/nltk/tag/stanford.py", line 42, in __init__ 
    verbose=verbose) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/nltk/internals.py", line 597, in find_jar 
    raise LookupError('\n\n%s\n%s\n%s' % (div, msg, div)) 
LookupError: 

=========================================================================== 
    NLTK was unable to find ! Set the CLASSPATH environment variable. 

    For more information, on , see: 
    <http://nlp.stanford.edu/software> 
=========================================================================== 

Làm thế nào tôi có thể khắc phục điều đó? Tôi thực sự muốn sử dụng tager stanford trong Python Cảm ơn bạn!

Trả lời

1
from nltk.tag.stanford import POSTagger 

st = POSTagger(< path to tagger >, < path to stanford NLP package/stanford-postagger.jar >) 

Bao gồm đường dẫn đầy đủ cho cả hai tham số.

Nếu thành công, sau đó thử một câu mẫu

st.tag('What is the airspeed of an unladen swallow ?'.split()) 

Kiểm tra xem bạn đã thêm con đường Stanford Parser để CLASSPATH biến môi trường

export CLASSPATH = {CLASSPATH}: < path to stanford NLP package > 

này nên làm việc.

Các vấn đề liên quan