2013-05-19 45 views
2

我想弄清楚如何使用Google Music API。我設法獲得身份驗證令牌在http://dpogue.ca/gmusic.html描述:Google Music API:如何請求下1000首歌曲?

$ curl -d accountType=GOOGLE 
     -d [email protected]  
     -d Passwd=<<PASSWORD>> 
     -d service=sj 
     https://www.google.com/accounts/ClientLogin 

SID=DQB... 
LSID=DQC... 
Auth=DQA... 

現在,我可以要求我的媒體庫的曲目列表:

$ curl --header "Authorization: GoogleLogin auth=DQA..."  
     https://www.googleapis.com/sj/v1beta1/tracks > list 

然而,它只返回的1000名單軌道。

$ grep -c albumArtist list 
1000 

我該如何申請下1000首曲目?我試圖將nextPageToken添加到URL:

$ grep nextPage list 
"nextPageToken": "KmM...AI=" 
$ curl --header "Authorization: GoogleLogin auth=DQA..."  
     https://www.googleapis.com/sj/v1beta1/tracks?pageToken=KmM...AI= > list2 

但我只是得到了相同的前1000條曲目。

如何告訴googleapis.com返回下一組?

謝謝!

+0

你的密碼應該是可見的嗎? – 472084

回答

3

首先,我建議使用不同的URL:https://www.googleapis.com/sj/v1beta1/trackfeed

正確的方式提供的nextPageToken對第二請求現在是時候把它平均每個職位的JSON:

$ curl 
    --header "Authorization: GoogleLogin auth=DQA..."  
    --header 'Content-Type: application/json' 
    --data "{'start-token': 'KmM...'} 
    "https://www.googleapis.com/sj/v1beta1/trackfeed 
    > list2 

對於我來說,從http://dpogue.ca/提供

--data "{'max-results': '20000'} 

由於達里爾·波格竟然是更容易申請一次所有歌曲!

+0

你知道如何用體操做到這一點嗎?當我嘗試發送相同的最大結果數據時,出現錯誤。 – TWilly