Skip to main content

WolfzBR

CI

Limpeza de planilhas brasileiras com receitas reproduzíveis. Você arrasta a planilha suja (título, cabeçalho no meio, totais, 1.234,56, R$, datas 31/12/2024), ajusta os passos na tela e exporta a tabela limpa junto com a receita: o mesmo passo a passo em Power Query M e em script Python, para refazer no mês seguinte.

Tudo roda na sua máquina. Nenhum dado sai do seu computador.

Status: pré-alfa (0.5). O formato da receita ainda pode mudar até a 1.0.

Importar, ajustar a receita e exportar

Instalação

Requer Python 3.12 ou mais novo. Recomendado com pipx, que isola o WolfzBR num ambiente próprio:

pipx install wolfzbr

ou com pip, num ambiente virtual:

pip install wolfzbr

O pacote já traz a interface compilada; não precisa de Node.

Uso

Interface

wolfz ui

Abre o navegador com a interface. Para usar:

  1. Arraste o arquivo (.xlsx, .xls, .ods ou .csv). Se tiver mais de uma aba, escolha qual.
  2. Confira a estrutura detectada: título, cabeçalho, dados, totais e rodapé aparecem em cores. Se a área estiver errada, clique e arraste na grade para marcar a certa.
  3. Ajuste a receita: adicione, edite, reordene ou desative passos, vendo a tabela antes e depois de cada um. Clique no cabeçalho de uma coluna para ver o perfil dela.
  4. Exporte: CSV (pronto para o Excel em português), Excel, Parquet, Power Query M e script Python.

A receita é salva automaticamente a cada edição. O endereço só funciona com a chave de acesso que o terminal mostra, nova a cada execução. Deixe o terminal aberto enquanto usa; Ctrl+C encerra.

Opções: --port fixa a porta; --no-browser só mostra o endereço, sem abrir o navegador.

Linha de comando

Aplicar uma receita salva ao arquivo do mês seguinte:

wolfz run vendas.wolfz.json vendas_fevereiro.xlsx -o saida/ --format xlsx
  • Se algum passo não se aplicar ao arquivo novo (uma coluna mudou de nome, por exemplo), nada é gravado e a mensagem diz qual passo falhou e quais colunas existem.
  • Se a aba muda de nome todo mês (Vendas 2024 → Vendas 2025), use source.match.sheet_name_regex na receita.

Outros comandos:

wolfz inspect planilha.xlsx      # perfil das colunas no terminal
wolfz schema                     # JSON Schema da receita
wolfz --help

Códigos de saída do run: 0 ok · 1 um passo falhou · 2 receita inválida ou uso incorreto · 3 arquivo ilegível.

Em Python

import wolfz

df = wolfz.run("vendas.wolfz.json", "vendas_fevereiro.xlsx")  # polars.DataFrame

Exportação

Formato O que sai
CSV UTF-8 com BOM; separador ,, ; ou tabulação; vírgula decimal opcional. Opção de neutralizar fórmulas (=, +, -, @).
Excel (.xlsx) Data como data, número como número; texto nunca vira fórmula.
Parquet Tipos preservados, compressão zstd.
Power Query M A receita como consulta M que lê o arquivo de origem, para colar no Power BI ou no Excel. Vem com o parâmetro CaminhoArquivo num arquivo à parte: para o mês seguinte, troque só o caminho.
Script Python A receita como script autônomo, que lê a planilha ou o CSV e grava .csv ou .parquet. Só depende do Polars (e de fastexcel e python-calamine para ler planilha).

Tableau (.hyper) e projeto do Power BI (.pbip) estão previstos para versões futuras.

Padrões brasileiros

O catálogo tem 31 operações: estrutura (área, cabeçalho, linhas e colunas vazias, preencher para baixo, despivotar), colunas, texto e padrões brasileiros. Os padrões cobrem:

  • números (1.234,56, (1,5), 10- do SAP, R$);
  • percentual, datas e mês/ano;
  • sim/não;
  • CPF, CNPJ (inclusive o alfanumérico), CEP e UF.

Cada operação tem a mesma regra no motor (Polars), no M e no script Python, com teste de equivalência.

Limites

  • Arquivo de até 100 MB.
  • Uma tabela por aba. Duas tabelas na mesma aba: marque a área de cada uma em projetos separados.
  • Cabeçalho em várias linhas é juntado num nome só, mas o cabeçalho mesclado na horizontal ainda não é preenchido. Isso chega na 0.6.

Documentação

Licença

MIT

Metadata

Release files for wolfzbr 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wolfzbr 0.5.0
File Size Uploaded
wolfzbr-0.5.0.tar.gz 292.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wolfzbr 0.5.0
File Interpreter ABI Platform
wolfzbr-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 613.9 kB

Release files / wolfzbr-0.5.0.tar.gz

Download URL wolfzbr-0.5.0.tar.gz
Size 292.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ecb50aea07e294e32f1c4fb5003d5c435c00425ca038b326ca6a7b2c7d43bb8f
BLAKE2b-256 checksum
How to use checksums
b5a15604e356470c29f47f179f33265c8909720b7ff24dead2a6803f581d606d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / wolfzbr-0.5.0-py3-none-any.whl

Download URL wolfzbr-0.5.0-py3-none-any.whl
Size 322.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4ac9c4de8487a7efa3bce649cd3ed1e10737de1f73a0cd70807cd01d6901a4f4
BLAKE2b-256 checksum
How to use checksums
8366c854462272018f5edb742dfaa20750044eb782df26ff66f9e69aed477ef5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.6.0

2 release files

This release

0.5.0 This release

2 release files

0.4.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page