Простой способ получить изображение исполнителя для недавно прослушанных песен? - PullRequest
2 голосов
/ 01 июня 2010

На сайте Last.fm ваш недавно прослушанный трек содержит изображение 34x34 (или любого другого размера) слева от каждой песни. Однако в предоставленной вами ленте RSS URL-адреса изображений для песен не предоставляются. Мне было интересно, есть ли хороший способ выяснить идентификатор для изображения, которое нужно использовать для этого художника, и отобразить его на основе данных, которые мы предоставили. Я знаю, что можно загрузить страницу исполнителя со своего веб-сайта, а затем получить значения изображений из JavaScript, но это кажется слишком сложным и, вероятно, займет довольно много времени.

Что нам дают:

<item>
   <title>Owl City – Rainbow Veins</title>
   <link>http://www.last.fm/music/Owl+City/_/Rainbow+Veins</link>
   <pubDate>Thu, 20 May 2010 18:15:29 +0000</pubDate>
   <guid>http://www.last.fm/user/animuson#1274379329</guid>
   <description>http://www.last.fm/music/Owl+City</description>
</item>

и изображение 34x34 для этой песни будет здесь (ID # 37056785).

Сова + Город http://userserve -ak.last.fm / serve / 34s / 37056785.png

Существует ли что-нибудь подобное? Я подумал о том, чтобы сохранить идентификационный номер в каком-то кеше после его проверки один раз, но что, если изображение изменится?

1 Ответ

2 голосов
/ 01 июня 2010

После небольшого поиска я нашел его (спасибо Томасу Макдональду также). Я нашел user.getRecentTracks метод, который включает в информацию URL-адреса изображений, а также использует XML, что гораздо более полезно для меня.

Что вы получите с помощью этого метода:

<track> 
    <artist mbid="">Owl City</artist>
    <name>Rainbow Veins</name>
    <streamable>1</streamable>
    <mbid></mbid>
    <album mbid="f3e4acfb-6e99-4370-9f72-48dbd99d5206">Maybe I'm Dreaming</album>
    <url>http://www.last.fm/music/Owl+City/_/Rainbow+Veins</url>
    <image size="small">http://userserve-ak.last.fm/serve/34s/22743543.jpg</image>
    <image size="medium">http://userserve-ak.last.fm/serve/64s/22743543.jpg</image>
    <image size="large">http://userserve-ak.last.fm/serve/126/22743543.jpg</image>
    <image size="extralarge">http://userserve-ak.last.fm/serve/300x300/22743543.jpg</image>
    <date uts="1274379329">20 May 2010, 18:15</date>
</track>

Как видите, гораздо больше информации, чем в базовом RSS-канале последних треков, и вам не нужно запускать несколько загрузок для получения дополнительной информации, достаточно одной загрузки XML для получения фида.

...