我无法执行以下行,错误是
"UnicodeDecodeError: 'ascii' codec can't decode byte 0xcb in position 0: ordinal not in range(128)"
文件“D:\ Py 64 \ anaconda \ lib \ site-packages \ nltk \ tag__init __。py”,第100行,位于pos_tag tagger = load(_POS_TAGGER)
文件“D:\ Py 64 \ anaconda \ lib \ site-packages \ nltk \ data.py”,第779行,载入中 resource_val = pickle.load(opened_resource,encoding ='iso-8859-1')
我的错误不仅存在于data.py中,还存在于 init .py中。
注意: - 我已经更改了data.py,第779行中的代码here
text = word_tokenize("They refuse to permit us to obtain the refuse permit")
nltk.pos_tag(text)
答案 0 :(得分:0)
我认为使用nltk 3.0.3和最新的maxent_treebank_pos_tagger
模型可以修复此问题。
要安装nltk,请使用
pip install -U nltk
确保the pip you are calling is for Python3。
安装nltk后,打开Python3解释器,输入:
>>> import nltk
>>> nltk.download()
并使用GUI安装maxent_treebank_pos_tagger
。它位于models
标签下:
models > maxent_treebank_pos_tagger