Кодировать Декодировать строки python

У меня есть список html-страниц, которые могут содержать определенные закодированные символы. Вот несколько примеров:

<a href="mailto:lad%20at%20maestro%20dot%20com">
<em>ada&#x40;graphics.maestro.com</em>
<em>mel&#x40;graphics.maestro.com</em>

Я хотел бы декодировать (экранировать, я не уверен в текущей терминологии) эти строки в:

 <a href="mailto:lad at maestro dot com">
<em>ada@graphics.maestro.com</em>
<em>mel@graphics.maestro.com</em>

Обратите внимание, HTML-страницы имеют строковый формат. Кроме того, я НЕ хочу использовать какие-либо внешние библиотеки, такие как BeautifulSoup или lxml, подходят только собственные библиотеки Python.

Изменить-

Приведенное ниже решение не идеально. Парсер HTML, отменяющий экранирование с помощью urllib2, в некоторых случаях выдает ошибку

UnicodeDecodeError: 'ascii' codec can't decode byte 0x94 in position 31: ordinal not in range(128)

.

7
задан Dexter 25 March 2012 в 01:15
поделиться