python - Wie kann ich „<abc>' automatisch maskieren, wenn ich unter Python3 auf solche HTML-Escape-Zeichen stoße?
typecho
typecho 2017-06-12 09:27:01
0
1
979

Ich bin neu in Python. Als ich den Scray-Crawler benutzte, bin ich auf die Sonderzeichen von HTML gestoßen, also habe ich die Dokumentation auf Baidu durchsucht:

import HTMLParser
html_parser = HTMLParser.HTMLParser()
s = '&l t;abc&g t;&nbs p;' #Es wird ein Leerzeichen gelassen, um das Escapen von Webseiten zu vermeiden
s = html_parser.unescape(s)

Laufzeitaufforderung:
import markupbase
ImportError: Kein Modul namens „markupbase“


Mit Hilfe von Übersetzungssoftware habe ich die zweite Methode gefunden, indem ich die offizielle HTMLParser-Dokumentation gelesen habe

aus html.parser HTMLParser importieren

Klasse MyHTMLParser(HTMLParser):

def handle_data(self, data):
    print(data)
    return data

parser = MyHTMLParser()
s = '&l t;abc&g t;&nbs p;'
Die zweite Methode wurde erfolgreich getestet, aber das Problem besteht darin, dass der Rückgabedatensatz ungültig ist?

Entschuldigung, gibt es eine Lösung, um mit nur wenigen Codezeilen zu entkommen? Wie kann ich einen Rückgabewert erhalten?
typecho
typecho

Following the voice in heart.

Antworte allen(1)
某草草
from html.parser import HTMLParser
html_parser = HTMLParser()
s = '<abc> '
txt = html_parser.unescape(s)
print(txt)
# 结果:<abc>
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!