مثالهای زیر نحوه استفاده از YouTube Data API (v3) را برای انجام عملکردهای مرتبط با ویدیوها نشان میدهند.
ویدیوهای آپلود شده یک کانال را بازیابی کنید
این مثال ویدیوهای آپلود شده در یک کانال خاص را بازیابی می کند. مثال دو مرحله دارد:
مرحله 1: شناسه لیست پخش ویدیوهای آپلود شده کانال را بازیابی کنید
برای بازیابی شناسه لیست پخشی که حاوی ویدیوهای آپلود شده کانال است، با روش
channels.list
تماس بگیرید. مقدار پارامترpart
درخواست باید حاویcontentDetails
به عنوان یکی از بخشهای منبعchannel
در حال بازیابی باشد. در پاسخ API، ویژگیcontentDetails.relatedPlaylists.uploads
حاوی شناسه لیست پخش است.راه های مختلفی برای شناسایی کانال وجود دارد:
برای بازیابی اطلاعات کانال یوتیوب کاربر تأیید شده فعلی، مقدار پارامتر
mine
را رویtrue
تنظیم کنید. درخواست شما باید با استفاده از OAuth 2.0 مجاز باشد.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
پارامتر
forUsername
را روی نام کاربری YouTube تنظیم کنید تا اطلاعات کانال مرتبط با آن نام کاربری را بازیابی کنید. این مثال مقدار پارامترforUsername
را بهGoogle
برای بازیابی اطلاعات برای کانال رسمی YouTube Google تنظیم می کند.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
پارامتر
id
را روی شناسه کانال YouTube تنظیم کنید که به طور منحصربهفرد کانالی را که اطلاعات آن را بازیابی میکنید مشخص میکند. این مثال پارامترid
را رویUCK8sQmJBp8GCxrOtXWBpyEA
تنظیم می کند که کانال رسمی YouTube Google را نیز مشخص می کند.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
مرحله 2: لیست ویدیوهای آپلود شده را بازیابی کنید
برای بازیابی لیست ویدیوهای آپلود شده، با روش
playlistItems.list
تماس بگیرید. مقدار پارامترplaylistId
را روی مقدار به دست آمده در مرحله 1 تنظیم کنید. در این مثال، مقدار پارامتر رویUUK8sQmJBp8GCxrOtXWBpyEA
تنظیم شده است که لیست ویدیوهای آپلود شده در کانال رسمی YouTube Google است.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
محبوب ترین ویدیوها را بازیابی کنید
این مثال نشان میدهد که چگونه میتوان فهرستی از محبوبترین ویدیوهای YouTube را بازیابی کرد که با استفاده از الگوریتمی انتخاب شدهاند که سیگنالهای مختلف را برای تعیین محبوبیت کلی ترکیب میکند.
برای بازیابی لیست محبوب ترین ویدیوها، روش videos.list
را فراخوانی کنید و مقدار پارامتر chart
را روی mostPopular
تنظیم کنید. هنگام بازیابی این لیست، می توانید یکی یا هر دو پارامتر زیر را نیز تنظیم کنید:
-
regionCode
: به API دستور می دهد تا لیستی از ویدیوها را برای منطقه مشخص شده برگرداند. -
videoCategoryId
: دسته ویدیویی را که محبوب ترین ویدیوها باید برای آن بازیابی شوند را مشخص می کند.
درخواست زیر محبوب ترین ویدیوهای ورزشی در اسپانیا را بازیابی می کند:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
یک ویدیو آپلود کنید
از آنجایی که APIs Explorer از قابلیت آپلود فایل ها پشتیبانی نمی کند، این توضیحات به یک مثال اجرایی پیوند نمی دهد. منابع زیر به شما کمک می کند تا برنامه خود را طوری تغییر دهید که بتواند ویدیوها را با استفاده از v3 API آپلود کند:
مستندات متد videos.insert API حاوی چندین نمونه کد است که نحوه آپلود ویدیو را با استفاده از زبان های برنامه نویسی مختلف توضیح می دهد.
راهنمای بارگذاریهای قابل ازسرگیری، توالی درخواستهای HTTP را توضیح میدهد که یک برنامه کاربردی برای آپلود ویدیوها با استفاده از فرآیند آپلود مجدد استفاده میکند. این راهنما عمدتاً برای توسعهدهندگانی است که نمیتوانند از کتابخانههای سرویس گیرنده Google API استفاده کنند، که برخی از آنها پشتیبانی بومی را برای آپلودهای قابل ازسرگیری ارائه میدهند.
مثال جاوا اسکریپت برای آپلود یک ویدیو از CORS (اشتراک گذاری منابع متقابل) برای نشان دادن نحوه آپلود یک فایل ویدیویی از طریق یک صفحه وب استفاده می کند. کتابخانه آپلود CORS که API v3 از آن استفاده می کند، به طور طبیعی از آپلود مجدد پشتیبانی می کند. علاوه بر این، این مثال نحوه بررسی وضعیت یک ویدیوی آپلود شده را با بازیابی قسمت
processingDetails
از منبعvideo
و همچنین نحوه مدیریت تغییرات وضعیت برای ویدیوی آپلود شده را نشان میدهد.
وضعیت یک ویدیوی آپلود شده را بررسی کنید
این مثال نحوه بررسی وضعیت یک ویدیوی آپلود شده را نشان می دهد. یک ویدیوی آپلود شده بلافاصله در فید ویدیوهای آپلود شده کاربر تأیید شده قابل مشاهده خواهد بود. با این حال، ویدیو تا زمانی که پردازش نشود در YouTube قابل مشاهده نخواهد بود.
مرحله 1: ویدیو را آپلود کنید
برای آپلود ویدیو با روش
videos.insert
تماس بگیرید. اگر درخواست موفقیت آمیز باشد، پاسخ API حاوی یک منبعvideo
خواهد بود که شناسه ویدیوی منحصر به فرد برای ویدیوی آپلود شده را مشخص می کند.مرحله 2: وضعیت ویدیو را بررسی کنید
برای بررسی وضعیت ویدیو با روش
videos.list
تماس بگیرید. مقدار پارامترid
را روی شناسه ویدیویی به دست آمده در مرحله 1 تنظیم کنید. مقدار پارامترpart
را رویprocessingDetails
تنظیم کنید.اگر درخواست با موفقیت انجام شود، پاسخ API حاوی یک منبع
video
خواهد بود. مقدار ویژگیprocessingDetails.processingStatus
را بررسی کنید تا مشخص شود که آیا YouTube همچنان ویدیو را پردازش می کند یا خیر. وقتی YouTube پردازش ویدیو را به پایان رساند، ارزش این ویژگی به چیزی غیر ازprocessing
تغییر میکند، مانندsucceeded
یاfailed
.بدنه درخواست یک منبع
video
است که در آن ویژگیid
شناسه ویدیوی ویدیویی را که در حال حذف آن هستید مشخص می کند. در این مثال، منبع همچنین حاوی یک شیrecordingDetails
است.درخواست زیر وضعیت یک ویدیو را بررسی می کند. برای تکمیل درخواست در APIs Explorer، باید مقدار ویژگی
id
را تنظیم کنید.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
توجه: برنامه شما میتواند از API نظرسنجی کند تا به صورت دورهای وضعیت ویدیوی تازه آپلود شده را بررسی کند. پس از پردازش ویدیو، برنامه شما میتواند یک بولتن ایجاد کند یا با توجه به وضعیت ویدیو، اقدام دیگری انجام دهد.
یک ویدیو را به روز کنید
این مثال نحوه به روز رسانی یک ویدیو را برای افزودن اطلاعات مربوط به زمان و مکان ضبط ویدیو نشان می دهد. مثال دارای مراحل زیر است:
مرحله 1: شناسه ویدیو را بازیابی کنید
مراحل بالا را برای بازیابی ویدیوهای آپلود شده برای کانال کاربر تأیید شده فعلی دنبال کنید. از این فهرست می توان برای نمایش فهرستی از ویدیوها با استفاده از شناسه هر ویدیو به عنوان کلید استفاده کرد.
توجه: راههای متعدد دیگری برای به دست آوردن شناسههای ویدیو وجود دارد، مانند بازیابی نتایج جستجو یا فهرست کردن موارد در فهرست پخش. با این حال، از آنجایی که یک ویدیو فقط توسط مالک آن میتواند بهروزرسانی شود، بازیابی فهرستی از ویدیوهای متعلق به کاربری که درخواست API را تأیید میکند، احتمالاً اولین قدم در این فرآیند است.
مرحله 2: یک ویدیو را به روز کنید
برای بهروزرسانی یک ویدیوی خاص، با روش
videos.update
تماس بگیرید. مقدار پارامترpart
را رویrecordingDetails
تنظیم کنید. (مقدار پارامتر بستگی به این دارد که کدام فیلدهای فراداده ویدیو به روز می شوند.)بدنه درخواست یک منبع
video
است که در آن ویژگیid
، شناسه ویدیوی ویدیویی را که در حال بهروزرسانی هستید، مشخص میکند. در این مثال، منبع همچنین حاوی یک شیrecordingDetails
است.منبع نمونه زیر نشان می دهد که ویدئو در 30 اکتبر 2013 در بوستون ضبط شده است:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
برای تکمیل درخواست در APIs Explorer، باید مقدار ویژگی
id
را تنظیم کنید.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
یک تصویر کوچک سفارشی آپلود کنید و آن را برای یک ویدیو تنظیم کنید
میتوانید از روش thumbnails.set
در v3 API برای آپلود یک تصویر کوچک سفارشی و تنظیم آن برای یک ویدیو استفاده کنید. در درخواست شما، مقدار پارامتر videoId
، ویدیویی را که تصویر کوچک برای آن استفاده خواهد شد، مشخص میکند.
این پرس و جو را نمی توان با استفاده از APIs Explorer آزمایش کرد زیرا APIs Explorer از توانایی آپلود فایل های رسانه ای پشتیبانی نمی کند، که لازمه این روش است.
یک ویدیو را حذف کنید
این مثال نحوه حذف یک ویدیو را نشان می دهد. مثال دارای مراحل زیر است:
مرحله 1: شناسه ویدیو را بازیابی کنید
مراحل بالا را برای بازیابی ویدیوهای آپلود شده برای کانال کاربر تأیید شده فعلی دنبال کنید. از این فهرست می توان برای نمایش فهرستی از ویدیوها با استفاده از شناسه هر ویدیو به عنوان کلید استفاده کرد.
توجه: راههای متعدد دیگری برای به دست آوردن شناسههای ویدیو وجود دارد، مانند بازیابی نتایج جستجو یا فهرست کردن موارد در فهرست پخش. با این حال، از آنجایی که یک ویدیو فقط می تواند توسط مالک آن حذف شود، بازیابی لیستی از ویدیوهای متعلق به کاربری که درخواست API را مجاز می کند، احتمالاً اولین قدم در این فرآیند است.
مرحله 2: یک ویدیو را حذف کنید
برای حذف یک ویدیوی خاص با روش
videos.delete
تماس بگیرید. در درخواست، پارامترid
شناسه ویدیویی ویدیویی را که در حال حذف آن هستید مشخص می کند. درخواست باید با استفاده از OAuth 2.0 مجاز باشد. اگر این پرس و جو را در APIs Explorer آزمایش می کنید، باید یک شناسه ویدیوی معتبر را جایگزین مقدار پارامترid
کنید.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
گزارش یک ویدیوی توهین آمیز
این مثال نحوه گزارش ویدیویی حاوی محتوای توهین آمیز را نشان می دهد. مثال دارای مراحل زیر است:
مرحله 1: شناسه هایی را بازیابی کنید که دلیل گزارش شدن ویدیو را توضیح می دهند
یک درخواست مجاز به روش
videoAbuseReportReasons.list
برای بازیابی لیستی از دلایل معتبر برای پرچم گذاری یک ویدیو ارسال کنید. نمونه منبعvideoAbuseReportReason
زیر حاوی اطلاعاتی برای پرچم گذاری ویدیویی است که حاوی محتوای هرزنامه یا گمراه کننده است.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
همانطور که در منبع نشان داده شده است، این دلیل با لیستی از دلایل ثانویه همراه است. هنگام پرچم گذاری یک ویدیو برای داشتن هرزنامه، باید شناسه دلیل آن را ارائه دهید و قویاً تشویق می شوید که دلیل ثانویه را نیز ارائه دهید.
مرحله 2: ویدیو را برای محتوای توهین آمیز پرچم گذاری کنید
برای گزارش واقعی ویدیو، یک درخواست مجاز به روش
ویژگیvideos.reportAbuse
ارسال کنید. بدنه درخواست یک شی JSON است که هم ویدیوی پرچمگذاری شده و هم دلیل پرچمگذاری آن را مشخص میکند. همانطور که در مرحله 1 اشاره شد، به برخی از دلایل، یک دلیل ثانویه حمایت و به شدت تشویق می شود.videoId
شیء JSON، ویدیویی را که پرچمگذاری میشود، شناسایی میکند.شیء نمونه JSON زیر یک ویدیو را به دلیل داشتن محتوای هرزنامه یا گمراه کننده و به طور خاص برای استفاده از یک تصویر کوچک گمراه کننده پرچم گذاری می کند. همانطور که در نمونه شی JSON در بالا نشان داده شده است، شناسه هرزنامه یا محتوای گمراه کننده S است. شناسه یک تصویر کوچک گمراه کننده 28 است.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
درخواست
videos.reportAbuse
باید با استفاده از OAuth 2.0 مجاز باشد. پیوند زیر شی JSON بالا را در APIs Explorer بارگیری می کند. برای آزمایش پرس و جو، باید یک شناسه ویدیوی معتبر را برای مقدار ویژگیvideoId
جایگزین کنید. لطفاً به یاد داشته باشید که ارسال این درخواست در واقع ویدیو را پرچمگذاری میکند.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse