ProxyHealthList

Inicio / Casos de uso / Python requests

Cómo usar un proxy en Python requests

Todas las formas de enrutar requests por un proxy — HTTP, HTTPS, SOCKS5, variables de entorno, sesiones y rotación — con proxies de una lista gratuita verificada cada hora.

Lista HTTP (TXT) Lista SOCKS5 (TXT)

Proxy HTTP / HTTPS básico

La forma más simple — un proxy maneja destinos http y https, sin paquetes extra.

import requests

proxy = "http://1.2.3.4:8080"
r = requests.get(
    "https://httpbin.org/ip",
    proxies={"http": proxy, "https": proxy},
    timeout=10,
)
print(r.json())

Proxy SOCKS5

Instala el soporte SOCKS una vez y usa el esquema socks5h:// para que el DNS se resuelva a través del proxy.

pip install "requests[socks]"
proxy = "socks5h://1.2.3.4:1080"
r = requests.get("https://httpbin.org/ip",
                 proxies={"http": proxy, "https": proxy}, timeout=10)

Proxy para toda una sesión

s = requests.Session()
s.proxies = {"http": "http://1.2.3.4:8080", "https": "http://1.2.3.4:8080"}
s.get("https://example.com")

Variables de entorno

export HTTP_PROXY="http://1.2.3.4:8080"
export HTTPS_PROXY="http://1.2.3.4:8080"
python your_script.py

Preguntas frecuentes

¿Por qué mi petición con proxy da timeout?

Los proxies gratuitos son inestables. Usa un timeout corto y salta al siguiente al fallar.

¿http:// o socks5h://?

Usa http:// para HTTP y socks5h:// para SOCKS5; la h resuelve el DNS de forma remota.

¿Sirven con httpx o aiohttp?

Sí — los mismos host:port funcionan con URLs de proxy en la misma forma.

Relacionado