要从站点中提取 url,通常运行以下命令就足够了:
lynx -dump -listonly https://soundcloud.com/grubstakers > urls.txt
但我只得到最新的剧集,而不是所有剧集的网址(以及一些虚假网址)。
是否可以使用 lynx 浏览器执行此操作,或者当我们在 GUI 浏览器中向下滚动时,javascript 负责加载其余链接吗?
答案1
你可以使用这样的东西:
返回 146 个条目,我相信这就是他们目前拥有的全部。对于更有生产力的艺术家,您需要使用分页。以下是 PHP 的示例,但您可以使用支持 HTTP 和 JSON 的任何语言来执行此操作:
<?php
$s1 = 'https://api-v2.soundcloud.com/stream/users/394696287';
$s2 = http_build_query([
'client_id' => 'qWUPqUOvYPTG1SDjwXJCNm9gOwM3rNeP',
'limit' => 200
]);
$s3 = file_get_contents($s1 . '?' . $s2);
$o1 = json_decode($s3);
foreach ($o1->collection as $o2) {
echo $o2->track->permalink_url, "\n";
}