Há alguns meses, um dos nossos usuários nos enviou uma captura de tela de um workflow no n8n com 14 nodes, meia dúzia de post-its e uma linha de assunto que dizia só: "Help." Ele tinha seguido um tutorial popular de web scraping no n8n, conseguiu montar uma demo bonita com 10 linhas em um site de teste e, depois, tentou extrair preços reais de concorrentes em 200 páginas de produtos. O resultado? Um loop de paginação quebrado, uma parede de erro 403 e um agendador silencioso que parou de disparar depois da primeira terça-feira.
Esse abismo — entre a demo e o pipeline — é onde a maioria dos projetos de scraping no n8n morre. Passei anos construindo o e trabalhando com automação, e posso dizer: a parte do scraping raramente é a parte difícil. O que realmente complica tudo é o que vem depois do primeiro sucesso. Paginação, agendamento, bloqueios anti-bot, limpeza de dados, exportação e — o grande vilão — a manutenção quando o site muda o layout pela terceira vez no trimestre. Este guia cobre o pipeline completo, desde o seu primeiro node HTTP Request até um workflow recorrente e pronto para produção de web scraping no n8n. E, quando a abordagem DIY do n8n bater no limite, vou mostrar onde ferramentas com IA, como o Thunderbit, podem economizar horas (ou dias) de frustração.
O que é web scraping no n8n (e por que a maioria dos tutoriais só arranha a superfície)
n8n é uma plataforma open source de automação de workflows com pouco código. Pense nela como uma tela visual em que você conecta "nodes" — cada um executa uma tarefa específica (buscar uma página, interpretar HTML, enviar uma mensagem no Slack, gravar no Google Sheets) — e os encadeia em fluxos automatizados. Não é preciso programar pesado, embora você possa inserir JavaScript quando precisar.
"Web scraping no n8n" significa usar os nodes nativos HTTP Request e HTML do n8n (além de nodes da comunidade) para buscar, interpretar e processar dados de sites dentro desses workflows automatizados. O núcleo é formado por dois passos: Buscar (o node HTTP Request obtém o HTML bruto de uma URL) e Interpretar (o node HTML usa seletores CSS para extrair os dados de interesse — nomes de produtos, preços, e-mails, o que for).
A plataforma é gigante: até abril de 2026, o n8n tinha , mais de 230 mil usuários ativos, 9.166+ modelos de workflows da comunidade e lança uma nova versão menor quase toda semana. Em março de 2025, levantou . Há muito impulso por trás da ferramenta.
Mas existe uma lacuna que quase ninguém comenta. O tutorial mais popular de scraping no n8n no dev.to (de Lakshay Nasa, publicado sob a organização "Extract by Zyte") prometia paginação na "Parte 2". A Parte 2 saiu — e o próprio autor concluiu: "O N8N nos oferece um modo de paginação padrão dentro do node HTTP Request, na seção Options, e embora pareça conveniente, na minha experiência ele não se comportou de forma confiável para casos típicos de web scraping." No fim, o autor encaminhou a paginação para uma API paga de terceiros. Enquanto isso, usuários do fórum do n8n continuam apontando "paginação, limitação de taxa, login" como o ponto em que o scraping no n8n "fica complexo muito rápido". Este guia foi feito justamente para preencher essa lacuna.
Por que o web scraping no n8n importa para equipes de vendas, operações e ecommerce
Web scraping no n8n não é hobby de desenvolvedor. É ferramenta de negócio. O deve ficar em torno de US$ 1–1,3 bilhão em 2025 e chegar a US$ 2–2,3 bilhões até 2030. Só precificação dinâmica já é usada por cerca de , e hoje dependem de dados alternativos — grande parte deles extraída da web. A McKinsey aponta que a precificação dinâmica pode gerar para quem adota a prática.
Aqui está o ponto em que a força real do n8n aparece: não se trata apenas de obter dados. Trata-se do que acontece depois. O n8n permite encadear o scraping com ações posteriores — atualização de CRM, alertas no Slack, exportação para planilhas, análise com IA — em um único workflow.
| Caso de uso | Quem se beneficia | O que você extrai | Resultado de negócio |
|---|---|---|---|
| Geração de leads | Equipes de vendas | Diretórios de empresas, páginas de contato | Preencher o CRM com leads qualificados |
| Monitoramento de preços da concorrência | Operações de ecommerce | Páginas de listagem de produtos | Ajustar preços em tempo real |
| Acompanhamento de anúncios imobiliários | Corretores e imobiliárias | Zillow, Realtor, sites de MLS locais | Encontrar novos anúncios antes dos concorrentes |
| Pesquisa de mercado | Equipes de marketing | Sites de avaliações, fóruns, notícias | Identificar tendências e sentimento do cliente |
| Monitoramento de estoque de fornecedores/SKUs | Operações de supply chain | Páginas de produtos de fornecedores | Evitar ruptura de estoque e otimizar compras |
Os números mostram que o ROI é real: planejam aumentar o investimento em IA em 2025, e o lead nurturing automatizado já demonstrou em nove meses. Se sua equipe ainda está copiando e colando dados de sites para planilhas, está deixando dinheiro na mesa.
Seu kit de ferramentas de web scraping no n8n: nodes essenciais e soluções disponíveis
Antes de construir qualquer coisa, você precisa saber o que há no kit. Estes são os nodes essenciais do n8n para web scraping:
- Node HTTP Request: Busca HTML bruto de qualquer URL. Funciona como um navegador fazendo uma requisição de página, mas retorna o código em vez de renderizá-lo. Suporta GET/POST, headers, processamento em lote e, teoricamente, paginação nativa.
- Node HTML (antes chamado de "HTML Extract"): Interpreta HTML usando seletores CSS para extrair dados específicos — títulos, preços, links, imagens, o que você precisar.
- Node Code: Permite escrever trechos de JavaScript para limpeza de dados, normalização de URLs, deduplicação e lógica personalizada.
- Node Edit Fields (Set): Reestrutura ou renomeia campos para os nodes seguintes.
- Node Split Out: Divide arrays em itens individuais para processamento.
- Node Convert to File: Exporta dados estruturados para CSV, JSON etc.
- Node Loop Over Items: Itera por listas (crítico para paginação — falamos mais disso abaixo).
- Schedule Trigger: Dispara o workflow em um cronograma.
- Error Trigger: Avise quando um workflow falhar (essencial em produção).
Para scraping avançado — sites com renderização via JavaScript ou proteção anti-bot pesada — você vai precisar de nodes da comunidade:
| Abordagem | Ideal para | Nível técnico | Lida com sites renderizados em JS | Tratamento anti-bot |
|---|---|---|---|---|
| n8n HTTP Request + HTML | Sites estáticos, APIs | Iniciante–Intermediário | Não | Manual (headers, proxies) |
| n8n + node da comunidade ScrapeNinja/Firecrawl | Sites dinâmicos/protegidos | Intermediário | Sim | Integrado (rotação de proxy, CAPTCHA) |
| n8n + Headless Browser (Puppeteer) | Interações complexas em JS | Avançado | Sim | Parcial (depende da configuração) |
| Thunderbit (AI Web Scraper) | Qualquer site, usuários sem perfil técnico | Iniciante | Sim (modo Browser ou Cloud) | Integrado (herda a sessão do navegador ou faz o tratamento em nuvem) |
Até a versão v2.15.1, não existe node nativo de headless browser no n8n. Qualquer scraping com renderização em JS exige um node da comunidade ou uma API externa.
Uma observação rápida sobre o Thunderbit: ele é uma com IA desenvolvida pela nossa equipe. Você clica em "AI Suggest Fields", depois em "Scrape" e recebe dados estruturados — sem seletores CSS, sem configuração de nodes, sem manutenção. Vou mostrar ao longo deste guia onde ele encaixa melhor (e onde o n8n continua sendo a melhor escolha).
Passo a passo: crie seu primeiro workflow de web scraping no n8n
Com o kit de ferramentas explicado, veja como montar um web scraper funcional no n8n do zero. Vou usar uma página de listagem de produtos como exemplo — exatamente o tipo de site que você realmente extrairia para monitoramento de preços ou pesquisa de concorrência.
Antes de começar:
- Dificuldade: Iniciante–Intermediário
- Tempo necessário: ~20–30 minutos
- O que você vai precisar: n8n (self-hosted ou Cloud), uma URL de destino, navegador Chrome (para encontrar seletores CSS)
Etapa 1: crie um novo workflow e adicione um Manual Trigger
Abra o n8n, clique em "New Workflow" e dê um nome descritivo — como "Competitor Price Scraper". Arraste um node Manual Trigger. (Depois vamos trocar por um trigger agendado.)
Você verá um único node na tela, pronto para executar quando clicar em "Test Workflow."
Etapa 2: busque a página com o node HTTP Request
Adicione um node HTTP Request e conecte-o ao Manual Trigger. Defina o método como GET e insira a URL de destino (por exemplo, https://example.com/products).
Agora vem a etapa crítica que a maioria dos tutoriais pula: adicione um header User-Agent realista. Por padrão, o n8n envia axios/xx como user agent — o que é imediatamente reconhecível como bot. Em "Headers", adicione:
| Nome do header | Valor |
|---|---|
| User-Agent | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 |
| Accept | text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8 |
Se você estiver extraindo várias URLs, ative Batching (em Options) e defina um tempo de espera de 1–3 segundos entre as requisições. Isso ajuda a evitar limites de taxa.
Execute o node. Você deve ver o HTML bruto no painel de saída.
Etapa 3: interprete os dados com o node HTML
Conecte um node HTML à saída do HTTP Request. Defina a operação como Extract HTML Content.
Para encontrar os seletores CSS corretos, abra a página de destino no Chrome, clique com o botão direito no dado que você quer (por exemplo, o título de um produto) e escolha "Inspect". No painel Elements, clique com o botão direito no elemento HTML destacado e selecione "Copy → Copy selector."
Configure os valores de extração assim:
| Chave | Seletor CSS | Valor retornado |
|---|---|---|
| product_name | .product-title | Texto |
| price | .price-current | Texto |
| url | .product-link | Atributo: href |
Execute o node. Você deve ver uma tabela com dados estruturados — nomes de produtos, preços e URLs — na saída.
Etapa 4: limpe e normalize com o node Code
Dados extraídos vêm bagunçados. Preços podem trazer espaços extras, URLs podem ser relativas e campos de texto podem incluir quebras de linha no final. Adicione um node Code e conecte-o ao node HTML.
Aqui vai um trecho simples de JavaScript para limpar tudo:
1return items.map(item => {
2 const d = item.json;
3 return {
4 json: {
5 product_name: (d.product_name || '').trim(),
6 price: parseFloat((d.price || '').replace(/[^0-9.]/g, '')),
7 url: d.url && d.url.startsWith('http') ? d.url : `https://example.com${d.url}`
8 }
9 };
10});
Essa etapa é essencial para dados com qualidade de produção. Se você pular isso, sua planilha vai ficar cheia de entradas como "$ 29.99\n".
Etapa 5: exporte para Google Sheets, Airtable ou CSV
Conecte um node Google Sheets (ou Airtable, ou Convert to File para CSV). Faça a autenticação com sua conta Google, selecione sua planilha e sua aba, e mapeie os campos da saída do node Code para os cabeçalhos das colunas.
Execute o workflow completo. Você deve ver dados limpos e estruturados chegando à planilha.
Observação: o para Google Sheets, Airtable, Notion e Excel, sem configurar nodes. Se você não precisa de toda a cadeia do workflow e quer apenas os dados, esse é um atalho bem útil.
A parte que todo tutorial de web scraping no n8n pula: workflows completos de paginação
Paginação é a principal lacuna no conteúdo de scraping no n8n — e a principal fonte de frustração nos fóruns da comunidade.
Existem dois padrões principais de paginação:
- Paginação por clique / por incremento de URL — páginas como
?page=1,?page=2etc. - Scroll infinito — o conteúdo carrega à medida que você desce a página (pense no Twitter, Instagram ou muitos catálogos modernos de produtos).
Paginação por clique no n8n (incremento de URL com nodes de loop)
A opção de Paginação nativa no menu Options do node HTTP Request parece conveniente. Na prática, ela é pouco confiável. O autor do tutorial de scraping mais popular no n8n (Lakshay Nasa) testou isso e escreveu: "não se comportou de forma confiável na minha experiência." Usuários do fórum relatam que ela , e falha ao detectar a última página.

A abordagem confiável: crie explicitamente a lista de URLs em um node Code e depois itere com Loop Over Items.
Veja como fazer:
- Adicione um node Code que gere as URLs das páginas:
1const base = 'https://example.com/products';
2const totalPages = 10; // ou detecte dinamicamente
3return Array.from({length: totalPages}, (_, i) => ({
4 json: { url: `${base}?page=${i + 1}` }
5}));
- Conecte um node Loop Over Items para percorrer a lista.
- Dentro do loop, adicione o node HTTP Request (defina a URL como
{{ $json.url }}) e depois o node HTML para a extração. - Adicione um node Wait (1–3 segundos, com variação aleatória) dentro do loop para evitar limites de taxa 429.
- Depois do loop, agregue os resultados e exporte para Google Sheets ou CSV.
A cadeia completa: Code (criar URLs) → Loop Over Items → HTTP Request → HTML → Wait → (volta para o loop) → Aggregate → Export.
Um detalhe importante: o node Loop Over Items tem um em que loops aninhados pulam itens silenciosamente. Se você estiver fazendo paginação e enriquecendo subpáginas, teste com cuidado — a contagem de "done" pode não bater com a quantidade de entradas.
Paginação com scroll infinito: por que os nodes nativos do n8n sofrem
Páginas com scroll infinito carregam conteúdo via JavaScript conforme você rola. O node HTTP Request busca apenas o HTML inicial — ele não executa JavaScript nem dispara eventos de scroll. Você tem duas opções:
- Usar um node da comunidade com headless browser (por exemplo, ou ) para renderizar a página e simular o scroll.
- Usar uma API de scraping (ScrapeNinja, Firecrawl, ZenRows) com renderização de JS ativada.
As duas opções aumentam bastante a complexidade. É normal gastar 30–60+ minutos de configuração por site, além de manutenção contínua.
Como o Thunderbit trata paginação sem configuração
Sou suspeito, mas o contraste é bem claro:
| Capacidade | n8n (workflow DIY) | Thunderbit |
|---|---|---|
| Paginação por clique | Configuração manual de loop, incremento de URL | Automático — detecta e segue a paginação |
| Páginas com scroll infinito | Exige headless browser + node da comunidade | Suporte nativo, sem configuração |
| Esforço de configuração | 30–60 min por site | 2 cliques |
| Páginas por lote | Sequencial (uma por vez) | 50 páginas simultaneamente (Cloud Scraping) |
Se você está extraindo 200 páginas de produtos distribuídas em 10 listagens paginadas, o n8n vai consumir uma tarde inteira. O Thunderbit leva cerca de dois minutos. Isso não é uma crítica ao n8n — é apenas a ferramenta certa para o trabalho certo.
Deixe rodando e esqueça: pipelines de web scraping no n8n acionados por cron
Scraping pontual é útil, mas o verdadeiro poder do web scraping no n8n está na coleta recorrente e automatizada de dados. Surpreendentemente, quase nenhum tutorial de scraping no n8n cobre o Schedule Trigger — apesar de ele ser um dos recursos mais pedidos pela comunidade.
Montando um pipeline diário de monitoramento de preços
Substitua o Manual Trigger por um node Schedule Trigger. Você pode usar a interface do n8n ("Every day at 8:00 AM") ou uma expressão cron (0 8 * * *).
A cadeia completa do workflow:
- Schedule Trigger (todos os dias às 8h)
- Node Code (gera URLs paginadas)
- Loop Over Items → HTTP Request → HTML → Wait (extrai todas as páginas)
- Node Code (limpa dados, normaliza preços)
- Google Sheets (adiciona novas linhas)
- Node IF (algum preço caiu abaixo do limite?)
- Slack (envia alerta, se sim)
Configure também um workflow de Error Trigger ao lado, para disparar em qualquer falha de execução e notificar o Slack. Caso contrário, quando os seletores quebrarem (e isso vai acontecer), você só vai descobrir três semanas depois, quando o relatório estiver vazio.
Dois requisitos que muita gente esquece:
- O n8n precisa ficar rodando 24/7. Um self-host em um notebook não dispara quando a tampa está fechada. Use um servidor, Docker ou o n8n Cloud.
- Depois de cada edição no workflow, desligue e ligue o workflow novamente. O n8n Cloud tem um em que os agendadores se desregistram silenciosamente após edições, sem nenhum feedback de erro.
Montando um pipeline semanal de extração de leads
O padrão é o mesmo, só muda o alvo: Schedule Trigger (toda segunda-feira às 9h) → HTTP Request (diretório de empresas) → HTML (extrai nome, telefone, e-mail) → Code (deduplica, corrige a formatação) → envio para Airtable ou HubSpot.

O custo de manutenção é o peso que pouca gente comenta. Se o site do diretório mudar o layout, seus seletores CSS quebram e o workflow falha em silêncio. A HasData estima que do tempo inicial de construção deve ser reservado para manutenção contínua por ano em qualquer pipeline baseado em seletores. Quando você passa a manter cerca de 20 sites, o overhead vira algo real.
O Scheduled Scraper do Thunderbit: a alternativa sem código
O Scheduled Scraper do Thunderbit permite descrever o intervalo em linguagem natural (por exemplo, "toda segunda-feira às 9h"), inserir suas URLs e clicar em "Schedule". Ele roda na nuvem — sem hospedagem, sem expressões cron e sem desregistro silencioso.
| Dimensão | Workflow agendado no n8n | Scheduled Scraper do Thunderbit |
|---|---|---|
| Configuração do agendamento | Expressão cron ou interface de agendamento do n8n | Descreva em linguagem natural |
| Limpeza de dados | Node Code manual obrigatório | IA limpa, rotula e traduz automaticamente |
| Destinos de exportação | Exige nodes de integração | Google Sheets, Airtable, Notion, Excel (gratuito) |
| Requisito de hospedagem | Self-hosted ou n8n Cloud | Nenhum — roda na nuvem |
| Manutenção quando o site muda | Seletores quebram, ajuste manual necessário | A IA lê o site de novo a cada execução |
Essa última linha é a que mais importa. Usuários de fórum dizem isso de forma direta: "a maioria funciona até o momento em que um site muda o layout." A abordagem baseada em IA do Thunderbit elimina essa dor porque não depende de seletores CSS fixos.
Quando seu scraper no n8n é bloqueado: guia de troubleshooting anti-bot
Ser bloqueado é a maior frustração depois da paginação. O conselho padrão — "adicione um header User-Agent" — ajuda quase tanto quanto trancar a porta da tela contra um furacão.
Segundo o Imperva 2025 Bad Bot Report, , e disso é malicioso. Os fornecedores de anti-bot (Cloudflare, Akamai, DataDome, HUMAN, PerimeterX) responderam com fingerprint de TLS, desafios em JavaScript e análise comportamental. O node HTTP Request do n8n, que usa a biblioteca Axios por baixo dos panos, gera um fingerprint TLS próprio, facilmente reconhecível e diferente de um navegador. Trocar o header User-Agent não resolve — o hash denuncia você antes mesmo de qualquer header HTTP ser lido.
A árvore de decisão anti-bot
Aqui vai um framework sistemático de troubleshooting — e não apenas "adicione um User-Agent":
A requisição foi bloqueada?
- 403 Forbidden → Adicione headers User-Agent + Accept (veja a Etapa 2 acima) → Ainda bloqueado?
- Sim → Adicione rotação de proxy residencial → Ainda bloqueado?
- Sim → Troque para uma API de scraping (ScrapeNinja, Firecrawl, ZenRows) ou um node da comunidade com headless browser
- Não → Siga em frente
- Não → Siga em frente
- Sim → Adicione rotação de proxy residencial → Ainda bloqueado?
- Apareceu CAPTCHA → Use uma API de scraping com solução de CAPTCHA integrada (por exemplo, )
- Resposta vazia (conteúdo renderizado em JS) → Use um node da comunidade com headless browser ou uma API de scraping com renderização JS
- Limitação de taxa (erro 429) → Ative batching no node HTTP Request, defina um tempo de espera de 2–5 segundos entre os lotes, reduza a concorrência
Mais um detalhe importante: o n8n tem um em que o node HTTP Request não consegue tunelar corretamente HTTPS por meio de um proxy HTTP. A biblioteca Axios falha no handshake TLS, mesmo quando o curl no mesmo container funciona normalmente. Se você estiver usando proxy e receber erros de conexão misteriosos, essa provavelmente é a causa.
Por que o Thunderbit contorna a maioria dos problemas anti-bot
O Thunderbit oferece dois modos de scraping:
- Browser Scraping: roda dentro do seu navegador Chrome real, herdando cookies de sessão, estado de login e fingerprint do navegador. Isso contorna a maioria das medidas anti-bot que bloqueiam requisições do servidor — porque a requisição é um navegador de verdade.
- Cloud Scraping: para sites públicos, a nuvem do Thunderbit lida com anti-bot em escala — .
Se você está gastando mais tempo brigando com o Cloudflare do que analisando dados, essa é a alternativa prática.
Avaliação honesta: quando o web scraping no n8n funciona — e quando usar outra coisa
O n8n é uma ótima plataforma. Mas não é a ferramenta certa para todo trabalho de scraping, e nenhum artigo de concorrente fala isso de forma honesta. As pessoas estão literalmente perguntando nos fóruns: "quão difícil é criar um web scraper com n8n?" e "qual ferramenta de scraping funciona melhor com o n8n?"
Onde o web scraping no n8n se destaca
- Workflows com várias etapas que combinam scraping com processamento posterior — atualização de CRM, alertas no Slack, análise com IA, gravação em banco de dados. Essa é a principal força do n8n.
- Casos em que o scraping é apenas um node em uma cadeia maior de automação — extrair → enriquecer → filtrar → enviar ao CRM.
- Usuários técnicos confortáveis com seletores CSS e lógica baseada em nodes.
- Cenários que exigem transformação personalizada de dados entre a extração e o armazenamento.
Onde o web scraping no n8n fica trabalhoso
- Usuários sem perfil técnico que só precisam dos dados rápido. Configuração de nodes, descoberta de seletores CSS e depuração são etapas pesadas para usuários de negócio.
- Sites com proteção anti-bot forte. Proxies e add-ons de API aumentam custo e complexidade.
- Manutenção quando o layout do site muda. Seletores CSS quebram e workflows falham em silêncio.
- Scraping em volume em muitos tipos diferentes de site. Cada site precisa da sua própria configuração de seletores.
- Enriquecimento de subpáginas. Exige criar sub-workflows separados no n8n.
Comparação lado a lado: n8n vs. Thunderbit vs. scripts Python
| Fator | Scraping DIY no n8n | Thunderbit | Script Python |
|---|---|---|---|
| Habilidade técnica necessária | Intermediário (nodes + seletores CSS) | Nenhuma (IA sugere os campos) | Alta (programação) |
| Tempo de configuração por site novo | 30–90 min | ~2 minutos | 1–4 horas |
| Tratamento anti-bot | Manual (headers, proxies, APIs) | Integrado (modos browser/cloud) | Manual (bibliotecas) |
| Manutenção quando o site muda | Atualização manual dos seletores | Zero — a IA se adapta automaticamente | Atualização manual do código |
| Suporte a workflows multi-etapas | Excelente (força principal) | Exporta para Sheets/Airtable/Notion | Exige código personalizado |
| Custo em escala | Hospedagem do n8n + custos de proxy/API | Baseado em créditos (~1 crédito por linha) | Custos de servidor + proxy |
| Enriquecimento de subpáginas | Manual — exige sub-workflow separado | Scraping de subpáginas com 1 clique | Script personalizado |
A conclusão: use o n8n quando o scraping fizer parte de uma cadeia complexa e multi-etapas de automação. Use o Thunderbit quando você precisar de dados rápido, sem construir workflows. Use Python quando precisar do máximo controle e tiver recursos de desenvolvimento. Eles não competem entre si — se complementam.

Workflows reais de web scraping no n8n que você pode copiar hoje
Usuários de fórum vivem perguntando: "Alguém já encadeou isso em workflows de várias etapas?" Aqui vão três workflows específicos — sequências reais de nodes que você pode montar hoje.
Workflow 1: monitor de preços da concorrência em ecommerce
Objetivo: acompanhar preços de concorrentes diariamente e receber alertas quando caírem.
Cadeia de nodes: Schedule Trigger (diário, 8h) → Code (gerar URLs paginadas) → Loop Over Items → HTTP Request → HTML (extrair nome do produto, preço, disponibilidade) → Wait (2s) → (volta para o loop) → Code (limpar dados, normalizar preços) → Google Sheets (adicionar linhas) → IF (preço abaixo do limite?) → Slack (enviar alerta)
Complexidade: 8–10 nodes, 30–60 min de configuração por site de concorrente.
Atalho com Thunderbit: o Scheduled Scraper do Thunderbit + pode entregar resultados parecidos em minutos, com exportação gratuita para o Google Sheets.
Workflow 2: pipeline de geração de leads de vendas
Objetivo: extrair semanalmente um diretório de empresas, limpar e categorizar leads, e enviar para o CRM.
Cadeia de nodes: Schedule Trigger (semanal, segunda-feira às 9h) → HTTP Request (página de listagem do diretório) → HTML (extrair nome, telefone, e-mail, endereço) → Code (deduplicar, limpar formatação) → node OpenAI/Gemini (categorizar por setor) → node HubSpot (criar contatos)
Observação: o n8n tem um — útil para enviar dados ao CRM. Mas as etapas de scraping e limpeza ainda exigem trabalho manual com seletores CSS.
Atalho com Thunderbit: o gratuito e o Phone Number Extractor do Thunderbit conseguem extrair informações de contato em 1 clique, sem montar workflow. O recurso de rotulagem por IA também pode categorizar leads durante a extração. Quem não precisa da cadeia completa de automação pode pular totalmente a configuração no n8n.
Workflow 3: rastreador de novos anúncios imobiliários
Objetivo: identificar novos anúncios no Zillow ou Realtor.com semanalmente e enviar um resumo por e-mail.
Cadeia de nodes: Schedule Trigger (semanal) → HTTP Request (páginas de listagem) → HTML (extrair endereço, preço, quartos, link) → Code (limpar dados) → Google Sheets (adicionar) → Code (comparar com os dados da semana anterior, marcar novos anúncios) → IF (há novos anúncios?) → Gmail/SendGrid (enviar resumo)
Observação: o Thunderbit tem — sem precisar de seletores CSS. Usuários que precisam da cadeia completa de automação (extrair → comparar → alertar) se beneficiam do n8n; usuários que só precisam dos dados dos anúncios se beneficiam do Thunderbit.
Para mais inspiração de workflows, a biblioteca da comunidade n8n tem templates para , e .
Dicas para manter seus pipelines de web scraping no n8n rodando sem problemas
Scraping em produção é 20% construção e 80% manutenção.
Use batching e atrasos para evitar limites de taxa
Ative batching no node HTTP Request e defina um tempo de espera de 1–3 segundos entre os lotes. Requisições concorrentes são o jeito mais rápido de tomar banimento de IP. Um pouco de paciência agora evita muita dor depois.
Monitore as execuções do workflow para identificar falhas silenciosas
Use a aba Executions do n8n para verificar execuções com falha. Dados extraídos podem voltar vazios em silêncio se um site mudar o layout — o workflow "funciona", mas sua planilha fica cheia de células em branco.
Configure um workflow de Error Trigger que dispare em qualquer falha e envie um alerta por Slack ou e-mail. Isso é inegociável em pipelines de produção.
Guarde seus seletores CSS externamente para facilitar atualizações
Mantenha os seletores CSS em uma Google Sheet ou em variáveis de ambiente do n8n para poder atualizá-los sem editar o workflow em si. Quando o layout do site mudar, você só precisa alterar o seletor em um único lugar.
Saiba quando migrar para um scraper com IA
Se você perceber que está atualizando seletores CSS o tempo todo, brigando com medidas anti-bot ou gastando mais tempo mantendo scrapers do que usando os dados, considere uma ferramenta com IA como o , que lê o site de novo a cada execução e se adapta automaticamente. A funciona muito bem: o Thunderbit cuida da camada frágil de extração (a parte que quebra sempre que um site altera um <div>), exporta para Google Sheets ou Airtable, e o n8n pega as novas linhas via trigger nativo de Sheets/Airtable para cuidar da orquestração — atualizações de CRM, alertas, lógica condicional e distribuição para vários sistemas.
Conclusão: construa o pipeline que faz sentido para o seu time
Web scraping no n8n é poderoso quando você precisa que o scraping seja apenas uma etapa dentro de um workflow maior de automação. Mas ele exige configuração técnica, manutenção contínua e paciência com paginação, anti-bot e agendamento. Este guia cobriu o pipeline completo: seu primeiro workflow, paginação (a parte que todo tutorial pula), agendamento, troubleshooting anti-bot, uma análise honesta de onde o n8n se encaixa e workflows reais que você pode copiar.
Eu penso assim:
- Use o n8n quando o scraping fizer parte de uma cadeia complexa e multi-etapas — atualização de CRM, alertas no Slack, enriquecimento com IA, roteamento condicional.
- Use o quando precisar de dados rápido sem construir workflows — a IA ajuda na sugestão de campos, paginação, anti-bot e exportação em 2 cliques.
- Use Python quando precisar do máximo controle e tiver recursos de desenvolvimento.
E, sinceramente, para muitas equipes a melhor configuração é usar os dois: Thunderbit para a extração, n8n para a orquestração. Se você quiser ver como o scraping com IA se compara ao seu workflow no n8n, o permite testar em pequena escala — e a é instalada em segundos. Para tutoriais em vídeo e ideias de workflows, confira o .
FAQs
O n8n consegue fazer scraping de sites pesados em JavaScript?
Não com o node HTTP Request nativo sozinho. O node HTTP Request busca o HTML bruto e não executa JavaScript. Para sites renderizados em JS, você precisa de um node da comunidade como ou de uma integração com API de scraping (ScrapeNinja, Firecrawl) que renderize JavaScript no servidor. O Thunderbit lida com sites pesados em JS de forma nativa, nos modos Browser e Cloud.
Web scraping no n8n é gratuito?
A versão self-hosted do n8n é gratuita e open source. O n8n Cloud já teve plano gratuito, mas até abril de 2026 oferece apenas um teste de 14 dias — depois disso, os planos começam em US$ 24/mês para 2.500 execuções. Scraping de sites protegidos também pode exigir serviços pagos de proxy (US$ 5–15/GB para proxies residenciais) ou APIs de scraping (US$ 49–200+/mês, dependendo do volume).
Como o web scraping no n8n se compara ao Thunderbit?
O n8n é melhor para automações multi-etapas em que o scraping é só uma parte de um workflow maior (por exemplo: extrair → enriquecer → filtrar → enviar ao CRM → alertar no Slack). O Thunderbit é melhor para extração rápida de dados sem código, com detecção de campos por IA, paginação automática e manutenção zero quando os sites mudam. Muitas equipes usam os dois juntos — Thunderbit para extração e n8n para orquestração.
Posso extrair dados de sites que exigem login usando o n8n?
Sim, mas isso exige configurar cookies ou tokens de sessão no node HTTP Request, o que pode ser difícil de manter. O modo Browser Scraping do Thunderbit herda automaticamente a sessão logada do Chrome do usuário — se você estiver logado, o Thunderbit consegue extrair o que você vê.
O que devo fazer quando meu scraper no n8n de repente para de retornar dados?
Primeiro, verifique a aba Executions do n8n em busca de erros. A causa mais comum é uma mudança no layout do site que quebrou seus seletores CSS — o workflow "tem sucesso", mas devolve campos vazios. Confira seus seletores na ferramenta Inspect do Chrome, atualize-os no workflow (ou na sua planilha externa de seletores) e teste novamente. Se você estiver enfrentando bloqueios anti-bot, siga a árvore de decisão deste guia. Para confiabilidade de longo prazo, considere um scraper com IA como o Thunderbit, que se adapta automaticamente às mudanças de layout.
Saiba mais