ARMANOS

Automatización

Puppeteer y Playwright, directo a tus perfiles

Cada perfil abierto tiene su propia dirección de depuración. Conecta tu código a ese perfil exacto: con su huella, sus cookies, su proxy. Está en todos los planes, incluido el gratuito.

  1. 1Activa la interfaz local en la aplicación: ajustes, sección «API local». Copia la clave.
  2. 2Pídele que abra un perfil. Responde con una dirección que pertenece solo a ese perfil.
  3. 3Conecta tu código a esa dirección como si fuera un navegador cualquiera.
  4. 4Trabaja como siempre. La huella, las cookies y el proxy ya están puestos.

JavaScript (puppeteer-core)

const puppeteer = require('puppeteer-core');

(async () => {
  // 1. Ask the app for this profile's debugging endpoint.
  const started = await fetch(
    'http://127.0.0.1:50325/api/v1/browser/start?profileId=YOUR_PROFILE_ID',
    { method: 'POST', headers: { 'x-api-token': 'YOUR_API_TOKEN' } },
  ).then((r) => r.json());

  // 2. Attach to it like to any other browser.
  const browser = await puppeteer.connect({
    browserWSEndpoint: started.data.ws,
    defaultViewport: null,
  });

  const [page] = await browser.pages();
  await page.goto('https://example.com');
})();

Python (Playwright)

import requests
from playwright.sync_api import sync_playwright

# 1. Ask the app for this profile's debugging endpoint.
started = requests.post(
    "http://127.0.0.1:50325/api/v1/browser/start",
    params={"profileId": "YOUR_PROFILE_ID"},
    headers={"x-api-token": "YOUR_API_TOKEN"},
).json()

# 2. Attach to it like to any other browser.
with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp(started["data"]["ws"])
    page = browser.contexts[0].pages[0]
    page.goto("https://example.com")

Algo que conviene saber antes de conectar

Puppeteer y Playwright activan Runtime.enable y Page.enable en cuanto se conectan. Esos dominios colocan observadores dentro de Chromium que los scripts de la página pueden detectar. Nuestro propio constructor de automatizaciones nunca los activa, por eso un perfil que él maneja se ve igual que uno manejado a mano. Si el sitio con el que trabajas lo comprueba, arma la secuencia dentro de la aplicación.

O hazlo sin escribir código

Dieciséis tipos de paso en una ventana: abrir, pulsar, escribir, esperar, leer, ramificar. Sin observadores detectables y sin instalar nada.

Ver qué hace la aplicación