GBProxies

Puppeteer에서 인증 프록시 사용 방법

Chrome은 프록시 호스트와 포트를 실행 플래그로 받아들이고, Puppeteer는 로그인 프롬프트에 page.authenticate로 응답해요.

단계

  1. --proxy-server=host:port로 Chrome 실행
  2. 프록시 사용자 이름과 비밀번호로 page.authenticate 호출
  3. 이미지와 폰트를 차단하려면 요청 가로채기를 켜세요
  4. 고정 IP를 위해 세션 ID당 하나의 브라우저를 열세요

예제 코드

import puppeteer from "puppeteer";

const browser = await puppeteer.launch({ args: ["--proxy-server=gw.gbproxies.cc:10000"] });
const page = await browser.newPage();
await page.authenticate({ username: "USERNAME-cc-fr-sid-shop1-ttl-30", password: "PASSWORD" });
await page.setRequestInterception(true);
page.on("request", (r) => (["image", "font", "media"].includes(r.resourceType()) ? r.abort() : r.continue()));
await page.goto("https://api.ipify.org");
console.log(await page.content());
await browser.close();

프록시 콘솔의 Proxies 페이지에서 프록시 로그인 정보로 USERNAME과 PASSWORD를 입력하세요. 포트 10000은 residential HTTP용이에요. 각 제품의 포트는 아래에서 확인할 수 있어요.

팁

  • 이미지를 차단하면 페이지당 트래픽을 절반 이상 줄일 수 있어요
  • 고정 세션 ID로 전체 브라우징 흐름 동안 같은 IP를 유지할 수 있어요

자주 묻는 질문

왜 Chrome에 로그인 팝업이 계속 표시되나요?

페이지의 첫 번째 탐색 전에 page.authenticate를 실행해야 해요.

Puppeteer에서 인증 프록시 사용 방법