Python Scrapy에서 프록시 설정 및 IP 순환 방법

업데이트:

Scrapy의 비동기 Twisted 엔진은 우선순위 750에서 동작하는 내장 HttpProxyMiddleware를 제공하며, request.meta['proxy']에 지정된 http://user:pass@ip:port 형식의 문자열을 자동 파싱합니다. 우선순위 740에 10줄 내외의 커스텀 다운로더 미들웨어(Downloader Middleware)를 작성하기만 하면 스파이더가 대역폭 무제한 VinaProxy 고정 IP 풀을 자동으로 순환하며 수집할 수 있습니다.

Scrapy · HTTP Proxy Format
request.meta['proxy'] = 'http://user:pass@ip:port'
전용 IPv4 (데이터센터)
🇺🇸 United States
재고 있음
최저
₫20,000 / IP / 월
≈ US$0.74 · VND로 결제
수량별 할인 요금
  • 1개 IP₫40,000
  • 5+ IP₫35,000
  • 10+ IP₫25,000
  • 20+ IP₫25,000
  • 50+ IP₫25,000
  • 100+ IP₫25,000
  • 200+ IP₫25,000
  • 500+ IP₫25,000
  • 1000+ IP₫22,000
  • 2000+ IP₫20,000
United States 프록시 구매
전용 IPv4 (데이터센터)
🇬🇧 United Kingdom
재고 있음
최저
₫20,000 / IP / 월
≈ US$0.74 · VND로 결제
수량별 할인 요금
  • 1개 IP₫40,000
  • 5+ IP₫35,000
  • 10+ IP₫25,000
  • 20+ IP₫25,000
  • 50+ IP₫25,000
  • 100+ IP₫25,000
  • 200+ IP₫25,000
  • 500+ IP₫25,000
  • 1000+ IP₫22,000
  • 2000+ IP₫20,000
United Kingdom 프록시 구매

Scrapy 프록시 미들웨어 우선순위 및 동시성 제어 구성

내장 HttpProxyMiddleware가 우선순위 750에서 프록시 URL의 user:pass를 제거하고 Proxy-Authorization 헤더를 인코딩하므로, request.meta['proxy']를 지정하는 커스텀 미들웨어는 반드시 더 낮은 번호(예: 740)로 설정해야 합니다:

Scrapy 설정 항목권장 설정값기술적 기능 및 목적
request.meta['proxy']'http://user:pass@ip:port'지정된 VinaProxy 프록시를 통해 요청을 라우팅
미들웨어 우선순위740 (750 이전)내장 HttpProxyMiddleware가 인증 헤더를 안전하게 인코딩하도록 보장
CONCURRENT_REQUESTS_PER_IP2 ~ 4프록시 IP당 동시 소켓 수를 제한하여 대상 사이트의 HTTP 429 차단 방지
AUTOTHROTTLE_ENABLEDTrue대상 서버의 응답 지연 시간에 맞춰 크롤링 간격을 동적으로 자동 조절

대규모 Scrapy 크롤링을 위한 모범 사례

  • 미들웨어의 from_crawler()에서 VinaProxy 프록시 목록을 로드하고, process_request() 내부에서 request.meta['proxy'] = random.choice(self.proxies)를 통해 IP를 무작위 선택합니다
  • DOWNLOAD_DELAY = 1.0과 함께 RANDOMIZE_DOWNLOAD_DELAY = True를 활성화하여 IP별 요청 주기가 인위적으로 보이지 않도록 구성하세요
  • 요청 실패 및 재시도(429 또는 503) 시에는 해당 요청을 큐에 다시 넣기 전에 다른 프록시 IP를 배정합니다

단계별 안내

  1. 1

    프록시 목록을 http://user:pass@ip:port 형식으로 변환

    VinaProxy 프록시 목록을 당사의 프록시 형식 변환 도구에 입력하여 표준 URL 형식으로 일괄 변환합니다.

  2. 2

    middlewares.py에 ProxyPoolMiddleware 구현

    process_request(self, request, spider)를 정의하고 request.meta['proxy'] = random.choice(self.proxies)를 지정합니다.

  3. 3

    settings.py에서 우선순위 740으로 미들웨어 등록

    DOWNLOADER_MIDDLEWARES에 'myproject.middlewares.ProxyPoolMiddleware': 740을 추가하고 CONCURRENT_REQUESTS_PER_IP = 2를 설정합니다.

  4. 4

    scrapy shell 또는 크롤링 명령어로 검증

    https://vinaproxy.com/api/my-ip로 테스트 요청을 실행하여 IP 순환 및 프록시 인증 정상 작동을 확인합니다.

자주 묻는 질문

커스텀 Scrapy 프록시 미들웨어를 우선순위 800으로 설정했을 때 실패한 이유는?

Scrapy의 내장 HttpProxyMiddleware는 우선순위 750에서 동작합니다. 미들웨어를 800(750 이후)으로 지정하면 URL 내의 user:pass가 Proxy-Authorization 헤더로 변환되지 않습니다. 반드시 750보다 앞선 값(예: 740)으로 지정해야 합니다.

Scrapy는 각 프록시 연결을 지속적으로 유지(Keep-Alive)하나요?

네. Twisted의 연결 풀이 각 프록시 엔드포인트에 대해 영구적인 TCP Keep-Alive 연결을 관리하므로 네트워크 부하를 줄여줍니다.

수백만 페이지 규모의 대용량 크롤링 시 데이터 트래픽 초과 비용이 발생하나요?

아닙니다. 모든 VinaProxy 전용 IPv4 및 고정 ISP 플랜은 월간 무제한 데이터 대역폭을 포함합니다.

무제한 고정 IP 풀로 Scrapy 크롤러 인프라를 확장하세요

글로벌 7개국 지원, 대량 발급 가능한 고품질 전용 IPv4 및 고정 ISP 프록시를 즉시 제공합니다.

Scrapy 프록시 구매

관련 글

플랫폼별 프록시
웹 스크래핑용 프록시: 24/7 크롤러를 위한 무제한 전용 IPv4 & ISP 풀
Python, Playwright, Selenium, Scrapy용 초고속 HTTP(S) 전용 IPv4 및 고정 ISP 프록시. 월간 대역폭 완전 무제한 제공.
도구별 프록시 설정
Python Requests에서 프록시 사용하는 방법 (HTTP/HTTPS & Session 풀링)
Python requests 및 requests.Session()에서 인증된 HTTP(S) 프록시를 설정하는 방법. 407 ProxyError 예외 해결 및 고정 IP 풀 순환 기법.
도구별 프록시 설정
Playwright에서 프록시를 설정하는 방법 (브라우저 전역 및 Per-Context 인증)
Node.js 및 Python Playwright에서 인증된 HTTP(S) 프록시를 구성하세요. BrowserContext를 통해 단일 브라우저 내에서 여러 개의 독립된 고정 IP를 실행할 수 있습니다.
무료 도구
대량 프록시 포맷 변환기 (100% 브라우저 로컬 안전 처리)
100% 브라우저 클라이언트에서 작동하는 프록시 목록 포맷터. ip:port:user:pass, user:pass@ip:port, http:// URL, SOCKS5 URI, JSON 배열 및 FoxyProxy 형식 간 즉시 변환.
플랫폼별 프록시
SEO 및 SERP 순위 추적 프록시: 7개국 현지 검색 순위의 정확한 측정
로컬 키워드 순위 추적, Geo 리다이렉트 감사, Screaming Frog 사이트 크롤링을 트래픽 무제한 전용 IPv4 및 고정 ISP 프록시로 실행하세요.
플랫폼별 프록시
Amazon 프록시: 고정 IP로 셀러센트럴, KDP, Merch 계정을 안전하게 분리
셀러센트럴, KDP, Merch on Demand에서 연관 계정 정지(Section 3)를 방지하세요. 미국 고정 ISP 및 영국/일본 프라이빗 IPv4 프록시.
IPV4 · united states
미국 프라이빗 IPv4 프록시: 빠르고 안정적인 전용 미국 데이터센터 IP
미국 프라이빗 IPv4 프록시: 스크래핑, 순위 추적, 광고 확인 및 아마존 리서치용. 고정 IP, 1인 1IP, 무제한 대역폭, 빠른 활성화.
IPV4 · united kingdom
영국 프라이빗 IPv4 프록시: 셀러, SEO, 광고를 위한 고정 영국 데이터센터 IP
eBay UK·Amazon.co.uk 조사, google.co.uk 순위 추적, 영국 광고 검증 및 SNS용 영국 고정 IP.