【问题标题】:How can I get the secret link for a track posted to Soundcloud in Python?如何获取在 Python 中发布到 Soundcloud 的曲目的秘密链接?
【发布时间】:2023-03-20 08:30:01
【问题描述】:

我正在使用 Python 开发一个简单的应用程序,我可以在其中将曲目发布到我自己的 Soundcloud 帐户。我想获取我发布的曲目的“秘密链接”URL。例如,我得到最新的曲目是这样的:

track = client.get('/me/tracks', limit=1)[0]

轨道设置为私人。它在Docs 中建议这样的东西应该返回秘密令牌:

client.get('/tracks/%d/secret-token' %track.id)

但是,我收到 HTTPError: 404 Client Error: Not Found。所有其他子资源似乎都有效。例如,此示例代码可以按您的预期工作:

comments = client.get('/tracks/%d/comments' %track.id)

for comment in comments:
    print comment.body

我会认为,鉴于我已经使用我的凭据进行了身份验证,我可以访问它。它是否正确?任何帮助将不胜感激。

【问题讨论】:

  • documentation 肯定提到了 API 端点;但也许你需要先PUT 一个令牌?
  • 另外,曲目是私有吗?据我了解,只有私人曲目需要密码。
  • @MartijnPieters 是的,它是私有的。将 PUT 与秘密令牌一起使用也会给我同样的错误。
  • 好吧,那就没主意了;在这种情况下,这看起来不像是 Python 问题,我猜你必须通过 Soundcloud 支持来解决这个问题。
  • 它在控制台中工作吗? developers.soundcloud.com/console,如果是这样,您可以随时发出常规 Web 服务请求,而不必使用客户端。

标签: python api hyperlink private soundcloud


【解决方案1】:

/me/tracks 端点返回一个 Track 对象,其中包括 secret_token 以及完整的 uri secret_uri

track = client.get('/me/tracks', limit=1)[0]
print "Secret Token: %s" %track.secret_token
print "Track URI: %s"  %track.secret_uri

我发现我需要在 URI 中包含 client_id 以避免收到 401。

注意:这是未记录在案的,因此在将其用于应用程序之前,请咨询他们的支持团队

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多