import herramientas import conceptos_busqueda import time def identifica_documento(textos_extraidos_simplificados): """ Busca el tipo de documento en el texto, probando con una lista de documentos. Args: textos_extraidos_simplificados (list): Lista de strings con el texto a analizar. Returns: str: El nombre del primer documento encontrado ('dni', 'pasaporte', etc.), o None si ninguno de los documentos fue identificado. """ print("Estoy en identifica documento...") documentos = ['ine', 'dni', 'pasaporte'] for tipo_documento in documentos: print("Revisando tipo de documento: ", tipo_documento) # Usamos 'getattr' para acceder dinámicamente al atributo correcto # del objeto 'conceptos_busqueda', como 'conceptos_busqueda.dni'. conceptos_actuales = getattr(conceptos_busqueda, tipo_documento) # Llama a la función de búsqueda para el tipo de documento actual indice, textos_corregidos = herramientas.buscaIndexMultiplesPalabras( textos_extraidos_simplificados, conceptos_actuales ) # Si la búsqueda encuentra un resultado, salimos inmediatamente y retornamos # el nombre del documento. if indice is not None: # Puedes retornar el tipo_documento y los textos corregidos # return tipo_documento, textos_corregidos # O simplemente el tipo de documento, como en tu ejemplo return tipo_documento # Si el bucle termina sin encontrar ningún documento, retornamos None return None def identifica_ine(textos_extraidos_simplificados): #Identifica si una INE es nueva o antigüa edición. #Buscaré los dos campos que tienen SOLO las INE antigüas: localidad y municipio. #Municipio conceptos_busqueda = [{ 'preferida': 'municipio', #'alternativas': [''] }] print("Entrando a busqueda de municipio en buscar multiples palabras: ") indice, textos_extraidos_corregidos = herramientas.buscaIndexMultiplesPalabras(textos_extraidos_simplificados, conceptos_busqueda) print("Salí de la búsqueda...") municipio_existe = True if indice is not None else False print("Municipio existe: ", municipio_existe) #Localidad conceptos_busqueda = [{'preferida': 'localidad', 'alternativas': ['']}] indice, textos_extraidos_corregidos = herramientas.buscaIndexMultiplesPalabras(textos_extraidos_simplificados, conceptos_busqueda) localidad_existe = True if indice is not None else False print("Localidad existe: ", localidad_existe) if municipio_existe and localidad_existe: tipo_ine = 'ine_antes' else: tipo_ine = 'ine_actual' print("INE detectada es: ", tipo_ine) return tipo_ine