사이트에서 URL을 추출하려면 일반적으로 다음 명령을 실행하면 충분합니다.
lynx -dump -listonly https://soundcloud.com/grubstakers > urls.txt
하지만 모든 에피소드 URL(및 일부 가짜 URL)이 아닌 최신 에피소드만 가져옵니다.
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";
}