
1. 목록 내려받기
curl -sL https://raw.githubusercontent.com/xyzs996/free-proxy-health-list/main/all.txt -o proxies.txt2. 불러와 순환하기
import itertools, requests
proxies = [line.strip() for line in open("proxies.txt") if line.strip()]
pool = itertools.cycle(proxies)
def fetch(url):
for _ in range(10):
proxy = next(pool)
try:
return requests.get(
url,
proxies={"http": f"http://{proxy}", "https": f"http://{proxy}"},
timeout=8,
)
except requests.RequestException:
continue
raise RuntimeError("no working proxy")시간을 아껴 주는 참고 사항
무료 프록시는 본래 자주 실패하므로 위 루프가 핵심입니다. 한 번의 실패를 치명적으로 보지 말고 항상 다음 항목을 시도하세요. 타임아웃은 짧게 — 죽은 프록시는 요청마다 타임아웃을 전부 소모합니다 — 그리고 게시 주기에 맞춰 목록을 다시 받아 몇 시간 전에 만료된 항목을 계속 돌리지 마세요. robots.txt와 대상 사이트 약관을 지키세요. 순환은 부하 분산을 위한 것이지 접근 제어 우회를 위한 것이 아닙니다.
관련 가이드
공개 스냅샷 이용 범위
무료 공개 프록시는 알 수 없는 주체가 운영하며 공유됩니다. 비밀번호, 토큰, 개인정보를 전송하지 마세요. GitHub 이용 정책에 따라 스팸, 공격, 접근 제어 우회, 사이트 정책에 어긋나는 수집에 사용하지 마세요.
무료 공개 프록시는 알 수 없는 주체가 운영하며 공유됩니다. 비밀번호, 토큰, 개인정보를 전송하지 마세요. GitHub 이용 정책에 따라 스팸, 공격, 접근 제어 우회, 사이트 정책에 어긋나는 수집에 사용하지 마세요.