Data Crawling Engineer
웹 데이터를
수집하고
가치로 만듭니다
다양한 언어와 도구로 웹 데이터를 수집합니다. 정적/동적 페이지 수집, 대용량 파이프라인 설계, 스케줄링 자동화까지 — 아래 버튼을 눌러 EC2에서 실제 동작하는 크롤러를 확인하세요.
PythonPHPBeautifulSoup
SeleniumPlaywright
FlaskScrapy
APSchedulerRedis
PostgreSQLDocker
EC2
// 01
Live Crawling Demos
LIVE
네이버 뉴스 실시간 수집기
BeautifulSoup으로 네이버 IT 뉴스를 실시간 파싱합니다. User-Agent 설정, CSS 셀렉터 파싱, 링크 추출까지 실제 크롤링 파이프라인을 시연합니다.
BeautifulSoup4requestsCSS 셀렉터Flask API
LIVE
실시간 환율 & 코인 가격 수집기
공개 API를 병렬 호출해 환율과 코인 가격을 수집합니다. 실 업무에서는 쇼핑몰 가격 모니터링에 동일 패턴을 적용합니다.
REST APIJSON 파싱데이터 정규화Flask API
LIVE
사람인 채용공고 수집기
사람인에서 크롤링 직군 채용공고를 실시간 수집합니다. CSS 셀렉터로 공고명, 회사명, 조건 태그까지 구조화된 데이터로 추출합니다.
BeautifulSoup4사람인데이터 구조화Flask API
LIVE
날씨 데이터 수집 & 시각화
Open-Meteo API를 병렬 호출해 주요 도시 날씨를 수집합니다. 수집→파싱→정제→시각화 전체 파이프라인을 시연합니다.
Open-Meteo API병렬 요청데이터 시각화Flask API
LIVE
금 시세 실시간 수집기
네이버 금융에서 금 현재 시세를 수집합니다. 계좌 입출금가, 실물 매매가까지 구조화된 데이터로 추출합니다.
BeautifulSoup4네이버금융테이블 파싱Flask API
LIVE
네이버 국내증시 인기 종목
네이버 증권에서 많이 찾는 국내 주식 종목을 실시간 수집합니다. 종목명, 현재가, 전일비, 등락률, 거래량까지 추출합니다.
BeautifulSoup4네이버증권테이블 파싱Flask API
LIVE
GitHub 트렌딩 레포지토리
GitHub 트렌딩 페이지를 파싱해 오늘 인기 레포지토리를 수집합니다. 레포명, 설명, 사용 언어를 구조화된 데이터로 추출합니다.
BeautifulSoup4GitHubCSS 셀렉터Flask API
LIVE
Hacker News 인기글 수집기
Hacker News 공개 JSON API를 호출해 실시간 인기글을 수집합니다. 제목, URL, 점수, 작성자까지 구조화된 데이터로 추출합니다.
JSON APIHacker NewsREST 호출Flask API
LIVE
↗ source page
흥국생명 상품 약관 수집기
흥국생명 보험 상품 약관 목록을 실시간 수집합니다. 보안 프로그램 환경을 고려한 접근 방식으로 상품명·판매기간·문서 종류를 구조화된 데이터로 제공합니다.
데이터 수집데이터 파싱구조화Flask API
LIVE
↗ source page
흥국화재 홈페이지 전체 수집기
흥국화재 홈페이지 전체를 자동으로 수집합니다.
보안 프로그램 환경을 고려한 접근 방식으로 로그인 없이 접근 가능한 모든 페이지를 탐색하고,
보험 약관 PDF까지 자동 다운로드합니다.
전체 페이지 수집
PDF 다운로드
파이프라인
Flask API
LIVE
↗ source page
DB손보 약관 PDF 목록 수집기
DB손보 장기보험 약관 PDF 목록을 실시간 수집합니다. 보안 환경을 분석하여 내부 API를 직접 호출하고, 상품명·판매기간·PDF 파일 정보를 구조화된 데이터로 추출합니다.
내부 API 분석
4단계 체인
데이터 구조화
Flask API
LIVE
↗ source page
금감원 분쟁조정 정보 수집기
금융감독원 분쟁조정결정례를 실시간 수집합니다. 보험 관련 항목만 필터링하여 제목·등록일·첨부파일 정보를 구조화된 데이터로 제공합니다.
보험 필터링
목록 파싱
데이터 구조화
Flask API
LIVE
↗ source page
국가법령정보 보험 법령 수집기
국가법령정보 공개 API를 호출해 보험 관련 법령 목록을 실시간 수집합니다. 보험업법·상법·금융소비자보호법 등 핵심 법령의 소관부처·시행일 정보를 추출합니다.
공개 API
XML 파싱
법령 데이터
Flask API
LIVE
쿠팡 상품 수집기
쿠팡에서 무선이어폰 상품 정보를 수집합니다. 상품명, 가격, 할인율, 별점, 리뷰수를 구조화된 데이터로 추출합니다.
상품 크롤링데이터 파싱Flask API
// 02
Pipeline Architecture
SYSTEM LOG — crawler_pipeline.py
[2026-02-26 09:00:00] [OK] Flask API server started — port 9000
[2026-02-26 09:00:01] [INFO] Routes: /api/news /api/price /api/jobs /api/weather /api/gold /api/stocks /api/github /api/hackernews
[2026-02-26 09:00:02] [OK] CORS enabled — cross-origin requests allowed
[2026-02-26 09:00:03] [INFO] Crawler: BeautifulSoup4 + requests initialized
[2026-02-26 09:00:04] [OK] Targets: naver / saramin / open-meteo / github / hackernews
[2026-02-26 09:00:05] [OK] Pipeline ready — EC2 / ap-southeast-1
// 03
Crawling Philosophy
01 — STATIC FIRST
정적 수집을 먼저 파고든다
크롤링을 시작하기 전, 타겟 사이트를 충분히 연구한다. curl이든 HTTP 요청이든 — 방법을 찾아낼 수 있다면 반드시 찾아낸다. 동적 처리(Selenium/Playwright)는 진짜 방법이 없을 때의 마지막 선택이다. 정적 수집이 가능한데 동적을 쓰는 건 낭비다.
02 — FINGERPRINT RESEARCH
사이트를 연구하고 또 연구한다
안티봇은 요청 패턴, 헤더 구조, 타이밍, TLS 핑거프린트 등 다양한 방식으로 크롤러를 탐지한다. 막히면 우회법을 찾는 게 아니라, 왜 막히는지를 먼저 분석한다. 사이트의 탐지 메커니즘을 이해해야 지속 가능한 수집이 가능하다.
03 — SUSTAINABILITY
1회성이 아닌 지속 가능한 구조
크롤러는 한 번 돌고 끝나는 스크립트가 아니다. 사이트가 바뀌어도, 트래픽이 늘어나도, 장애가 생겨도 스스로 회복하며 계속 돌아야 한다. 재시도 로직, 백오프, 자동 복구, 스케줄링 — 운영을 고려한 설계가 처음부터 있어야 한다.
04 — IP STRATEGY
IP는 소모품이 아닌 자원이다
무작정 IP를 돌리는 건 전략이 아니다. 요청 빈도, 대역 분산, 세션 유지 방식을 함께 설계해야 IP 소모를 최소화할 수 있다. 좋은 IP 전략은 차단을 피하는 게 아니라, 차단당할 이유를 만들지 않는 것이다.
// 04
Tech Stack & Decision Guide
DECISION — 어떤 크롤러를 쓸까?
BeautifulSoup4
정적 페이지 · 빠름 · 가벼움
서버에서 HTML을 완성해서 내려주는 페이지. 네이버 뉴스, 사람인, 네이버 금융 등 대부분의 정보성 사이트에 적합. requests로 HTML 받아서 BeautifulSoup으로 파싱.
Selenium / Playwright
동적 페이지 · JS 렌더링
JS로 데이터를 불러오는 SPA 구조 페이지. 네이버 쇼핑, 쿠팡, 카카오맵 등. 실제 브라우저를 제어해서 렌더링 후 HTML 수집. 속도는 느리지만 JS 실행이 필요한 경우 필수.
이 포트폴리오는 BeautifulSoup + requests 기반 — EC2에서 헤드리스 브라우저 없이 동작
PIPELINE — 데이터 수집 흐름
01
Request
User-Agent 설정 → HTTP GET 요청
02
Parse
BeautifulSoup → CSS 셀렉터 파싱
03
Extract
텍스트 / 링크 / 속성값 추출 및 정제
04
Serve
Flask API → JSON 응답 반환
USE CASES — 실무 적용 사례
쇼핑몰 가격 모니터링
경쟁사 가격 실시간 수집 → DB 저장 → 가격 변동 알림 자동화
뉴스 감성 분석 파이프라인
키워드별 뉴스 수집 → 텍스트 전처리 → 감성 분류 모델 적용
채용공고 자동 수집기
사람인·잡코리아 일별 수집 → APScheduler 스케줄링 → Slack 알림
부동산 시세 트래커
국토부 실거래가 API + 네이버 부동산 크롤링 → 시세 변동 시각화
보험 약관 자동 수집 파이프라인
흥국생명·흥국화재·DB손보 약관 정기 수집 → PDF 목록 자동화 → 변경 이력 추적
금융 분쟁조정 데이터 수집
금감원 분쟁조정결정례 보험 필터링 수집 → 유형별 분류 → 리포트 자동 생성
법령·판례 벡터DB 적재
국가법령정보 API → 조문 단위 청킹 → 임베딩 → LLM 기반 법령 Q&A 파이프라인