n8n + Puppeteer — scraping Chrome headless sem o fardo operacional
O DiffHook dirige o Puppeteer por você, espera o DOM se estabilizar, diferencia o resultado contra o snapshot anterior e entrega as mudanças ao n8n por webhook assinado. Sem binário do Chromium, sem imagem Docker, sem reinício-em-OOM.
Hospedar Puppeteer dentro de um deploy do n8n é uma armadilha clássica: o binário do Chromium incha o tamanho da imagem, os workers vazam memória após algumas centenas de runs e qualquer mudança de página quebra o script de seletores às 3 da manhã. O DiffHook puxa o navegador para uma frota gerenciada. Você descreve uma vez o que monitorar, e o n8n só vê o diff pós-render — nunca os crashes do navegador, nunca a latência de cold start, nunca o drift de versão dos stealth plugins.
O hub completo de n8n + DiffHook
Todas as receitas, templates e planos de n8n em um só lugar.
Fluxo
Conecte diffs renderizados por Puppeteer ao n8n em 5 passos
O navegador roda do nosso lado. O n8n só enxerga mudanças — sem cold start, sem processos Chromium zumbis.
Exponha um webhook do n8n
Adicione um nó disparador Webhook a um fluxo n8n novo ou existente e anote a URL de produção. Esse é o destino onde o DiffHook vai fazer POST quando o DOM renderizado mudar.
Escolha html_rendered e o motor Puppeteer
Defina type como html_rendered e render.engine como puppeteer. Adicione wait_for_selector ou wait_until: networkidle para que o DiffHook só tire o snapshot depois que a página terminar de carregar JS e dados.
Aponte para o elemento certo com um seletor
O DiffHook roda o seletor CSS contra o DOM renderizado. Um seletor apertado (um card de produto específico, uma linha de preço, um banner de status) mantém o diff focado e faz o n8n só disparar no sinal que importa.
Crie o monitor
POST em /v1/monitors com URL, configuração de render, seletor, intervalo e uma entrega webhook para sua URL do n8n. O DiffHook agenda as runs do Puppeteer — você não fica dono de nada em forma de navegador.
Reaja à mudança no n8n
Quando a saída do seletor renderizado muda, o nó Webhook do n8n dispara com um corpo JSON assinado: previous_value, current_value, url, detected_at. Verifique o HMAC e roteie o diff para os passos a jusante.
Exemplo de API
Monitor renderizado por Puppeteer num POST
render.engine escolhe o navegador. Puppeteer é um bom default para sites que testam especificamente fingerprints da família Chrome.
POST https://api.diffhook.com/v1/monitors
Authorization: Bearer $DIFFHOOK_API_KEY
Content-Type: application/json
{
"type": "html_rendered",
"url": "https://spa.example.com/pricing",
"render": { "engine": "puppeteer", "wait_for_selector": "[data-ready]" },
"css_selector": "main .plan",
"interval_seconds": 600,
"deliveries": [
{
"type": "webhook",
"url": "https://n8n.yourdomain.com/webhook/spa-pricing"
}
]
}Fluxo importável
Comece com um fluxo n8n pronto
O template verifica o HMAC, parseia o HTML renderizado pelo Puppeteer com HTML Extract e envia linhas estruturadas para um banco Notion. Troque o nó de destino como quiser.
Perguntas frequentes
n8n Puppeteer — perguntas comuns
Puppeteer vs Playwright — qual motor escolher?
Preciso rodar meu próprio Chromium em algum lugar?
Como o DiffHook lida com páginas que carregam conteúdo no scroll?
Posso passar cookies de auth para o Puppeteer?
Qual é a cadência mínima em monitores renderizados?
Fluxos relacionados
Também ótimos com o DiffHook
n8n + Playwright
O outro motor renderizado — às vezes um passa por um WAF onde o outro fica travado.
Web scraping n8n
Scraping de HTML estático para páginas que não precisam de navegador — mais barato e rápido quando dá.
Webhook n8n
Verificar HMAC, deduplicar entregas, reexecutar eventos falhos — detalhes na página webhook genérica.
Web scraping Zapier
O mesmo motor renderizado para Catch Hooks do Zapier — forma de monitor idêntica.
Web scraping Make.com
Roteie o diff pós-render para o módulo webhook do Make.com para automação low-code.
Substituir um script de scraping
Migrando de um script Puppeteer + cron caseiro? Aqui está o monitor gerenciado comparado.
Pare de enviar Chromium junto com sua imagem n8n
Frota Puppeteer gerenciada, webhooks assinados com HMAC, checagens a cada 60 segundos, plano gratuito. Em produção em minutos.