|
import tempfile |
|
import time |
|
|
|
async def imageToTemp(image): |
|
print("Estoy en imageToTemp...") |
|
|
|
try: |
|
with tempfile.NamedTemporaryFile(delete=False, suffix=f"_{image.filename}") as tmp_file: |
|
contents = await image.read() |
|
tmp_file.write(contents) |
|
temp_file_path = tmp_file.name |
|
|
|
print(f"Archivo temporal guardado en: {temp_file_path}") |
|
return temp_file_path |
|
|
|
except Exception as e: |
|
print(f"Error al procesar el archivo: {e}") |
|
return {"error": "Error al procesar la imagen"} |
|
|
|
|
|
def listaTextosExtraidos(dict_recibido): |
|
|
|
result = dict_recibido['data'] |
|
print("Datos extraídos (acceso directo):") |
|
|
|
textos_extraidos = [] |
|
print("Líneas encontradas con modelo IA:") |
|
for item in result: |
|
texto = item[1][0] |
|
print(texto) |
|
textos_extraidos.append(texto) |
|
return textos_extraidos |
|
|
|
|
|
|
|
def buscaIndexPalabra(arreglo, palabra): |
|
palabra_limpia = palabra.lower().replace(" ", "") |
|
for i, texto_limpio in enumerate(arreglo): |
|
if palabra_limpia in texto_limpio: |
|
return i |
|
return 'error' |
|
|
|
def buscarPatronCedula(lista_textos): |
|
for i, texto in enumerate(lista_textos): |
|
if texto and texto[0].isdigit() and '-' in texto: |
|
return i |
|
return 'error' |