Кодирование текста для Kindle с помощью Python

По сути, я сканирую текст с веб-страницы с помощью python с помощью Beautifulsoup, затем сохраняю его как HTML и отправляю на свой Kindle в виде почтового вложения. Проблема в; Kindle поддерживает кодировку Latin1 (ISO-8859-1), однако текст, который я анализирую, включает символы, которые не являются частью Latin1. Поэтому, когда я пытаюсь закодировать текст как Latin1, Python выдает следующую ошибку из-за недопустимых символов:

UnicodeEncodeError: кодек 'latin-1' не может кодировать символ u'’' в позиции 17: порядковый номер не в диапазоне (256)

Когда я пытаюсь закодировать его как UTF-8, на этот раз скрипт работает отлично, но Kindle заменяет некоторые несовместимые символы тарабарщиной.


person user1599986    schedule 31.08.2015    source источник
comment
Может быть, вам следует опубликовать код, если вы хотите, чтобы мы помогли вам его исправить.   -  person Daniel Roseman    schedule 31.08.2015
comment
Какую версию Киндла вы используете? Похоже, что Unicode поддерживается начиная с версии 3 (см. здесь).   -  person lenz    schedule 31.08.2015


Ответы (1)


Используйте 1_

Ранее я использовал <meta charset="UTF-8" />, который, похоже, не работал.

person Daniel Apt    schedule 27.09.2020