Кодек 'ascii' не может кодировать символ в позиции * или вне диапазона (128)
В stackoverflow есть несколько потоков, но я не смог найти правильного решения проблемы в целом.
Я собрал огромные суммы текстовых данных из функции чтения urllib и сохранил их в файлах pickle.
Теперь я хочу записать эти данные в файл. Во время записи я получаю ошибки, похожие на -
'ascii' codec can't encode character u'\u2019' in position 16: ordinal not in range(128)
и много данных теряется.
Я полагаю, что данные из прочитанного urllib являются байтовыми данными
я пробовал
1. text=text.decode('ascii','ignore')
2. s=filter(lambda x: x in string.printable, s)
3. text=u''+text
text=text.decode().encode('utf-8')
но все же я заканчиваю с подобными ошибками. Может кто-нибудь указать правильное решение. А также бы кодеки лишить работы. У меня нет проблем, если конфликтующие байты не записываются в файл в виде строки, следовательно, потеря принимается.