빅데이터와 AI를 활용하는 현대 비즈니스에서 데이터는 가장 강력한 원동력입니다. 그리고 그 데이터를 얻기 위한 첫 관문이 바로 웹 스크래핑(Web Scraping / 크롤링)입니다. 웹 페이지에서 내가 원하는 텍스트나 표만 정밀하게 골라내기 위해, 브라우저가 화면을 렌더링하는 뼈대인 HTML 마크업과 DOM(Document Object Model) 트리 구조의 원리를 분석합니다.
본문 상단 광고 슬롯 (구글 애드센스 반응형 디스플레이 광고)
1. DOM(Document Object Model) 트리란 무엇인가?
브라우저가 HTML 코드를 파싱하여 메모리에 적재하는 트리 계층 구조입니다.
- 부모-자식 노드 관계: `<html>` 하위에 `<body>`가 있고, 그 내부에 `<div>`와 `<p>` 태그가 가지를 치며 뻗어나갑니다.
- 태그, 클래스, ID: 특정 대상을 선택하기 위한 꼬리표 역할을 합니다. 스크래핑 라이브러리는 이 꼬리표를 추적해 정보를 가공합니다.
2. 크롬 개발자 도구를 활용한 대상 탐색
웹 브라우저에서 `F12` 또는 마우스 우클릭 -> '검사(Inspect)'를 실행하는 요령입니다.
- 원하는 데이터 영역(예: 상품 가격) 위에 마우스를 얹고 검사를 실행합니다.
- 해당 노드의 HTML 태그 명칭과 소속 클래스 이름(예: `class="price"`) 또는 유일 ID 값을 확보합니다.
- 고유한 경로를 묘사하는 CSS 선택자(Selector)나 XPath 식을 메모해 둡니다.
"웹 스크래핑의 실력 차이는 파이썬 코딩 능력보다, 대상 사이트의 복잡한 HTML 노드 더미 속에서 데이터를 품은 핵심 부모 노드를 얼마나 정교하게 색출하느냐에 달려 있습니다."
본문 중간 광고 슬롯 (구글 애드센스 인프리미엄 콘텐츠 광고)
3. 스크래핑(Scraping) vs 크롤링(Crawling)
보통 혼용되어 쓰이지만 명확한 기술적 구분이 존재합니다. 크롤링은 구글 검색 봇처럼 무작위로 링크를 타고 돌며 웹 페이지 전체를 인덱싱하고 수집하는 다목적 순회 작업이며, 스크래핑은 특정 뾰족한 페이지(예: 네이버 쇼핑)에서 특정 가격 데이터만 콕 집어 정밀하게 추출·파싱해 내는 표적 가공 행위입니다.
4. 요약: 기초 구조를 완전 정복하라
HTML DOM 트리의 위계 관계를 명확히 이해하고 타겟팅하는 기초 지식을 장착하여, 수천 개의 웹 페이지 데이터 소스를 자재로 지배해 보십시오.
본문 하단 광고 슬롯 (구글 애드센스 일치하는 콘텐츠/디스플레이 광고)