2012-04-20 60 views
1

我想查詢廣告牌api從某個日期獲取頭號。當我嘗試查詢他們的服務時,即使使用他們的例子,我也沒有收到任何數據。任何人有任何想法?謝謝廣告牌雜誌API問題

+0

你能告訴我們什麼碼? – Chris 2012-04-20 13:31:47

+0

嗨,http://api.billboard.com/apisvc/chart/v1/item?id=3064444&api_key=txkttmnu46cb7q62dh9fdbp7這工作,因爲我認爲它返回一個項目。但http://api.billboard.com/apisvc/chart/v1/list?artist=jackson&song=One&sdate=2007-10-10&edate=2008-5-20&api_key=txkttmnu46cb7q62dh9fdbp7無法正常工作,我想是因爲它會返回一個列表。 – user1346670 2012-04-20 15:18:41

回答

0

Billboard API可能是一半,或者只是沒有返回任何有關2011年下半年及以後的數據。也許Billboard不想公佈數據?也許工程師被解僱了,有什麼東西壞了?從網站來看,似乎我們永遠不會知道。 http://developer.billboard.com/docs/read/API_Architecture

當前工作示例(於2012年10月1日): http://api.billboard.com/apisvc/chart/v1/list?format=xml&sdate=2000-03-01&edate=2001-04-01&api_key=bvk4re5h37dzvx87h7rf5dqz

當前 「不工作」 的例子,返回0數據: http://api.billboard.com/apisvc/chart/v1/list?format=xml&sdate=2012-03-01&edate=2012-04-01&api_key=bvk4re5h37dzvx87h7rf5dqz

3

的API是壞了,但是你可以很容易地從他們的網站上刮取你需要的信息。

(免責聲明:廣告牌可能不明白這一點你應該看看他們的使用條款的第一個。)

<?php 

$date = '1984-09-24'; 
$str = file_get_contents('http://www.billboard.com/charts/hot-100?chartDate=' . $date); 

$start = 'billboard.charts.data = '; 
$end = '</script>'; 

$str = substr($str, strpos($str, $start) + strlen($start)); 
$str = substr($str, 0, strpos($str, $end)); 
$str = substr(trim($str), 0, -1); 

$data = json_decode($str); 

echo '<pre>'; 
print_r($data); // $data->items[0] for the #1 single 
echo '</pre>'; 

?>