Mthrfkr commited on
Commit
cb62366
·
verified ·
1 Parent(s): 74b8238

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -3
app.py CHANGED
@@ -53,8 +53,8 @@ def buscar_playlists_spotify(token, query, limit=50):
53
 
54
  return [{'playlist_id': playlist['id'], 'playlist_name': playlist['name']} for playlist in playlists]
55
 
56
- def obtener_canciones_playlist_spotify(token, playlist_id):
57
- print(f"Obteniendo canciones de la playlist {playlist_id} de Spotify...")
58
  url = f'https://api.spotify.com/v1/playlists/{playlist_id}/tracks'
59
  headers = {'Authorization': f'Bearer {token}'}
60
  canciones = []
@@ -71,6 +71,7 @@ def obtener_canciones_playlist_spotify(token, playlist_id):
71
  if track:
72
  audio_features = obtener_caracteristicas_audio(token, track['id'])
73
  canciones.append({
 
74
  'artista': track['artists'][0]['name'] if track['artists'] else 'Desconocido',
75
  'titulo': track['name'],
76
  'isrc': track['external_ids'].get('isrc', 'No disponible'),
@@ -81,6 +82,12 @@ def obtener_canciones_playlist_spotify(token, playlist_id):
81
  'tempo': audio_features.get('tempo', 'No disponible'),
82
  'speechiness': audio_features.get('speechiness', 'No disponible'),
83
  'instrumentalness': audio_features.get('instrumentalness', 'No disponible'),
 
 
 
 
 
 
84
  'link': track['external_urls']['spotify'],
85
  'record_label': obtener_record_label_spotify(track['album']['id'], token),
86
  'source': 'Spotify'
@@ -116,7 +123,7 @@ def interface(query, num_spotify_playlists=50):
116
  playlists_spotify = buscar_playlists_spotify(token_spotify, query, num_spotify_playlists)
117
  canciones_spotify = []
118
  for playlist in playlists_spotify:
119
- songs = obtener_canciones_playlist_spotify(token_spotify, playlist['playlist_id'])
120
  canciones_spotify.extend(songs)
121
 
122
  # Crear DataFrame
 
53
 
54
  return [{'playlist_id': playlist['id'], 'playlist_name': playlist['name']} for playlist in playlists]
55
 
56
+ def obtener_canciones_playlist_spotify(token, playlist_id, playlist_name):
57
+ print(f"Obteniendo canciones de la playlist {playlist_id} ({playlist_name}) de Spotify...")
58
  url = f'https://api.spotify.com/v1/playlists/{playlist_id}/tracks'
59
  headers = {'Authorization': f'Bearer {token}'}
60
  canciones = []
 
71
  if track:
72
  audio_features = obtener_caracteristicas_audio(token, track['id'])
73
  canciones.append({
74
+ 'playlist_name': playlist_name,
75
  'artista': track['artists'][0]['name'] if track['artists'] else 'Desconocido',
76
  'titulo': track['name'],
77
  'isrc': track['external_ids'].get('isrc', 'No disponible'),
 
82
  'tempo': audio_features.get('tempo', 'No disponible'),
83
  'speechiness': audio_features.get('speechiness', 'No disponible'),
84
  'instrumentalness': audio_features.get('instrumentalness', 'No disponible'),
85
+ 'duration': track.get('duration_ms', 'No disponible'),
86
+ 'release_year': track.get('album', {}).get('release_date', 'No disponible').split('-')[0] if track.get('album', {}).get('release_date') else 'No disponible',
87
+ 'loudness': audio_features.get('loudness', 'No disponible'),
88
+ 'timbre': audio_features.get('timbre', 'No disponible'),
89
+ 'acousticness': audio_features.get('acousticness', 'No disponible'),
90
+ 'liveness': audio_features.get('liveness', 'No disponible'),
91
  'link': track['external_urls']['spotify'],
92
  'record_label': obtener_record_label_spotify(track['album']['id'], token),
93
  'source': 'Spotify'
 
123
  playlists_spotify = buscar_playlists_spotify(token_spotify, query, num_spotify_playlists)
124
  canciones_spotify = []
125
  for playlist in playlists_spotify:
126
+ songs = obtener_canciones_playlist_spotify(token_spotify, playlist['playlist_id'], playlist['playlist_name'])
127
  canciones_spotify.extend(songs)
128
 
129
  # Crear DataFrame