Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Dịch vụ YouTube cho phép bạn sử dụng YouTube Data API và YouTube Live Streaming API trong Apps Script. API này cho phép người dùng quản lý video, danh sách phát, kênh và sự kiện phát trực tiếp.
Tài liệu tham khảo
Để biết thông tin chi tiết về dịch vụ này, hãy xem tài liệu tham khảo sau:
Giống như mọi dịch vụ nâng cao trong Apps Script, dịch vụ YouTube sử dụng cùng các đối tượng, phương thức và tham số như API công khai. Để biết thêm thông tin, hãy xem bài viết Cách xác định chữ ký phương thức.
Để báo cáo vấn đề và tìm thông tin hỗ trợ khác, hãy xem các trang hỗ trợ tương ứng:
Mã mẫu bên dưới sử dụng phiên bản 3 của YouTube Data API.
Tìm kiếm theo từ khoá
Hàm này tìm kiếm các video về chó, sau đó ghi nhật ký mã video và tiêu đề.
Xin lưu ý rằng mẫu này giới hạn kết quả ở mức 25. Để trả về nhiều kết quả hơn, hãy truyền các tham số bổ sung như trong tài liệu tham khảo 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);}}
Truy xuất tệp tải lên
Hàm này truy xuất các video do người dùng tải lên. Để thực hiện việc này, hãy làm theo các bước sau:
Tìm nạp kênh của người dùng
Tìm nạp danh sách phát uploads của người dùng
Lặp lại danh sách phát này và ghi lại mã video cũng như tiêu đề
Nếu có trang kết quả tiếp theo, hãy tìm nạp trang đó, rồi quay lại bước 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);}}
Đăng ký kênh
Mẫu này đăng ký cho người dùng theo dõi kênh Google Developers trên 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);}}}
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-26 UTC."],[[["The 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."],["This is an advanced service that needs to be enabled before use within your Apps Script project."],["Sample code is provided to demonstrate searching for videos, retrieving user uploads, and subscribing to channels using the API."],["Refer to the YouTube Data API and YouTube Live Streaming API reference documentation for detailed information and further functionalities."]]],[]]