GBProxies

Selenium에서 프록시 사용 방법

Chrome에서 Selenium은 --proxy-server 플래그에 사용자 이름과 비밀번호를 받아들이지 않아요. 가장 간단한 방법은 로그인을 처리해 주는 selenium-wire를 사용하는 거예요.

단계

  1. pip install selenium-wire로 selenium-wire 설치
  2. seleniumwire_options에 사용자 이름과 비밀번호가 포함된 프록시 URL 전달
  3. 드라이버를 시작하고 대상 페이지 열기
  4. 전체 테스트 동안 하나의 IP를 유지하려면 세션 ID 사용

예제 코드

from seleniumwire import webdriver

proxy = "http://USERNAME-cc-ca:PASSWORD@gw.gbproxies.cc:10000"
driver = webdriver.Chrome(seleniumwire_options={
    "proxy": {"http": proxy, "https": proxy, "no_proxy": "localhost,127.0.0.1"}
})
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()

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

팁

  • Chrome 환경설정에서 이미지를 끄고 GB 절약
  • 고정 세션당 하나의 드라이버 실행

자주 묻는 질문

추가 패키지 없이 일반 Selenium을 사용할 수 있나요?

Chrome는 프록시 로그인을 위해 확장 프로그램이나 selenium-wire가 필요해요. Firefox는 프로필에서 자격 증명을 읽을 수 있어요.

Selenium에서 프록시 사용 방법