Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
|
@@ -112,6 +112,7 @@ def buscar_canciones_similares(token, audio_features, n_songs=10):
|
|
| 112 |
|
| 113 |
def obtener_informacion_canciones(token, track_ids):
|
| 114 |
tracks_info = []
|
|
|
|
| 115 |
url = 'https://api.spotify.com/v1/tracks'
|
| 116 |
headers = {'Authorization': f'Bearer {token}'}
|
| 117 |
|
|
@@ -122,6 +123,7 @@ def obtener_informacion_canciones(token, track_ids):
|
|
| 122 |
if response:
|
| 123 |
tracks = response.json().get('tracks', [])
|
| 124 |
for track in tracks:
|
|
|
|
| 125 |
tracks_info.append({
|
| 126 |
'artista': track['artists'][0]['name'] if track['artists'] else 'Desconocido',
|
| 127 |
'titulo': track['name'],
|
|
@@ -129,6 +131,10 @@ def obtener_informacion_canciones(token, track_ids):
|
|
| 129 |
'popularity': track.get('popularity', 'No disponible'),
|
| 130 |
'release_year': track.get('album', {}).get('release_date', 'No disponible').split('-')[0] if track.get('album', {}).get('release_date') else 'No disponible',
|
| 131 |
'duration': track.get('duration_ms', 'No disponible'),
|
|
|
|
|
|
|
|
|
|
|
|
|
| 132 |
'url': track['external_urls']['spotify']
|
| 133 |
})
|
| 134 |
return tracks_info
|
|
|
|
| 112 |
|
| 113 |
def obtener_informacion_canciones(token, track_ids):
|
| 114 |
tracks_info = []
|
| 115 |
+
audio_features = obtener_caracteristicas_audio(token, track_ids) # Obtener características de audio
|
| 116 |
url = 'https://api.spotify.com/v1/tracks'
|
| 117 |
headers = {'Authorization': f'Bearer {token}'}
|
| 118 |
|
|
|
|
| 123 |
if response:
|
| 124 |
tracks = response.json().get('tracks', [])
|
| 125 |
for track in tracks:
|
| 126 |
+
features = audio_features.get(track['id'], {})
|
| 127 |
tracks_info.append({
|
| 128 |
'artista': track['artists'][0]['name'] if track['artists'] else 'Desconocido',
|
| 129 |
'titulo': track['name'],
|
|
|
|
| 131 |
'popularity': track.get('popularity', 'No disponible'),
|
| 132 |
'release_year': track.get('album', {}).get('release_date', 'No disponible').split('-')[0] if track.get('album', {}).get('release_date') else 'No disponible',
|
| 133 |
'duration': track.get('duration_ms', 'No disponible'),
|
| 134 |
+
'danceability': features.get('danceability', 'No disponible'),
|
| 135 |
+
'energy': features.get('energy', 'No disponible'),
|
| 136 |
+
'tempo': features.get('tempo', 'No disponible'),
|
| 137 |
+
'valence': features.get('valence', 'No disponible'),
|
| 138 |
'url': track['external_urls']['spotify']
|
| 139 |
})
|
| 140 |
return tracks_info
|