Heim >Backend-Entwicklung >Python-Tutorial >Python verarbeitet HTML-Escape-Zeichen
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(' ', ' ') print new_cont #new_cont = " asdfg>123<" new_cont = new_cont.replace('>', '>') print new_cont #new_cont = " asdfg>123<" new_cont = new_cont.replace('<', '<') 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.