Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Usługa YouTube umożliwia korzystanie w Apps Script z YouTube Data API i YouTube Live Streaming API. Ten interfejs API umożliwia użytkownikom zarządzanie filmami, playlistami, kanałami i wydarzeniami na żywo.
Dokumentacja
Szczegółowe informacje o tej usłudze znajdziesz w tych dokumentach:
Podobnie jak wszystkie usługi zaawansowane w Apps Script, usługa YouTube korzysta z tych samych obiektów, metod i parametrów co publiczny interfejs API. Więcej informacji znajdziesz w artykule Jak określane są sygnatury metod.
Aby zgłosić problemy i uzyskać pomoc w innych sprawach, odwiedź odpowiednie strony pomocy:
Poniższy przykładowy kod korzysta z wersji 3 interfejsu YouTube Data API.
Wyszukiwanie według słowa kluczowego
Ta funkcja wyszukuje filmy o psach, a następnie rejestruje identyfikatory i tytuły filmów.
Pamiętaj, że ten przykład ogranicza wyniki do 25. Aby uzyskać więcej wyników, przekaż dodatkowe parametry, jak pokazano w dokumentacji interfejsu YouTube Data API.
/** * Searches for videos about dogs, then logs the video IDs and title. * Note that this sample limits the results to 25. To return more * results, pass additional parameters as shown in the YouTube Data API docs. * @see https://developers.google.com/youtube/v3/docs/search/list */functionsearchByKeyword(){try{constresults=YouTube.Search.list('id,snippet',{q:'dogs',maxResults:25});if(results===null){console.log('Unable to search videos');return;}results.items.forEach((item)=>{console.log('[%s] Title: %s',item.id.videoId,item.snippet.title);});}catch(err){// TODO (developer) - Handle exceptions from Youtube APIconsole.log('Failed with an error %s',err.message);}}
Pobieranie przesłanych plików
Ta funkcja pobiera filmy przesłane przez użytkownika. W tym celu wykonuje te czynności:
Pobiera kanał użytkownika
Pobiera playlistę użytkownika uploads
Przechodzi przez tę playlistę i rejestruje identyfikatory oraz tytuły filmów.
Jeśli istnieje następna strona wyników, pobiera ją, a potem wraca do kroku 3.
/** * This function retrieves the user's uploaded videos by: * 1. Fetching the user's channel's. * 2. Fetching the user's "uploads" playlist. * 3. Iterating through this playlist and logs the video IDs and titles. * 4. If there is a next page of resuts, fetching it and returns to step 3. */functionretrieveMyUploads(){try{// @see https://developers.google.com/youtube/v3/docs/channels/listconstresults=YouTube.Channels.list('contentDetails',{mine:true});if(!results||results.items.length===0){console.log('No Channels found.');return;}for(leti=0;i < results.items.length;i++){constitem=results.items[i];/** Get the channel ID - it's nested in contentDetails, as described in the * Channel resource: https://developers.google.com/youtube/v3/docs/channels. */constplaylistId=item.contentDetails.relatedPlaylists.uploads;letnextPageToken=null;do{// @see: https://developers.google.com/youtube/v3/docs/playlistItems/listconstplaylistResponse=YouTube.PlaylistItems.list('snippet',{playlistId:playlistId,maxResults:25,pageToken:nextPageToken});if(!playlistResponse||playlistResponse.items.length===0){console.log('No Playlist found.');break;}for(letj=0;j < playlistResponse.items.length;j++){constplaylistItem=playlistResponse.items[j];console.log('[%s] Title: %s',playlistItem.snippet.resourceId.videoId,playlistItem.snippet.title);}nextPageToken=playlistResponse.nextPageToken;}while(nextPageToken);}}catch(err){// TODO (developer) - Handle exceptionconsole.log('Failed with err %s',err.message);}}
Zasubskrybuj kanał
Ten przykładowy kod subskrybuje kanał Google Developers w YouTube.
/** * This sample subscribes the user to the Google Developers channel on YouTube. * @see https://developers.google.com/youtube/v3/docs/subscriptions/insert */functionaddSubscription(){// Replace this channel ID with the channel ID you want to subscribe toconstchannelId='UC_x5XG1OV2P6uZZ5FSM9Ttw';constresource={snippet:{resourceId:{kind:'youtube#channel',channelId:channelId}}};try{constresponse=YouTube.Subscriptions.insert(resource,'snippet');console.log('Added subscription for channel title : %s',response.snippet.title);}catch(e){if(e.message.match('subscriptionDuplicate')){console.log('Cannot subscribe; already subscribed to channel: '+channelId);}else{// TODO (developer) - Handle exceptionconsole.log('Error adding subscription: '+e.message);}}}
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-31 UTC."],[[["\u003cp\u003eThe YouTube service in Apps Script allows you to manage videos, playlists, channels, and live events using the YouTube Data API and YouTube Live Streaming API.\u003c/p\u003e\n"],["\u003cp\u003eThis is an advanced service that needs to be enabled before use within your Apps Script project.\u003c/p\u003e\n"],["\u003cp\u003eSample code is provided to demonstrate searching for videos, retrieving user uploads, and subscribing to channels using the API.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the YouTube Data API and YouTube Live Streaming API reference documentation for detailed information and further functionalities.\u003c/p\u003e\n"]]],[],null,[]]