Aviso:

Para brindarle información de soporte completa de manera más rápida, el contenido de esta página ha sido traducido al español mediante traducción automática. Para consultar la información de soporte más precisa, consulte la versión en inglés de este contenido.

Conectarse a Headless con el Function Stack de NodeJS

En esta sección encontrará los scripts necesarios para conectarse a headless usando el function stack de NodeJS con la biblioteca de automatización de navegador de su preferencia:

Puppeteer

Usando Puppeteer Sin SmartBrowz

copy
import puppeteer from 'puppeteer';
(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('http://example.com/');
  await page.screenshot({‘path’:’example.png’})  
  await browser.close();
})();

Usando Puppeteer Con SmartBrowz

copy
// Desde dentro de tu aplicación Node
const puppeteer = require("puppeteer-core");

// Reemplazar puppeteer.launch con puppeteer.connect const browser = await puppeteer.connect({ browserWSEndpoint: ‘YOUR_CDP_ENDPOINT’ });

// El resto de tu script permanece igual const page = await browser.newPage(); await page.goto(‘https://example.com/'); await page.screenshot({ path: ‘screenshot.png’ }); page.close();

Nota: Copie el CDP Endpoint de la consola y péguelo en la línea "6" cuando implemente este código.

Playwright

Usando Playwright Sin SmartBrowz

copy
import { test } from '@playwright/test';
test('Page Screenshot', async ({ page }) => {
  await page.goto('http://example.com/‘);
  await page.screenshot({ path: `example.png` });
});

Usando Playwright Con SmartBrowz

copy
// Desde dentro de tu aplicación Node
const pw = require('playwright-core'); 
// Reemplazar pw.chromium.launch con connectOverCDP
const browser = await pw.chromium.connectOverCDP({
wsEndpoint: 'YOUR_CDP_ENDPOINT'
});
// El resto de tu script permanece igual
const page = await browser.newPage();
await page.goto('https://www.example.com/');
await page.screenshot({ path: 'example.png' });
await browser.close();
Nota: Copie el CDP Endpoint de la consola y péguelo en la línea "5" cuando implemente este código.

Selenium

Usando Selenium Sin SmartBrowz

copy
require("chromedriver");
require("selenium-webdriver")
let webdriver = require("selenium-webdriver");
var By = require("selenium-webdriver").By;
let browser = new webdriver.Builder();
let driver = browser.forBrowser("chrome").build();
driver.get('https://example.com/');
driver.takeScreenshot().then(
    function(image) {
        require('fs').writeFileSync('captured_image_3.png', image, 'base64');
    }
);

driver.quit();

Usando Selenium Con SmartBrowz

copy
// Desde dentro de tu aplicación Node
const webdriver = require('selenium-webdriver'),
chrome = require('selenium-webdriver/chrome'); 
const chromeCapabilities = webdriver.Capabilities.chrome();
var options = new chrome.Options();
options.addArguments("--no-sandbox");
options.addArguments('--headless') 
options.addArguments('--disable-dev-shm-usage')
const driver = new webdriver.Builder()
  .forBrowser('chrome') 
  .setChromeOptions(options)
  .withCapabilities(chromeCapabilities)
  .usingServer('YOUR_WEBDRIVER_ENDPOINT')
  .build();
// El resto de tu script permanece igual
await driver.get('https://www.example.com/');
const base64png = await driver.takeScreenshot();
fs.writeFileSync('/tmp/screenshot.png',new Buffer(base64png, 'base64'));
driver.quit();
Nota: Copie el Webdriver Endpoint de la consola y péguelo en la línea "13" cuando implemente este código.

Última actualización 2026-03-30 13:40:30 +0530 IST

EN ESTA PÁGINA