Шаг 242.
Основы языка Python.
Взаимодействие с Интернетом. Разбор HTML-эквивалентов

    На этом шаге мы рассмотрим средства работы со спецсимволами.

    В языке HTML некоторые символы являются специальными - например, знаки "меньше" (<) и "больше" (>), кавычки и др. Для отображения специальных символов служат так называемые HTML-эквиваленты. При этом знак "меньше" заменяется последовательностью &lt;, а знак "больше"- &gt;. Манипулировать HTML-эквивалентами позволяют следующие функции из модуля xml.sax.saxutils:

    Для замены символов <, > и & HTML-эквивалентами также можно воспользоваться функцией escape (<Строка>[, <Флаг>]) из модуля html. Если во втором параметре указано значение False, двойные кавычки и апострофы не будут заменяться HTML-эквивалентами. А функция unescape (<Строка>), объявленная в том же модуле и поддерживаемая, начиная с Python 3.4, выполняет обратную операцию - замену HTML-эквивалентов соответствующими им символами.

>>> import html
>>> html.escape ("""&<>"' """)
'&amp;&lt;&gt;&quot;&#x27;'
>>> html.escape ("""&<>"' """, False)
'&amp;&lt;&gt;"\' '
>>> html.unescape ('&amp;&lt;&gt;&quot;&#x27; ')
'&<>"\' '
>>> html.unescape ('&amp;&lt;&gt;"\' ')
'&<>"\' '

    На следующем шаге мы рассмотрим обмен данными по протоколу HTTP.




Предыдущий шаг Содержание Следующий шаг