בדוגמאות הבאות מוסבר איך משתמשים ב-YouTube Data API (גרסה 3) כדי לבצע פונקציות שקשורות לסרטונים.
אחזור של סרטונים שהועלו בערוץ
בדוגמה הזו אנחנו מאחזרים את הסרטונים שהועלו לערוץ מסוים. הדוגמה כוללת שני שלבים:
-
שלב 1: אחזור מזהה הפלייליסט של הסרטונים שהועלו בערוץ
קוראים ל-method
channels.list
כדי לאחזר את המזהה של הפלייליסט שמכיל את הסרטונים שהועלו על ידי הערוץ. ערך הפרמטרpart
של הבקשה חייב לכלול אתcontentDetails
כאחד מחלקי המשאבchannel
שאוחזרים. בתשובה של ה-API, המאפייןcontentDetails.relatedPlaylists.uploads
מכיל את מזהה הפלייליסט.יש כמה דרכים לזהות את הערוץ:
-
מגדירים את ערך הפרמטר
mine
לערךtrue
כדי לאחזר מידע על ערוץ YouTube של המשתמש המאומת הנוכחי. צריך לאשר את הבקשה באמצעות 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: אחזור הרשימה של הסרטונים שהועלו
קוראים ל-method
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 לא תומך בהעלאת קבצים, אין בתיאור הזה קישור לדוגמה הפעלה. המקורות הבאים יעזרו לכם לשנות את האפליקציה כך שתוכל להעלות סרטונים באמצעות API v3:
-
במסמכי התיעוד של השיטה videos.insert ב-API יש כמה דוגמאות קוד שמסבירות איך להעלות סרטון באמצעות שפות תכנות שונות.
-
במדריך העלאות שניתן להמשיך מוסבר על רצף בקשות ה-HTTP שבהן אפליקציה משתמשת כדי להעלות סרטונים באמצעות תהליך העלאה שניתן להמשיך. המדריך מיועד בעיקר למפתחים שלא יכולים להשתמש בספריות הלקוח של Google API, שחלקן מספקות תמיכה מקורית בהעלאות שניתן להמשיך אותן.
-
בדוגמה ל-JavaScript להעלאת סרטון נעשה שימוש ב-CORS (שיתוף משאבים בין מקורות) כדי להדגים איך מעלים קובץ וידאו דרך דף אינטרנט. ספריית ההעלאה של CORS שבה משתמש ה-API בגרסה 3 תומכת באופן טבעי בהעלאות שניתן להמשיך. בנוסף, בדוגמה מוסבר איך לבדוק את הסטטוס של סרטון שהועלה על ידי אחזור החלק
processingDetails
של המשאבvideo
, ואיך לטפל בשינויים בסטטוס של הסרטון שהועלה.
איך בודקים את הסטטוס של סרטון שהועלה
בדוגמה הזו נסביר איך בודקים את הסטטוס של סרטון שהועלה. סרטון שהועלו יופיע באופן מיידי בפיד הסרטונים שהועלו של המשתמש המאומת. עם זאת, הסרטון לא יופיע ב-YouTube עד שהוא יעבד.
-
שלב 1: מעלים את הסרטון
קוראים ל-method
videos.insert
כדי להעלות את הסרטון. אם הבקשה תאושר, תגובה ה-API תכיל משאבvideo
שמזהה את מזהה הסרטון הייחודי של הסרטון שהועלו. -
שלב 2: בודקים את סטטוס הסרטון
כדי לבדוק את סטטוס הסרטון, צריך להפעיל את השיטה
videos.list
. מגדירים את הערך של הפרמטרid
למזהה הווידאו שהתקבל בשלב 1. מגדירים את הערך של הפרמטרpart
כ-processingDetails
.אם הבקשה מטופלת בהצלחה, תגובת ה-API תכלול משאב
video
. בודקים את הערך של המאפייןprocessingDetails.processingStatus
כדי לקבוע אם מערכת YouTube עדיין מעבדת את הסרטון. הערך של המאפיין ישתנה למשהו שאינוprocessing
, כמוsucceeded
אוfailed
, אחרי שמערכת YouTube תסיים לעבד את הסרטון.גוף הבקשה הוא משאב
video
שבו המאפייןid
מציין את מזהה הסרטון שרוצים למחוק. בדוגמה הזו, המשאב מכיל גם אובייקטrecordingDetails
.הבקשה הבאה בודקת את הסטטוס של סרטון. כדי להשלים את הבקשה ב-API 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" } }
כדי להשלים את הבקשה ב-API Explorer, צריך להגדיר את הערך של נכס
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
איך מעלים תמונה ממוזערת מותאמת אישית ומגדירים אותה לסרטון
אפשר להשתמש בשיטה thumbnails.set
של ה-API בגרסה 3 כדי להעלות תמונה ממוזערת בהתאמה אישית ולהגדיר אותה לסרטון. בבקשה, הערך של הפרמטר videoId
מזהה את הסרטון שבו תמונה ממוזערת תופיע.
לא ניתן לבדוק את השאילתה הזו באמצעות API Explorer כי אין ב-API Explorer תמיכה בהעלאת קובצי מדיה, וזו דרישה לשיטה הזו.
מחיקת סרטון
בדוגמה הזו מוסבר איך מוחקים סרטון. הדוגמה כוללת את השלבים הבאים:
-
שלב 1: אחזור מזהה הסרטון
פועלים לפי השלבים שמפורטים למעלה כדי לאחזר סרטונים שהועלו לערוץ של המשתמש המאומת הנוכחי. אפשר להשתמש ברשימה כדי להציג רשימת סרטונים, ולהשתמש במזהה של כל סרטון כמפתח.
הערה: יש עוד דרכים רבות לקבל מזהי סרטונים, כמו אחזור תוצאות חיפוש או הוספת פריטים לפלייליסט. עם זאת, מאחר שרק הבעלים של סרטון יכול למחוק אותו, השלב הראשון בתהליך הזה הוא כנראה אחזור רשימה של סרטונים שבבעלות המשתמש שהעניק הרשאה לבקשת ה-API.
-
שלב 2: מחיקת סרטון
כדי למחוק סרטון ספציפי, קוראים ל-method
videos.delete
. בבקשה, הפרמטרid
מציין את מזהה הסרטון שרוצים למחוק. צריך לאשר את הבקשה באמצעות OAuth 2.0. אם אתם בודקים את השאילתה הזו ב-API 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: מדווחים על הסרטון כתוכן פוגעני
שולחים בקשה מורשית ל-method
המאפיין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 שלמעלה ב-API Explorer. כדי לבדוק את השאילתה, צריך להחליף את ערך הנכסvideoId
במזהה סרטון חוקי. חשוב לזכור ששליחת הבקשה הזו תגרום לסימון הסרטון.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse