2012-11-20 23 views
6

यह मेरा कोड और त्रुटि संदेश है:त्रुटि जब अजगर में स्टैनफोर्ड टैगर का उपयोग

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

मुझे लगता है कि कैसे तय कर सकते हैं? मैं वास्तव में पायथन में स्टैनफोर्ड टैगर का उपयोग करना चाहता हूं धन्यवाद!

उत्तर

1
from nltk.tag.stanford import POSTagger 

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

दोनों पैरामीटर के लिए पूरा पथ शामिल करें।

अगर वह काम करता है, तो एक नमूना वाक्य

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

चेक, अगर आप CLASSPATH वातावरण चर

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

यह काम करना चाहिए करने के लिए स्टैनफोर्ड पार्सर पथ को शामिल किया है की कोशिश करो।