Go to file
Kevin William Olarte Braun 892852835f Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
__pycache__ Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
models Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
resources Implementacion de un reproducto de musica 2024-12-14 20:20:44 +01:00
MainController.py Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
MainView.py Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
README.md Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
main.py Modularizacion del proyecto mas implementacion 2024-12-12 23:39:18 +01:00
packet_log.txt Implementacion de juego Gamblingº 2024-12-14 20:38:11 +01:00
prueba1.py Modularizacion del proyecto mas implementacion 2024-12-12 23:39:18 +01:00
pruebas.py Scrapping - mas README.md 2024-12-14 23:09:39 +01:00
requirements.txt Implementacion del README.md 2024-12-13 16:22:12 +01:00

README.md

Proyecto Kevin MultiHilo

Bienvenido al proyecto Kevin MultiHilo, donde exploramos y aprendemos sobre el uso de Threads en Python a través de diversas funcionalidades ejecutadas en hilos independientes. Este proyecto está diseñado para aquellos interesados en comprender y aprovechar la programación multihilo de manera práctica y eficiente.


📊 Descripción General

El objetivo principal de este proyecto es implementar tareas distribuidas en diferentes hilos, mostrando su potencial para mejorar el rendimiento y la gestión de recursos. Además, se incluyen varias dependencias y herramientas que permiten expandir las capacidades de la aplicación.


🔧 Dependencias

Dependencias Externas

  • Nmap: Herramienta potente para el escaneo de redes y auditoría de seguridad.

Dependencias Internas

  1. Scapy: Permite decodificar paquetes de múltiples protocolos, enviarlos, capturarlos y analizarlos.
  2. os: Proporciona acceso a funcionalidades dependientes del sistema operativo.
  3. tkinter: Biblioteca de interfaz gráfica predeterminada de Python.
  4. threading: Ofrece herramientas de alto nivel para la gestión de hilos.
  5. time: Proporciona funciones relacionadas con el tiempo y la sincronización.
  6. datetime: Manejo avanzado de fechas y horas.
  7. psutil: Biblioteca para obtener información del sistema (CPU, memoria, discos, red, etc.).
  8. requests: Simplifica el envío de solicitudes HTTP de manera eficiente.
  9. python-nmap: Biblioteca para interactuar con Nmap y manipular sus resultados.
  10. ipaddress: Manejo de direcciones y redes IPv4/IPv6.
  11. socket: Acceso a la interfaz de sockets BSD para comunicación en red.

🔍 APIs Utilizadas

  • ipwhois.io: Ofrece integración rápida y sencilla para la geolocalización de direcciones IP, ideal para scripts o sitios web.

🔒 Uso del Proyecto

Requisitos Previos

  1. Instalar Python 3.10 o superior.
  2. Descargar e instalar las dependencias necesarias utilizando pip:
    pip install -r requirements.txt
    
  3. Instalar Nmap desde su sitio oficial.

Ejecución

  1. Clonar este repositorio:
    git clone https://github.com/usuario/proyecto-kevin-multihilo.git
    
  2. Navegar al directorio del proyecto:
    cd proyecto-kevin-multihilo
    
  3. Ejecutar el archivo principal:
    python main.py
    

📊 Características

  1. Escaneo de redes: Utiliza Nmap y python-nmap para descubrir dispositivos conectados.
  2. Análisis de paquetes: Decodificación y manejo de paquetes con Scapy.
  3. Gestión de hilos: Implementación eficiente de tareas paralelas con la biblioteca threading.
  4. Información del sistema: Visualización del estado actual del sistema con psutil.

📝 Explicación de las principales funcionalidades

Solapas (Tabs)

  1. IP Tracker

    • Permite rastrear información sobre una dirección IP, como ubicación, tipo, y más, utilizando la API de ipwhois.io.
    • Los resultados se muestran en un área de texto con scroll.
  2. Escaneo de Red

    • Realiza un escaneo de dispositivos conectados a la red local usando la biblioteca python-nmap.
    • Lista dispositivos encontrados con sus respectivas direcciones IP y MAC.
  3. Sniffer

    • Captura y analiza paquetes de red en tiempo real utilizando Scapy.
    • Muestra información relevante del paquete, como origen, destino, protocolo y puertos.
    • Incluye funcionalidad para iniciar y detener el análisis.
  4. Juego de Azar (Ruleta)

    • Un mini-juego de ruleta donde el usuario puede apostar seleccionando un número del 1 al 10.
    • Calcula si el jugador gana o pierde y actualiza el saldo en la interfaz.
  5. Scraper

    • Permite explorar una URL inicial y extraer enlaces relacionados usando BeautifulSoup.
    • Los resultados se almacenan en una base de datos MongoDB y se muestran en la interfaz en tiempo real.

Frame Izquierdo

  • Gestión del Scraper:
    • Entrada para la URL inicial del scraping.
    • Botones para iniciar y detener la operación.

Frame Derecho

  • Reproductor de Música:
    • Lista canciones disponibles en una carpeta local.
    • Botones para reproducir, detener y actualizar la lista de canciones.

Barra Inferior (Estado)

  • Indicadores del sistema:
    • Uso de CPU y RAM en tiempo real.
    • Velocidad de subida y descarga de red.
    • Fecha y hora actualizadas dinámicamente.

🌍 Contribuciones

Si deseas contribuir a este proyecto:

  1. Realiza un fork del repositorio.
  2. Crea una rama para tus cambios:
    git checkout -b feature/nueva-funcionalidad
    
  3. Realiza tus modificaciones y crea un pull request.

🎮 Autor

Kevin Developer
GitHub