6

我正在使用以下查询从 soundcloud 的 API 中获取曲目列表,以检索 5 个最受欢迎的曲目:

https://api.soundcloud.com/tracks?client_id=XXX&order=hotness&limit=5

但最近 SoundCloud取消了 hotness 命令。在博客文章中,他们说曲目可以改为按播放计数排序。但这可以在查询中完成,还是他们建议我拉下整个 SoundCloud 库并在客户端中订购它们?以下似乎不起作用:

https://api.soundcloud.com/tracks?client_id=XXX&order=playback_count&limit=5

那么如何检索 SoundCloud 上的热门曲目呢?

4

3 回答 3

4

解决方案是使用 SoundCloud 本身使用的资源管理器功能的未记录调用(我使用 Chrome 中的开发工具检查 AJAX 调用)。

https://api.soundcloud.com/explore/sounds/category?limit=L&client_id=XXX

这似乎对歌曲的受欢迎程度进行了某种排序。然后可以通过检查“分组”属性仅对歌曲进行过滤。然后,我必须将 ID 列表解析为实际歌曲,这可以通过(记录的、官方的)API 调用来完成:

https://api.soundcloud.com/tracks?ids=1,2,3&client_id=XXX

这似乎很有效,而且我还获得了流派之间均匀分布的额外好处。但当然,这可能随时停止工作,因为 API 调用未记录在案,并且可能不适合公众使用。

于 2013-05-25T16:47:27.883 回答
4

只是想提供一个更新。soundcloud 似乎已移至 explore API 调用的 v2。

使用它来获取类别列表:
https ://api.soundcloud.com/explore/v2

这是从一个类别中获取曲目:
https ://api-v2.soundcloud.com/explore/metal?limit=10&offset=0

到目前为止,它似乎没有钥匙,虽然我不知道这会持续多久。

编辑:所以第二个 url 似乎不允许跨域,但到目前为止这确实有效,尽管它只返回 trackID 而不是完整信息

https://api.soundcloud.com/explore/v2/metal?limit=50&consumer_key=XXX

于 2014-03-16T21:34:19.343 回答
0

在这里检查,soundcloud 删除了 order by hotness

是否已从 Soundclouds API 中删除了按热度排序

所以,就目前而言,只有order by date是可能的。

于 2013-05-25T08:26:21.930 回答