2016-03-03 73 views
0

當我有textblob圖書館工作了一段時間正常,但決定安裝(使用easy_install的)附加庫(page here)聲稱更快,更準確的標記。錯誤使用python textblob庫惡搞

我無法得到它的工作,所以我卸載它,但它似乎已經在TextBlob標籤化功能混亂。我已經使用pip和easy_install卸載並重新安裝nltk和TextBlob多次,並確保它們是最新的。

下面是一個簡單的腳本,其產生錯誤的例子:

from textblob import TextBlob 

blob = TextBlob("This is a sentence") 
print repr(blob.tags) 

和印刷錯誤:

Traceback (most recent call last): 
    File "tesst.py", line 5, in <module> 
    print repr(blob.tags) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\textblob\decorators.py", line 24, in __get__ 
    value = obj.__dict__[self.func.__name__] = self.func(obj) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\textblob\blob.py", line 445, in pos_tags 
    for word, t in self.pos_tagger.tag(self.raw) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\textblob\decorators.py", line 35, in decorated 
    return func(*args, **kwargs) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\textblob\en\taggers.py", line 34, in tag 
    tagged = nltk.tag.pos_tag(text) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\nltk\tag\__init__.py", line 110, in pos_tag 
    tagger = PerceptronTagger() 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\nltk\tag\perceptron.py", line 141, in __init__ 
    self.load(AP_MODEL_LOC) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\nltk\tag\perceptron.py", line 209, in load 
    self.model.weights, self.tagdict, self.classes = load(loc) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\nltk\data.py", line 801, in load 
    opened_resource = _open(resource_url) 
    File "C:\Users\Emmet\Anaconda\lib\site-packages\nltk\data.py", line 924, in _open 
    return urlopen(resource_url) 
    File "C:\Users\Emmet\Anaconda\lib\urllib2.py", line 154, in urlopen 
    return opener.open(url, data, timeout) 
    File "C:\Users\Emmet\Anaconda\lib\urllib2.py", line 431, in open 
    response = self._open(req, data) 
    File "C:\Users\Emmet\Anaconda\lib\urllib2.py", line 454, in _open 
    'unknown_open', req) 
    File "C:\Users\Emmet\Anaconda\lib\urllib2.py", line 409, in _call_chain 
    result = func(*args) 
    File "C:\Users\Emmet\Anaconda\lib\urllib2.py", line 1265, in unknown_open 
    raise URLError('unknown url type: %s' % type) 
urllib2.URLError: <urlopen error unknown url type: c> 

可以看到,該錯誤實際上提到感知標記器。有什麼方法可以更徹底地刪除可能存在的替代標記器的引用?

另外請注意,只有「標籤」功能受到了影響。

回答

0

我發現爲什麼我在ap tagger中遇到了問題。 My issue is solved here.更具體地說,由註釋「另一種選擇是安裝NLTK,然後更改‘從textblob.packages導入NLTK’到‘進口NLTK’[在taggers.py]文件。」

(注意,這並不對應於上述錯誤信息:該錯誤被上來而不aptagger安裝我正在另一個錯誤它安裝,而這是該溶液。)