File size: 3,019 Bytes
67b82ae e0b339d 2e0d094 8b73048 67b82ae 93a5ed3 d35e97b 93a5ed3 b226794 93a5ed3 2e0d094 b226794 67b82ae b226794 e0b339d d56556d e0b339d d35e97b b226794 67b82ae b226794 d35e97b b226794 d35e97b b226794 67b82ae 11488bb 67b82ae 11488bb 67b82ae 11488bb 67b82ae 5b91cf1 |
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
import time
import documentos
import herramientas
import identificador
async def identifica_documento(image):
textos_extraidos = await herramientas.procesaImagen(image)
textos_extraidos_simplificados = herramientas.simplificaTextos(textos_extraidos)
documento = identificador.identifica_documento(textos_extraidos_simplificados)
return {
"documento": documento
}
async def procesa_documento(image):
textos_extraidos = await herramientas.procesaImagen(image)
textos_extraidos_simplificados = herramientas.simplificaTextos(textos_extraidos)
documento = identificador.identifica_documento(textos_extraidos_simplificados)
if documento == 'dni':
# Llama a la función 'dni' si el documento es un DNI
nombre, apellido, identificacion, fecha_nacimiento, sexo = await documentos.dni(textos_extraidos, textos_extraidos_simplificados)
print("Procesado como DNI.")
return {
"documento": documento,
"nombre": nombre,
"apellido": apellido,
"identificacion": identificacion,
"fecha_nacimiento": fecha_nacimiento,
"sexo": sexo
}
elif documento == 'pasaporte':
# Llama a la función 'pasaporte' si el documento es un pasaporte
#nombre, apellido, identificacion, fecha_nacimiento, sexo = await documentos.pasaporte(textos_extraidos, textos_extraidos_simplificados)
nombre, apellido, identificacion, pasaporte, fecha_nacimiento, sexo, fecha_expedicion, fecha_vencimiento = 'pasaporte', 'pasaporte', 'pasaporte', 'pasaporte', 'pasaporte', 'pasaporte', 'pasaporte', 'pasaporte'
print("Procesado como Pasaporte.")
return {
"documento": documento,
"nombre": nombre,
"apellido": apellido,
"identificacion": identificacion,
"pasaporte": pasaporte,
"fecha_nacimiento": fecha_nacimiento,
"sexo": sexo,
"fecha_expedicion": fecha_expedicion,
"fecha_vencimiento": fecha_vencimiento
}
else:
# Maneja cualquier otro caso no esperado
print(f"Tipo de documento no reconocido: {documento}")
# Podrías asignar None a las variables o levantar un error aquí
#nombre, apellido, identificacion, fecha_nacimiento, sexo = None, None, None, None, None
return {
"error": "El documento no es un dni o pasaporte válido o requiere ser más legible.",
}
async def procesa_ine(image):
textos_extraidos = await herramientas.procesaImagen(image)
textos_extraidos_simplificados = herramientas.simplificaTextos(textos_extraidos)
#Identifico documento aún así como verificador sobre lo que sube el usuario.
documento = identificador.identifica_documento(textos_extraidos_simplificados)
print("Documento: ", documento)
if documento == 'ine':
tipo_ine = identificador.identifica_ine(textos_extraidos_simplificados)
print("Tipo ine es : ", tipo_ine)
if tipo_ine == 'ine_actual':
vigencia = await documentos.ine_actual(textos_extraidos_simplificados)
else:
vigencia = await documentos.ine_antes(textos_extraidos_simplificados)
return {
"nombre": "-----",
"domicilio": "-----",
"clave_elector": "-----",
"sexo": "-----",
"vigencia": vigencia,
} |