Last.fm API



先日、近所の本屋に行った時に、

が平積みされていたので、手にとってパラパラと流し読みしていると、Last.fmのWebサービスについて書かれている章があり、Webサービス用のAPIが公開されていることを知りました。

Web APIの詳細はAudioscrobbler Web Services APIにあります。早速、洋楽歌詞@Tube365に取り込めそうなAPIを探してみたところ、
①Related Artists(アーティストのレコメンデーション)
②TopTracks(人気曲)
がありました。

これらを実装した方法をメモしておきます。以下はTopTracks(人気曲)の取得方法です。

<?php
function getTopTracks($artist_name) {
  $base_url = "http://ws.audioscrobbler.com/1.0/artist/";
  $res = file_get_contents($base_url . $artist_name . "/toptracks.xml") or die("HTML取得エラー\n");
  $xml = simplexml_load_string($res);
  $xml_items = $xml->xpath('//track');
 
  $popular_songs = array();
  foreach ($xml_items as $xml_item) {
    $track_data = (array)$xml_item;
    array_push($popular_songs, $track_data['name']);
  }
  return $popular_songs;
}
?>

Related Artistsにする場合は、「/toptracks.xml」を「/similar.xml」に置き換え、xpath(’//track’)をxpath(’//artist’)に置き換えればOKです。(本来ならば、変数名も変えるべきですけど)

ついでに、サンプルレスポンスをリンクしておきます。

TopTracks
Related Artists

Leave a Reply