Friday, February 19, 2016

Juntar Arquivos Com Python

CONTEXTO

Como parte de uma tarefa era necessário executar um script em todos os diretório de um projeto, analisar os relatórios gerados e no final unifica-los em um arquivo mas mantendo a integridade dos arquivos originais.

O relatório gerado era no formato CSV. Como eram mais de 20 diretórios, consequentemente foram obtido mais de 20 arquivos CSV para serem analisados e concatenados.

Essa tarefa de abrir cada CSV com o Calc para copiar e colar em um outro arquivo além de trabalhosa tem um grande risco de ocorrer erros, pois existe a possibilidade de copiar o mesmo arquivo mais de uma vez e também de esquecer de adicionar algum.

Com esse escopo foi criado o JoinFiles. Esse script é executado pelo terminal utilizando como parâmetro o path do diretório onde estão os relatórios e o nome do novo arquivo que será criado.

USO

$ python join_files.py -h
usage: join_files.py [-h] -p PATH [-f FILE]
optional arguments:
-h, --help show this help message and exit
-p PATH, --path PATH  Directory Path
-f FILE, --file FILE  New file name

EXEMPLO

Em um cenário hipotético foram criados dois arquivos, one.csv e two.csv, ambos no path: /home/user/files_to_join
ARQUIVO
CONTEÚDO
one.csv
1;1;1;1;1
two.csv
2;2;2;2;2

Com a execução do script um novo arquivo foi criado unindo o conteúdo de ambos csv.

$ python join_files.py -p /home/user/files_to_join -f new.csv

$ cat new.csv
1;1;1;1;1
2;2;2;2;2



No comments:

Post a Comment