2012-11-20 12 views
6

To jest mój kod i komunikat o błędzie:błędem przy korzystaniu z Stanford tagger w Pythonie

>>> 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> 
=========================================================================== 

Jak mogę to naprawić? Naprawdę chcę używać tagforda w Pythonie Dziękuję!

Odpowiedz

1
from nltk.tag.stanford import POSTagger 

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

Należy podać pełną ścieżkę dla obu parametrów.

Jeśli to działa, a następnie spróbuj zdanie próbką

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

sprawdź czy masz dodany ścieżkę Stanford Parser do CLASSPATH środowisku zmiennym

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

to powinno działać.

Powiązane problemy