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.inputs.Textbox(label="Inserir o assunto desejado (Geografia cultural)") button_label = "Gerar CDU" output_text = gr.outputs.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).
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()