Heim >Backend-Entwicklung >Python-Tutorial >Python verarbeitet HTML-Escape-Zeichen

Python verarbeitet HTML-Escape-Zeichen

高洛峰
高洛峰Original
2017-03-01 13:27:572061Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie Python mit HTML-Escape-Zeichen umgeht. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

In letzter Zeit bin ich bei der Verarbeitung von Webseitendaten mit Python häufig auf einige HTML-Escape-Zeichen (auch HTML-Zeichenentitäten genannt) gestoßen, z a8093152e673feb7aba1828c43532094 usw. . Zeichenentitäten werden im Allgemeinen verwendet, um reservierte Zeichen in Webseiten darzustellen, um zu verhindern, dass der Browser denkt, dass es sich um ein Tag handelt. Obwohl sie nützlich sind, können sie die Analyse von Webdaten stark beeinflussen. Um mit diesen maskierten Zeichen umzugehen, gibt es die folgenden Lösungen:

1. Verwenden Sie HTMLParser, um

import HTMLParser
html_cont = " asdfg>123<"
html_parser = HTMLParser.HTMLParser()
new_cont = html_parser.unescape(html_cont)
print new_cont #new_cont = " asdfg>123<"

zu verarbeiten

Zurückkonvertieren (nur Leerzeichen können nicht zurückkonvertiert werden):

import cgi
new_cont = cgi.escape(new_cont)
print new_cont #new_cont = " asdfg>123<"

2.

html_cont = " asdfg>123<"
new_cont = new_cont.replace(&#39; &#39;, &#39; &#39;)
print new_cont #new_cont = " asdfg>123<"
new_cont = new_cont.replace(&#39;>&#39;, &#39;>&#39;)
print new_cont #new_cont = " asdfg>123<"
new_cont = new_cont.replace(&#39;<&#39;, &#39;<&#39;)
print new_cont #new_cont = " asdfg>123<"

Ich weiß nicht, ob es einen besseren Weg gibt.

Darüber hinaus bietet Stackoverflow eine Antwort auf den Umgang mit maskierten Zeichen in XML: Python – Was ist der beste Weg, um -ähnliche Entitäten in XML-Dokumenten mit lxml zu behandeln? – Stack Overflow.


Weitere Artikel zur Verarbeitung von HTML-Escape-Zeichen in Python finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn