Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich HTML-Tags effizient aus Strings in Python entfernen?

Wie kann ich HTML-Tags effizient aus Strings in Python entfernen?

Susan Sarandon
Susan SarandonOriginal
2024-12-28 22:26:10916Durchsuche

How Can I Efficiently Strip HTML Tags from Strings in Python?

HTML aus Strings in Python entfernen

Bei der Interaktion mit HTML-Inhalten ist es oft notwendig, den aussagekräftigen Text von den Markup-Tags für zu trennen Weiterverarbeitung oder Analyse. So erreichen Sie dies effizient in Python.

Um HTML-Tags aus einer Zeichenfolge zu entfernen, verwenden Sie den HTMLParser aus der Python-Standardbibliothek. Dieser Parser bietet eine einfache Möglichkeit, HTML-Dokumente zu analysieren und nur den gewünschten Inhalt zu extrahieren.

Verwenden Sie für Python 3 den folgenden Code:

from io import StringIO
from html.parser import HTMLParser

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

def strip_html(html):
    stripper = TagStripper()
    stripper.feed(html)
    return stripper.get_data()

Für Python 2 verwenden Sie den folgenden Code:

from HTMLParser import HTMLParser
from StringIO import StringIO

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

def strip_html(html):
    stripper = TagStripper()
    stripper.feed(html)
    return stripper.get_data()

Lassen Sie uns nun die Verwendung veranschaulichen:

html = "<p>Hello, <em>world</em>!</p>"
stripped_text = strip_html(html)
print(stripped_text)  # Output: Hello, world!

Das obige ist der detaillierte Inhalt vonWie kann ich HTML-Tags effizient aus Strings in Python entfernen?. 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