
1. Descargar la lista
curl -sL https://raw.githubusercontent.com/xyzs996/free-proxy-health-list/main/all.txt -o proxies.txt2. Cargar y rotar
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")Notas que ahorran tiempo
Los proxies gratuitos fallan a menudo por naturaleza, así que el bucle de arriba es lo importante: prueba siempre la siguiente entrada en lugar de tratar un fallo como algo fatal. Mantén el timeout corto —un proxy muerto te cuesta el timeout completo en cada petición— y vuelve a descargar la lista al ritmo de publicación para no estar reciclando entradas que caducaron hace horas. Respeta robots.txt y los términos del sitio: la rotación sirve para repartir carga, no para eludir controles de acceso.
Guías relacionadas
Límites de la instantánea pública
Los proxies públicos gratuitos son compartidos y los operan terceros desconocidos. Nunca envíes contraseñas, tokens ni datos personales a través de ellos. Cumple las políticas de uso aceptable de GitHub: nada de spam, ataques, elusión de controles de acceso ni scraping contrario a las políticas del sitio.
Los proxies públicos gratuitos son compartidos y los operan terceros desconocidos. Nunca envíes contraseñas, tokens ni datos personales a través de ellos. Cumple las políticas de uso aceptable de GitHub: nada de spam, ataques, elusión de controles de acceso ni scraping contrario a las políticas del sitio.