Python에서 HTML 태그를 제거하는 방법

PHPz
풀어 주다: 2023-04-27 16:41:50
원래의
2154명이 탐색했습니다.

웹 콘텐츠를 자주 다루는 경우 웹 페이지를 크롤링하고 거기에서 텍스트 콘텐츠를 추출해야 할 수도 있습니다. 그러나 HTML 코드의 태그와 스타일 정보로 인해 텍스트 처리가 상당히 어려워질 수 있습니다. 이 경우 Python 프로그래밍 언어는 HTML 태그를 제거하는 몇 가지 유용한 기능과 라이브러리를 제공하므로 텍스트를 더 쉽게 처리하고 사용할 수 있습니다.

Python은 HTML 태그를 제거하기 위해 일반적으로 사용되는 두 가지 라이브러리인 re와 BeautifulSoup를 제공합니다. 여기서는 이 두 라이브러리를 각각 사용하여 HTML 태그를 제거하는 방법을 알아봅니다.

re 라이브러리 사용

Python의 re(정규 표현식) 라이브러리에는 강력한 문자열 처리 기능이 있습니다. 이 라이브러리의 몇 가지 방법을 사용하여 HTML 태그를 제거할 수 있습니다. 특히 re.sub() 함수를 사용하여 HTML 태그를 대체할 수 있습니다. 예를 살펴보겠습니다.

import re

def remove_tags(text):
    TAG_RE = re.compile(r'<[^>]+>')
    return TAG_RE.sub('', text)

html = '<html><head><title>Test</title></head><body><h1>Parse me!</h1></body></html>'
print(remove_tags(html))
로그인 후 복사

출력:

Test Parse me!
로그인 후 복사
로그인 후 복사

위 코드에서 re.compile() 함수는 '<1+>'을 사용하여 정규식 객체를 생성하는 데 사용됩니다. 태그. 그런 다음 이 정규식 개체를 re.sub() 함수에 대한 매개 변수로 전달합니다. 이 함수는 일치하는 모든 태그를 빈 문자열로 바꿉니다. 마지막으로 HTML 태그가 제거된 텍스트로 함수를 호출합니다.

간단한 HTML 텍스트를 처리하려면 re 라이브러리를 사용하는 것만으로도 충분할 수 있지만 복잡한 HTML 텍스트를 처리하는 경우 CSS 스타일 및 JavaScript 스크립트 처리를 고려하기 시작하면 처리가 더 어려워진다는 것을 알게 될 것입니다. 이 경우 BeautifulSoup 라이브러리를 사용할 수 있습니다.

BeautifulSoup 라이브러리 사용

BeautifulSoup 라이브러리를 사용하면 HTML 텍스트를 더 쉽게 처리할 수 있으며 re 라이브러리보다 더 유연합니다. BeautifulSoup은 HTML 텍스트를 구문 분석하는 데 도움이 되며 태그, 클래스 등과 같은 특정 요소를 선택할 수 있게 해줍니다. 이를 사용하여 모든 태그를 제거한 다음 텍스트 내용을 추출할 수 있습니다.

예는 다음과 같습니다.

from bs4 import BeautifulSoup

def remove_tags(text):
    soup = BeautifulSoup(text, 'html.parser')
    return soup.get_text()

html = '<html><head><title>Test</title></head><body><h1>Parse me!</h1></body></html>'
print(remove_tags(html))
로그인 후 복사

출력:

Test Parse me!
로그인 후 복사
로그인 후 복사

위 코드에서는 구문 분석을 위해 HTML 텍스트를 BeautifulSoup() 함수에 전달합니다. 그런 다음 HTML 태그를 무시하고 Soup.get_text() 메서드를 사용하여 텍스트 콘텐츠를 추출합니다.

요약

re 라이브러리를 사용하든 BeautifulSoup 라이브러리를 사용하든 Python은 HTML 태그를 제거하는 다양한 방법을 제공합니다. 간단한 HTML 텍스트를 다루는 경우 re 라이브러리를 사용하세요. 더 복잡한 HTML 텍스트의 경우 BeautifulSoup 라이브러리를 사용하면 처리가 훨씬 쉬워집니다. 어떤 방법을 선택하든 정규식에 익숙하고 선택한 라이브러리의 구문을 이해해야 합니다.


  1. >

위 내용은 Python에서 HTML 태그를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿