Agent Scrape Kit: descobrir um site uma vez, extrair dele para sempre
Duas skills com LLM para agente: uma engenheira o site ao contrário num blueprint com endpoint, autenticação e paginação; a outra executa esse blueprint de f…
On this page
Agent Scrape Kit: descobrir um site uma vez, extrair dele para sempre
TL;DR
- O kit são duas skills em vez de um scraper: scraper-discover gasta tempo de LLM uma vez para engenheirar o site ao contrário num
blueprint.json, e scraper-run executa esse blueprint de forma determinística. - O resultado é o argumento em uma linha: você paga pela exploração uma vez e tem extração confiável para sempre — sem navegador no caminho quente, sem token de LLM na execução repetida.
- A descoberta classifica a arquitetura do site, sonda endpoint de API direto, faz fingerprint de proteção anti-bot e mapeia o padrão de paginação, e depois valida o blueprint extraindo pelo menos cinco registros.
- A execução trata refresh de autenticação, limite de taxa com throttling e backoff, e checkpoint a cada 500 registros, então extração longa é retomada em vez de recomeçada.
O que é e para quem
O Agent Scrape Kit é um par de skills com LLM para agente que faz scraping sistemático, e o diagnóstico do README é o familiar: a maior parte do scraping é ad hoc — abre navegador, acha o elemento, extrai, repete no próximo site — o que funciona e não escala, porque toda execução paga o mesmo custo de descoberta outra vez.
É para quem raspa os mesmos cinco sites toda semana e tem cinco scripts que quebram todo trimestre, e para o agente que precisa de dado de um site cuja API ninguém documentou.
Duas skills, dois trabalhos
scraper-discover é reconhecimento. Classifica a arquitetura do site por arquétipo — o README nomeia SSR, SPA REST, SPA GraphQL, comércio estático e blindado por anti-bot — sonda endpoint de API direto, captura tráfego de rede com Playwright só quando é necessário, detecta mecanismo de autenticação com token CSRF e cookie de sessão, faz fingerprint de proteção anti-bot em Cloudflare, Datadome, PerimeterX e Akamai, e identifica o padrão de paginação: cursor, offset, número de página ou scroll infinito.
Depois valida o blueprint extraindo pelo menos cinco registros e salva o JSON reutilizável. O passo de validação é a parte honesta: blueprint que nunca extraiu um registro é hipótese, não especificação.
scraper-run é execução. Carrega e valida o blueprint, executa a paginação automaticamente, trata refresh de autenticação para cookie de sessão, JWT e CSRF, respeita limite de taxa com throttling e backoff incluídos, salva checkpoint a cada 500 registros, e se autorrecupera quando detecta endpoint obsoleto, mudança de formato de resposta ou escalada de anti-bot. A saída é JSON limpo mais CSV.
A autorrecuperação é a decisão de projeto que vale nomear: scraper que falha alto numa mudança de formato de resposta é honesto, e scraper que escreve metade dos campos em silêncio não é.
O blueprint
Os blueprints ficam em ~/.hermes/scraper/blueprints/<domain>.json e descrevem o site, não o script:
Como usar
A descoberta é conversacional: você dá uma URL e o que quer extrair — por exemplo, todos os produtos com nome, preço e SKU — e ela produz o blueprint. Depois a execução pega o nome do blueprint e extrai tudo. Um cron transforma isso em job recorrente com aviso de mudança.
# 1. descobrir o site e produzir o blueprint
# 2. rodar o blueprint para extrair tudo
# 3. opcional: agendar scraper-run a cada 24h e avisar em mudança
Os scripts da descoberta são scripts/recon_capture.py para captura de rede com Playwright e scripts/detect_antibot.py para fingerprint de anti-bot.
Quando usar, quando não usar
Use quando você raspa o mesmo site várias vezes, quando quer pagar a descoberta uma vez em vez de a cada execução, ou quando o site tem endpoint JSON atrás de uma página e você quer pular o navegador.
Não use num site que você raspa uma vez só: a descoberta é a metade cara, e extração única não amortiza. E não use num site cujo dado exige interação só de navegador, como formulário de vários passos — a execução é HTTP e extração, e o README coloca o navegador na descoberta.
Sources
- Agent Scrape Kit — repositório — as duas skills, comportamento de descoberta e execução, formato do blueprint e uso citados acima.
- README.md — skills, scripts, comandos de uso, exemplo de blueprint.
Página do projeto: Agent Scrape Kit
Para o lado de SEO do que o site raspado deveria fazer depois, veja a skill de SEO, GEO e ASO.
FAQ
A skill de execução usa navegador? Não. O scraper-run executa o blueprint com chamada HTTP e extração; o navegador aparece na descoberta, quando é preciso capturar rede.
Gasta token de LLM em toda execução? Não, e esse é o ponto: a descoberta gasta tempo de LLM uma vez, e a execução é determinística depois.
Como o blueprint é validado? Extraindo pelo menos cinco registros antes de salvar o JSON reutilizável.
O que a execução faz em escala? Trata paginação, refresh de autenticação, limite de taxa com throttling e backoff, e salva checkpoint a cada 500 registros.