mindrally/puppeteer-automation

Guía experta para la automatización del navegador con Puppeteer, incluyendo mejores prácticas para extracción de datos web, pruebas, captura de pantallas y ejecución de JavaScript en Chrome sin interfaz gráfica.

¿Qué es puppeteer-automation?

Esta habilidad proporciona orientación experta para la automatización del navegador utilizando Puppeteer, una biblioteca de Node.js que controla Chrome o Chromium a través del protocolo DevTools. Es útil para desarrolladores y profesionales de QA que necesitan realizar extracción de datos web (web scraping), pruebas automatizadas de aplicaciones, captura de pantallas de páginas web y ejecución de scripts JavaScript en modo headless. Soporta plataformas como Claude Code, Cursor, Codex y otras herramientas que ejecutan agentes de IA especializados en tareas de automatización. La habilidad se basa en su documentación SKILL.md, que describe las mejores prácticas para manejar selectores, esperar elementos dinámicos, configurar opciones de lanzamiento y gestionar errores comunes en Puppeteer. Al usarla, los agentes pueden generar scripts robustos y eficientes, minimizando problemas como tiempo de espera o fallos en la interacción con elementos de la página.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mindrally/skills/tree/main/skills/puppeteer-automation

Installed? Explore more Investigación y análisis de datos skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace puppeteer-automation?

Guía experta para la automatización del navegador con Puppeteer, incluyendo mejores prácticas para extracción de datos web, pruebas, captura de pantallas y ejecución de JavaScript en Chrome sin interfaz gráfica.

Instalación

Para usar Puppeteer, instala la biblioteca desde npm:

npm install puppeteer

O si prefieres usar Puppeteer con Chromium empaquetado:

npm install puppeteer-core

Configuración básica

Importa y lanza un navegador:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({
    headless: true,
    args: ['--no-sandbox', '--disable-setuid-sandbox']
  });
  const page = await browser.newPage();
  await page.goto('https://ejemplo.com');
  // ... operaciones
  await browser.close();
})();

Principales funcionalidades

Navegación y espera de elementos

  • Usa page.waitForSelector() para esperar a que un elemento esté presente.
  • Evita tiempos de espera fijos; prefiere selectores dinámicos.
  • Configura timeout en opciones de navegación.

Captura de pantallas

await page.screenshot({ path: 'captura.png', fullPage: true });

Extracción de datos

const titulo = await page.title();
const texto = await page.$eval('h1', el => el.textContent);

Ejecutar JavaScript en la página

const resultado = await page.evaluate(() => {
  return document.querySelectorAll('a').length;
});

Mejores prácticas

  • Utiliza puppeteer-extra y puppeteer-extra-plugin-stealth para evitar detección.
  • Maneja errores con try/catch y cierra el navegador en finally.
  • Configura headless: 'new' para usar el nuevo modo headless de Chrome.
  • Limita la cantidad de navegadores abiertos simultáneamente para ahorrar recursos.

Variables de entorno útiles

  • PUPPETEER_EXECUTABLE_PATH: Ruta al binario de Chromium.
  • PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: Evita descargar Chromium durante la instalación.

Enlaces de referencia

Notas sobre seguridad

  • No abras páginas no confiables sin restricciones.
  • Usa page.setRequestInterception() para bloquear solicitudes innecesarias.
  • En entornos de pruebas, prefiere contenedores aislados.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

mindrally/accessibility-a11y

Implement web accessibility (a11y) best practices following WCAG guidelines to create inclusive, accessible user interfaces.

mindrally/chrome-extension-development

Expert guidelines for Chrome extension development with Manifest V3, covering security, performance, and best practices. Use when building browser extensions, creating popup UIs, implementing content scripts, working with Chrome APIs, managing extension permissions, or publishing to Chrome Web Store.

mindrally/computer-vision-opencv

Expert guidance for computer vision development using OpenCV, PyTorch, and modern deep learning techniques for image and video processing.

mindrally/data-analysis-jupyter

Expert guidance for data analysis, visualization, and Jupyter Notebook development with pandas, matplotlib, seaborn, and numpy.

mindrally/deep-learning-pytorch

Expert guidance for deep learning, transformers, diffusion models, and LLM development with PyTorch, Transformers, Diffusers, and Gradio.

mindrally/expo-react-native-typescript

Expert in Expo React Native TypeScript mobile development with best practices

mindrally/fastapi-python

Expert in FastAPI Python development with best practices for APIs and async operations

mindrally/framer-motion

Expert guidelines for building performant animations with Framer Motion/Motion library in React applications

mindrally/htmx

HTMX development guidelines for building dynamic web applications with minimal JavaScript using HTML attributes.

mindrally/jwt-security

Guidelines for implementing JWT authentication with security best practices for token creation, validation, and storage

mindrally/machine-learning

Machine learning development with JAX, functional programming patterns, and high-performance computing.

mindrally/mysql-best-practices

MySQL development best practices for schema design, query optimization, and database administration

mindrally/nextjs-react-typescript

Expert in TypeScript, Node.js, Next.js App Router, React, Shadcn UI, Radix UI and Tailwind

mindrally/nextjs-typescript-tailwindcss-supabase

Full-stack Next.js 14 development with TypeScript, TailwindCSS, and Supabase for building production-ready web applications.

mindrally/odoo-development

Expert guidance for Odoo ERP development including Python ORM, XML views, and module architecture

mindrally/redis-best-practices

Redis development best practices for caching, data structures, and high-performance key-value operations

mindrally/scrapy-web-scraping

Expert guidance for building web scrapers and crawlers using the Scrapy Python framework with best practices for spider development, data extraction, and pipeline management.

mindrally/scss-best-practices

SCSS/Sassy CSS best practices and coding guidelines for maintainable, scalable stylesheets

mindrally/typeorm

Guidelines for developing with TypeORM, a full-featured ORM for TypeScript and JavaScript supporting multiple databases

mindrally/web-scraping

Expert in web scraping and data extraction with Python tools

Skills relacionados