Bezdepbonusu7Программирование: статьи и ответы

Вопрос

API Soundcloud - получение подписчиков пользователей в определенном порядке

Автор вопроса: yegorchikОтветов: 1

Недавно у меня появилась идея сделать расширение для Chrome для собственных целей, которое должно использовать SoundCloud API. Но я обнаружил, что функциональность API довольно ограничена или, возможно, те функции, которые мне нужны, не задокументированы / я просто не нашел ответа. Например, прежде всего я хотел бы получить подписчиков некоторых пользователей в определенном порядке. Чтобы уточнить, ответ должен быть отсортирован по числу подписчиков -> по убыванию. Таким образом, первым подписчиком в ответе должен быть подписчик с максимальным количеством подписчиков вокруг ВСЕХ подписчиков пользователя, для которого мы сделали этот запрос. И так далее. После долгих поисков в @ google я нашел старую ветку, где парень спрашивал о подобной функции, и кто-то из службы поддержки SC сказал ему использовать "& order = value" в запросе, который работал нормально, но устарел и не работает. в настоящее время. Я хотел бы знать, возможно ли это в данный момент, и если нет, можем ли мы ожидать, что эта функция будет добавлена ​​в ближайшее время? Я считаю, что это совсем не сложная вещь.

Короче говоря, мне нужно получить количество подписчиков в определенном порядке. Это первый вопрос. Если мы добьемся успеха здесь, мы пойдем глубже. Спасибо вперед. Любая помощь высоко ценится.

javascriptapigoogle-chrome

Ответы

Ответ 1 · Ashish Chaturvedi

Предположим, вы хотите получить подписчиков пользователей в порядке убывания из Souncloud.

Предположим, у нас есть пять пользователей с URL-адресами профилей Sound-Cloud.

  1. https://soundcloud.com/drop-the-bassline
  2. https://soundcloud.com/certifiedjackin
  3. https://soundcloud.com/ravingkoko
  4. https://soundcloud.com/twenty4sevenedm
  5. https://soundcloud.com/pr-gangstahouse

Код

// Need Soundcloud SDK
require_once 'Services/Soundcloud.php';

// Create Object
$client = new Services_Soundcloud(CLIENT_ID, CLIENT_SECRET);

$result = array();
$urls = array(array
                (
                    'link' => 'https://soundcloud.com/drop-the-bassline',
                ),
             array
                (
                    'link' => 'https://soundcloud.com/certifiedjackin',
                ),
            array
                (
                    'link' => 'https://soundcloud.com/ravingkoko',
                ),
            array
                (
                    'link' => 'https://soundcloud.com/twenty4sevenedm',
                ),
            array
                (
                    'link' => 'https://soundcloud.com/pr-gangstahouse',
                )
                );

foreach($urls as $key=>$u){
    try{
         $response = json_decode($client->get('resolve', array('url' => $u['link']), array(CURLOPT_FOLLOWLOCATION => true)));
         $result[$key]['followers_count']= $response->followers_count;
    }catch(Services_Soundcloud_Invalid_Http_Response_Code_Exception $e){
         echo $e->getMessage();
    }

}

foreach ($result as $key => $row) {
    // replace 0 with the field's index/key
    $dates[$key]  = $row['followers_count'];
}
array_multisort($dates, SORT_DESC, $result);
//echo"<pre>";print_r($result);echo"</pre>";

$data содержат необходимую информацию.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы