Reestructura general de acceso a campos y tools
Browse files- .gitignore +2 -1
- campos/ine_actual.py +20 -0
- campos/ine_antes.py +20 -0
- documentos.py +13 -1
- herramientas_campos.py +0 -20
- obtenCampo.py +1 -21
- tools/__pycache__/ine_actual.cpython-311.pyc +0 -0
- tools/__pycache__/ine_antes.cpython-311.pyc +0 -0
- tools/ine_actual.py +9 -0
- tools/ine_antes.py +20 -0
.gitignore
CHANGED
|
@@ -1,2 +1,3 @@
|
|
| 1 |
/venv/
|
| 2 |
-
/__pycache__/
|
|
|
|
|
|
| 1 |
/venv/
|
| 2 |
+
/__pycache__/
|
| 3 |
+
campos/__pycache__/
|
campos/ine_actual.py
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import herramientas
|
| 2 |
+
import tools.ine_actual as ine_actual_tools
|
| 3 |
+
|
| 4 |
+
def vigencia(textos_extraidos, textos_extraidos_limpios):
|
| 5 |
+
|
| 6 |
+
conceptos_busqueda = [
|
| 7 |
+
{'preferida': 'vigencia', 'alternativas': ['igencia']},
|
| 8 |
+
]
|
| 9 |
+
|
| 10 |
+
indice, textos_extraidos_corregidos = herramientas.buscaIndexMultiplesPalabras(textos_extraidos_limpios, conceptos_busqueda)
|
| 11 |
+
|
| 12 |
+
textos_extraidos_limpios = textos_extraidos_corregidos
|
| 13 |
+
print("El índice de genero es: ", indice)
|
| 14 |
+
|
| 15 |
+
texto_genero = textos_extraidos_limpios[indice]
|
| 16 |
+
print("Y su correspondiente texto es: " , texto_genero)
|
| 17 |
+
|
| 18 |
+
vigencia = ine_actual_tools.obtener_vigencia(indice, textos_extraidos_limpios)
|
| 19 |
+
|
| 20 |
+
return vigencia
|
campos/ine_antes.py
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import herramientas
|
| 2 |
+
import tools.ine_antes as ine_antes_tools
|
| 3 |
+
|
| 4 |
+
def vigencia(textos_extraidos, textos_extraidos_limpios):
|
| 5 |
+
|
| 6 |
+
conceptos_busqueda = [
|
| 7 |
+
{'preferida': 'vigencia', 'alternativas': ['igencia']},
|
| 8 |
+
]
|
| 9 |
+
|
| 10 |
+
indice, textos_extraidos_corregidos = herramientas.buscaIndexMultiplesPalabras(textos_extraidos_limpios, conceptos_busqueda)
|
| 11 |
+
|
| 12 |
+
textos_extraidos_limpios = textos_extraidos_corregidos
|
| 13 |
+
print("El índice de genero es: ", indice)
|
| 14 |
+
|
| 15 |
+
texto_genero = textos_extraidos_limpios[indice]
|
| 16 |
+
print("Y su correspondiente texto es: " , texto_genero)
|
| 17 |
+
|
| 18 |
+
vigencia = ine_antes_tools.obtener_vigencia(texto_genero)
|
| 19 |
+
|
| 20 |
+
return vigencia
|
documentos.py
CHANGED
|
@@ -1,6 +1,9 @@
|
|
| 1 |
import time
|
|
|
|
| 2 |
import obtenCampo
|
| 3 |
|
|
|
|
|
|
|
| 4 |
|
| 5 |
#Funciones para cada documento y sus respectivos campos.
|
| 6 |
|
|
@@ -23,9 +26,18 @@ async def pasaporte(textos_extraidos, textos_extraidos_simplificados):
|
|
| 23 |
|
| 24 |
return nombre, apellido, identificacion
|
| 25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
async def ine_antes(textos_extraidos, textos_extraidos_simplificados):
|
| 27 |
|
| 28 |
#Campos Buscados
|
| 29 |
-
vigencia =
|
| 30 |
|
| 31 |
return vigencia
|
|
|
|
| 1 |
import time
|
| 2 |
+
import campos
|
| 3 |
import obtenCampo
|
| 4 |
|
| 5 |
+
import campos.ine_antes as doc_ine_antes
|
| 6 |
+
import campos.ine_actual as doc_ine_actual
|
| 7 |
|
| 8 |
#Funciones para cada documento y sus respectivos campos.
|
| 9 |
|
|
|
|
| 26 |
|
| 27 |
return nombre, apellido, identificacion
|
| 28 |
|
| 29 |
+
#Funciones para Zurich México
|
| 30 |
+
|
| 31 |
+
async def ine_actual(textos_extraidos, textos_extraidos_simplificados):
|
| 32 |
+
|
| 33 |
+
#Campos Buscados
|
| 34 |
+
vigencia = doc_ine_actual.vigencia(textos_extraidos, textos_extraidos_simplificados)
|
| 35 |
+
|
| 36 |
+
return vigencia
|
| 37 |
+
|
| 38 |
async def ine_antes(textos_extraidos, textos_extraidos_simplificados):
|
| 39 |
|
| 40 |
#Campos Buscados
|
| 41 |
+
vigencia = doc_ine_antes.vigencia(textos_extraidos, textos_extraidos_simplificados)
|
| 42 |
|
| 43 |
return vigencia
|
herramientas_campos.py
CHANGED
|
@@ -53,24 +53,4 @@ def obtener_genero(texto):
|
|
| 53 |
# que es la letra del sexo/seno. match.group(1) sería "Sexo" o "Seno".
|
| 54 |
return match.group(2)
|
| 55 |
else:
|
| 56 |
-
return None
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
#DOCUMENTO:INE CAMPO:VIGENCIA
|
| 60 |
-
def obtener_vigencia(texto):
|
| 61 |
-
# La expresión regular busca:
|
| 62 |
-
# (\d{4}) -> Un grupo que captura 4 dígitos (el número de la izquierda)
|
| 63 |
-
# vigencia -> La palabra literal "vigencia"
|
| 64 |
-
# (\d{4}) -> Otro grupo que captura 4 dígitos (el número de la DERECHA)
|
| 65 |
-
# El 're.search' devuelve un objeto 'match' si encuentra el patrón
|
| 66 |
-
match = re.search(r'\d+vigencia(\d+)', texto)
|
| 67 |
-
|
| 68 |
-
if match:
|
| 69 |
-
# Si se encuentra una coincidencia, match.group(1) contiene el primer grupo capturado.
|
| 70 |
-
# En este caso, el número a la derecha.
|
| 71 |
-
numero_derecha = match.group(1)
|
| 72 |
-
print(f"El número a la derecha es: {numero_derecha}")
|
| 73 |
-
return numero_derecha
|
| 74 |
-
else:
|
| 75 |
-
print("No se encontró el patrón en el texto.")
|
| 76 |
return None
|
|
|
|
| 53 |
# que es la letra del sexo/seno. match.group(1) sería "Sexo" o "Seno".
|
| 54 |
return match.group(2)
|
| 55 |
else:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
return None
|
obtenCampo.py
CHANGED
|
@@ -45,24 +45,4 @@ def sexo(textos_extraidos, textos_extraidos_limpios):
|
|
| 45 |
print("Y su correspondiente texto es: " , texto_genero)
|
| 46 |
|
| 47 |
sexo = herramientas_campos.obtener_genero(texto_genero)
|
| 48 |
-
return sexo
|
| 49 |
-
|
| 50 |
-
#Campos para INE
|
| 51 |
-
|
| 52 |
-
def vigencia(textos_extraidos, textos_extraidos_limpios):
|
| 53 |
-
|
| 54 |
-
conceptos_busqueda = [
|
| 55 |
-
{'preferida': 'vigencia', 'alternativas': ['igencia']},
|
| 56 |
-
]
|
| 57 |
-
|
| 58 |
-
indice, textos_extraidos_corregidos = herramientas.buscaIndexMultiplesPalabras(textos_extraidos_limpios, conceptos_busqueda)
|
| 59 |
-
|
| 60 |
-
textos_extraidos_limpios = textos_extraidos_corregidos
|
| 61 |
-
print("El índice de genero es: ", indice)
|
| 62 |
-
|
| 63 |
-
texto_genero = textos_extraidos_limpios[indice]
|
| 64 |
-
print("Y su correspondiente texto es: " , texto_genero)
|
| 65 |
-
|
| 66 |
-
vigencia = herramientas_campos.obtener_vigencia(texto_genero)
|
| 67 |
-
|
| 68 |
-
return vigencia
|
|
|
|
| 45 |
print("Y su correspondiente texto es: " , texto_genero)
|
| 46 |
|
| 47 |
sexo = herramientas_campos.obtener_genero(texto_genero)
|
| 48 |
+
return sexo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tools/__pycache__/ine_actual.cpython-311.pyc
ADDED
|
Binary file (544 Bytes). View file
|
|
|
tools/__pycache__/ine_antes.cpython-311.pyc
ADDED
|
Binary file (694 Bytes). View file
|
|
|
tools/ine_actual.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
def obtener_vigencia(indice, textos_extraidos_libres):
|
| 2 |
+
|
| 3 |
+
#Aquí recibo el índice porque lo que quiero es la posición no el texto.
|
| 4 |
+
|
| 5 |
+
print("El índice es:", indice)
|
| 6 |
+
print("Textos: ", textos_extraidos_libres)
|
| 7 |
+
|
| 8 |
+
print("Aquí obtendré vigencia de ine actual.")
|
| 9 |
+
return "Vigencia INE Actual"
|
tools/ine_antes.py
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import re
|
| 2 |
+
|
| 3 |
+
#DOCUMENTO:INE_ANTES CAMPO:VIGENCIA
|
| 4 |
+
def obtener_vigencia(texto):
|
| 5 |
+
# La expresión regular busca:
|
| 6 |
+
# (\d{4}) -> Un grupo que captura 4 dígitos (el número de la izquierda)
|
| 7 |
+
# vigencia -> La palabra literal "vigencia"
|
| 8 |
+
# (\d{4}) -> Otro grupo que captura 4 dígitos (el número de la DERECHA)
|
| 9 |
+
# El 're.search' devuelve un objeto 'match' si encuentra el patrón
|
| 10 |
+
match = re.search(r'\d+vigencia(\d+)', texto)
|
| 11 |
+
|
| 12 |
+
if match:
|
| 13 |
+
# Si se encuentra una coincidencia, match.group(1) contiene el primer grupo capturado.
|
| 14 |
+
# En este caso, el número a la derecha.
|
| 15 |
+
numero_derecha = match.group(1)
|
| 16 |
+
print(f"El número a la derecha es: {numero_derecha}")
|
| 17 |
+
return numero_derecha
|
| 18 |
+
else:
|
| 19 |
+
print("No se encontró el patrón en el texto.")
|
| 20 |
+
return None
|