تتيح لك خدمة YouTube استخدام YouTube Data API
وYouTube Live Streaming API في Apps Script. تمنح واجهة برمجة التطبيقات هذه
المستخدمين إمكانية إدارة فيديوهاتهم وقوائم التشغيل وقنواتهم وفعاليتهم
الحية.
مراجع
للحصول على معلومات تفصيلية عن هذه الخدمة، يُرجى الاطّلاع على المراجع التالية
المستندات:
مثل جميع الخدمات المتقدّمة في Apps Script، تستخدم خدمة YouTube
العناصر والطُرق والمَعلمات نفسها المستخدَمة في واجهة برمجة التطبيقات المتاحة للجميع. لمزيد من المعلومات، اطّلِع على كيفية تحديد توقيعات الطرق.
للإبلاغ عن المشاكل والعثور على دعم آخر، يُرجى الاطّلاع على صفحات الدعم ذات الصلة:
يستخدِم نموذج الرمز البرمجي أدناه الإصدار 3 من واجهة برمجة التطبيقات Data
API في YouTube.
البحث حسب الكلمة الرئيسية
تبحث هذه الدالة عن فيديوهات عن الكلاب، ثم تسجّل معرّفات الفيديوهات وعناوينها.
يُرجى العِلم أنّ هذه العيّنة تحدّ من النتائج إلى 25 نتيجة. لعرض المزيد من النتائج، أرسِل
مَعلمات إضافية كما هو موضّح في
مستندات مرجعية حول 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('Unabletosearchvideos');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('Failedwithanerror%s',err.message);}}
استرداد عمليات التحميل
تسترجع هذه الدالة الفيديوهات التي حمّلها المستخدم. ويتم ذلك باستخدام الخطوات التالية:
جلب قناة المستخدم
جلب قائمة تشغيل uploads الخاصة بالمستخدم
التنقّل في قائمة التشغيل هذه وتسجيل معرّفات الفيديوهات وعناوينها
إذا كانت هناك صفحة نتائج تالية، يتم جلبها، ثم العودة إلى الخطوة 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('NoChannelsfound.');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('NoPlaylistfound.');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('Failedwitherr%s',err.message);}}
الاشتراك في القناة
يشترك هذا النموذج بالمستخدم في قناة "مطوّرو تطبيقات Google" على 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('Addedsubscriptionforchanneltitle:%s',response.snippet.title);}catch(e){if(e.message.match('subscriptionDuplicate')){console.log('Cannotsubscribe;alreadysubscribedtochannel:'+channelId);}else{// TODO (developer) - Handle exceptionconsole.log('Erroraddingsubscription:'+e.message);}}}
تاريخ التعديل الأخير: 2024-12-21 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2024-12-21 (حسب التوقيت العالمي المتفَّق عليه)"],[[["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."]]],[]]