Moibe commited on
Commit
7bdefa8
·
1 Parent(s): 67b82ae

Reestructura general de acceso a campos y tools

Browse files
.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 = obtenCampo.vigencia(textos_extraidos, textos_extraidos_simplificados)
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