Web Scraping con Playwright: Guía Básica con ejemplo
El scraping web consiste en extraer datos de páginas web de forma automática. Herramientas como axios son útiles para HTML estático, pero si la web usa JavaScript para cargar los datos, necesitas algo más potente. Aquí es donde entra Playwright.
¿Qué es Playwright?
Playwright es una herramienta de automatización de navegadores (como Chrome, Firefox o Edge) desarrollada por Microsoft. Puedes usarlo para probar aplicaciones web o... hacer scraping 😉
Requisitos previos
Primero, asegúrate de tener Node.js instalado.
Instala Playwright
npm init -y npm install playwright
💡 También puedes instalar
playwright-coresi solo quieres usar ciertas funciones, pero para scraping normalplaywrightva perfecto.
Ejemplo simple: Extraer títulos de artículos
Vamos a extraer los títulos de los artículos de https://quotes.toscrape.com/, una web de prueba para scraping.
Código (scrape.js)
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch(); // abre navegador (modo headless por defecto)
const page = await browser.newPage();
await page.goto('https://quotes.toscrape.com/');
const quotes = await page.$$eval('.quote', nodes => {
return nodes.map(quote => {
const text = quote.querySelector('.text')?.innerText;
const author = quote.querySelector('.author')?.innerText;
return { text, author };
});
});
console.log("📝 Citas encontradas:");
quotes.forEach((q, i) => {
console.log(`${i + 1}. ${q.text} — ${q.author}`);
});
await browser.close();
})();
Cómo ejecutarlo
📋 Salida esperada:
¿Por qué usar Playwright para scraping?
-
Soporta páginas dinámicas que cargan datos con JS.
-
Permite emular clics, scroll, llenar formularios, etc.
-
Puedes esperar a que los datos estén visibles antes de extraerlos.
-
Compatible con Chromium, Firefox y WebKit.

Deja una respuesta