Início / Casos de uso / Proxy rotativo
Pool de proxies rotativos grátis
Um proxy rotativo envia cada requisição de um IP diferente. Você não precisa de um serviço pago — dá para montar seu próprio pool com uma lista gratuita verificada a cada hora.
O padrão de rotação
Três partes: carregar um pool verificado, rotacionar para o próximo proxy a cada chamada e atualizar o pool por um temporizador para substituir proxies mortos.
import itertools, time, requests
LIST = "https://raw.githubusercontent.com/xyzs996/free-proxy-health-list/main/proxies/all/data.json"
def load_pool():
data = requests.get(LIST, timeout=15).json()
def to_url(p):
proto, hp = p["protocol"], p["proxy"]
if proto.startswith("socks5"): return f"socks5h://{hp}"
if proto.startswith("socks4"): return f"socks4://{hp}"
return f"http://{hp}"
return [to_url(p) for p in data]
pool = load_pool()
cycle = itertools.cycle(pool)
refreshed = time.time()
def get(url, tries=10):
global pool, cycle, refreshed
if time.time() - refreshed > 1800:
pool = load_pool(); cycle = itertools.cycle(pool); refreshed = time.time()
for _ in range(tries):
px = next(cycle)
try:
r = requests.get(url, proxies={"http": px, "https": px}, timeout=8)
if r.ok: return r
except requests.RequestException:
continue
raise RuntimeError("no working proxy this round")
print(get("https://httpbin.org/ip").json())
Dicas para um pool mais saudável
Comece pelos subconjuntos rápido ou top-1000 para uma taxa de acerto melhor, descarte proxies que falham duas vezes seguidas e atualize com mais frequência se a taxa de sucesso cair. A lista é reverificada a cada hora.
Perguntas frequentes
Dá para montar um proxy rotativo grátis?
Sim — rotacione uma lista verificada e repita o próximo ao falhar. Rotacionar + repetir é o que torna os proxies gratuitos usáveis.
Com que frequência atualizo o pool?
A cada 15-60 minutos. A lista fonte é verificada a cada hora.
Quando vale pagar?
Se você precisa de uma URL rotativa estável com SLA, veja a Pro API.