🎉¡Todas las funciones son gratuitas e ilimitadas! Disfruta de perfiles y equipos ilimitados por $0
Empezó gratis
Volver a Blog
RPA
Java
¿Cómo usar Puppeteer para Automatizar Operaciones RPA en Nstbrowser?
¿Qué es Nstbrowser? ¿Es difícil configurar Puppeteer para Nstbrowser RPA? Empieza a leer y disfruta de una automatización eficaz.
May 28, 2024

En este tutorial, exploraremos cómo usar Puppeteer para automatizar operaciones RPA en Nstbrowser. Siguiendo este tutorial, podrás:

  • Obtener una comprensión fundamental de las capacidades de Puppeteer para la automatización RPA
  • Aprender a aprovechar su poder para mejorar tus procesos empresariales.

Así que vamos a sumergirnos y desbloquear el potencial de RPA con Puppeteer y Nstbrowser.

¿Qué es RPA?

RPA (Automatización de Procesos Robóticos) es una tecnología para automatizar procesos empresariales basada en robots de software e inteligencia artificial.

En las herramientas tradicionales de automatización de flujos de trabajo, las tareas de automatización son generalmente creadas por programadores y utilizan interfaces de programación de aplicaciones internas (API) o lenguajes de scripting especializados como interfaces para los sistemas backend. Algunos software pueden no tener una API para tales propósitos, y RPA puede bajar la barrera para la automatización.

¿Buscas una manera de gestionar múltiples cuentas de manera efectiva?
RPA de Nstbrowser puede ayudar

¿Qué es Nstbrowser?

Nstbrowser es un Navegador Anti-Detección Gratuito que simplifica el Web Scraping y la Automatización. Se integra con Anti-detect, Web Unblocker y Proxies Inteligentes.

Además, Nstbrowser también soporta Clústeres de Contenedores en la Nube, Browserless, y una solución de navegador en la nube de nivel empresarial compatible con Windows/Mac/Linux. Obviamente, permite una automatización sin fisuras incluso cuando las API tradicionales o los lenguajes de scripting no están disponibles.

¡Sigue desplazándote!

Es hora de usar Puppeteer para automatizar operaciones RPA.

Requisitos previos:

Antes de empezar, asegúrate de tener lo siguiente:

  • Cliente Nstbrowser: Necesitas iniciarlo e iniciar sesión.
  • Node.js (o nvm) y npm: Debes instalarlos para que el código funcione correctamente.
  • Luego, instala todas las bibliotecas necesarias ejecutando npm install. Esto creará un archivo package.json que contiene todas las dependencias.
npm init -y
npm install puppeteer-core

Conectando Puppeteer con Nstbrowser

Paso 1: Inicializa tu proyecto

Crea un nuevo directorio de proyecto y navega dentro de él. Luego, inicializa un nuevo proyecto Node.js e instala puppeteer-core.

mkdir my-automation-project
cd my-automation-project
npm init -y
npm install puppeteer-core

Paso 2: Obtén tu clave API y ProfileID

Antes de comenzar nuestro trabajo, debes obtener la clave API y el ProfileID.

  • ¿Cómo obtener la clave API? Inicia sesión en Nstbrowser y navega al menú API.
API key in Nstbrowser
  • ¿Cómo obtener el ProfileID? Ve al menú Perfiles:
ProfileID in Nstbrowser

Después de obtener con éxito la clave API y el ProfileID, vamos a configurar Puppeteer para conectarse con Nstbrowser utilizando tu clave API y ProfileID.

Paso 3. Configura Puppeteer

Crea un archivo JavaScript (por ejemplo, index.js) en tu directorio de proyecto y agrega el siguiente código:

import puppeteer from 'puppeteer-core';

async function execPuppeteer(browserWSEndpoint) {
  try {
    const browser = await puppeteer.connect({
      browserWSEndpoint: browserWSEndpoint,
      defaultViewport: null,
    });
    await browser.newPage();
  } catch (err) {
    console.error('launch', err);
  }
}

async function launchAndConnectToBrowser(profileId) {
  const host = 'localhost:8848';
  const apiKey = 'your api key'; // Replace with your actual API key
  const config = {
    headless: false, // support: true, 'new'
    autoClose: true,
  };
  const query = new URLSearchParams({
    'x-api-key': apiKey, // required
    config: encodeURIComponent(JSON.stringify(config)),
  });
  const browserWSEndpoint = `ws://${host}/devtool/launch/${profileId}?${query.toString()}`;
  await execPuppeteer(browserWSEndpoint);
}

launchAndConnectToBrowser('your profile id').then(); // Replace with your actual ProfileId
  • Nota: Reemplaza your api key y your profile id con tu clave API y ProfileID reales.

Inicio de sesión automático en tu cuenta de Amazon

Paso 4: Automatiza el inicio de sesión en Amazon

Después de conectarte al navegador Nstbrowser, puedes realizar algunas acciones que deseas implementar en RPA, como iniciar sesión automáticamente en tu cuenta de Amazon. Actualiza la función execPuppeteer para incluir los pasos:

async function execPuppeteer(browserWSEndpoint) {
  try {
    const browser = await puppeteer.connect({
      browserWSEndpoint: browserWSEndpoint,
      defaultViewport: null,
    });
    const page = await browser.newPage();
    await page.goto('https://www.amazon.com');
 
    // go to sign in page
    const signInSelector = '#nav-link-accountList';
    await page.waitForSelector(signInSelector);
    await page.click(signInSelector);
    
    // type your account
    const accountInputSelector = '#ap_email';
    await page.waitForSelector(accountInputSelector);
    await page.type(accountInputSelector, 'your account');
    
    // click continue button
    const continueSelector = 'input#continue';
    await page.waitForSelector(continueSelector);
    await page.click(continueSelector);
    
    // type your password
    const passowrdInputSelector = '#ap_password';
    await page.waitForSelector(passowrdInputSelector);
    await page.type(passowrdInputSelector, 'your password');
    
    // click submit button
    const signInSubmitSelector = '#signInSubmit';
    await page.waitForSelector(signInSubmitSelector);
    await page.click(signInSubmitSelector);
  } catch (err) {
    console.error('launch', err);
  }
}
  • Nota: Reemplaza your account y your password con tus credenciales de inicio de sesión de Amazon reales.

De esta manera, has iniciado sesión automáticamente en tu cuenta de Amazon. Esta es solo una operación muy común y básica de la función RPA, más escenarios RPA están esperando ser descubiertos.

Código completo

import puppeteer from 'puppeteer-core';

async function execPuppeteer(browserWSEndpoint) {
  try {
    const browser = await puppeteer.connect({
      browserWSEndpoint: browserWSEndpoint,
      defaultViewport: null,
    });
    const page = await browser.newPage();
    await page.goto('https://www.amazon.com');
 
    // Go to sign-in page
    const signInSelector = '#nav-link-accountList';
    await page.waitForSelector(signInSelector);
    await page.click(signInSelector);
    
    // Type your account
    const accountInputSelector = '#ap_email';
    await page.waitForSelector(accountInputSelector);
    await page.type(accountInputSelector, 'your account');
    
    // Click continue button
    const continueSelector = 'input#continue';
    await page.waitForSelector(continueSelector);
    await page.click(continueSelector);
    
    // Type your password
    const passwordInputSelector = '#ap_password';
    await page.waitForSelector(passwordInputSelector);
    await page.type(passwordInputSelector, 'your password');
    
    // Click submit button
    const signInSubmitSelector = '#signInSubmit';
    await page.waitForSelector(signInSubmitSelector);
    await page.click(signInSubmitSelector);
  } catch (err) {
    console.error('launch', err);
  }
}

async function launchAndConnectToBrowser(profileId) {
  const host = 'localhost:8848';
  const apiKey = 'your api key';
  const config = {
    headless: false, // support: true, 'new'
    autoClose: true,
  };
  const query = new URLSearchParams({
    'x-api-key': apiKey, // required
    config: encodeURIComponent(JSON.stringify((config))),
  });
  const browserWSEndpoint = `ws://${host}/devtool/launch/${profileId}?${query.toString()}`;
  await execPuppeteer(browserWSEndpoint);
}

launchAndConnectToBrowser('your profile id').then();

Conclusión

Esperamos que hayas aprendido tres puntos clave a través de este tutorial:

  1. Comprender los conceptos básicos de la automatización con Puppeteer
  2. Entender cómo usar Puppeteer para conectarse a Nstbrowser.
  3. Poder descubrir más sobre escenarios de RPA.

Aprovechando Puppeteer y Nstbrowser, puedes crear flujos de trabajo automatizados y eficientes para manejar tareas repetitivas, gestionar múltiples cuentas y realizar tareas sofisticadas de automatización web.

Más