Socks5Proxy

Guía de conexión: cómo configurar proxies SOCKS5/HTTP por lenguaje y herramienta

Guía de conexión para Socks5Proxy: configuración de proxies SOCKS5/HTTP en Python requests, Node.js, cURL, Selenium, Puppeteer, Playwright y Scrapy con ejemplos de código funcional.

Python requestsHe organizado cómo conectar proxies HTTP y SOCKS5 (socks5h) en Python requests, junto con autenticación, rotación de listas, reintentos y gestión de sesiones, con código real.Node.jsHe organizado cómo conectar un proxy HTTP con ProxyAgent y un proxy SOCKS5 con socks-proxy-agent en Node.js fetch(undici), junto con el código para rotar listas.cURLMétodos para conectar proxies HTTP (-x) y SOCKS5 (--socks5-hostname) con cURL, autenticación, medición de tiempo de respuesta y script para verificación masiva de listas.SeleniumGuía para conectar proxies HTTP/SOCKS5 a Chrome/Firefox desde Selenium, razones para usar autorización por IP en Chrome, y ejecución paralela de múltiples navegadores.PuppeteerHe organizado cómo conectar proxies HTTP y SOCKS5 con --proxy-server en Puppeteer y cómo pasar el nombre de usuario y la contraseña con page.authenticate, junto con la separación de IPs por navegador.PlaywrightHe organizado cómo conectar proxies HTTP y SOCKS5 con la opción proxy en Playwright, cómo usar diferentes IPs por contexto, y ejemplos en Python y Node.js.ScrapyGuía para conectar proxies en Scrapy usando HttpProxyMiddleware y meta proxy, middleware rotativo para cambiar IPs por solicitud, y ajustes de velocidad.

¿Qué información necesito para conectar a un proxy?

Cada línea contiene: IP, puertos HTTP/SOCKS5, usuario y contraseña. Descarga listas desde el dashboard o usa la API para obtener los mismos datos.

Todos los ejemplos de esta guía usan la IP 198.51.100.23, puerto HTTP 8000, puerto SOCKS5 1080, username spx_user y password spx_pass. La red 198.51.100.0/24 está reservada para documentación y no se puede conectar realmente, así que cámbiala por los valores de tu lista de proxies.

Hay dos métodos de autenticación: nombre de usuario y contraseña, o autorización por IP, donde puedes registrar hasta 10 direcciones IPv4 de tu servidor en el panel para conexiones solo con ip:port. Es útil en herramientas que no admiten contraseñas, como los argumentos de ejecución de Chrome.

ÍtemValor de ejemploDescripción
IP198.51.100.23Dirección del servidor proxy
Puerto HTTP8000Conexión HTTP y HTTPS(CONNECT)
Puerto SOCKS51080Conexión TCP SOCKS5
Usuariospx_userAutenticación por usuario/contraseña
Contraseñaspx_passAutenticación por usuario/contraseña

¿Cómo conectarse, con HTTP o SOCKS5?

La mayoría de las tareas que solicitan páginas web y API son suficientes con el puerto HTTP. Las direcciones HTTPS también se transmiten cifradas mediante el método CONNECT, por lo que el proxy no altera el contenido.

SOCKS5 puede manejar conexiones TCP no HTTP y delegar la resolución DNS al proxy. En Python usa socks5h, en cURL --socks5-hostname para que las consultas DNS no salgan de tu servidor. Cada IP tiene ambos puertos, así que elige el que tu herramienta soporte.

¿Cómo puedo obtener y usar la lista mediante código?

Las claves API se crean en la sección de claves API del dashboard y solo se muestran una vez, así que guárdalas en un lugar seguro. Incluye la clave en el encabezado 'Authorization: Bearer' en todas las solicitudes. Este código es un ejemplo en Python para obtener una lista SOCKS5 en formato user:pass@ip:port. Las guías explican cómo conectar esta lista a las herramientas.

import requests

API = "https://socks5proxy.io/api/v1"
KEY = "YOUR_API_KEY"

# Download the proxy list as plain text, one proxy per line
r = requests.get(
    API + "/proxies/download",
    params={"format": "user:pass@ip:port", "protocol": "socks5"},
    headers={"Authorization": "Bearer " + KEY},
    timeout=30,
)
r.raise_for_status()
proxies = [line.strip() for line in r.text.splitlines() if line.strip()]
print(len(proxies), "proxies loaded")

¿Por dónde empezar?

Elige la guía según tu lenguaje y herramientas. Todas incluyen verificación de conexión, solución de errores y métodos para distribuir IPs.

  • Python requests: conexión más simple de HTTP y SOCKS5 y rotación de listas
  • Node.js: ProxyAgent(HTTP) y socks-proxy-agent(SOCKS5) de undici
  • cURL: Verificación de conexión y medición de tiempo de respuesta desde la línea de comandos
  • Selenium: Chrome con autorización por IP y configuración para Firefox
  • Puppeteer: --proxy-server y page.authenticate
  • Playwright: proxy por navegador y contexto
  • Scrapy: meta proxy y middleware rotativo por solicitud

¿Qué formato de lista elegir?

Como cada herramienta acepta formatos distintos, al descargar listas puedes seleccionar el formato. La mayoría de bibliotecas aceptan direcciones directamente (http://user:pass@ip:port o socks5://user:pass@ip:port). Para programas con campos separados para IP, puerto, usuario y contraseña, usa ip:port:user:pass para facilitar el copiado.

Si usas autorización por IP, elige el formato ip:port. Para programas de cálculo o documentos de gestión, el formato CSV es conveniente. Puedes obtener la misma lista para HTTP y SOCKS5 por separado, con solo los puertos diferentes.

FormatoEjemploCasos de uso
ip:port:user:pass198.51.100.23:8000:spx_user:spx_passPantalla de configuración dividida
user:pass@ip:portspx_user:spx_pass@198.51.100.23:8000Ensamblado de direcciones en código
http://user:pass@ip:porthttp://spx_user:spx_pass@198.51.100.23:8000requests, cURL, Scrapy
socks5://user:pass@ip:portsocks5://spx_user:spx_pass@198.51.100.23:1080Biblioteca SOCKS5
ip:port198.51.100.23:8000Autorización por IP, argumentos de ejecución del navegador
CSVip,http_port,socks_port,user,pass,countryCálculos de tabla, documentos de gestión

¿Cómo almacenar la información de proxies de forma segura?

No subas nombres de usuario, contraseñas ni claves API a repositorios de código. Usa variables de entorno o gestores de secretos. Si se expusieron accidentalmente, genera nuevas claves API en el dashboard para invalidar las anteriores.

Si tu servidor tiene IP fija, usar autorización IP es lo más seguro. Aunque la lista se filtre, no se podrá conectar desde IPs no registradas. Puedes añadir hasta 10 IPs permitidas y cambiarlas en cualquier momento.

Si hay varios miembros en el equipo, es más fácil que cada uno reciba la lista a través de la API en lugar de compartir archivos en una carpeta. También es útil tener un registro de las listas recibidas para verificar problemas.

¿Qué verificar si no se establece la conexión?

Primero, prueba con cURL en una línea para verificar si el proxy responde. Un código 407 significa que el nombre de usuario o la contraseña son incorrectos, y si estás usando autorización por IP, verifica que la IP del servidor que envía la solicitud esté en la lista permitida. Si el tiempo de conexión se agota, verifica el puerto (como HTTP 8000 o SOCKS5 1080, que varían en cada línea).

Si el problema persiste, puedes contactar al soporte desde el panel. Proporciona la línea utilizada, la herramienta y el mensaje de error para una revisión rápida.

Guía de conexión: configuración para Python, Node.js y Selenium | Socks5Proxy