728x90
자동으로 뉴스 정보를 수집하고 싶은가요? 이 글은 초보 개발자와 일반인을 대상으로, Python의 대표적인 웹 스크래핑 도구인 BeautifulSoup
과 requests
를 활용하여 뉴스 데이터를 수집하는 방법을 소개합니다. 데이터를 수집해보며 실전 프로젝트 감각을 익히는 좋은 기회가 될 것입니다.
1. 기본 개념 및 이론
웹 스크래핑(Web Scraping)은 웹페이지의 HTML 구조를 분석해 필요한 정보를 자동으로 추출하는 기법입니다. Python에서는 주로 requests
로 웹페이지의 HTML 코드를 불러오고, BeautifulSoup
으로 원하는 정보를 파싱(parsing)합니다.
- requests: 웹사이트에 접속해 HTML을 받아오는 라이브러리
- BeautifulSoup: HTML 코드를 분석하여 특정 요소를 찾거나 가공하는 도구
2. 실습 예제: 네이버 뉴스 제목 가져오기
아래 예제는 네이버 뉴스의 메인 페이지에서 주요 뉴스 제목을 수집하는 코드입니다.
import requests
from bs4 import BeautifulSoup
url = "https://news.naver.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 뉴스 제목 추출
headlines = soup.select('.hdline_article_tit a')
for idx, headline in enumerate(headlines, 1):
print(f"{idx}. {headline.get_text(strip=True)}")
3. 출력 결과 및 설명
위 코드를 실행하면 주요 뉴스 제목들이 다음과 같이 출력됩니다:
1. 정부, 추가 부동산 정책 발표
2. AI로 인한 산업 구조 재편 가속
3. 삼성, 차세대 반도체 공개
...
힌트: 각 뉴스 제목에 링크도 함께 추출하고 싶다면 headline['href']
를 활용해보세요.
정리 및 다음 단계 안내
이번 글에서는 Python으로 웹페이지에서 뉴스 데이터를 수집하는 기본적인 웹 스크래핑 방법을 배웠습니다. 다음 글에서는 공공데이터 포털 등에서 제공하는 오픈 API를 활용한 데이터 수집 방법을 다룰 예정입니다.
반응형
'08.개발&프로그래밍 > 1.파이썬' 카테고리의 다른 글
3. GUI 프로그래밍 기초 - Tkinter로 나만의 앱 만들기 (0) | 2025.07.13 |
---|---|
2. 오픈 API 호출로 데이터 가져오기 - 공공데이터 포털 활용 (0) | 2025.07.13 |
10. 파이썬 기초 알고리즘: 정렬 & 탐색 구현 (0) | 2025.07.12 |
9. Python 유닛 테스트 & 코드 품질 관리 (unittest 활용) (0) | 2025.07.12 |
8. Python 가상환경 & 패키지 관리 가이드 (venv + pip) (0) | 2025.07.12 |