---
title: 로컬 언어모델로 광고 사이트의 강력한 차단 시스템을 우회하는 방법
url: https://www.elseif.net/ko/story-69
published: 2026-11-10T06:17:00+00:00
language: ko
section: 에이전트
source: https://habr.com/ru/articles/1104808/?utm_campaign=1104808&utm_source=habrahabr&utm_medium=rss
organizations: Qwen, Microsoft, Playwright
publisher: elseif
---

# 로컬 언어모델로 광고 사이트의 강력한 차단 시스템을 우회하는 방법

한 개발자가 로컬 언어모델을 활용하여 광고 플랫폼의 강력한 봇 차단 시스템과 네트워크 제한을 우회하는 데 성공했다. 이 과정은 희귀한 장비를 검색하는 단순한 작업에서 출발하여 복잡한 엔지니어링 연구로 발전했다. 개발자는 7B에서 8B 규모인 Qwen 모델을 사용해 공격적인 보안 체계, 난독화된 프론트엔드, 그리고 격리된 샌드박스 환경의 네트워크 제약을 극복했다. 이 과정에서 유료 검색 엔진 API나 프록시 서버는 전혀 사용하지 않았다. 대신 파이썬, Playwright, 그리고 픽셀 및 로직 기반 접근 방식만 활용했다.

기존의 표준 웹 스크래핑 방법은 이 환경에서 실패했다. 대형 광고 사이트는 강력한 봇 방어 시스템을 갖추고 있어 직접적인 HTTP 요청이나 표준 HTML 파싱 도구를 사용하면 즉시 403 또는 429 오류로 차단된다. 네트워크 레벨의 웹 방화벽이 이러한 시도를 즉시 차단했다. 검색 엔진을 통한 우회 시도도 실패로 끝났다. 일부 검색 엔진은 봇 차단 페이지를 반환했고, 다른 검색 엔진은 격리된 환경의 네트워크 허용 목록으로 인해 타임아웃이 발생했다. 세 번째 검색 엔진은 HTML을 제공했지만 파싱 시 빈 JavaScript 리다이렉트 스텁으로 드러났다. 모델은 반복적으로 결과를 생성하지 못하고 정규식과 URL 처리에서 오류를 일으켰다.

개발자는 네트워크 패킷 레벨에서 시스템을 속이려는 대신, 픽셀과 로직 레벨에서 인간을 모방하는 새로운 아키텍처를 채택했다. 이 방법은 시스템 브라우저의 에뮬레이션과 CSS 클래스 대신 의미 있는 텍스트 마커를 사용한 DOM 트리 파싱이라는 두 가지 핵심 요소에 기반한다. 첫 번째 단계는 시스템에 설치된 Microsoft Edge 브라우저를 제어하는 것이었다. Playwright나 Selenium의 헤드리스 브라우저는 특정 플래그로 쉽게 탐지되므로, 모델은 가시적 모드에서 실행되는 시스템 브라우저 스크립트를 작성했다. 이 스크립트는 브라우저 창을 화면 앞으로 강제로 끌어올려 사용자가 페이지를 정상적으로 열었다고 보이게 했다. 8초의 대기 시간은 보안 스크립트가 실행되고 페이지가 완전히 로드되도록 보장했다.

두 번째 단계는 난독화된 프론트엔드를 극복하는 것이었다. 대형 플랫폼은 서버가 무작위로 생성하고 업데이트 시 변경되는 해시된 동적 CSS 클래스를 사용한다. 모델은 CSS 선택자를 무시하고 DOM 트리를 단일 패스로 스캔하여 의미 있는 텍스트 마커에 의존했다. 모델은 가격 마커를 포함하는 텍스트 노드를 찾아 고정점으로 설정한 후, 부모 컨테이너로 올라가 제목을 추출했다. 또한 카드 URL의 끝에 있는 고유한 숫자 ID 패턴을 정규식으로 검증하여 링크를 추출했다.

세 번째 단계는 분산된 데이터를 결합하는 것이었다. 현대 마켓플레이스는 최적화를 위해 판매자 이름과 도시 정보를 카드 컨테이너 외부에 배치한다. 모델은 페이지 코드에서 카드에 연결되는 매장 프로필 링크의 고정 매개변수를 발견했다. 모델이 자체적으로 최적화한 스크립트는 페이지의 전체 텍스트 덤프를 수집하고 이 ID를 기반으로 일치하는 항목을 찾아 상품, 가격, 도시, 판매자 링크를 100% 정확도로 결합했다. 개발자는 최종적으로 파싱된 광고와 링크를 얻었으며, 이 방법을 다른 복잡한 사이트에 적용할 수 있는 보편적인 프롬프트 컨테이너를 생성했다.
