Scripts de Python para descargar canciones de YouTube a MP3 con metadatos completos (artista, año, género) para uso como DJ.
- ✅ Interfaz gráfica (IDE) - La forma más cómoda de usar el programa
- ✅ Descarga de YouTube a MP3 en la mejor calidad disponible
- ✅ Base de datos SQLite para gestionar todas las descargas
- ✅ Detección automática de género mediante APIs y búsqueda web
- ✅ Extracción automática de metadatos (artista, año, género)
- ✅ Organización automática por género y década
- ✅ Tags ID3 completos en los archivos MP3
- ✅ Verificación de archivos duplicados
- Python 3.7 o superior
- Git
- FFmpeg
Opción A: Instalador oficial (Recomendado)
- Ve a python.org/downloads
- Descarga la última versión de Python 3.x
- Ejecuta el instalador
- IMPORTANTE: Marca la casilla "Add Python to PATH" durante la instalación
- Haz clic en "Install Now"
Opción B: Microsoft Store
- Abre Microsoft Store
- Busca "Python 3.11" (o la versión más reciente)
- Haz clic en "Obtener" o "Instalar"
Verificar instalación: Abre PowerShell o CMD y ejecuta:
python --versionDeberías ver algo como: Python 3.11.x
sudo apt update
sudo apt install python3 python3-pipVerificar instalación:
python3 --versionOpción A: Homebrew (Recomendado)
brew install python3Opción B: Instalador oficial
- Ve a python.org/downloads
- Descarga el instalador para macOS
- Ejecuta el instalador
Verificar instalación:
python3 --versionOpción A: Instalador oficial (Recomendado)
- Ve a git-scm.com/download/win
- Descarga el instalador
- Ejecuta el instalador con las opciones por defecto (recomendado)
- Durante la instalación, selecciona "Git from the command line and also from 3rd-party software"
Opción B: GitHub Desktop
- Descarga GitHub Desktop
- Se instala Git automáticamente
Verificar instalación: Abre PowerShell o CMD y ejecuta:
git --versionDeberías ver algo como: git version 2.x.x
sudo apt update
sudo apt install gitVerificar instalación:
git --versionOpción A: Homebrew
brew install gitOpción B: Xcode Command Line Tools
xcode-select --installVerificar instalación:
git --versionOpción A: Chocolatey (Recomendado si tienes Chocolatey)
choco install ffmpegOpción B: Instalador manual
- Ve a ffmpeg.org/download.html
- Descarga la versión para Windows
- Extrae el archivo ZIP
- Añade la carpeta
binal PATH de Windows:- Busca "Variables de entorno" en el menú de inicio
- Edita la variable "Path"
- Añade la ruta a la carpeta
binde FFmpeg (ej:C:\ffmpeg\bin)
Verificar instalación:
ffmpeg -versionsudo apt update
sudo apt install ffmpegVerificar instalación:
ffmpeg -versionbrew install ffmpegVerificar instalación:
ffmpeg -versionWindows (PowerShell/CMD):
git clone https://github.com/tu-usuario/DJ_scripts.git
cd DJ_scriptsLinux/Mac:
git clone https://github.com/tu-usuario/DJ_scripts.git
cd DJ_scriptsNota: Si no tienes Git instalado, también puedes descargar el proyecto como ZIP desde GitHub y extraerlo.
Windows:
pip install -r requirements.txtLinux/Mac:
pip3 install -r requirements.txtNota: Si tienes problemas de permisos en Linux/Mac, usa
pip3 install --user -r requirements.txt
Windows (PowerShell):
Copy-Item env_example.txt .env
notepad .envLinux/Mac:
cp env_example.txt .env
nano .env
# o usa tu editor preferido: code .env, vim .env, etc.Edita el archivo .env y especifica la carpeta donde quieres guardar tu música:
Windows:
MUSIC_FOLDER=C:\Users\TuUsuario\Music
Linux/Mac:
MUSIC_FOLDER=/home/tu-usuario/Music
Opcional - API key de Last.fm:
# Opcional: API key de Last.fm para mejor detección de géneros
# Obtén una gratis en: https://www.last.fm/api/account/create
LASTFM_API_KEY=tu_api_key_aqui
La forma más cómoda de usar el programa es mediante la interfaz gráfica:
Windows (PowerShell/CMD):
python ide.pyLinux/Mac:
python3 ide.pyLa interfaz gráfica te permite:
- Pegar URLs de YouTube fácilmente
- Ver y editar metadatos antes de descargar
- Ver el historial de descargas
- Consultar la base de datos
- Gestionar todo de forma visual
Si prefieres usar la línea de comandos:
Windows (PowerShell/CMD):
# Descarga básica
python download_youtube.py <URL_YOUTUBE>
# Especificar metadatos manualmente
python download_youtube.py <URL_YOUTUBE> --artist "Nombre del Artista" --year 2023 --genre "House"
# Descarga rápida (sin metadatos)
python download_quick.py <URL_YOUTUBE>Linux/Mac:
# Descarga básica
python3 download_youtube.py <URL_YOUTUBE>
# Especificar metadatos manualmente
python3 download_youtube.py <URL_YOUTUBE> --artist "Nombre del Artista" --year 2023 --genre "House"
# Descarga rápida (sin metadatos)
python3 download_quick.py <URL_YOUTUBE>Las canciones se organizan automáticamente en:
MUSIC_FOLDER/
├── House/
│ ├── 2020s/
│ └── 2010s/
├── Techno/
│ └── 2020s/
└── Sin Clasificar/
└── Unknown/
ide.py: Interfaz gráfica (IDE) — La forma más cómoda de usar el programaapp.py: Aplicación web Flask — Interfaz web con soporte para videos embebidosdownload_youtube.py: Script completo con extracción de metadatos y verificación de duplicadosdownload_quick.py: Script rápido para descargas simplesquery_db.py: Script para consultar y buscar en la base de datos
Windows:
# Ver estadísticas
python query_db.py stats
# Buscar canciones
python query_db.py search --artist "Deadmau5"
python query_db.py search --genre "House" --decade "2020s"Linux/Mac:
# Ver estadísticas
python3 query_db.py stats
# Buscar canciones
python3 query_db.py search --artist "Deadmau5"
python3 query_db.py search --genre "House" --decade "2020s"Antes de usar el programa, verifica que todo está instalado correctamente:
Windows (PowerShell):
python --version # Debe mostrar Python 3.7 o superior
git --version # Debe mostrar la versión de Git
ffmpeg -version # Debe mostrar la versión de FFmpeg
pip --version # Debe mostrar la versión de pipLinux/Mac:
python3 --version # Debe mostrar Python 3.7 o superior
git --version # Debe mostrar la versión de Git
ffmpeg -version # Debe mostrar la versión de FFmpeg
pip3 --version # Debe mostrar la versión de pipSi alguno de estos comandos no funciona, vuelve a la sección de Instalación de Requisitos y sigue las instrucciones.
- Asegúrate de haber marcado "Add Python to PATH" durante la instalación
- Reinicia PowerShell/CMD después de instalar Python
- O reinstala Python marcando la opción de PATH
- Reinicia PowerShell/CMD después de instalar Git
- Verifica que Git está en el PATH:
$env:Pathen PowerShell
- Asegúrate de tener FFmpeg instalado y en el PATH
- En Windows, verifica que añadiste la carpeta
binde FFmpeg al PATH del sistema
- Asegúrate de haber instalado las dependencias:
pip install -r requirements.txt - En Linux/Mac, usa
pip3en lugar depip
- Asegúrate de tener Python y tkinter instalados
- En Linux, instala tkinter:
sudo apt install python3-tk - Verifica que puedes ejecutar:
python3 -c "import tkinter; print('OK')"
- Los archivos se descargan en la mejor calidad disponible
- Los tags ID3 incluyen: título, artista, año, género y portada del video
- El script crea automáticamente la carpeta de música si no existe
- Releases y ejecutables — Descargar ejecutables precompilados para Windows, Linux y macOS
- Emojis en la GUI — Cómo ver emojis correctamente en WSL/Linux
- Arquitectura: separación IDE y procesos — Cómo funciona la separación entre interfaz y procesos de descarga
- Guía de releases — Cómo crear una nueva release (para mantenedores)
- Instrucciones para empaquetar la aplicación — Empaquetar la aplicación Flask con PyInstaller
Este script es de uso libre. Asegúrate de respetar los derechos de autor y las políticas de YouTube al descargar contenido.