Olá!
Como não encontrei nenhum tutorial específico para isso, estou testando o q o ChatGPT me passou. É um pouco genérico. Tento substituir os termos do exemplo, o caminho do arquivo... mas ao rodar, não dá certo.
Eu tenho um arquivo em PDF com várias páginas que é uma grande tabela.
O objetivo é: encontrar uma palavra (p ex. São Paulo) e todas as linhas que aparecerem essa palavra sejam selecionadas e exportadas para um arquivo .csv (com colunas separadas por vírgulas) ou em .xlsx.
Segue abaixo o exemplo usando o PDF Plumber no VS Code:
import pdfplumber
import pandas as pd
# Função para extrair linhas contendo uma palavra de um PDF
def extrair_linhas_com_palavra(pdf_path, palavra_chave):
linhas_selecionadas = []
# Abrindo o PDF
with pdfplumber.open(pdf_path) as pdf:
for pagina in pdf.pages:
# Extraindo texto da página
texto = pagina.extract_text()
if texto:
# Dividindo o texto em linhas
linhas = texto.split('\n')
for linha in linhas:
if palavra_chave in linha:
linhas_selecionadas.append(linha)
return linhas_selecionadas
# Caminho para o arquivo PDF
caminho_pdf = 'caminho/para/o/seu/documento.pdf'
# Palavra a ser buscada
palavra = 'sua_palavra'
# Extraindo linhas que contêm a palavra
linhas_encontradas = extrair_linhas_com_palavra(caminho_pdf, palavra)
# Criando um DataFrame com as linhas encontradas
df = pd.DataFrame(linhas_encontradas, columns=['Linhas'])
# Exportando para um arquivo CSV
df.to_csv('linhas_selecionadas.csv', index=False, encoding='utf-8')
# Exportando para um arquivo Excel
df.to_excel('linhas_selecionadas.xlsx', index=False, encoding='utf-8')
Tem alguma dica? Tô muito fora?? rsrs
Obrigado. Um abraço.