Spaces:
Running
Running
File size: 1,646 Bytes
efe1674 5447dec efe1674 1f073b5 025996e cf080e7 1f073b5 cf080e7 92bf3c0 f6541bc cf080e7 0ec43db 76c9ebd efe1674 63ff32e e43ad01 63ff32e efe1674 e43ad01 cf080e7 d1bbdab efe1674 f6541bc efe1674 3fa5477 d1bbdab 76c9ebd 0ec43db |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
import gradio as gr
import PyPDF2
def extrair_texto_pdf():
with open("dados-cdu.pdf", "rb") as pdf_file:
pdf_reader = PyPDF2.PdfReader(pdf_file)
text = ""
for page in pdf_reader.pages:
text += page.extract_text()
return text
def consultar_cdu(palavra_chave):
texto_base = extrair_texto_pdf()
palavras_chave_encontradas = []
linhas = texto_base.split("\n")
for linha in linhas:
if palavra_chave.lower() in linha.lower():
palavras_chave_encontradas.append(linha)
return palavras_chave_encontradas
def gerar_cdu(palavras_chave):
palavras_chave = [palavra.strip() for palavra in palavras_chave.split(";")]
resultados = {}
for palavra_chave in palavras_chave:
cdu_encontrada = consultar_cdu(palavra_chave)
resultados[palavra_chave] = cdu_encontrada
return resultados
# Interface Gradio
input_text = gr.Textbox(label="Inserir o assunto desejado (Geografia cultural)")
button_label = "Gerar CDU"
output_text = gr.Textbox(label="Resultados CDU")
def generate_cdu(palavras_chave):
if palavras_chave:
resultados = gerar_cdu(palavras_chave)
if len(resultados) > 0:
return resultados
else:
return {"Nada encontrado. Tente outro termo"}
else:
return {}
title = "Gerador de CDU"
description = "Bem-vindo ao Gerador de Classificação Decimal Universal (CDU).<br/>Insira o assunto da obra e clique em 'ENVIAR' para obter a classificação CDU relacionada."
gr.Interface(fn=generate_cdu, inputs=input_text, outputs=output_text, title=title, description=description).launch()
|