Skip to content

Paquete de Python para interactuar con la red Nauta de Etecsa.

License

Notifications You must be signed in to change notification settings

TheMrAleX/econnect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bienvenido a la documentación de econnect, un módulo de Python para interactuar con el Portal Cautivo de Etecsa hecho en su totalidad con Python puro, un paquete listo para instalar con pip install en tu ordenador, te cuento como hacerlo.

Introducción

El módulo econnect es una herramienta sencilla y eficaz para gestionar la conexión a la red. En esta guía rápida, te mostraremos cómo utilizarlo en tus proyectos.

Instalación

Primero, instala el módulo con el siguiente comando:
pip install econnect
Luego, impórtalo en tu proyecto de la siguiente manera:
from enet import econnect
Ahora que has importado correctamente el módulo, puedes empezar a utilizarlo.

Uso básico

El módulo econnect proporciona una clase llamada "nauta". Para comenzar a utilizarla, simplemente crea una instancia de la clase de la siguiente manera:
nauta = econnect.nauta()
Ahora estás listo para utilizar todos los métodos de la clase.

Flujo de trabajo

Recalco que todas las funciones del modulo si se ejecutan correctamente van a devolver True y si no es asi devolveran False, por eso pueden ver un codigo organizado asi:

if funcion_1(): # osea si funcion_1 es = a True se ejecuta...
    print('exito')
else:
    print('fatal')

Para un funcionamiento adecuado, sigue estos pasos:

  • Verificación de conexión: Antes de llamar al método login_net, asegúrate de verificar la conexión con el método test_net. Esto se hace para validar ciertos parámetros y evitar errores. Aquí tienes un ejemplo de implementación:
if nauta.test_net():
    nauta.login_net('usuario@nauta.com.cu', 'password_del_usuario')
  • Obtención del tiempo disponible: Para obtener el tiempo disponible, el usuario debe haber iniciado sesión. Puedes ejecutar el método get_time de la misma manera que llamamos a otros métodos. Este método devuelve el tiempo disponible y se recomienda almacenarlo en una variable:
    tiempo_disponible = nauta.get_time()
  • Guardado de datos: Puedes guardar los datos de inicio de sesión de forma local para poder tener persistencia de ellos y recordar la sesion si se desea, todo esto con el comando save_data y darle como argumento la ruta de un archivo json inicializado con {} 2 corchetes
    nauta.save_data('datos.json')
  • Cierre de sesión: Para finalizar la sesión, simplemente llama al método logout:
    nauta.logout()
  • Cierre de sesión local: Si haz guardado los datos de tu sesión con el comando save_data, tienes la posibilidad de recuperar la sesión con el comando logout_back y darle como argumento la ruta del json con la info de la sesión guardada.
    nauta.logout_back('datos.json')
  • Reanudar sesión: Me gusta llamar el metodo asi porque visualmente hace eso pero simplemente cuando dejamos la sesión abierta y cerramos el programa la sesión sigue abierta, normalmente los programas solo piden el valor del tiempo disponible y lo muestran con un boton de cerrar, este comando recupera el tiempo disponible con los datos locales por si se cierra el programa con la sesión abierta.
    nauta.reanude_login('datos.json'
    Si quieres implementar un botón de cerrar puede ser asi:
def boton_cerrar():
    if nauta.logout():
        print('cierre exitoso')
    else:
        r = nauta.logout_back('datos.json)
        if r:
            print('cierre con archivo local exitoso')
        else:
            print('cierre fallido')

Lista de métodos

A continuación, se presenta una lista de los métodos disponibles en la clase nauta:

  • test_net(): Este método devuelve True o False dependiendo de si la conexión con el Portal Cautivo es exitosa. Debe ejecutarse siempre en primer lugar.
  • login_net(): Este método requiere dos parámetros: el nombre de usuario y la contraseña. Inicia sesión en la red si no hay errores.
  • get_time(): Devuelve el tiempo disponible. Se recomienda almacenarlo en una variable para su posterior uso.
  • save_data('datos.json'): Guarda los datos necesarios para el cierre de sesión usando archivos locales por si el programa no recupera la sesión, hay que darle un parametro y es la ruta de un .json.
  • logout(): Cierra la sesión.
  • logout_back('datos.json'): Cierra la sesión con los archivos locales guardados con save_data, hay que pasar un argumento de la ruta del json
  • reanude_login('datos.json'): Obtiene el tiempo disponible para recuperar la sesión con los archivos locales guardados con save_data hay que pasar un argumento de la ruta del json

Información

Módulo de Python 3.12, con las bibliotecas httpx, bs4, json, re, desarrollado por TheMrAleX.
La idea surgió en mi cabeza con la pregunta, 'porque no existe un programa suficientemente decente para conectarme a la WiFi en pc', y me plantee hacerlo yo mismo, no sabia nada de programación, empece por Python, llevo muchos meses aprendiendo y me asombra ver de lo que soy capaz, seguire desarrollando proyectos para las 3 personas que visiten este GitHub tambien eh tranajado en...Una GUI para conectarse a la red Nauta utilizando mi propio modulo

About

Paquete de Python para interactuar con la red Nauta de Etecsa.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages