> ## Documentation Index
> Fetch the complete documentation index at: https://www.octoparse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 웹 스크래핑이란?

> 웹 스크래핑은 웹사이트에서 구조화된 데이터를 자동 추출하는 기술입니다. 작동 방식, 활용 분야, API 및 수동 수집과의 차이를 알아보세요.

이 작업을 수행하는 프로그램은 보통 “스크래퍼” 또는 “크롤러”라고 합니다. 페이지를 방문해 HTML 콘텐츠를 읽고 필요한 특정 데이터를 가져오며, 사람이 웹페이지 정보를 직접 복사하던 작업을 대신합니다.

## 일반적인 활용 사례

전자상거래 사이트의 제품 가격 수집, 뉴스 기사 취합, 채용 공고 추출, 경쟁사 모니터링, 연구용 데이터세트 구축 등이 일반적인 활용 사례입니다.

## 작동 방식

일반적인 스크래핑 워크플로는 URL에 HTTP 요청을 보내 HTML 응답을 받고, CSS 선택자나 XPath를 사용해 관련 요소를 찾아 분석한 뒤 추출 데이터를 CSV, JSON 또는 데이터베이스 같은 구조화 형식으로 저장합니다.

## API 및 수동 수집과의 차이

수동 수집과 비교하면 스크래핑은 같은 복사·붙여넣기 작업을 자동 수행하므로 더 빠르고 반복 가능하며 수천 페이지로 확장할 수 있습니다. 대신 초기 설정이 필요하고 사이트 레이아웃이 바뀌면 지속적으로 유지관리해야 합니다.

API와 비교하면 스크래핑은 전용 데이터 피드가 아니라 브라우저에 표시되는 동일한 HTML을 읽습니다. 사이트가 공식 API를 제공한다면 데이터가 이미 구조화되고 안정적이며 문서화되어 있어 보통 더 신뢰할 수 있고 승인된 선택입니다. API가 없거나 필요한 데이터를 노출하지 않거나 제한이 지나치게 엄격할 때 스크래핑을 사용합니다. 다만 페이지 마크업에 의존하므로 마크업이 변경되면 중단될 수 있습니다.

## 도구와 라이브러리

대표적인 웹 스크래핑 도구와 라이브러리로 Python의 Beautiful Soup과 Scrapy, JavaScript의 Puppeteer와 Cheerio, Octoparse 같은 [노코드 플랫폼](/docs/ko/academy/what-is-no-code-web-scraping)이 있습니다. 노코드 플랫폼은 스크립트 라이브러리와 다른 방식을 사용합니다. 예를 들어 Octoparse는 실제 브라우저에서 페이지를 실행하고 추출 코드를 작성하는 대신 사람이 탐색하고 데이터를 선택하는 것처럼 클릭해 스크래퍼를 만들게 합니다. JavaScript 렌더링 의존도가 높은 페이지에는 Puppeteer나 Playwright 같은 헤드리스 브라우저로 실제 브라우저를 시뮬레이션해 동적으로 로드된 데이터에 접근할 수 있습니다.

## 유의 사항

스크래핑할 때는 사이트의 robots.txt와 서비스 약관을 확인해 허용 범위를 파악하고 서버에 과도한 부하를 주지 않도록 요청 속도를 조절해야 합니다. 또한 일부 관할권에서는 특정 유형의 데이터 스크래핑에 법적 제한이 있을 수 있다는 점을 유의하세요.
