파이썬 웹 크롤링 입문 5강 시리즈, 그 첫 번째 강의에 오신 것을 환영합니다!
이 시리즈에서는 **웹 크롤링의 개념부터 실제 사이트 데이터를 가져오는 방법까지** 단계별로 차근차근 배우게 됩니다. 특히 초보자도 이해할 수 있도록 예제를 함께 제공하며 실습 중심으로 구성했습니다.
—
1. 웹 크롤링이란?
웹 크롤링(Web Crawling)은 **웹사이트의 데이터를 자동으로 수집하는 작업**입니다.
우리가 웹사이트를 방문해서 눈으로 보는 정보를 파이썬 코드로 읽어올 수 있게 되는 것이죠.
예를 들어:
– 뉴스 사이트의 기사 제목 모으기
– 쇼핑몰의 상품 정보 수집
– 날씨, 주식, 환율 정보 가져오기
이러한 작업을 자동으로 처리하면, 수작업으로 복사-붙여넣기 할 필요 없이 대량의 정보를 빠르게 가공할 수 있습니다.
—
2. 웹 크롤링과 스크래핑의 차이
– **크롤링**: 여러 페이지를 자동으로 이동하며 데이터 수집
– **스크래핑**: 특정 웹페이지에서 필요한 정보를 추출
즉, 스크래핑은 크롤링의 하위 개념으로 볼 수 있어요.
—
3. 웹사이트는 어떻게 구성돼 있을까?
웹페이지는 보통 HTML이라는 언어로 구성되어 있고, 웹 브라우저는 이 HTML을 해석해서 우리가 보는 화면을 그려주는 역할을 합니다.
HTML은 태그(tag)로 구성되며, 대표적인 구조는 다음과 같습니다:
“`html
기사 제목
본문 내용
“`
우리는 이 HTML 코드를 파이썬으로 가져와서 원하는 정보(h1, p 등)를 추출하는 과정을 배우게 됩니다.
—
4. 웹 크롤링에 사용되는 주요 라이브러리
1. requests: 웹사이트에 접속하고 HTML 코드 가져오기
2. BeautifulSoup: HTML 코드에서 원하는 부분 추출
이 두 가지를 기본으로 사용하면 왠만한 크롤링은 가능합니다.
✅ 설치 방법:
“`bash
pip install requests
pip install beautifulsoup4
“`
—
5. 간단한 실습 예제: 구글 홈페이지 가져오기
“`python
import requests
from bs4 import BeautifulSoup
url = “https://www.google.com”
response = requests.get(url)
soup = BeautifulSoup(response.text, “html.parser”)
print(soup.title.text) # 구글 홈페이지의 제목 출력
“`
– requests.get(): HTML 요청 보내기
– response.text: HTML 코드 가져오기
– BeautifulSoup(): HTML 파싱하기
—
6. 크롤링 시 주의할 점
– 너무 자주 요청 보내면 IP 차단될 수 있음 (딜레이 넣기)
– robots.txt 규칙을 따를 것
– 로그인, Ajax, JavaScript 등으로 구성된 페이지는 다른 기술 필요 (Selenium 등)
—
📘 다음 강의 예고
2강: 실제 뉴스 사이트에서 기사 제목 10개 가져와보기
requests와 BeautifulSoup를 활용해 실전 뉴스 크롤링을 직접 해보면서 태그 구조를 분석하고, 반복문으로 여러 항목을 추출하는 방법을 배웁니다. 실습 위주의 강의가 될 거예요!
—
이 강의는 파이썬 웹 크롤링 입문자를 위한 연재 시리즈입니다. 매주 새로운 강의로 업데이트됩니다.