>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarcados Segurança
Rust

Como Executar um Parser de Sites Rápido para LLMs com Apenas 14 Megabytes de RAM

fastCRW

A última vez que tentei fazer deploy de uma stack local para web scraping em um pipeline RAG, meu modesto VPS rapidamente implorou por misericórdia. A combinação de engines de navegador, filas de tarefas e runtimes pesados devorou instantaneamente gigabytes de memória. Se você também tentou fazer self-hosting de soluções populares como Firecrawl, provavelmente se lembra desses requisitos de sistema.

Recentemente, o projeto fastCRW chamou minha atenção (no repositório ele é simplesmente chamado de crw). O autor reescreveu as funções familiares de scraping e crawling em Rust, ajustando tudo em um binário compacto.

O que o projeto pode fazer

fastCRW foi concebido como uma alternativa direta ao Firecrawl e Tavily. Ele busca páginas web por URL e as entrega como Markdown limpo, pronto para modelos de linguagem consumirem, ou como JSON estruturado.

A ferramenta lida com quatro tarefas principais:

  1. Scrape: converte uma página em Markdown, HTML bruto ou uma captura de tela.
  2. Crawl: percorre sistematicamente as páginas do site através de links internos respeitando o robots.txt.
  3. Map: constrói um mapa de links de um recurso sem carregar completamente cada página.
  4. Search: pesquisa na internet e exporta os resultados imediatamente.

fastCRW benchmarks

De acordo com os benchmarks no repositório, em um dataset aberto de mil endereços, fastCRW mostrou boa velocidade de carregamento e completude na extração de dados, enquanto o binário em repouso usa apenas cerca de 14 megabytes de RAM.

Como trabalhar com isso

Você pode testar o utilitário localmente sem registro, ou conectar um backend em nuvem com um tier gratuito.

Instalação no terminal:

curl -fsSL https://fastcrw.com/install | sh

Imediatamente após isso, o CLI está disponível. Uma chamada simples retornará o Markdown parseado diretamente no stream de saída:

crw https://example.com

Integração no código

Para desenvolvedores, existem bibliotecas prontas. Veja como fica a coleta de dados em Python:

from crw import CrwClient

client = CrwClient()
page = client.scrape("https://example.com", formats=["markdown"])

print(page["markdown"])

Para Node.js, a sintaxe é praticamente a mesma:

import { CrwClient } from "crw-sdk";

const client = new CrwClient();
const page = await client.scrape("https://example.com", {
  formats: ["markdown"],
});

console.log(page.markdown);

Conectando a assistentes de IA via MCP

Uma vantagem adicional é o suporte ao Model Context Protocol. Isso significa que o utilitário pode ser rapidamente conectado como uma ferramenta para Claude Desktop, Cursor ou qualquer outro agente.

Comando para configuração automática do MCP:

npx -y crw-mcp@latest install

Após a instalação, o modelo ganha a capacidade de pesquisar na web e ler páginas independentemente, sem gambiarras com scripts externos.

Opções de deploy e licenciamento

O projeto tem dois caminhos para uso. O primeiro é executar um binário local em seus próprios servidores sob Linux ou macOS. O segundo é uma API em nuvem com renderização JavaScript pesada e pesquisa prontas.

É importante revisar as licenças se você planeja fazer deploy da ferramenta em produção. O próprio engine e o servidor MCP são distribuídos sob a licença restritiva AGPL-3.0. As bibliotecas cliente para Python e TypeScript são abertas sob a familiar MIT.

Para quem isso será útil

fastCRW é uma excelente escolha se você está construindo sistemas RAG, coletando dados para fine-tuning de modelos, ou criando agentes de IA autônomos. O projeto elimina a necessidade de manter uma frota pesada de navegadores apenas para extrair texto simples de artigos e documentação.

Se você está cansado de dedicar metade dos recursos do seu servidor a parsers pesados, tente executar o crw localmente — a diferença no consumo de memória é perceptível desde os primeiros segundos.

Projetos relacionados