ProjectKevin/README.md

102 lines
3.8 KiB
Markdown

# 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**](https://nmap.org/download): Herramienta potente para el escaneo de redes y auditoría de seguridad.
### Dependencias Internas
1. [**Scapy**](https://github.com/secdev/scapy): Permite decodificar paquetes de múltiples protocolos, enviarlos, capturarlos y analizarlos.
2. [**os**](https://docs.python.org/es/3.10/library/os.html): Proporciona acceso a funcionalidades dependientes del sistema operativo.
3. [**tkinter**](https://docs.python.org/es/3/library/tkinter.html): Biblioteca de interfaz gráfica predeterminada de Python.
4. [**threading**](https://docs.python.org/es/3.8/library/threading.html): Ofrece herramientas de alto nivel para la gestión de hilos.
5. [**time**](https://docs.python.org/3/library/time.html): Proporciona funciones relacionadas con el tiempo y la sincronización.
6. [**datetime**](https://docs.python.org/3/library/datetime.html): Manejo avanzado de fechas y horas.
7. [**psutil**](https://pypi.org/project/psutil/): Biblioteca para obtener información del sistema (CPU, memoria, discos, red, etc.).
8. [**requests**](https://pypi.org/project/requests/): Simplifica el envío de solicitudes HTTP de manera eficiente.
9. [**python-nmap**](https://pypi.org/project/python-nmap/): Biblioteca para interactuar con Nmap y manipular sus resultados.
10. [**ipaddress**](https://docs.python.org/3/library/ipaddress.html): Manejo de direcciones y redes IPv4/IPv6.
11. [**socket**](https://docs.python.org/3/library/socket.html): Acceso a la interfaz de sockets BSD para comunicación en red.
---
## 🔍 APIs Utilizadas
- [**ipwhois.io**](https://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**:
```bash
pip install -r requirements.txt
```
3. Instalar Nmap desde su [sitio oficial](https://nmap.org/download).
### Ejecución
1. Clonar este repositorio:
```bash
git clone https://github.com/usuario/proyecto-kevin-multihilo.git
```
2. Navegar al directorio del proyecto:
```bash
cd proyecto-kevin-multihilo
```
3. Ejecutar el archivo principal:
```bash
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`.
---
## 🌍 Contribuciones
Si deseas contribuir a este proyecto:
1. Realiza un fork del repositorio.
2. Crea una rama para tus cambios:
```bash
git checkout -b feature/nueva-funcionalidad
```
3. Realiza tus modificaciones y crea un pull request.
---
## 🎮 Autor
**Kevin Developer**\
[GitHub](https://github.com/KevinOlarte1)
---
## 📝 Tutorial
(En este apartado podrás incluir un tutorial detallado para que los usuarios aprendan a utilizar tu proyecto paso a paso.)