ホームページ > バックエンド開発 > Python チュートリアル > Python で文字列から HTML タグを効率的に取り除くにはどうすればよいですか?

Python で文字列から HTML タグを効率的に取り除くにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-28 22:26:10
オリジナル
946 人が閲覧しました

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

Python で文字列から HTML を削除する

HTML コンテンツを操作するとき、意味のあるテキストをマークアップ タグから分離することが必要になることがよくあります。さらなる処理または分析。これを Python で効率的に実現する方法を次に示します。

文字列から HTML タグを削除するには、Python 標準ライブラリの HTMLParser を利用します。このパーサーは、HTML ドキュメントを解析し、必要なコンテンツのみを抽出する簡単な方法を提供します。

Python 3 の場合は、次のコードを使用します。

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()
ログイン後にコピー

Python 2 の場合は、次のコードを使用します。

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()
ログイン後にコピー

それでは、その使用法を説明しましょう:

html = "<p>Hello, <em>world</em>!</p>"
stripped_text = strip_html(html)
print(stripped_text)  # Output: Hello, world!
ログイン後にコピー

以上がPython で文字列から HTML タグを効率的に取り除くにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート