IT/Python

[Python] BeautifulSoup을 이용한 웹 스크래핑 기초

멋진 선배 2025. 1. 14. 04:00
반응형

파이썬의 강력한 웹 스크레핑 라이브러리인 BeautifulSoup의 기초에 대해서 알아보겠습니다.

BeautifulSoup란?

BeautifulSoup는 HTML 및 XML 파일에서 데이터를 추출하기 위한 파이썬 라이브러리 입니다.

웹 페이지의 복잡한 구조를 파싱하고 원하는 정보를 쉽게 추출 할 수 있게 해줍니다.

설치 방법

BeautifulSoup을 사용하기 위해서는 먼저 설치가 필요합니다. 다음 명령어를 터미널에서 실행하세요.

pip install beautifulsoup4

기본사용법

1.라이브러리 임포트

from bs4 import BeautifulSoup
import requests

 

2.웹페이지 가져오기

url = 'https://example.com'
response = requests.get(url)
html = response.text

 

3.BeautifulSoup 객체 생성

soup = BeautifulSoup(html, 'html.parser')

데이터 추출하기

BeautifulSoup은 다양한 방법으로 HTML 요소를 선택하고 데이터를 추출할 수 있습니다.

 

1.find() 메소드 사용

특정 태그의 첫 번째 요소를 찾습니다.

title = soup.find('title')
print(title.text)

 

2.find_all() 메소드 사용

특정 태그의 모든 요소를 찾습니다.

paragraphs = soup.find_all('p')
for p in paragraphs:
    print(p.text)

 

3.CSS 선택자 사용

content = soup.select('div.content')

실제 예제 : 네이버 뉴스 제목 스크래핑

다음은 네이버 뉴스의 제목을 스크래핑하는 간단한 예제 입니다.

실행 결과

import requests
from bs4 import BeautifulSoup

url = 'https://zhouse2020.tistory.com/16'
response = requests.get(url)
html = response.text

soup = BeautifulSoup(html, 'html.parser')

headlines = soup.select('h2')

for headline in headlines:
    print(headline.text.strip())

주의사항

  1. 웹 사이트의 robots.txt 파일을 확인하여 스크래핑이 허용되는지 확인하세요.
  2. 과도한 요청으로 서버에 부담을 주지 않도록 주의하세요.
  3. 저작권 및 개인정보 보호 규정을 준수하세요.

결론

BeautifulSoup은 웹 스크래핑을 위한 강력하고 사용하기 쉬운 도구 입니다. 이 기본적인 지식을 바탕으로 더 복잡한 웹 스크래핑 작업도 수행 할 수 있습니다. 실제 프로젝트에서는 동적 웹 페이지 처리, 에러 핸들링, 데이터 저장 등 추가적인 기술이 필요 할 수 있습니다.

 

웹 스크래핑은 강력한 도구이지만, 항상 윤리적의고 합법적으로 사용해야 합니다. 웹사이트의 이용약관을 준수하고, 필요한 경우 웹사이트 관리자의 허가를 받는 것이 좋습니다.

 

BeautifulSoup을 활용한 웹 스크래핑은 데이터 분석, 시장 조사, 가격 비교 등 다양한분야에서 유용하게 사용될 수 있습니다. 이 기초를 바탕으로 여러분만의 창의적인 프로젝트를 시작해 보면 좋겠습니다. 

반응형