Я написал графический интерфейс, который позволяет вводить на японском языке, и когда вы идете в файл> parse пишет в текстовый файл. Этот текстовый файл затем запускается через MeCab, где между словами ставятся пробелы. После этого он должен быть снова записан в текстовый файл, чтобы его можно было отобразить в другом окне графического интерфейса.
Проблема в том, что я не хочу записывать проанализированные данные в текстовый файл. Это не проблема писать это в первый раз. Кроме того, он выводит разобранную информацию на IDLE, также не проблема. Вот парсер и ошибка:
#!/usr/bin/python
# -*- coding: <utf-8> -*-
import sys
import MeCab
import codecs
read_from = open("pholder.txt").read()
mecab = MeCab.Tagger("-Owakati")
output = mecab.parse(read_from)
print output
text = output
write_to = codecs.open("pholder.txt", "w", "utf-8")
write_to.write(text)
write_to.close()
Traceback (most recent call last):
File "C:\...\mecabSpaces.py", line 16, in <module>
write_to.write(text)
File "C:\...\codecs.py", line 691, in write
return self.writer.write(data)
File "C:\...\codecs.py", line 351, in write
data, consumed = self.encode(object, self.errors)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128)