Я извлекаю данные из документа Google, обрабатываю их и записываю в файл (который в конечном итоге я вставлю на страницу Wordpress).
Он имеет некоторые символы, отличные от ASCII. Как я могу безопасно преобразовать их в символы, которые можно использовать в исходном HTML?
Сейчас я конвертирую все в Unicode по пути, объединяю все вместе в строку Python, а затем выполняю:
import codecs
f = codecs.open('out.txt', mode="w", encoding="iso-8859-1")
f.write(all_html.encode("iso-8859-1", "replace"))
В последней строке есть ошибка кодирования:
UnicodeDecodeError: кодек 'ascii' не может декодировать байт 0xa0 в позиции
Я извлекаю данные из документа Google, обрабатываю их и записываю в файл (который в конечном итоге я вставлю на страницу Wordpress).
Он содержит некоторые символы, отличные от ASCII. Как я могу безопасно преобразовать их в символы, которые можно использовать в исходном HTML?
В настоящее время я конвертирую все в Unicode по пути, объединяю все вместе в строку Python, а затем выполняю:
import codecs f = codecs.open('out.txt', mode="w", encoding="iso-8859-1") f.write(all_html.encode("iso-8859-1", "replace"))
Ошибка кодирования в последней строке:
UnicodeDecodeError: кодек 'ascii' не может декодировать байт 0xa0 в позиции
Я извлекаю данные из документа Google, обрабатываю их и записываю в файл (который в конечном итоге я вставлю на страницу Wordpress).
Он содержит некоторые символы, отличные от ASCII. Как я могу безопасно преобразовать их в символы, которые можно использовать в исходном HTML?
Сейчас я конвертирую все в Unicode по пути, объединяю все вместе в строку Python, а затем выполняю:
import codecs f = codecs.open('out.txt', mode="w", encoding="iso-8859-1") f.write(all_html.encode("iso-8859-1", "replace"))
В последней строке есть ошибка кодирования:
UnicodeDecodeError: кодек 'ascii' не может декодировать байт 0xa0 в позиции 12286: порядковый номер не в диапазоне (128)
Частичное решение:
Этот Python работает без ошибок:
row = [unicode(x.strip()) if x is not None else u'' for x in row] all_html = row[0] + "<br/>" + row[1] f = open('out.txt', 'w') f.write(all_html.encode("utf-8"))
Но затем, если я открываю фактический текстовый файл, я вижу множество символов, например:
Qur’an
Может быть, я нужно писать не в текстовый файл?