forked from UnHackerEnCapital/Pynet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtercer.py
73 lines (61 loc) · 2.09 KB
/
tercer.py
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
import requests
import re
import sys
import argparse
def obtener_info_cuitonline(numero):
url = f"https://www.cuitonline.com/search.php?q={numero}"
response = requests.get(url)
texto = response.text
patron = r'([\w\s]+)\s*-\s*(\d+);'
match = re.search(patron, texto)
if match:
nombre_apellido = match.group(1).strip()
cuit = match.group(2).strip()
partes_nombre = nombre_apellido.rsplit(' ', 1)
if len(partes_nombre) > 1:
apellido = partes_nombre[0]
nombre = partes_nombre[1]
else:
apellido = nombre_apellido
nombre = ""
return {
"DNI": numero,
"Apellido": apellido,
"Nombre": nombre,
"CUIT": cuit
}
else:
return {
"DNI": numero,
"Apellido": "No encontrado",
"Nombre": "No encontrado",
"CUIT": "No encontrado"
}
def procesar_numero(numero):
info = obtener_info_cuitonline(numero)
print(f"\nInformación para DNI {numero}:")
for clave, valor in info.items():
print(f"{clave}: {valor}")
def procesar_archivo(nombre_archivo):
try:
with open(nombre_archivo, 'r') as archivo:
dnis = archivo.read().splitlines()
for dni in dnis:
dni = dni.strip()
if dni: # Ignorar líneas vacías
procesar_numero(dni)
except FileNotFoundError:
print(f"Error: No se pudo encontrar el archivo '{nombre_archivo}'")
except Exception as e:
print(f"Error al procesar el archivo: {str(e)}")
def main():
parser = argparse.ArgumentParser(description="Obtener información de CUITonline")
parser.add_argument("entrada", help="Número de DNI o nombre del archivo si se usa -l")
parser.add_argument("-l", "--lista", action="store_true", help="Indica que la entrada es un archivo con lista de DNIs")
args = parser.parse_args()
if args.lista:
procesar_archivo(args.entrada)
else:
procesar_numero(args.entrada)
if __name__ == "__main__":
main()