Pular para conteúdo

Web Scraper - Extração e Monitoramento de Dados Web

Visão Geral

O Web Scraper é uma ferramenta poderosa do Lumina Flow Builder para extrair, monitorar e processar dados de websites automaticamente. Com 5 operações especializadas, você pode coletar informações de qualquer site de forma ética e eficiente.

🎯 Operações Disponíveis

1. SCRAPE - Extração Automática de Dados

O que faz: Extrai dados automaticamente de websites usando inteligência para identificar conteúdo principal.

Use quando: - Precisa extrair conteúdo sem saber a estrutura HTML - Quer coletar texto, links, imagens e metadados - Deseja extração rápida sem configurar seletores CSS

Exemplo:

{
  "operation": "scrape",
  "url": "https://www.bbc.com/news",
  "mode": "auto",
  "extractText": true,
  "extractLinks": true,
  "extractImages": true
}

Casos de uso: - Monitoramento de notícias e artigos - Agregação de conteúdo de blogs - Coleta de informações de páginas desconhecidas - Enriquecimento de dados com informações web


2. EXTRACT - Extração Manual com Seletores CSS

O que faz: Extrai dados específicos usando seletores CSS personalizados para precisão cirúrgica.

Use quando: - Conhece a estrutura HTML do site - Precisa extrair campos específicos (preço, título, autor) - Quer criar objetos JSON estruturados - Necessita máxima precisão na extração

Exemplo:

{
  "operation": "extract",
  "url": "https://www.amazon.com.br/dp/B08N5WRWNW",
  "mode": "manual",
  "selectors": {
    "titulo": "#productTitle",
    "preco": ".a-price-whole",
    "avaliacao": ".a-icon-alt"
  }
}

Casos de uso: - Scraping de e-commerce (produtos, preços) - Extração de vagas de emprego - Coleta de dados tabulares - Comparação de preços entre lojas


3. CRAWL - Navegação por Múltiplas Páginas

O que faz: Navega automaticamente por paginação, coletando dados de dezenas ou centenas de páginas sequencialmente.

Use quando: - Precisa extrair dados de múltiplas páginas - Site tem paginação (next/prev, números) - Quer coletar catálogo completo - Necessita processar grandes volumes de páginas

Exemplo:

{
  "operation": "crawl",
  "url": "https://store.com/produtos?page=1",
  "mode": "template",
  "template": "ecommerce",
  "maxPages": 30,
  "followPagination": true,
  "paginationSelector": "a.next-page",
  "delay": 3000
}

Casos de uso: - Catálogo completo de produtos - Arquivo histórico de blog - Listagens de imóveis/vagas - Resultados de pesquisa (Google, portais)


4. SCREENSHOT - Captura Visual de Páginas

O que faz: Captura screenshots (imagens) de páginas web para documentação e arquivamento visual.

Use quando: - Precisa de evidência visual de uma página - Quer monitorar mudanças de layout - Necessita documentar estado de um site - Deseja arquivar versões visuais

Exemplo:

{
  "operation": "screenshot",
  "url": "https://example.com",
  "screenshot": true,
  "saveHtml": true,
  "includeMetadata": true
}

Casos de uso: - Compliance e auditoria legal - Monitoramento visual de concorrentes - Documentação de bugs - Testes de renderização - Arquivo histórico visual


5. MONITOR - Monitoramento Inteligente de Mudanças

O que faz: Monitora páginas periodicamente e detecta mudanças automaticamente, alertando quando algo importante muda.

Use quando: - Precisa saber quando uma página muda - Quer alertas de mudanças de preço - Deseja detectar novas vagas/produtos - Necessita rastrear atualizações de conteúdo

Exemplo:

{
  "operation": "monitor",
  "url": "https://www.amazon.com.br/dp/B08N5WRWNW",
  "mode": "manual",
  "selectors": { "preco": ".a-price-whole" },
  "monitorInterval": 30,
  "changeThreshold": 0.01,
  "ignoreSelectors": [".timestamp", ".ad"]
}

Casos de uso: - Monitor de preços e promoções - Alertas de novas vagas de emprego - Disponibilidade de produtos esgotados - Mudanças em termos legais - Atualizações de blogs/notícias


🚀 Recursos Avançados

Templates Pré-configurados

Extraia dados sem configurar seletores: - ecommerce: Produtos (título, preço, avaliação, estoque) - news: Notícias (título, autor, data, conteúdo) - blog: Posts (título, autor, data, conteúdo, tags)

Ética e Compliance

  • robots.txt: Respeita regras de scraping do site
  • Rate limiting: Delays configuráveis entre requisições
  • User-Agent: Identificação transparente
  • Timeouts: Limites de tempo para evitar sobrecarga

Processamento Inteligente

  • Limpeza de texto: Normalização automática
  • Conversão de URLs: Relativas → Absolutas
  • Metadados: Open Graph, Twitter Cards, Schema.org
  • Múltiplos formatos: JSON, CSV, XML, HTML, TEXT

Tratamento de Erros

  • Retry automático: Tentativas em caso de falha
  • Ignorar erros: Continuar mesmo se páginas falharem
  • Logging detalhado: Rastreamento de problemas

📊 Matriz de Decisão

Preciso de... Use esta operação
Extrair uma página sem saber estrutura SCRAPE
Extrair campos específicos com precisão EXTRACT
Processar múltiplas páginas com paginação CRAWL
Capturar imagem visual da página SCREENSHOT
Detectar quando página muda MONITOR

⚡ Quick Start

Exemplo 1: Extração Simples de Notícia

{
  "operation": "scrape",
  "url": "https://www.bbc.com/news/technology",
  "mode": "auto",
  "extractText": true,
  "cleanText": true
}

Exemplo 2: Monitorar Preço

{
  "operation": "monitor",
  "url": "https://www.amazon.com.br/dp/PRODUTO",
  "mode": "manual",
  "selectors": { "preco": ".a-price-whole" },
  "monitorInterval": 30
}

Exemplo 3: Coletar Catálogo Completo

{
  "operation": "crawl",
  "url": "https://store.com/categoria?page=1",
  "mode": "template",
  "template": "ecommerce",
  "maxPages": 20,
  "followPagination": true,
  "paginationSelector": "a[rel='next']"
}

🔗 Integrações Comuns

Web Scraper + AI

Extraia dados e processe com IA para estruturar ou resumir:

SCRAPE → AI (análise) → MESSAGE (resultado)

Web Scraper + Schedule

Monitore páginas automaticamente:

SCHEDULE → MONITOR → CONDITION → ALERT

Web Scraper + Database

Colete e armazene dados:

CRAWL → LOOP → DATABASE (insert)

Web Scraper + S3

Backup de screenshots:

SCREENSHOT → S3 (upload) → DATABASE (metadata)


📖 Documentação Completa

Cada operação tem documentação detalhada com: - ✅ Explicação completa de funcionamento interno - ✅ Todos os parâmetros com exemplos de flows testáveis - ✅ 3+ exemplos práticos completos com JSON importável - ✅ Boas práticas e anti-padrões - ✅ Dicas avançadas de uso - ✅ Código TypeScript real da implementação

Leia a documentação completa: 1. SCRAPE - Extração Automática 2. EXTRACT - Extração Manual 3. CRAWL - Navegação Múltiplas Páginas 4. SCREENSHOT - Captura Visual 5. MONITOR - Monitoramento de Mudanças


⚠️ Importante: Uso Ético

Sempre: - ✅ Respeite robots.txt (respectRobots: true) - ✅ Use delays adequados (delay: 2000 mínimo) - ✅ Identifique seu bot (userAgent: "LuminaBot/1.0") - ✅ Respeite termos de serviço dos sites - ✅ Use APIs oficiais quando disponíveis

Nunca: - ❌ Sobrecargue servidores com requisições rápidas demais - ❌ Ignore avisos de robots.txt - ❌ Colete dados pessoais sem consentimento (LGPD) - ❌ Use para fins ilegais ou não autorizados - ❌ Burle sistemas de proteção (CAPTCHA, rate limiting)


🎓 Aprenda Mais


🆘 Troubleshooting

Problema: "Não consegue extrair dados"

Solução: Use DevTools (F12) para inspecionar elementos e validar seletores CSS.

Problema: "Site bloqueia requisições"

Solução: Aumente delay, configure userAgent apropriado, respeite robots.txt.

Problema: "Conteúdo JavaScript não carrega"

Solução: Use waitForJS: true ou considere ferramentas com browser real (Puppeteer).

Problema: "Mudanças irrelevantes disparam alertas"

Solução: Configure ignoreSelectors e changeThreshold no MONITOR.


Desenvolvido com ❤️ pela equipe Lumina

Arquivo: /home/zielinski/develop/gptapi/docs/nodes/web-scraper/README.md Última atualização: 2025-10-13