GRAN PREMIO DE LA APLICACIÓN CYBERYOZH.

GRAN PREMIO DE LA APLICACIÓN CYBERYOZH.

¡Gane Apple MacBook, $2000, iPad y muchos otros premios!

Cómo configurar un proxy móvil para Puppeteer

Puppeteer es un framework de automatización web, diseñado específicamente para navegadores basados en Chromium, que opera principalmente como una biblioteca de JavaScript/Node.js. Funciona mejor para automatización precisa de bajo nivel y es fundamental en la gestión de múltiples cuentas y la optimización de negocios web, donde múltiples acciones deben realizarse de manera regular y rápida.

ℹ️

Puppeteer destaca en el control granular del navegador, haciendo que la integración de proxies en Puppeteer sea la base para una automatización confiable a escala. 

Elegir un proxy para Puppeteer: proxies móviles de CyberYozh

Dado que Puppeteer funciona mejor para automatización web, los proxies móviles son la opción óptima para Puppeteer. Tienen la puntuación de confianza más alta entre todos los tipos de proxies, por lo que las plataformas no restringirán tus sesiones durante las actividades de automatización.

CyberYozh mobile proxies

Para la gestión de redes sociales, flujos de trabajo con múltiples cuentasy cualquier plataforma que aplique análisis de comportamiento estricto, los proxies móviles replican tráfico genuino de nivel de operador que los sistemas reconocen como usuarios reales.

📱

Combina proxies móviles con teléfonos en la nube o navegadores antidetección para lograr un aislamiento completo de huellas digitales, en el que cada sesión recibe una firma de dispositivo única, identidad de red y dirección IP, eliminando la vinculación entre cuentas.

Otras opciones: Proxies residenciales y de centros de datos

Aunque los proxies móviles ofrecen la mejor solución para la mayoría de los flujos de trabajo de Puppeteer con riesgo mínimo de restricción, otros tipos de proxies sirven para sus propios casos de uso como servidor proxy de Puppeteer:

  • Proxies residenciales rotativos ofrecen la opción estándar para la mayoría de las tareas de recopilación de datos, con un gran pool de IPs en más de 100 países. En Puppeteer, úsalos para tareas de scraping masivo que requieren rotación de IP por solicitud. Configura el sufijo -res-any en tu nombre de usuario para permitir que el proveedor maneje la rotación de proxies de Puppeteer automáticamente.

  • Proxies residenciales estáticos asignan una única IP persistente por sesión, haciéndolos confiables para flujos de trabajo vinculados a cuentas con niveles moderados de automatización de Puppeteer. Úsalos cuando la plataforma requiera continuidad de sesión, como paneles de control con inicio de sesión o flujos de pago.

  • Proxies de centros de datos son muy rápidos, pero las plataformas tienden a marcar sus patrones de tráfico no residencial. En Puppeteer, úsalos solo para pruebas de API, benchmarking de rendimiento y QA automatizado en entornos de staging donde la detección de bots es mínima.

ℹ️

Compara proxies residenciales y móviles en un artículo especializado de CyberYozh. Elige cuál funciona mejor para ti.

Preparando tu trabajo con proxies de Puppeteer

Puppeteer lanza una entidad de navegador sin interfaz gráfica con uso mínimo de tráfico de red, y luego automatiza procesos como abrir y cerrar páginas, clics del ratón, entrada de teclado y otras tareas realizadas durante actividades web ordinarias. 

⚙️

Un navegador sin interfaz gráfica es una instancia de Chromium que procesa páginas web y ejecuta JavaScript sin renderizar una GUI visible, reduciendo significativamente la carga de recursos. Por defecto, Puppeteer usa el modo sin interfaz gráfica (headless: true). Pasa headless: false para iniciar una sesión de navegador visible para depuración. Lee más en la documentación de la API de Puppeteer.

Crear una cuenta de CyberYozh

Regístrate en CyberYozh, navega a Mis Proxies, y compra el tipo de proxy para tu tarea: proxy móvil para automatización y flujos de trabajo en redes sociales, o residencial rotativo para scraping. 

CyberYozh dashboard

Abre tu tarjeta de proxy, haz clic en Generar Credenciales, elige tu modo de rotación (IP Aleatoria, Sesión Corta o Sesión Larga), y guarda el host, puerto, nombre de usuario y contraseña.

Configurar Puppeteer en tu PC

Puppeteer requiere Node.js (v18+) y un gestor de paquetes (por ejemplo, npm o yarn). Inicializa tu proyecto e instala la biblioteca:

bash
# Initialize Node.js project
npm init -y

# Install Puppeteer (includes bundled Chromium)
npm install puppeteer
bash
# Alternatively, with Yarn:
yarn add puppeteer

Usar Puppeteer en tu código JavaScript

Existen dos variantes de paquetes para flujos de trabajo de proxy con Puppeteer:

⚙️

puppeteer — el paquete completo que descarga e incluye automáticamente un binario de Chromium compatible. Úsalo para la mayoría de scripts de automatización independientes.

⚙️

puppeteer-core — una versión ligera sin navegador incluido. Úsala cuando controles tú mismo la ruta del binario del navegador (por ejemplo, una instalación específica de Chrome o un entorno en la nube). Requiere que especifiques executablePath explícitamente.

javascript
// puppeteer (full, with bundled Chromium):
const puppeteer = require('puppeteer');

// puppeteer-core (no bundled browser):
const puppeteer = require('puppeteer-core');
// Must also pass: executablePath: '/path/to/chrome' 

Iniciar flujos de trabajo de automatización con CyberYozh

Ahora puedes proceder con tu proyecto de Puppeteer. Comienza con la estructura de tu proyecto, añade las credenciales del proxy de Puppeteer al entorno, y luego importa Puppeteer a tus scripts de Node.js.

⚙️

Usa --proxy-server como argumento de lanzamiento de Chromium, que enruta todo el tráfico de red a nivel de navegador a través de la dirección y puerto de proxy especificados. Se pasa dentro del array args de puppeteer.launch().

Crear la estructura de tu proyecto

Organiza la carpeta de tu proyecto, separando credenciales, scripts, configuración y salida desde el principio:

  1. .env archivo para credenciales de proxy (añadir a .gitignore)

  2. .gitignore para especificar qué no se compartirá vía Git, es decir, credenciales de proxy

  3. index.js para el script principal de Puppeteer

  4. config/browser.js para opciones de lanzamiento del navegador, en una carpeta separada

  5. output/ carpeta para datos extraídos (JSON/CSV) 

Asigna un proxy en el archivo .env 

Añade tus credenciales de CyberYozh como variables de entorno. Nunca las codifiques directamente en archivos fuente para evitar la filtración de credenciales al control de versiones.

plaintext
PROXY_HOST=your_proxy_ip
PROXY_PORT=your_proxy_port
PROXY_USER=your_username
PROXY_PASS=your_password

Importa y configura Puppeteer

Instala dotenv para cargar variables .env:

bash
npm install dotenv

Luego configura las opciones del servidor proxy de Puppeteer:

javascript
// index.js

require('dotenv').config();

const puppeteer = require('puppeteer'); // or puppeteer-core
const PROXY = `${process.env.PROXY_HOST}:${process.env.PROXY_PORT}`

Crea una sesión de navegación de Puppeteer

Define la entidad del navegador con el argumento del servidor proxy HTTP de Puppeteer , luego autentica la página. Por defecto, la sesión es headless:

javascript
(async () => {
  const browser = await puppeteer.launch({
    headless: true, // false for debugging
    args: [`--proxy-server=http://${PROXY}`]
  });

  const page = await browser.newPage();

  // Authenticate with CyberYozh credentials
  await page.authenticate({
    username: process.env.PROXY_USER,
    password: process.env.PROXY_PASS
  });

 // Access the target site and show its content
  await page.goto('https://httpbin.org/ip');
  const content = await page.content();
  console.log(content);

 // Perform the automation or scraping operations using JS commands as needed

 // Close the session
  await browser.close();
})(); 
💬

Como se señala en un hilo muy votado de Stack Overflow sobre el uso de proxy en Puppeteer, la bandera --proxy-server debe pasarse al lanzar el navegador: no puede cambiarse por página después del lanzamiento.

Despliega tu código y monitorea el proceso

Ejecuta tu script de automatización desde la raíz del proyecto y verifica que la rotación de IP esté funcionando:

bash
node index.js

Para la rotación de proxy de Puppeteer a través de múltiples sesiones, mantén un pool de proxies y reasigna proxies relanzando instancias del navegador. 

💡

Usa la clave de API de CyberYozh con el Verificador de IP para automatizar la rotación y verificar la calidad de cada IP entrante antes de usarla, minimizando el riesgo de restricciones durante operaciones masivas con múltiples cuentas. 

📚 Lee más sobre CyberYozh

Resumen: Uso eficiente de proxy en Puppeteer

La integración de proxy de Puppeteer con proxies móviles de CyberYozh proporciona la base más confiable para la automatización web. Combina el control del navegador Node.js con IPs móviles de alta confianza y rotación impulsada por API para sostener flujos de trabajo de automatización empresarial y multicuenta a escala sin activar restricciones de plataforma.

Preguntas frecuentes sobre proxies de Puppeteer

¿Qué es un proxy de Puppeteer y por qué necesito uno?

Un proxy de Puppeteer enruta el tráfico de tu navegador headless a través de una dirección IP externa, enmascarando tu origen. Previene bloqueos de IP, habilita la segmentación geográfica y hace que las sesiones automatizadas parezcan actividad orgánica de usuario.

¿Cómo uso un proxy en Puppeteer?

Pasa la bandera --proxy-server=host:port dentro del array args de puppeteer.launch(), luego llama a page.authenticate({ username, password }) para servidores proxy privados. No se requiere ninguna biblioteca adicional para configuraciones básicas.

¿Cuál es la diferencia entre puppeteer y puppeteer-core?

puppeteer incluye un binario de Chromium compatible y está listo para usar después de npm install. puppeteer-core es una versión ligera sin navegador incluido; debes proporcionar el executablePath a una instalación existente de Chrome o Chromium.

¿Puppeteer soporta proxies SOCKS5?

Sí. Pasa --proxy-server=socks5://host:port en el array args. Los proxies SOCKS5 soportan tunelización completa a nivel TCP, que incluye tráfico no HTTP que los proxies HTTP no pueden retransmitir.

¿Cómo funciona la rotación de proxies en Puppeteer?

Con los proxies rotativos de CyberYozh, la rotación está integrada en la infraestructura del proxy: cada nueva conexión o sesión usa una IP nueva. Para rotación por navegador en Puppeteer, reinicia una nueva instancia del navegador con puppeteer.launch() para cada proxy en tu pool.

¿Puedo establecer un proxy diferente por página en Puppeteer?

No nativamente a nivel de página: la bandera --proxy-server se aplica globalmente al proceso del navegador. Para proxies por sesión, lanza una instancia de navegador separada para cada proxy, o usa el módulo npm puppeteer-page-proxy para intercepción por página.

¿Qué tipo de proxy de CyberYozh debo usar para automatización de redes sociales en Puppeteer?

Los proxies móviles son la elección correcta: replican tráfico real de operador y tienen la puntuación de confianza más alta en plataformas como Instagram, TikTok y X. Combínalos con navegadores antidetección para aislamiento completo de huella digital.

¿Cómo prevengo fugas de IP en Puppeteer?

Deshabilita WebRTC para evitar que transmita tu IP real: pasa --disable-webrtc o sobrescribe RTCPeerConnection a través de page.evaluateOnNewDocument(). También asegúrate de que las consultas DNS se enruten a través del proxy, no se resuelvan localmente.

¿Cómo verifico que el proxy funciona en Puppeteer?

Navega a https://httpbin.org/ip o https://app.cyberyozh.com/checkers/ip-address/ dentro de tu sesión de Puppeteer. La IP devuelta debe coincidir con la dirección de tu proxy. Si aún muestra tu IP de origen, verifica que page.authenticate() se haya llamado antes de page.goto().

¿Qué debo hacer si mi automatización de Puppeteer sigue siendo bloqueada?

Verifica que tus IPs tengan una puntuación de fraude baja usando el CyberYozh IP Checker, reduce la velocidad de los intervalos de solicitud y aleatoriza las cadenas de user-agent y los tamaños de viewport. Para plataformas de alta seguridad, combina los proxies móviles de CyberYozh con un navegador antidetección.

¿Puppeteer funciona con proxies HTTP y HTTPS?

Sí. La bandera --proxy-server admite tanto esquemas http:// como https:// , y Puppeteer canalizará automáticamente el tráfico HTTPS a través de túneles CONNECT mediante el proxy.