Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 14, 2011 20:53:58

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

html-кодировка

Чем в стандартной библиотеке перевести html-кодировку (& # 1054; & # 1075; & # 1083;) в нормальный юникод?



Отредактировано (Июнь 14, 2011 20:55:58)

Офлайн

#2 Июнь 14, 2011 21:53:10

pill
От:
Зарегистрирован: 2010-08-27
Сообщения: 223
Репутация: +  0  -
Профиль   Отправить e-mail  

html-кодировка

>>> print unichr(1054)
О
>>> print unichr(1075)
г
>>> print unichr(1083)
л



Офлайн

#3 Июнь 14, 2011 21:54:53

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

html-кодировка

Стыдно :(
Спасибо.

Хотя хотелось бы автоматический способ…



Офлайн

#4 Июнь 14, 2011 22:02:03

pill
От:
Зарегистрирован: 2010-08-27
Сообщения: 223
Репутация: +  0  -
Профиль   Отправить e-mail  

html-кодировка

Да я сам не знал ), Гугл подсказал.
А насчет автоматики в HTMLparser есть метод заглушка http://docs.python.org/library/htmlparser.html#HTMLParser.HTMLParser.handle_entityref
можно попробовать поиграться.



Офлайн

#5 Июнь 15, 2011 23:00:30

ZAN
От:
Зарегистрирован: 2007-06-10
Сообщения: 403
Репутация: +  10  -
Профиль   Отправить e-mail  

html-кодировка

>>> class MyParser(HTMLParser):
def handle_charref(self, name):
print(unichr(int(name)))

>>> txt = """
<html>
<body>& #1054; &#1075 ; &# 1083;
</body>
</html>"""
>>> parser = MyParser()
>>> parser.feed(txt)
О
г
л



Отредактировано (Июнь 15, 2011 23:06:56)

Офлайн

#6 Июнь 15, 2011 23:07:37

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

html-кодировка

спасибо :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version