Do CSV ao Relatório HTML sem Escrever Código

Do CSV ao Relatório HTML sem Escrever Código — aula do módulo Primeiro Resultado em 10 Minutos, na trilha Começando com Antigravity: do Zero ao Primeiro…

Leitura de aproximadamente 4 minutos.

Módulo: Primeiro Resultado em 10 Minutos · Curso: Começando com Antigravity: do Zero ao Primeiro Resultado · Formação: Formação Nível Zero: Ferramentas Essenciais e Gratuitas de IA e Código

Do CSV ao Relatório HTML sem Escrever Código

O que você vai aprender

1. A dor real

CSV é o formato que sai de todo sistema: vendas, extrato bancário, horas trabalhadas, despesas, exportação de ERP. E é ilegível. Aberto no Bloco de Notas, são 180 linhas de texto separado por vírgula ou ponto e vírgula. Aberto no Excel, vira uma planilha crua que alguém precisa transformar em relatório à mão — todo mês, duas horas, sempre a mesma coisa.

O objetivo desta aula é fazer esse arquivo virar um relatório apresentável que abre com dois cliques, funciona sem internet e você reenvia por e-mail ou WhatsApp.

2. O pedido, na íntegra

Com a pasta demo aberta e o vendas.csv dentro dela, cole no painel do agente:

Nesta pasta existe um arquivo vendas.csv. Escreva um script PowerShell chamado
relatorio-csv.ps1 que leia esse CSV e gere um único arquivo HTML com: total, número
de registros, média, menor e maior valor; uma seção por coluna de agrupamento com tabela
e barra proporcional; e um gráfico de barras por mês. O HTML precisa ser autossuficiente
— CSS e gráficos embutidos, nenhum link externo, funciona sem internet.
O script descobre sozinho qual é a coluna de valor, qual é a de data e quais servem de
agrupamento; eu não quero informar nome de coluna.
Regras: rode em Windows com o PowerShell que já vem no sistema, sem instalar nada, sem
pip, sem npm, sem conta e sem chave de API.

3. Por que cada exigência está ali

"Um único arquivo HTML." Sem isso, é comum sair uma pasta com HTML, CSS, JavaScript e imagens. Aí você não consegue mandar por WhatsApp, e o relatório quebra assim que alguém move um arquivo de lugar.

"Autossuficiente, funciona sem internet." Bibliotecas de gráfico carregadas de um site externo funcionam hoje e quebram quando o site sai do ar, muda de versão ou você está num avião. O gráfico desenhado dentro do próprio arquivo dura.

"Descobre sozinho a coluna." Esta é a diferença entre um script que serve para o CSV do vídeo e um que serve para o seu CSV. Se você tivesse dito "a coluna de valor se chama Valor", o script morreria no primeiro arquivo que chamasse a coluna de Faturamento.

As restrições de ambiente. Sem elas, uma resposta perfeitamente razoável seria um script Python usando pandas — e aí você tem meia hora de instalação pela frente antes de ver qualquer coisa na tela.

4. Rodar


powershell -NoProfile -ExecutionPolicy Bypass -File .\relatorio-csv.ps1 -Csv .\vendas.csv

Saída medida: 180 linhas | valor: Valor | data: Data | grupos: Regiao, Produto, Vendedor.

Essa linha de resumo vale mais do que parece. Ela diz o que o script entendeu do seu arquivo antes de gerar qualquer número. Se ele tivesse escolhido a coluna errada como valor, você descobriria aqui, e não depois de mandar o relatório para o cliente.

Dê dois cliques no HTML gerado. O navegador abre com cinco cartões de número no topo, um gráfico de barras por mês e as tabelas por Região, Produto e Vendedor, cada linha com uma barra proporcional.

5. Os números medidos

| Item | Medido | |---|---| | Leitura e geração, 180 linhas | 2,68 s | | Tamanho do HTML final | 7.373 bytes | | Total apurado no relatório | 868.141,17 |

Guarde esse total: 868.141,17. Ele volta em outras aulas desta trilha como referência de conferência — quando um relatório novo, feito por outro caminho, chega ao mesmo número, você tem motivo para confiar nos dois. Quando não chega, um dos dois está mentindo.

Referência de tamanho, para calibrar expectativa: esse script saiu com cerca de 250 linhas, em três rodadas — a primeira versão e dois ajustes. Os dois ajustes são o conteúdo da próxima aula.

6. Reusar com o seu arquivo

O ponto da automação não é o CSV do exercício. Copie um CSV seu para a pasta e rode:


powershell -NoProfile -ExecutionPolicy Bypass -File .\relatorio-csv.ps1 -Csv .\meu-arquivo.csv

Confira a linha de resumo. Se as colunas detectadas fizerem sentido, o relatório também vai fazer. Se não fizerem, você tem um pedido de uma linha para o agente — e é exatamente esse tipo de conversa que a aula 4 trata.

Resumo

Outras aulas do módulo