Este projeto é uma aplicação para leitura, extração de texto e manipulação de arquivos PDF com funcionalidades específicas para busca de CPFs e geração de resumos.
- Extração de Texto: Extrai texto de arquivos PDF usando a biblioteca
pdfplumber
ePyMuPDF
. - Busca e Geração de Comprovantes: Busca CPFs específicos em um PDF e gera arquivos PDF individuais para cada CPF encontrado.
- Reconhecimento Óptico de Caracteres (OCR): Utiliza
pytesseract
para extrair texto de imagens dentro de arquivos PDF. - Resumo de Texto: Gera um resumo do conteúdo textual extraído usando um modelo de NLP (Natural Language Processing) com
transformers
. - Geração de Arquivo ZIP: Cria um arquivo ZIP com todos os comprovantes PDF gerados a partir da busca de CPFs.
- Python Flask: Framework para criação da aplicação web.
- Bibliotecas PDF:
pdfplumber
,PyPDF2
efitz
para manipulação e extração de conteúdo em PDF. - Reconhecimento Óptico de Caracteres:
pytesseract
ePIL
para reconhecimento de texto em imagens. - NLP com Transformers: Biblioteca
transformers
da Hugging Face para resumir textos extraídos.
- Instale o Tesseract OCR no sistema para uso do
pytesseract
. - Instale as dependências do Python.
- Clone o repositório:
git clone https://github.com/AlunosAdsAnhanguera/PDF_reader.git
- Navegue até o diretório do projeto:
cd PDF_reader
- Instale as dependências:
pip install -r requirements.txt
- Execute a aplicação:
A aplicação estará disponível em
python app.py
http://127.0.0.1:5000
.
- app.py: Script principal que contém a lógica da aplicação.
- PDF_ARCH/: Diretório onde os PDFs carregados e processados são armazenados.
- templates/ e static/: Arquivos de interface e estilos da aplicação.
- PDF: Envie um arquivo PDF para leitura.
- Arquivo de CPFs (.txt): Envie um arquivo de texto contendo os CPFs a serem buscados no PDF.
- Gerar Resumo: Extrai o texto do PDF e gera um resumo usando um modelo de NLP.
- Buscar Comprovantes de CPF: Busca os CPFs no PDF e gera arquivos PDF individuais para cada CPF encontrado, compactando todos os arquivos gerados em um ZIP para download.
- Rota Principal (
/
): Página inicial com o formulário de upload. - Upload (
/upload
): Processa o upload do PDF e do arquivo de CPFs, executando a ação selecionada. - Download do ZIP (
/download_zip
): Permite o download do arquivo ZIP gerado.
O arquivo cpfs.txt
deve ter o seguinte formato, com um CPF por linha:
123.456.789-00
987.654.321-00
Contribuições são bem-vindas. Sinta-se à vontade para fazer um fork do repositório, criar uma nova branch com suas alterações e abrir um pull request.
Para executar o projeto, é necessário instalar as seguintes bibliotecas:
Flask==2.0.1
PyMuPDF==1.19.0
pytesseract==0.3.8
pdfplumber==0.5.28
Pillow==8.3.1
transformers==4.9.1
torch==1.9.0
PyPDF2==2.1.0
-
Instale as Dependências: Execute o comando abaixo no diretório do projeto para instalar todas as bibliotecas listadas:
pip install -r requirements.txt
-
Instalação do Tesseract OCR:
- Linux (Debian/Ubuntu):
sudo apt-get install tesseract-ocr
- Windows:
- Baixe o instalador do Tesseract OCR no repositório oficial do GitHub.
- Adicione o caminho do executável do Tesseract ao PATH do sistema para que
pytesseract
possa acessá-lo.
- Linux (Debian/Ubuntu):
Este projeto está licenciado sob a MIT License.
Esse conteúdo formata o `README.md` com seções detalhadas e organizadas, incluindo o arquivo `requirements.txt` e as instruções de instalação.