Maison >développement back-end >Tutoriel Python >Comment puis-je supprimer efficacement les balises HTML du texte en Python ?

Comment puis-je supprimer efficacement les balises HTML du texte en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-19 22:42:16519parcourir

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

Supprimer les balises HTML en Python pour une représentation textuelle impeccable

La manipulation des réponses HTML implique souvent l'extraction du contenu textuel pertinent tout en éliminant les balises de formatage. Ceci peut être réalisé en supprimant efficacement les balises HTML, vous laissant avec le texte brut souhaité.

Réaliser une extraction de texte uniquement avec MLStripper de Python

Pour rationaliser le processus de suppression, la bibliothèque standard Python fournit une fonction efficace, MLStripper, conçue spécifiquement à cet effet. MLStripper prend les entrées HTML et les analyse, en préservant uniquement le contenu non balisé.

Implémentation pour Python 3 et 2

En fonction de votre version de Python, vous pouvez utiliser les éléments suivants extraits de code :

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

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

Utilisation :

Appelez simplement les strip_tags fonction passant l’entrée HTML comme argument de chaîne. La valeur renvoyée sera une chaîne supprimée avec toutes les balises HTML supprimées.

Cette technique s'avère inestimable lorsque vous devez travailler avec des données textuelles extraites de sources HTML, garantissant une représentation textuelle claire et gérable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn