Предполагая, что вы умеете программировать на PHP, я советую начать с малого и постепенно переходить от Обзор API данных YouTube , PHP Quickstart и Клиентская библиотека PHP : Начало работы . В любом случае, справочная документация ваш лучший друг - только то, что вы должны с ним познакомиться.
Вы будете использовать клиентскую библиотеку PHP код , тем самым клонируя ее локально на ваш компьютер.
В настоящее время не беспокоитесь об аутентификации OAuth, получите только из консоли разработчика Google ключ API , чтобы использовать его с конечной точкой API PlaylistItems , запрашивается для списка загрузок данного канала .
На Github есть пример кода для получения списка загрузок пользователя, но этот код довольно старый и, скорее всего, имеет проблемы (он также использует авторизацию OAuth, которую я уже рекомендовал вам не беспокоить) ). Вот основная часть этого кода (я немного его изменил: заменил 'mine' => 'true'
на 'id' => $YOUR_CHANNEL_ID
; вам нужно протестировать этот код):
try {
// Call the channels.list method to retrieve information about the
// currently authenticated user's channel.
$channelsResponse = $youtube->channels->listChannels('contentDetails', array(
'id' => $YOUR_CHANNEL_ID,
));
$htmlBody = '';
foreach ($channelsResponse['items'] as $channel) {
// Extract the unique playlist ID that identifies the list of videos
// uploaded to the channel, and then call the playlistItems.list method
// to retrieve that list.
$uploadsListId = $channel['contentDetails']['relatedPlaylists']['uploads'];
$playlistItemsResponse = $youtube->playlistItems->listPlaylistItems('snippet', array(
'playlistId' => $uploadsListId,
'maxResults' => 50
));
$htmlBody .= "<h3>Videos in list $uploadsListId</h3><ul>";
foreach ($playlistItemsResponse['items'] as $playlistItem) {
$htmlBody .= sprintf('<li>%s (%s)</li>', $playlistItem['snippet']['title'],
$playlistItem['snippet']['resourceId']['videoId']);
}
$htmlBody .= '</ul>';
}
} catch (Google_Service_Exception $e) {
$htmlBody = sprintf('<p>A service error occurred: <code>%s</code></p>',
htmlspecialchars($e->getMessage()));
} catch (Google_Exception $e) {
$htmlBody = sprintf('<p>An client error occurred: <code>%s</code></p>',
htmlspecialchars($e->getMessage()));
}
С самого начала вы должны знать систему квот , которую реализует API. В зависимости от моделей использования квоты могут устанавливать довольно жесткие ограничения на количество вызовов, которые пользователь может совершать в различных конечных точках API. В любое время консоль разработчиков Google отображает ваши текущие квоты.
Наконец, полезный инструмент для отладки вашего приложения: APIs Explorer . Он позволяет вам совершать вызовы к конечным точкам API и просматривать соответствующие тексты ответов JSON.