AI & Tech

비개발자를 위한 크롤링 가이드: 크롤링의 종류와 활용법

크롤링 방식별 차이(봇으로 감지되는지, 사람처럼 보이는지, 차단되는지)부터 비개발자를 위한 노코드 도구 추천, AI 코드 요청 활용법까지. 코딩 없이 크롤링을 시작하는 데 필요한 모든 것을 정리했습니다.

크롤링, 왜 비개발자도 알아야 할까요?

경쟁사 상품 가격을 매일 엑셀에 정리하고, 뉴스 기사를 하나하나 복사하고, 구인 공고를 수동으로 모니터링하고 있다면 — 그 시간을 크롤링이 대신할 수 있습니다.

크롤링이란 프로그램이 웹사이트를 자동으로 돌아다니며 데이터를 수집하는 기술입니다. 여러분이 브라우저에서 사이트를 열고, 내용을 확인하고, 엑셀에 옮겨적는 그 과정을 프로그램이 대신 하는 것이죠.

크롤링을 검색하면 Puppeteer, Selenium, BeautifulSoup 같은 이름이 쏟아지는데, 비개발자 입장에서 정말 궁금한 건 이런 것입니다.

  • 어떤 방식이 있고 뭐가 다른지
  • 차단당하지 않고 데이터를 수집할 수 있는지
  • 인스타그램 피드나 네이버 리뷰 같은 건 어떻게 접근해야 하는지

이 글에서 이런 질문들을 중심으로 정리합니다.

크롤링의 세 가지 방식

크롤링에는 크게 세 가지 접근법이 있습니다. 각각 사이트에 어떻게 보이는지(봇인지 사람인지), 차단 가능성, 수집 가능한 범위가 다릅니다.

1. 단순 요청 방식

웹사이트에 "이 페이지 내용 좀 보여줘"라고 요청해서 받은 파일에서 필요한 부분만 꺼내는 방식입니다. 브라우저를 열지 않고 데이터만 주고받기 때문에 가장 빠르고 가볍습니다.

네이버 뉴스 기사처럼 페이지를 열면 내용이 바로 다 보이는 사이트에서 잘 작동합니다. 대표적인 도구로는 BeautifulSoup(파이썬)과 Cheerio(자바스크립트)가 있습니다.

사이트에 어떻게 보이나요?

이 방식은 사이트 입장에서 "프로그램이 접속했다"는 게 바로 드러납니다. 일반 브라우저와 달리 쿠키도 없고, 화면 크기 정보도 없고, 마우스 움직임도 없으니까요. 보안이 강한 사이트(쿠팡, 네이버 쇼핑 등)에서는 "봇이네?" 하고 바로 차단될 가능성이 높습니다.

또한 요즘 사이트들은 스크롤을 내려야 상품이 나타나거나, 버튼을 클릭해야 내용이 로딩되는 구조가 많은데, 이런 사이트에서는 아무 데이터도 못 가져옵니다. 사이트를 직접 "보는" 게 아니라 파일만 받아오는 방식이라 그렇습니다.

웹사이트의 "소스 보기"만 받아오는 것과 같습니다. 페이지에 적혀 있는 내용은 볼 수 있지만, 스크롤해야 나타나는 상품이나 클릭해야 열리는 댓글은 확인할 수 없습니다. 게다가 브라우저 없이 접속하니 사이트 입장에서는 "이건 사람이 아닌데?" 하고 바로 알아챕니다.

2. 브라우저 방식

진짜 크롬 브라우저를 프로그램이 조종하는 방식입니다. 화면에 보이지 않는 크롬("헤드리스 브라우저"라고 부릅니다)을 뒤에서 실행시키고, 프로그램이 사람 대신 주소를 입력하고, 클릭하고, 스크롤하고, 데이터를 읽어옵니다.

이 방식의 핵심은 사이트 입장에서 사람이 크롬으로 들어온 것과 거의 구분이 안 된다는 점입니다. 진짜 크롬이 실행되기 때문에 쿠키도 생기고, 화면 크기도 있고, JavaScript도 정상 실행됩니다.

대표적인 도구 세 가지가 있습니다.

Puppeteer(퍼페티어) — 구글이 만든 크롬 조종 도구입니다. 이름이 "꼭두각시 조종사"라는 뜻인데, 말 그대로 프로그램이 크롬을 꼭두각시처럼 조종합니다. 크롬에 특화되어 있어서 크롬과의 궁합이 가장 좋습니다.

Playwright(플레이라이트) — 마이크로소프트가 만든 도구인데, 재미있는 뒷이야기가 있습니다. Puppeteer를 처음 만들었던 구글 엔지니어들이 마이크로소프트로 이직한 후, Puppeteer의 아쉬운 점을 개선해서 새로 만든 것이 Playwright입니다. 크롬뿐 아니라 파이어폭스, 사파리도 지원하고, "사이트가 로딩될 때까지 알아서 기다려주는" 기능이 있어서 더 안정적입니다. 2026년 기준 새로 시작한다면 Playwright가 대세입니다.

Selenium(셀레니움) — 2004년부터 쓰여온 원조 도구입니다. 원래는 웹사이트 테스트용이었는데 크롤링에도 많이 씁니다. 가장 오래되어서 참고할 자료가 많지만, 셋 중에서 가장 느립니다.

사이트에 어떻게 보이나요?

사이트 입장에서는 사람이 크롬으로 직접 들어온 것과 매우 비슷하게 보입니다. 진짜 브라우저를 쓰기 때문이죠. 하지만 100% 완벽하진 않습니다. "이 방문자는 마우스가 한 번도 움직이지 않았는데?" "0.1초 만에 10개 페이지를 봤는데?" 같은 패턴으로 감지될 수 있습니다.

그래서 실무에서는 사람처럼 행동하는 것이 중요합니다. 페이지 사이에 몇 초씩 쉬고, 스크롤도 천천히 하고, 가끔 마우스를 움직이는 식으로요.

온라인 쇼핑몰에 접속해서 상품 페이지를 하나씩 둘러보는 것과 같습니다. 보통 속도로 클릭하고 스크롤하면 일반 고객과 구분이 안 되지만, 1초에 100개 상품 페이지를 열어보면 "이건 사람이 아닌데?" 하고 접속이 차단됩니다.

3. API 방식

일부 서비스는 데이터를 공식적으로 제공하는 통로인 API를 운영합니다. 네이버 검색 API, 카카오 지도 API, 공공데이터포털 API 등이 대표적입니다.

사이트에 어떻게 보이나요?

"정식으로 허가받은 요청"으로 보입니다. API는 서비스가 "이 데이터는 가져가도 됩니다"라고 공식적으로 열어둔 문입니다. 차단될 걱정이 없고, 데이터도 엑셀처럼 깔끔하게 정리된 형태로 나옵니다.

네이버가 "검색 결과 데이터는 여기서 공식적으로 받아가세요"라고 안내하는 것과 같습니다. 허가된 방법이기 때문에 차단 걱정이 없고, 데이터도 정리된 형태로 나옵니다.

한눈에 비교: 방식별 차이

비개발자가 가장 궁금해하는 기준으로 세 가지 방식을 비교합니다.

단순 요청 방식브라우저 방식API 방식
봇으로 보이나요?사람처럼 보임정식 요청
차단 가능성높음낮음 (행동에 따라 다름)없음
로그인 필요 사이트매우 어려움가능지원 시 가능
스크롤/클릭 필요 사이트불가능가능해당 없음
속도매우 빠름느림빠름
컴퓨터 부담거의 없음큼 (브라우저 실행)거의 없음
대표 도구BeautifulSoup, CheerioPuppeteer, Playwright, Selenium네이버 API, 공공데이터포털

핵심 정리: 차단 걱정 없이 안전하게 가져오려면 API, 대부분의 사이트에서 사람처럼 수집하려면 브라우저 방식(Playwright 추천), 간단하고 보안이 약한 사이트라면 단순 요청 방식을 추천합니다.

사이트는 봇을 어떻게 잡아낼까요?

크롤링을 시도해보면 "왜 데이터가 안 나오지?" 하는 순간을 만나게 됩니다. 대부분 사이트의 봇 탐지 시스템에 걸린 것입니다. 사이트가 봇을 감지하는 대표적인 방법을 알아두면, 어떤 크롤링 도구를 골라야 하는지 판단하기 쉬워집니다.image

CAPTCHA ("로봇이 아닙니다" 체크박스) : 가장 눈에 보이는 방어입니다. "신호등이 있는 사진을 모두 고르세요" 같은 테스트로 사람과 봇을 구분합니다. 단순 요청 방식은 이걸 통과할 수 없고, 브라우저 방식도 자동으로 풀기는 어렵습니다.

접속 속도 감지 — 사람은 한 페이지를 보는 데 최소 몇 초는 걸립니다. 1초에 10페이지씩 접속하면 "이건 사람이 아니다"라고 판단하고 IP를 차단합니다.

브라우저 자체 검사 — 방문자의 브라우저 종류, 화면 크기, 설치된 글꼴, 마우스 움직임 패턴 등을 종합적으로 분석합니다. 단순 요청 방식은 이런 정보가 아예 없어서 바로 걸립니다. 브라우저 방식은 대부분 통과하지만, 마우스가 한 번도 안 움직이면 의심받을 수 있습니다.

로그인 장벽 — 로그인해야만 볼 수 있는 콘텐츠가 점점 많아지고 있습니다. 브라우저 방식으로는 로그인 과정을 자동화할 수 있지만, 단순 요청 방식으로는 매우 까다롭습니다.

실전 응용법: 인스타그램, 네이버 리뷰는 어떻게 접근할까?

"인스타그램 피드를 크롤링하고 싶어요", "네이버 플레이스 리뷰를 모으고 싶어요"

크롤링에 관심 있는 분들이 가장 많이 궁금해하는 질문입니다. 이런 사이트에 접근할 때는 세 가지를 순서대로 확인하면 됩니다.

1단계: API가 있는지 확인

항상 API부터 찾으세요. 크롤링보다 안정적이고, 차단 걱정도 없고, 법적으로도 안전합니다.

  • 인스타그램: Meta(구 페이스북)의 Graph API를 통해 자신의 비즈니스 계정 게시물, 댓글, 인사이트 데이터를 공식적으로 받을 수 있습니다. 단, 다른 사람의 피드를 마음대로 수집하는 API는 제공하지 않습니다.
  • 네이버 플레이스 리뷰: 네이버는 리뷰 데이터를 API로 제공하지 않습니다. 크롤링이 필요한 대표적인 경우입니다.
  • 유튜브 댓글: YouTube Data API를 통해 공식적으로 댓글 데이터를 받을 수 있습니다.

2단계: API가 없으면 사이트 구조를 판단

해당 사이트가 스크롤/클릭 후 데이터가 로딩되는 구조인지 확인합니다. 인스타그램, 네이버 플레이스, 쿠팡 리뷰 모두 스크롤을 내려야 더 많은 콘텐츠가 나타나는 구조입니다. 이런 사이트는 단순 요청 방식으로는 불가능하고, 브라우저 방식(Playwright)이 필요합니다.

3단계: 차단 강도를 예상

플랫폼마다 봇 탐지의 강도가 다릅니다.

사이트차단 강도접근 방식
인스타그램매우 강함로그인 필수, 빠른 접속 시 즉시 계정 정지. 공식 API 사용 강력 권장
네이버 플레이스 리뷰보통브라우저 방식으로 수집 가능. 단, 천천히 수집해야 함
쿠팡 상품/리뷰강함브라우저 방식 필요. CAPTCHA가 자주 나타남
공공기관 사이트약함단순 요청으로도 가능한 경우가 많음
뉴스 사이트약함~보통단순 요청으로 가능한 곳이 많고, 네이버 뉴스 검색 API도 있음

핵심 원칙: API가 있으면 API → 없으면 브라우저 방식 → 보안이 약한 사이트만 단순 요청. 그리고 어떤 방식이든 천천히, 필요한 만큼만 수집합니다.

AI에게 크롤링 코드 요청하기

2026년 현재, 비개발자가 크롤링을 가장 효과적으로 활용하는 방법은 AI에게 크롤링을 위한 코드를 만들어달라고 요청하는 것입니다.

좋은 프롬프트의 구조

AI에게 크롤링을 요청할 때는 아래 5가지를 포함하면 결과가 훨씬 정확합니다.

  1. 어디서: 수집할 사이트 URL 또는 검색 조건
  2. 무엇을: 수집할 데이터 항목 (구체적으로)
  3. 어떤 도구로: "Playwright를 사용해줘" (2026년 기준 가장 안정적)
  4. 어떻게: 차단 방지를 위한 조건
  5. 어떤 결과를: CSV, 엑셀, JSON 등

프롬프트 예시 1: 네이버 플레이스 리뷰 수집

네이버 플레이스에서 '강남역 맛집' 검색 결과 상위 10개 가게의 리뷰를 수집하는 Python 코드를 만들어줘. 수집할 항목: 가게 이름, 리뷰 작성자 닉네임(ID 제외), 별점, 리뷰 내용, 작성일 조건: - Playwright를 사용할 것 - 각 가게당 리뷰 최대 20개까지만 수집 - 페이지 이동 사이에 3~5초 랜덤 대기 (차단 방지) - 스크롤은 사람처럼 천천히 내릴 것 - 결과는 CSV 파일로 저장 - 개인정보(이메일, 전화번호 등)는 수집하지 않을 것

프롬프트 예시 2: 경쟁사 가격 모니터링

아래 3개 쇼핑몰에서 '블루투스 스피커' 검색 결과의 상품 정보를 수집하는 Python 코드를 만들어줘. 사이트: 1. 쿠팡 (coupang.com) 2. 11번가 (11st.co.kr) 3. G마켓 (gmarket.co.kr) 수집할 항목: 사이트명, 상품명, 가격, 리뷰 수, 별점, 상품 URL 각 사이트에서 상위 20개 상품만 수집 조건: - Playwright를 사용할 것 - 사이트 간 이동 시 10초 대기 - 상품 간 이동 시 2~4초 랜덤 대기 - CAPTCHA가 나타나면 중단하고 알려줄 것 - 결과는 사이트별로 시트를 나눠서 엑셀 파일로 저장 - 파일명에 오늘 날짜를 포함할 것 (예: price_2026-02-26.xlsx)

프롬프트 예시 3: 채용 공고 수집

사람인(saramin.co.kr)에서 아래 조건의 채용 공고를 수집하는 Python 코드를 만들어줘. 검색 조건: '마케팅', 서울, 경력 3~5년 수집할 항목: 회사명, 공고 제목, 급여 정보, 마감일, 공고 URL 조건: - Playwright를 사용할 것 - 검색 결과 1~5페이지까지만 수집 - 페이지 이동 사이에 5~8초 랜덤 대기 - 결과는 CSV로 저장하고, 마감일 기준으로 정렬

AI에게 요청하는 팁

  • 에러가 나면 통째로 복사해서 AI에게 보내세요. AI가 원인을 분석하고 수정해줄거에요.
  • "CAPTCHA가 뜬다면" AI가 대기 시간을 늘리거나 우회 방법을 제안합니다.
  • "너무 느리다면" AI에게 병렬 처리나 불필요한 리소스 차단 등 요청을 합니다.
  • 코드가 완성되면 "이 코드를 매일 자동으로 실행하는 방법도 알려줘"라고 후속 질문하세요. 그러면 면 자동화까지 설정할 수 있습니다 🤗

크롤링, 어디까지 합법일까?

크롤링을 시작하기 전에 가장 중요한 질문입니다. "이거 해도 되는 거야?" 결론부터 말하면, 크롤링 자체는 불법이 아닙니다. 하지만 수집하는 데이터의 종류, 수집 방법, 사용 목적에 따라 법적 문제가 될 수 있습니다.

확실히 위법인 경우

  • 개인정보 수집: 이름, 이메일, 전화번호, 주민등록번호 등을 동의 없이 수집하면 한국 개인정보보호법(PIPA) 위반입니다. 과징금이 매출액의 3%까지 부과될 수 있습니다. "공개된 정보라 괜찮겠지"라는 생각은 위험합니다. 공개 게시판에 올라온 이메일이라도 자동 수집하면 위법입니다.
  • 로그인 뒤 데이터를 무단 수집: 로그인이 필요한 서비스에서 다른 사람의 계정으로 접속하거나, 접근 권한이 없는 데이터를 수집하면 정보통신망법 위반이 될 수 있습니다.
  • 수집한 데이터를 상업적으로 재판매: 남의 콘텐츠(기사, 리뷰, 이미지 등)를 수집해서 그대로 판매하면 저작권법 위반입니다.

회색 지대 (주의가 필요한 경우)

  • 이용약관을 위반하는 크롤링: 대부분의 사이트(네이버, 쿠팡, 인스타그램 등)는 약관에서 자동화된 데이터 수집을 금지하고 있습니다. 약관 위반은 형사 처벌 대상은 아니지만, 민사 소송의 근거가 될 수 있습니다. 2024년 글로벌 커뮤니티 Reddit이 AI 크롤링 업체를 상대로 대규모 소송을 건 것이 대표적인 사례입니다.
  • 서버에 과도한 부하를 주는 크롤링: 너무 빠르게, 너무 많이 접속해서 사이트 운영에 지장을 주면 업무방해로 문제가 될 수 있습니다.

합법에 가까운 경우

  • 공식 API를 통한 데이터 수집: 서비스가 공식적으로 제공하는 API를 이용 약관 내에서 사용하는 것은 완전히 합법입니다.
  • 공공데이터 수집: 정부·공공기관이 공개한 데이터(공공데이터포털 등)를 수집하는 것은 아무 문제 없습니다.
  • 개인적 용도의 소량 수집: 개인이 공개된 정보를 소량, 천천히 수집해서 내부 분석에 사용하는 것은 일반적으로 문제되지 않습니다. 예를 들어 경쟁사 가격 10개를 일주일에 한 번 확인하는 정도입니다.

권장되는 방식으로 크롤링하려면

  1. API가 있으면 무조건 API를 쓰세요. 가장 안전하고 합법적인 방법입니다.
  2. 개인정보는 절대 수집하지 마세요. 닉네임 정도는 괜찮지만, 이메일·전화번호·실명은 안 됩니다.
  3. 천천히, 적게 수집하세요. 요청 간격을 최소 3~5초 이상 두고, 필요한 만큼만 수집합니다.
  4. 수집한 데이터를 그대로 재배포하지 마세요. 분석 결과나 통계를 활용하는 것은 괜찮지만, 원본 데이터를 그대로 공개하거나 판매하는 것은 위험합니다.
  5. 수집 목적을 명확히 하세요. "왜 이 데이터가 필요한지"를 설명할 수 있어야 합니다.

3줄 요약:

  • 크롤링 방식은 단순 요청(봇으로 감지됨), 브라우저(사람처럼 보임), API(정식 허가) 세 가지이며, 인스타그램·쿠팡처럼 보안이 강한 사이트일수록 브라우저 방식이나 공식 API가 필요합니다.
  • AI에게 "Playwright로 크롤링 코드 만들어줘"라고 요청하면 코딩 지식 없이도 데이터를 수집할 수 있습니다. 수집 대상, 항목, 차단 방지 조건, 결과 형식을 구체적으로 말하는 게 핵심입니다.
  • 개인정보 수집은 확실히 위법이고, 공식 API 사용은 확실히 합법입니다. 회색 지대에서는 천천히, 적게, 내부 분석 목적으로만 수집하는 것이 안전합니다.

퀴즈

보안이 강한 쇼핑몰에서 상품 데이터를 수집하려고 합니다. 가장 차단 가능성이 낮은 크롤링 방식은?