Ошибка POS при тегировании в NLTK

I just want to do tagging of POS tags but got some error.

Text=open('news/article.txt') t=Text.read() print t text=nltk.word_tokenize(t); posTagged=nltk.pos_tag(текст) печать posTagged

и получил это:

 Maybe that is why whenever we go to watch any live sport in India they lock us within cages. Thanks to the Cricket Lovers in the Barabati Stadium in Cuttack, this is probably only going to get worse.
    But right now you, the Cricket Lovers at the Barabati Stadium, have a bigger problem to deal with. I hope you realize what you have done. You didn’t just disrupt a game last evening, you may have just ensured you won’t get international cricket in your city. So much for your love!
    Thanks to a bunch of hooligans, every Indian fan has been blackened. We are all hanging our heads in shame. This feeling is far worse than losing just a cricket match.

    Traceback (most recent call last):
      File "C:\Python27\TestProj1.py", line 12, in <module>
        posTagged=nltk.pos_tag(text)
      File "C:\Python27\lib\site-packages\nltk\tag\__init__.py", line 106, in pos_tag
        return tagger.tag(tokens)
      File "C:\Python27\lib\site-packages\nltk\tag\sequential.py", line 61, in tag
        tags.append(self.tag_one(tokens, i, tags))
      File "C:\Python27\lib\site-packages\nltk\tag\sequential.py", line 81, in tag_one
        tag = tagger.choose_tag(tokens, index, history)
      File "C:\Python27\lib\site-packages\nltk\tag\sequential.py", line 634, in choose_tag
        featureset = self.feature_detector(tokens, index, history)
      File "C:\Python27\lib\site-packages\nltk\tag\sequential.py", line 736, in feature_detector
        'prevtag+word': '%s+%s' % (prevtag, word.lower()),
    UnicodeDecodeError: 'ascii' codec can't decode byte 0x92 in position 4: ordinal not in range(128)

Но для некоторых других текстовых файлов он работает отлично. Как это решить?


person Salah    schedule 02.07.2015    source источник
comment
Итак, вы получаете UnicodeDecodeError? Потому что несколько минут назад в вашем вопросе была другая ошибка (извините за путаницу с откатом).   -  person alexis    schedule 06.10.2015
comment
Ваш код NLTK работает нормально, вам просто нужно научиться печатать юникод на вашем терминале (поэтому обычные файлы ascii работают нормально). Это известная тема, но она отличается от вашего предыдущего вопроса.   -  person alexis    schedule 06.10.2015
comment
См. здесь. А еще лучше перейти на Python 3 сегодня.   -  person alexis    schedule 06.10.2015
comment
PS. Я только что увидел даты и понял, что вы делаете: вам нужно было просто задать новый вопрос о вашей новой проблеме, а не редактировать этот давно закрытый.   -  person alexis    schedule 06.10.2015
comment
что такое юникод? Я создал текстовый файл путем копирования и вставки из статьи. Но есть и другие файлы, которые я создал таким же образом, и они работают отлично. Но только в этом случае приходят эти ошибки.   -  person Salah    schedule 06.10.2015
comment
Они запретили мне задавать вопросы в течение 7 дней. @алексис   -  person Salah    schedule 06.10.2015
comment
Кодек ascii не может декодировать байт 0x92 в позиции 4: порядковый номер не в диапазоне (128). что это?   -  person Salah    schedule 06.10.2015
comment
t.decode(англ.). это будет работать я это. что будет действительным обозначением для английского языка. например. t.decode (латиница-1)   -  person Salah    schedule 06.10.2015
comment
Вам запретили задавать вопросы? Этот вопрос был закрыт еще в июле. Я предлагаю вам попытаться устранить причину, а не искать лазейки.   -  person alexis    schedule 06.10.2015
comment
Кто знает, какая кодировка у вашего файла? Скорее всего utf-8. ПРОЧИТАЙТЕ ссылку, которую я предложил, и google python unicode. И переключитесь на Python 3. Поверьте мне: если у вас какое-либо взаимодействие с неанглийскими текстами, нет причин возиться с их обработкой в ​​Python 2.   -  person alexis    schedule 06.10.2015
comment
Спасибо @alexis. Я понял. На самом деле кодирование не является большой проблемой в моем проекте. Что мне нужно, это просто текстовый файл. Это происходило потому, что я копировал и вставлял с разных сайтов. Были какие-то кодировки. Теперь я понял. Большое спасибо.   -  person Salah    schedule 06.10.2015