[python] 파이썬 BeautifulSoup으로 텍스트 추출하기

웹 스크래핑은 인터넷에서 데이터를 수집하고 분석하기 위해 매우 유용한 기술입니다. 파이썬의 BeautifulSoup 라이브러리는 웹 스크래핑 작업을 쉽게 만들어주는 도구입니다. 이번 블로그 포스트에서는 BeautifulSoup을 사용하여 텍스트 데이터를 추출하는 방법에 대해 알아보겠습니다.

BeautifulSoup 설치하기

먼저, BeautifulSoup을 설치해야 합니다. 이를 위해서는 pip 명령어를 사용하여 아래와 같이 설치할 수 있습니다.

pip install beautifulsoup4

HTML 데이터 가져오기

BeautifulSoup을 사용하기 전에 웹 페이지의 HTML 데이터를 가져와야 합니다. 이를 위해서는 requests 라이브러리를 사용할 수 있습니다.

import requests

url = "http://www.example.com"
response = requests.get(url)
html_data = response.text

BeautifulSoup으로 텍스트 추출하기

이제 BeautifulSoup을 사용하여 HTML에서 텍스트를 추출할 수 있습니다. 먼저 BeautifulSoup 객체를 생성하고, HTML 데이터를 넣어줍니다.

from bs4 import BeautifulSoup

soup = BeautifulSoup(html_data, "html.parser")

다음으로, 원하는 텍스트를 추출하기 위해 HTML 요소를 선택해야 합니다. find() 또는 find_all() 메서드를 사용하여 요소를 찾을 수 있습니다.

# 단일 요소 찾기
title = soup.find("h1").text

# 여러 요소 찾기
paragraphs = soup.find_all("p")

위의 예시에서는 h1 요소를 찾아 태그의 텍스트를 추출하고, p 태그의 모든 텍스트를 추출합니다.

결과 확인하기

이제 추출한 텍스트를 출력해보겠습니다.

print(title)

for paragraph in paragraphs:
    print(paragraph.text)

출력 결과는 추출한 텍스트 값들입니다.

마무리

이번에는 BeautifulSoup을 사용하여 웹 페이지에서 텍스트를 추출하는 방법을 알아보았습니다. BeautifulSoup은 웹 스크래핑 작업을 간단하게 만들어주는 강력한 도구입니다. 이를 통해 다양한 웹 데이터를 수집하고 분석할 수 있습니다.

더 많은 기능과 사용법은 BeautifulSoup 공식 문서를 참조하시기 바랍니다.