Heim >Backend-Entwicklung >Python-Tutorial >Wie entferne ich HTML-Tags aus Strings in Python?

Wie entferne ich HTML-Tags aus Strings in Python?

Linda Hamilton
Linda HamiltonOriginal
2024-12-04 01:00:11584Durchsuche

How to Remove HTML Tags from Strings in Python?

HTML-Formatierung aus Strings in Python entfernen

Stellen Sie sich die Aufgabe vor, den Inhalt eines HTML-Dokuments zu extrahieren, ohne die Formatierungs-Tags anzuzeigen. Beispielsweise kann das HTML-Element some text sollte nur „etwas Text“ ausgeben und hello sollte „Hallo“ anzeigen.

Lösung

Die integrierte Python-Bibliothek bietet einen nützlichen Mechanismus, um dieses Ziel zu erreichen:

Für Python 3:

from io import StringIO
from html.parser import HTMLParser

class MLStripper(HTMLParser):
    def __init__(self):
        super().__init__()
        self.reset()
        self.strict = False
        self.convert_charrefs= True
        self.text = StringIO()
    def handle_data(self, d):
        self.text.write(d)
    def get_data(self):
        return self.text.getvalue()

def strip_tags(html):
    s = MLStripper()
    s.feed(html)
    return s.get_data()

Für Python 2:

from HTMLParser import HTMLParser
from StringIO import StringIO

class MLStripper(HTMLParser):
    def __init__(self):
        self.reset()
        self.text = StringIO()
    def handle_data(self, d):
        self.text.write(d)
    def get_data(self):
        return self.text.getvalue()

def strip_tags(html):
    s = MLStripper()
    s.feed(html)
    return s.get_data()

Das obige ist der detaillierte Inhalt vonWie entferne ich HTML-Tags aus Strings in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen 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