웹 크롤링(Web Crawling)은 인터넷에서 정보를 수집하는 기술입니다.
뉴스 제목, 쇼핑몰 가격, 블로그 글 등 우리가 브라우저로 보는 정보를 파이썬 코드로 가져올 수 있다면?
이번 글에서는 파이썬 기초 수준만 알아도 따라할 수 있는 웹 크롤링 입문 방법을 소개합니다.
웹 크롤링이란?
- 크롤링(Crawling): 웹 페이지를 탐색하며 원하는 정보를 수집
- 파싱(Parsing): HTML 구조를 해석해 원하는 데이터 추출
🧩 활용 예시: 뉴스 요약봇, 가격 비교 도구, 키워드 트렌드 분석 등
필요한 파이썬 라이브러리
“`bash
pip install requests beautifulsoup4
“`
| 라이브러리 | 설명 |
|————|——|
| requests
| 웹페이지 요청(GET 등)
| BeautifulSoup
| HTML 문서 파싱 및 데이터 추출
실습 예제: 네이버 뉴스 제목 크롤링
“`python
import requests
from bs4 import BeautifulSoup
url = “https://news.naver.com/”
res = requests.get(url)
soup = BeautifulSoup(res.text, “html.parser”)
headlines = soup.select(“.maincomponent .hdlinearticle_tit a”)
for headline in headlines:
print(headline.text.strip())
“`
🖼️ ALT 태그 위치 예시:
주요 HTML 태그 이해
| 태그 | 의미 |
|——|——|
|
| 구역 블록 || | 하이퍼링크 (텍스트 or URL 포함) |
| class
| CSS/JS/크롤링 등 구분용 이름 |
| id
| 고유 요소 식별자 |
크롤링 시 유의사항
- robots.txt 파일 확인: 크롤링 허용 범위 안내
→ 예: https://news.naver.com/robots.txt
- 지나친 요청은 사이트 서버에 부하를 줄 수 있으니 주의
- 상업적 목적 사용 시 서비스 이용약관 필수 확인
⚠️ 정보 수집 목적이 아닌 웹페이지 복제는 금지 대상입니다.
실습 확장 예시
- 쇼핑몰 상품명 + 가격 수집
- 블로그 글 제목/작성일 수집
- 공공데이터 포털 API 활용 (크롤링 대체)
크롤링 연습 사이트 추천
마무리
웹 크롤링은 자동화의 시작점입니다.
처음엔 작은 뉴스 제목 수집부터 시작해보세요.
익숙해지면 웹 데이터 분석, 자동 리포트 작성까지 확장할 수 있습니다.
한 줄의 코드가 반복작업을 대체하는 경험, 지금 시작해보세요!
🔎 다음 포스팅 주제 추천
→ 49번: 파이썬으로 유튜브 영상 다운로드 하기
→ 4번: 실무에서 바로 쓰는 파이썬 자동화 예제
참고자료
- https://www.crummy.com/software/BeautifulSoup/bs4/doc/
- https://www.data.go.kr/