En este tutorial, exploraremos cómo usar Puppeteer para automatizar operaciones RPA en Nstbrowser. Siguiendo este tutorial, podrás:
Así que vamos a sumergirnos y desbloquear el potencial de RPA con Puppeteer y Nstbrowser.
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
¿Tienes ideas y dudas interesantes sobre el web scraping y el Browserless?
¡Veamos qué comparten otros desarrolladores en Discord y Telegram!
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.
Antes de empezar, asegúrate de tener lo siguiente:
npm install
. Esto creará un archivo package.json
que contiene todas las dependencias.npm init -y
npm install puppeteer-core
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
Antes de comenzar nuestro trabajo, debes obtener la clave API y el ProfileID.
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.
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
your api key
y your profile id
con tu clave API y ProfileID reales.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);
}
}
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.
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();
Esperamos que hayas aprendido tres puntos clave a través de este tutorial:
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.