M
en
Spotify 2 Folder
Completado

Spotify 2 Folder

Python Spotipy

Este fue el primer proyecto que solucionó un problema real que tenía con mis amigos. Siempre nos gustó la música electrónica y nos solíamos juntar los fines de semana para pinchar.

Un día, Spotify dejó de ser compatible con los softwares de DJ (como Traktor o Serato), lo que complicaba la descarga de nuevas canciones. Por cada canción nueva, tenías que usar un convertidor externo, copiar el enlace, descargar y renombrar el archivo manualmente. La alternativa era pagar una suscripción de algún otro software.

La idea del proyecto era automatizar este proceso para que al añadir una canción a una playlist de Spotify, esta se descargara automáticamente en la carpeta de tu ordenador.

Spotify 2 Folder

Spotify 2 Folder es una aplicación de escritorio que gestiona la descarga de música. El programa monitorea una playlist de Spotify seleccionada y descarga cualquier canción nueva directamente a una carpeta local en tu ordenador.

Interfaz Principal

¿Cómo funciona?

Funciona conectando la API de Spotify con YouTube:

  1. Lectura de la Playlist: La aplicación se conecta a la API de Spotify usando spotipy para leer todas las canciones de tu playlist objetivo.
  2. Comparación Local: Escanea tu carpeta de descargas para ver qué canciones ya tienes. Si una canción está en la playlist pero no en la carpeta, se marca para descargar.
  3. Búsqueda en YouTube: Para cada canción faltante, el script busca automáticamente el "Video Oficial" o la mejor coincidencia de audio en YouTube.
  4. Descarga y Conversión: Usando yt-dlp y ffmpeg, descarga el audio del video y lo convierte a un archivo MP3 de, nombrandolo con el nombre del artista y la canción.

Tecnologías Utilizadas

El proyecto está construido íntegramente en Python, usando:

  • Spotipy: Para la autenticación OAuth2 y comunicación con la API de Spotify.
  • Youtube Search & yt-dlp: Para encontrar y descargar las fuentes de audio.
  • CustomTkinter: Para crear una interfaz gráfica y fácil de usar.
  • FFmpeg: Para la conversión de audio.

Configuración y Uso

Para que el usuario pudiera usarlo, creé una interfaz de configuración donde simplemente pegas tus credenciales y links.

Pantalla de Setup

El archivo setup.txt guarda localmente:

  • client_id y client_secret de tu cuenta de desarrollador de Spotify.
  • Tu nombre de usuario.
  • La URL de la playlist a monitorear.
  • La ruta de la carpeta donde quieres la música.

Una vez configurado, solo tienes que abrir la app y darle a "Download". La barra de progreso te avisará cuando tu música esté lista.