Make+DiffHook

Web scraping Make.com — webhook-first, sin módulo de polling

DiffHook se encarga del scraping, el renderizado y el diff. Tu escenario Make arranca desde un módulo Webhook y recibe un payload firmado cada vez que la página se mueve — nunca ante un polling vacío.

El scraper típico en Make.com encadena el módulo HTTP → Get a file con un Text parser, luego un Data store con una comprobación «¿ha cambiado?» y finalmente los módulos posteriores. Cada ejecución consume operaciones haya cambio o no. DiffHook te permite girar el escenario a un trigger Webhook — Make solo consume operaciones cuando hay un cambio real que procesar.

Flujo

Raspa hacia Make.com en 5 pasos

Trigger Webhook, no un planificador. El contador de operaciones de Make sigue eventos reales, no pollings vacíos.

01

Crea un trigger Webhooks → Custom webhook

En Make.com arranca un escenario con el módulo Custom webhook. Make genera una URL única como https://hook.eu2.make.com/XXX — cópiala; va en la entrega DiffHook.

02

Describe el scrape como monitor DiffHook

Pon type a html_css y pasa la URL y el selector CSS que marca el bloque que importa. Activa include_html: true cuando el escenario necesite parsear markup en crudo más adelante.

03

Registra el monitor con el webhook de Make

Un único POST a /v1/monitors con la config del scrape, un intervalo y la URL de Make como entrega webhook. DiffHook asume el polling, la caché y el diffing desde ese momento.

04

Verifica la firma dentro de Make

Añade un módulo Tools → Set variable que lea la cabecera X-DiffHook-Signature, luego un Router con un Filter que solo deje pasar las peticiones cuyo HMAC recalculado coincida. La función cripto integrada de Make hace SHA-256 sin módulo Code.

05

Mapea campos a los módulos posteriores

Los campos del cuerpo del webhook — extracted_text, current_value, previous_value, url — aparecen como ítems nombrados que puedes colocar en cualquier módulo posterior: Google Sheets, Notion, Airtable, Telegram.

Ejemplo de API

Raspa hacia Make, un POST

La URL del webhook Make va directa a deliveries[0].url. DiffHook gestiona retry, backoff y replay listo para usar.

POST /v1/monitors
POST https://api.diffhook.com/v1/monitors
Authorization: Bearer $DIFFHOOK_API_KEY
Content-Type: application/json

{
  "type": "html_css",
  "url": "https://competitor.example.com/store",
  "css_selector": ".product-grid",
  "include_html": true,
  "interval_seconds": 900,
  "deliveries": [
    {
      "type": "webhook",
      "url": "https://hook.eu2.make.com/abc123456789"
    }
  ]
}

Flujo importable

Copia un escenario Make ya hecho

Blueprint que incluye trigger Custom webhook, verificación HMAC, un Router con un filtro de tamaño y un destino Google Sheets. Importa, pega el signing secret, actívalo.

FAQ

Web scraping Make.com — preguntas frecuentes

¿Por qué usar DiffHook en vez de HTTP + planificador de Make.com?
Make factura por operaciones. Un escenario que sondea una URL cada cinco minutos consume operaciones haya cambio o no — y encima tienes que mantener el Data store y la comparación «¿cambió?» a mano. DiffHook reemplaza todo eso con un trigger webhook que solo se dispara en cambios reales, así el contador de operaciones del escenario cuadra con el número de eventos reales.
¿Puede DiffHook raspar páginas renderizadas en JavaScript para Make?
Sí. Cambia type a html_rendered y render.engine a playwright o puppeteer. DiffHook se encarga del run del navegador headless y espera a que la página se estabilice antes del snapshot. Make recibe el diff post-render — el coste del render vive en DiffHook, no en tu plan Make.
¿Necesito un módulo Code para verificar el webhook?
No. Las funciones integradas de Make incluyen sha256HMAC, que basta para recalcular la firma en un módulo Set variable y compararla en un Filter. El blueprint de Make en GitHub muestra la configuración exacta y funciona en todos los planes de Make.com.
¿Cuál es la forma de los datos?
JSON plano, amigo de Make. Claves de primer nivel: monitor_id, event, url, selector, extracted_text, current_value, previous_value, current_html (cuando include_html está activo), detected_at, delivery_id. Make expone automáticamente cada clave como campo nombrado, sin módulo parser JSON.
¿Puede un solo escenario manejar varias páginas raspadas?
Sí. Apunta varios monitores DiffHook a la misma URL de webhook de Make y usa un Router con filtros por monitor_id o url para partir el escenario por fuente. Así el coste en operaciones queda en una por evento real, sin importar cuántos monitores lo alimenten.

Flujos relacionados

También geniales con DiffHook

Deja de pagar operaciones en pollings vacíos

Scraping webhook-first para Make, payloads firmados con HMAC, plan gratuito. Cada operación de Make coincide con un cambio real.