Neste tutorial, construímos um fluxo de trabalho Crawl4AI completo e prático e exploramos como o rastreamento web moderno vai muito além de simplesmente baixar o HTML de uma página. Configuramos todo o ambiente, configuramos o comportamento do navegador e trabalhamos com recursos essenciais, como rastreamento básico, geração de markdown, extração estruturada baseada em CSS, execução de JavaScript, manipulação de sessão, capturas de tela, análise de links, rastreamento concorrente e exploração profunda de várias páginas. Também examinamos como o Crawl4AI pode ser estendido com extração baseada em LLM para transformar conteúdo web bruto em dados estruturados e utilizáveis. Ao longo do tutorial, focamos na implementação prática para entender as principais características do Crawl4AI v0.8.x e aprender como aplicá-las a tarefas realistas de extração de dados e automação web. Copiar Código Copiado Usar um navegador diferente import subprocess import sys print(" Instalando dependências do sistema...") subprocess.run(['apt-get', 'update', '-qq'], capture_output=True) subprocess.run(['apt-get', 'install', '-y', '-qq', 'libnss3', 'libnspr4', 'libatk1.0-0', 'libatk-bridge2.0-0', 'libcups2', 'libdrm2', 'libxkbcommon0', 'libxcomposite1', 'libxdamage1', 'libxfixes3', 'libxrandr2', 'libgbm1', 'libasound2', 'libpango-1.0-0', 'libcairo2'], capture_output=True) print(" Dependências do sistema instaladas!") print("
Instalando pacotes Python...") subprocess.run([sys.executable, '-m', 'pip', 'install', '-U', 'crawl4ai', 'nest_asyncio', 'pydantic', '-q']) print(" Pacotes Python instalados!") print("
Instalando navegadores Playwright (isso pode levar um minuto)...") subprocess.run([sys.executable, '-m', 'playwright', 'install', 'chromium'], capture_output=True) subprocess.run([sys.executable, '-m', 'playwright', 'install-deps', 'chromium'], capture_output=True) print(" Navegadores Playwright instalados!") import nest_asyncio nest_asyncio.apply() import asyncio import json from typing import List, Optional from pydantic import BaseModel, Field print("
" + "="*60) print(" INSTALAÇÃO CONCLUÍDA! Pronto para rastrear!") print("="*60) print("
" + "="*60) print(" PARTE 2: RASTREAMENTO BÁSICO") print("="*60) from crawl4ai import AsyncWebCrawler, BrowserConfig, CrawlerRunConfig, CacheMode async def basic_crawl(): """O rastreamento mais simples possível - buscar uma página web e obter markdown.""" print("
Executando rastreamento básico em example.com...") async with AsyncWebCrawler() as crawler: result = await crawler.arun(url="https://example.com") print(f"
Rastreamento bem-sucedido: {result.success}") print(f"
Fonte: MarkTechPost
Publicado em 2026-04-15