在Last.fm网站上,您最近收听的曲目包括每首歌曲左侧的34x34(或任何大小)图像。但是,在他们提供的RSS源中,没有为歌曲提供图像URL。我想知道是否有一种很好的方法来确定需要用于该艺术家的图像的ID,并根据我们给出的数据显示它。我知道可以从他们的网站加载艺术家页面,然后从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图片为here(ID#37056785)。
Owl+City http://userserve-ak.last.fm/serve/34s/37056785.png
有这样的事吗?我曾经考虑过一次检查后将ID号存储在某种缓存中,但如果图像发生变化会怎么样?
答案 0 :(得分:2)
经过一番搜索后我找到了它(感谢Thomas McDonald)。我找到了一个user.getRecentTracks方法,其中包含信息中的图片网址,还使用了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加载来获取提要。