没有客户端ID的Soundcloud内容检索。它可能吗?

问题描述 投票:1回答:1

Soundcloud锁定了他们的API,没有人能够请求新的客户端ID。在他们关闭之前,他们只是忽略了几个月的API密钥请求。他们显然有他们的理由,但现在已经很多年了,这真的很烦人。

有人知道从提供的用户名中检索跟踪数据的任何厚颜无耻的变通办法吗?

我已经尝试解析dom并抓取它但它不起作用,因为它们在抓取时返回“没有javascript”错误呈现主页而不是用户页面。

示例:

$url = "https://soundcloud.com/username/tracks";
$dom = new Dom;
$dom->loadFromUrl($url);

$dom = $dom->find('title',0)->text;

应该返回:

username | Free Listening on SoundCloud

但相反,我们得到:

SoundCloud - Hear the world’s sounds
soundcloud
1个回答
2
投票

我的建议是使用现有的公共API密钥,例如the CLIENT_ID youtube-dl uses to download SoundCloud tracks

您首先需要从用户名获取ID。我们将使用/resolve端点:

HTTP GET: http://api.soundcloud.com/resolve?url=http://soundcloud.com/{username}&client_id={CLIENT_ID}

然后,从/users/{id}/tracks端点获取用户的轨道:

HTTP GET: https://api.soundcloud.com//users/{id}/tracks
© www.soinside.com 2019 - 2024. All rights reserved.