유료 프롬프트
CRAWL
스킬
Claude Code 차단 없는 로그인 사이트 크롤링 스킬 — "Selenium 을 HTTP 로" (safe-web-crawling)
이온디
2026.09.29
47
0
평점
0.0
리뷰 0개
사용 방법
본문을 복사해 AI 도구에서 실행하세요
-
STEP 1
아래 본문에서 역할, 목적, 입력값, 출력 형식을 확인합니다.
-
STEP 2
ChatGPT, Claude, Gemini, Codex의 대화창이나 프로젝트 지침에 붙여넣습니다.
-
STEP 3
예시 입력값을 내 업무 정보로 바꾼 뒤 실행하고 결과를 검토합니다.
스킬 파일 제공
구매하시면 SKILL.md(절차·실측·체크리스트)와 설치 안내 README 가 담긴 압축 파일을 받으실 수 있습니다. ~/.claude/skills/ 에 폴더째 두면 자동으로 인식됩니다.

로그인이 필요한 사이트를 크롤링하다 보면 두 가지 벽을 만납니다. 브라우저 자동화(Selenium·Playwright)가 너무 무겁고, 조금만 빨리 돌리면 차단당합니다. 게다가 크롤러가 "돌기는 도는데" 제목 끝에 엉뚱한 글자가 붙거나 작성자 칸에 날짜가 들어가는 식으로 데이터가 조용히 틀어집니다.
왜 만들었나
한 게시판 크롤러를 Selenium 에서 HTTP 요청으로 옮기며 겪은 것을 정리했습니다. 추측이 아니라 전부 실제 응답으로 확인했습니다. 특히 "상세 페이지를 바로 요청하면 본문이 비어 온다"는 문제는 가장 오래 헤맨 것으로, 헤더를 흉내 내는 것으로는 풀리지 않았습니다.
무엇을 하나
- 브라우저가 필요한지 판별 — 로그인 쿠키로 curl 을 받아 쓸 셀렉터가 있는지 봅니다. 기존 코드가
page_source를 BeautifulSoup 으로 파싱하고 있다면 브라우저는 관성일 뿐입니다. - 차단 방지 순서 — IP 보다 속도 조절이 먼저. 1~2초 무작위 지연, 동시 1개, 429·403·로그인 폼 재등장·비정상적으로 짧은 응답이면 즉시 중단, User-Agent 고정. 지연 하한은 UI 가 아니라 백엔드에서 거부합니다.
- 프록시는 마지막 — 한 세션 = 한 IP. 같은 쿠키를 여러 IP 로 돌려쓰지 않습니다.
- "목록 먼저" 세션 상태 — 서버 세션에 목록을 본 상태가 기록돼야 상세 본문이 열리는 경우를 구분하고, 페이지마다 목록을 받고 그 안의 글을 순회하는 구조로 짭니다.
- 파서는 실제 HTML 로 검증 — 실사이트 요청은 4~8건만 하고 받은 HTML 을 fixture 로 저장해 반복 테스트합니다.
- 자격증명·데이터 안전 — 커밋 전 비밀번호 검사, 기본값에 실제 값 금지, 작업 전 DB 백업, 뷰어는 읽기 전용으로 열기.
실측
| 항목 | 결과 |
|---|---|
| 같은 페이지 1건 — 브라우저(headless dump-dom) | 2.47초, 최대 메모리 511MB |
| 같은 페이지 1건 — HTTP(curl) | 0.46초, 최대 메모리 14MB (시간 5.4배, 메모리 36배 차이) |
| 상세 URL 을 바로 요청 | 껍데기 HTML (HTTP 200, 본문 없음) |
| 목록 먼저 방문한 뒤 상세 | 정상 본문 |
| Referer 헤더만 위조 | 실패 |
| 자체 단위 테스트 7건 통과한 파서 | 실제 HTML 로 돌리자 결함 5건 |
| 옛 파서가 쌓은 기존 DB | 작성자 필드 68%(34,043건)가 | 나 빈 값 |
본문 <img> 전부 수집 | 6개 중 진짜 첨부는 2개(나머지 로고·광고) |
파서 결함 5가지
| 결함 | 해법 |
|---|---|
뱃지 텍스트가 제목에 섞임(제목new) | 직계 텍스트 노드만 취한다 |
| 작성자 표기가 실명·익명 두 형태 | 특정 span 을 먼저 보고, 없을 때만 직계 텍스트 |
구분자 | 를 작성자로 저장 | 기존 DB 와 일치를 목표로 삼지 않는다 |
| 첨부 아닌 이미지 수집 | 첨부 URL 패턴 화이트리스트 |
상대경로 .. 가 안 풀린 URL | 경로의 .. 만 해소, 쿼리스트링은 건드리지 않는다 |
구성
| 파일 | 역할 |
|---|---|
safe-web-crawling/SKILL.md | 전환 판별, 차단 방지, 세션 상태 함정, 파서 검증, 자격증명·데이터 안전, 체크리스트 11항목 |
safe-web-crawling/README.md | 설치와 쓰는 법 |
설치
구매 후 전체 프롬프트 확인 가능
유료 프롬프트의 전문과 복사용 프롬프트는 구매자에게만 제공됩니다. 공개 본문에서는 구성, 활용 범위, 업데이트 내역만 확인할 수 있습니다.
요구 사항
- Claude Code, curl
- 대상 사이트의 이용약관과 본인 계정 권한 범위 안에서 사용
이런 분께
- Selenium 크롤러가 무겁고 느려서 HTTP 로 옮기고 싶은 분
- 크롤러가 차단당해 IP 를 바꿔야 하나 고민 중인 분
- 로그인은 되는데 본문이 비어 오거나, 수집한 제목·작성자가 이상한 분
리뷰
별점과 함께 남기는 사용 후기
아직 리뷰가 없습니다
리뷰를 작성하려면 로그인하세요.
첫 리뷰를 남겨보세요.