>백엔드 개발 >파이썬 튜토리얼 >Python의 HTML 문자열에서 텍스트 콘텐츠를 효율적으로 추출하려면 어떻게 해야 합니까?

Python의 HTML 문자열에서 텍스트 콘텐츠를 효율적으로 추출하려면 어떻게 해야 합니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-05 07:41:09762검색

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

Python의 HTML 문자열에서 콘텐츠 추출

Python에서 HTML 데이터로 작업할 때 서식 지정 태그를 제거하고 그대로 유지하는 것이 바람직한 경우가 많습니다. 텍스트 내용만. 이렇게 단순화된 데이터 보기는 텍스트 요약, 자연어 처리 수행 및 기타 작업에 유용할 수 있습니다.

Python에서 이를 수행하는 한 가지 방법은 Python에 내장된 HTML 파서를 활용하는 MLStripper 클래스를 사용하는 것입니다.

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

HTML 콘텐츠를 Strip_tags 함수에 전달하면 텍스트 부분만 쉽게 추출할 수 있습니다. HTML:

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

이 MLStripper 클래스와 Strip_tags 함수는 Python에서 HTML 콘텐츠를 처리하는 편리한 방법을 제공하므로 태그 서식을 지정하는 데 방해가 되지 않고 텍스트 콘텐츠에 집중할 수 있습니다.

위 내용은 Python의 HTML 문자열에서 텍스트 콘텐츠를 효율적으로 추출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.