我有来自spotify播放列表的歌曲,需要在EN中获取它们的信息。以Tania Bowra的"All I Want"为例。
EN ID(not given): SOUJWUH13E89D89DED
Spotify ID: 2TpxZ7JUBn3uw46aR7qd6V
Spotify URI: spotify:track:2TpxZ7JUBn3uw46aR7qd6V
Spotify external ID: AUCR10410001 (isrc)
如果我通过 Spotify 外部 ID 或 EN 中的 Spotify ID 进行查询,例如
$curl -X GET "http://developer.echonest.com/api/v4/song/profile?api_key={my_api_key}&id=AUCR10410001&bucket=audio_summary" | python -m json.tool
或
$curl -X GET "http://developer.echonest.com/api/v4/song/profile?api_key={my_api_key}&id=2TpxZ7JUBn3uw46aR7qd6V&bucket=audio_summary" | python -m json.tool
EN API 返回以下消息:"id - Invalid parameter: id must be an Echo Nest id or foreign id"
。
或者如果我通过 Spotify URI 查询,例如
$curl -X GET "http://developer.echonest.com/api/v4/song/profile?api_key={my_api_key}&id=spotify:track:2TpxZ7JUBn3uw46aR7qd6V&bucket=audio_summary" | python -m json.tool
我得到这个回复:
{
"response": {
"songs": [],
"status": {
"code": 0,
"message": "Success",
"version": "4.2"
}
}
}
不包含任何信息。
但正如Spotify的网站所说,它应该可以工作。
它适用于修改为"曲目"的"歌曲":
$curl -X GET "http://developer.echonest.com/api/v4/track/profile?api_key={my_api_key}&format=json&id=spotify:track:2TpxZ7JUBn3uw46aR7qd6V&bucket=audio_summary"
将"id"替换为"track_id",它将起作用。
例:
$curl -X GET "http://developer.echonest.com/api/v4/song/profile?api_key={my_api_key}&track_id=spotify:track:2TpxZ7JUBn3uw46aR7qd6V&bucket=audio_summary" | python -m json.tool