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

Wie kann ich Textinhalte effizient aus HTML-Strings in Python extrahieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-05 07:41:09763Durchsuche

How Can I Efficiently Extract Text Content from HTML Strings in Python?

Inhalt aus HTML-Strings in Python extrahieren

Bei der Arbeit mit HTML-Daten in Python ist es oft wünschenswert, die Formatierungs-Tags zu entfernen und beizubehalten nur der Textinhalt. Diese vereinfachte Ansicht der Daten kann zum Zusammenfassen von Text, zur Verarbeitung natürlicher Sprache und für andere Aufgaben nützlich sein.

Eine Möglichkeit, dies in Python zu erreichen, ist die MLStripper-Klasse, die den integrierten HTML-Parser von Python nutzt.

# For 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()
# For 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()

Durch die Übergabe von HTML-Inhalt an die Funktion „strip_tags“ können Sie ganz einfach nur die Textteile von extrahieren HTML:

cleaned_content = strip_tags("<b>Hello</b> world")
# Prints "Hello world"

Diese MLStripper-Klasse und die Funktion „strip_tags“ bieten eine praktische Möglichkeit, HTML-Inhalte in Python zu verarbeiten, sodass Sie sich auf den Textinhalt konzentrieren können, ohne durch Formatierungs-Tags abgelenkt zu werden.

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