【问题标题】:Getting a random track获取随机曲目
【发布时间】:2012-11-29 16:46:03
【问题描述】:

有没有办法从 soundcloud API 获取随机曲目?我正在考虑的解决方法也是获取曲目总数,然后选择一个随机数。但是我也找不到获取曲目总数的方法。

目前我只是将这个东西包装在一个 try/except 中,但是我做了无用的请求。如果有办法避免这种情况!?

while (not track):
    try:
        track = client.get('/tracks/%s' % random.randint(0, 100000))
    except requests.exceptions.HTTPError as e:
        logger.error(e)

【问题讨论】:

  • 您可以通过传入特定的q = <search term> 请求来滥用/tracks 调用的搜索部分。
  • @sean 不幸的是,/tracks/ 端点似乎只产生(50)个按创建日期和热度排序的轨道。见API console
  • 是的......这并不比我的黑客少。我的更简单:)

标签: python soundcloud


【解决方案1】:

您想挑选的曲目还有其他要求吗?除非您指定 limit,否则对 /tracks 执行简单的 GET 请求将返回 50 个轨道实例。您可以从该集合中随机选择一个吗?

import random
import soundcloud

client = soundcloud.Client(access_token='YOUR_ACCESS_TOKEN')
tracks = client.get('/tracks')
track = random.choice(tracks)

希望对您有所帮助!否则发表评论,我将编辑我的答案并提供更多详细信息。

【讨论】:

  • 嗨!这种方法的问题是我会首先获得最热门的曲目,对吗?这不是我真正想要的,因为这不是随机的。
猜你喜欢
  • 2017-09-19
  • 1970-01-01
  • 2021-01-04
  • 2017-12-22
  • 1970-01-01
  • 2018-01-04
  • 2012-11-22
  • 2011-12-18
  • 1970-01-01
相关资源
最近更新 更多