Ferramenta em Python para extração de dados estruturados de arquivos PDF padronizados utilizando mapeamento de coordenadas (X, Y).
Este projeto foi desenvolvido para automatizar a leitura de documentos onde o layout é fixo, mas o OCR tradicional falha ou é desnecessário. Inclui uma ferramenta visual para criar o "gabarito" das coordenadas.
- Mapeador Visual (
mapping_pdf.py):- Gera uma imagem do PDF com uma régua/grade sobreposta.
- Facilita a identificação das coordenadas
(x0, top, x1, bottom)para configuração.
- Extrator em Lote (
main.py):- Processa todos os PDFs de uma pasta.
- Extrai campos específicos (ex: Contrato, CPF, Placa, Valores).
- Exporta os dados para Excel (.xlsx), CSV e JSON.
- Gera logs detalhados de sucesso/erro.
Este repositório contém apenas o código fonte. Os arquivos PDF de entrada (denominados "calculadoras") e os relatórios gerados não estão incluídos para proteger dados sensíveis e estar em conformidade com a LGPD (Lei Geral de Proteção de Dados), pois contêm informações pessoais como CPF, nomes e endereços.
Para testar, utilize seus próprios PDFs e ajuste as coordenadas no dicionário mapa_campos dentro do arquivo main.py.
pip install -r requirements.txtEdite o arquivo mapear_pdf.py com o caminho do seu PDF alvo e execute:
python mapping_pdf.pyIsso gerará uma imagem gabarito_final.png que ajudará você a descobrir as coordenadas dos campos.
Coloque seus arquivos .pdf na pasta calculadoras/.
Execute o script principal:
python main.pyOs resultados serão gerados na raiz (ou pasta output) como relatorio_final.xlsx.
pdfplumber - Leitura de PDF e extração de texto por área.
Pandas - Manipulação de dados e exportação para Excel.
Pillow (PIL) - Manipulação de imagem para desenhar o gabarito.