Pare de raspar governo. Comece a analisar.¶
Quantilica é um ecossistema aberto de coletores Python para os dados públicos brasileiros — IBGE, Tesouro Nacional, DATASUS, INMET, CAGED, RAIS, Comex e adjacentes. Uma ferramenta especializada por fonte, todas seguindo os mesmos princípios: resiliência, proveniência e Parquet tipado na saída.
Comece em 5 minutos → Ver o Cookbook GitHub
O atrito que você conhece¶
Quem já tentou trabalhar com dados oficiais brasileiros conhece o roteiro:
- A API REST do IBGE devolve
502no meio de uma série histórica. - O FTP do DATASUS tem 1998 escrito na cara e tomba a cada três dias úteis.
- O CSV de 50M linhas do CAGED estoura a memória do Pandas.
- O Siscomex serve arquivos GB com SSL quebrado e schemas que mudam sem aviso.
- O Tesouro publica taxas em planilhas com cabeçalhos hierárquicos e separadores
;. - Cada análise começa com duas semanas de yak shaving e raspagem.
Você está fazendo trabalho que outra pessoa já fez ontem. E vai refazer amanhã.
A virada¶
Quantilica resolve isso de uma vez, para todo mundo. Uma ferramenta por fonte, todas seguindo os mesmos cinco Princípios de Design: Modularidade, Resiliência, Performance, Reprodutibilidade e Sem Mágica.
# Baixar o IPCA cheio em 3 linhas
from sidra_fetcher.fetcher import SidraClient
with SidraClient() as client:
agregado = client.get_agregado(1705) # IPCA-15: metadados + 84 períodos + 27 localidades
Cada download vem acompanhado de um manifesto SHA-256 (proveniência total), retry automático com backoff, e saída padronizada em Parquet — pronto para Polars, DuckDB, ou o que vier.
A promessa¶
Não é mais um pacote no PyPI. É infraestrutura aberta: quando o IBGE muda um endpoint, o ecossistema inteiro se atualiza junto. Quando o DATASUS publica um novo arquivo .dbc, o crawler já sabe. Quando o Tesouro reformata a planilha de taxas, o parser absorve a mudança em uma release.
A camada de confiança entre você e os dados públicos do Brasil — para que você volte a fazer o trabalho que importa.
Uma ferramenta por dor¶
| Ferramenta | A dor que ela elimina |
|---|---|
| sidra-fetcher | API REST do IBGE instável, rate limiting, períodos em strings ambíguas |
| sidra-sql | Bulk load de SIDRA em PostgreSQL com histórico de revisões (SCD II) |
| sidra-pipelines | Catálogo declarativo de pipelines IBGE prontos para rodar |
| tesouro-direto-fetcher | CKAN do Tesouro, leitores por dataset, gráficos prontos |
| rtn-fetcher | Planilhas hierárquicas do RTN viradas em DataFrame tipado |
| pdet-fetcher | CAGED/RAIS de 50M+ linhas, processadas com Polars sem estourar memória |
| comex-fetcher | Siscomex com SSL ruim, arquivos GB, downtime governamental |
| datasus-fetcher | FTP legado do DATASUS, crawler multithread, 320+ GB de microdados |
| inmet-fetcher | INMET BDMEP, séries climáticas históricas com encoding limpo |
| quantilica-core | A fundação: HTTP resiliente, storage atômico, manifestos SHA-256 |
| quantilica-io | Parquet tipado com proveniência injetada no header |
Por onde começar¶
Em 5 minutos¶
- Quickstart — instala, baixa um dataset real, plota um gráfico. Três caminhos: IBGE, Tesouro, Saúde.
Aprofundar¶
- Arquitetura do Ecossistema — como as partes se conectam.
- Princípios de Design — por que o sistema tem essa forma.
- Padrões Práticos — receitas táticas que materializam os princípios.
- Parquet + Polars — o formato e a biblioteca que sustentam tudo.
Pela dor¶
| Você quer… | Vá para |
|---|---|
| Indicadores macro (PIB, IPCA, desemprego) | IBGE |
| Yield curve e retornos do Tesouro Direto | Tesouro |
| Salários e fluxos de emprego (CAGED/RAIS) | Trabalho |
| Fluxos de comércio exterior | Comércio Exterior |
| Microdados de saúde pública | Saúde Pública |
| Séries climáticas históricas | Clima |
| Cruzar múltiplos domínios | Cookbook |
Stack e padrões¶
- Python 3.12+,
uvpara ambientes e dependências. hatchlingcomo build system,ruffpara lint/format,pytestpara testes.- Parquet + Polars como destino analítico padrão.
- MIT para todos os pacotes.
- Distribuição via
git+https://para quase tudo;datasus-fetcherpublicado no PyPI.
Veja os Princípios de Design para o detalhe completo, ou pule direto para o Quickstart.
Contribuir¶
Encontrou um fetcher quebrado porque o governo mudou um endpoint? Quer sugerir uma nova fonte? Tem uma receita interessante para o Cookbook?
- Bug em fetcher → abra uma issue no repositório específico.
- Nova fonte de dados → use o template Feature Request no GitHub.
- Receita de cruzamento → PR no
docs/com um novo arquivo emcookbook/.
Os padrões técnicos estão em Contribuir e em Padrões de Escrita.