Last.fm API ¿Dónde están las imágenes?

Escenario

Llevo una decena de años usando el API de Last.fm para mostrar las imágenes de los artistas de un sitio web para gestionar la música que escucho. Además, mantengo el repositorio oficial del cliente PHP en GiHub. Así que tengo algo de experiencia con el servicio REST de Last.fm. Hará cosa de un año y medio, decidieron no incluir las imágenes de los artistas en sus respuestas del API: http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=Descendents&api_key=[CLAVE_API]&format=json. En su lugar, empezaron a devolver la siguiente imagen genérica: imagen genérica artista last fm api Tuve entonces que cambiar de proveedor para acceder a la información de mis artistas preferidos. Desde entonces uso el API de Spotify, y es una lástima porque me gustaban más las imágenes del servicio anterior.

Problema

A pesar de haber cambiado de proveedor, todavía tenía guardadas en base de datos las URLs de imágenes conseguidas con el API de Last.fm, de este modo he venido evitando consultar el servicio cada vez que se carga una página con la información de un artista. Para mi consternación, hace unas pocas semanas todas las direcciones dejaron de funcionar…

Solución

Me planteé hacer un script que recorriera esos registros con enlaces rotos y los actualizara con la información del API de Spotify. Pero, a lo largo de estos últimos doce años he ido recopilando más de seis mil URLs, y mucho me temo que sería considerado un abuso golpear de esa manera el API de Spotify. Podría distanciar entre sí las peticiones para no exceder el límite, pero entonces me llevaría días actualizar la base de datos. Investigando las direcciones de las fotos de los artistas del sitio Last.fm advierto que se parecen mucho a las que tengo guardadas en mi base de datos. Se diría que solo han cambiado de proveedor de CDN. No debería ser muy difícil actualizar entonces la base de datos: Y así fue como lo solucioné.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *