Невозможно декодировать числовые объекты html в Python 3.4

Я использую Python 3.4 для Windows. Я нашел это решение в SO:

import html
print(html.unescape('&#pound;682'))

Тем не менее, это не работает и не работает с числовым кодированным значением: £

import html
print(html.unescape('£682'))

Ошибка:

UnicodeEncodeError: кодек 'charmap' не может кодировать символ '\xa3' в позиции 0: сопоставление символов с ‹undefined›

Обновлять

Благодаря Кевину я нашел это полезным:

print(html.unescape('£682m'.encode(sys.stdout.encoding, errors='replace'))) 

еще одна ошибка:

TypeError: 'str' не поддерживает интерфейс буфера Что еще я могу попробовать его декодировать?


person Igor Savinkin    schedule 09.11.2015    source источник
comment
У меня это работает, используя Python 3.5 в Arch Linux.   -  person Casimir Crystal    schedule 09.11.2015
comment
@KevinGuan, мне не хватает какой-нибудь библиотеки?   -  person Igor Savinkin    schedule 09.11.2015
comment
Ну, я нашел этот вопрос. Возможно проблема в кодировке.   -  person Casimir Crystal    schedule 09.11.2015
comment
@KevinGuan, print (sys.stdout.encoding) возвращает cp866. Могу/должен ли я его изменить?   -  person Igor Savinkin    schedule 09.11.2015
comment
На самом деле я не знаю, просто скажу, что я нашел вопрос с той же проблемой.   -  person Casimir Crystal    schedule 09.11.2015
comment
В Windows лучше всего записать его в файл (используйте utf-8 для кодировки). Командная строка Windows и кодировки не являются хорошими друзьями.   -  person MKesper    schedule 09.11.2015