Web Crawling Planejado
Após receber uma solicitação do usuário, não inicie a coleta em massa imediatamente. Primeiro, compreenda a estrutura da fonte, armazene evidências e refine o plano. Esta skill oferece, para crawling investigativo, uma sessão baseada em urllib, sondagem de HTML/JSON/PDF, rastreamento de links e um executor de paginação simples.
Fluxo de Trabalho
- Resuma o objetivo da investigação em 1 a 3 frases.
- Encontre a URL ou arquivo inicial mais oficial.
- Use
scripts/crawlkit.py probepara verificar a estrutura da primeira resposta. - Com base no resultado da sondagem, defina o caminho de coleta.
- Se forem necessárias requisições repetidas, crie um arquivo de plano para
scripts/run_collection_plan.py. - Relate os resultados juntamente com os caminhos dos snapshots originais.
Início Rápido
Para entender a estrutura inicial:
python3 adaptive-web-research/scripts/crawlkit.py probe "https://example.com/list" --output-dir /tmp/example-probe --save-body
Para analisar um arquivo HTML local:
python3 adaptive-web-research/scripts/crawlkit.py probe "./sample.html"
Para executar um plano:
python3 adaptive-web-research/scripts/run_collection_plan.py ./plan.json --output-dir /tmp/example-run
Critérios de Decisão
- Se for HTML, verifique primeiro títulos, links, formulários, tabelas, JSON-LD e candidatos a paginação.
- Se for JSON, analise o tipo de nível superior e as chaves de lista para definir regras de requisição repetitiva.
- Se for PDF, verifique o texto de amostra e o número de páginas; se necessário, adicione um analisador subsequente.
- Se cookies ou POST forem necessários, reproduza primeiro com a etapa
requestdorun_collection_plan.py. - Se houver forte dependência de renderização JS, primeiro busque fontes oficiais alternativas ou endpoints JSON ocultos, em vez de contornar.
Scripts
scripts/crawlkit.pyprobe: Resume a estrutura da respostafetch: Salva o snapshot original
scripts/run_collection_plan.py- Executa as etapas
request,paginateefollow_links
- Executa as etapas
Documentos de Referência
- Fluxo operacional detalhado:
references/collection-workflow.md - Exemplo de plano JSON:
references/plan-schema.md
Princípios de Trabalho
- Não assuma seletores CSS ou estrutura da página sem uma sondagem (
probe). - Não resuma sem salvar a resposta original.
- Não inclua regras específicas de sites na skill básica; em vez disso, separe-as em pequenos scripts auxiliares durante o trabalho real.
- Nos resultados da coleta, registre a URL usada, o método de requisição e o caminho de armazenamento.