הטמעה: סרטונים

הדוגמאות הבאות מראות איך להשתמש ב-YouTube Data API (גרסה 3) כדי לבצע פונקציות שקשורות לסרטונים.

אחזור סרטונים שהועלו לערוץ

בדוגמה הזו, הסרטונים שהועלו לערוץ מסוים יאוחזרו. בדוגמה יש שני שלבים:

בדוגמה הזו מוסבר איך לאחזר רשימה של הסרטונים הפופולריים ביותר ב-YouTube, שנבחרים באמצעות אלגוריתם שמשלב אותות רבים ושונים כדי לקבוע את הפופולריות הכוללת.

כדי לאחזר את רשימת הסרטונים הפופולריים ביותר, צריך להתקשר לשיטה videos.list ולהגדיר את ערך הפרמטר chart לערך mostPopular. כשמשחזרים את הרשימה, אפשר גם להגדיר אחד מהפרמטרים הבאים, או את שניהם:

  • regionCode: מורה ל-API להחזיר רשימה של סרטונים לאזור שצוין.
  • videoCategoryId: מזהה את קטגוריית הסרטון שעבורה יש לאחזר את הסרטונים הפופולריים ביותר.

הבקשה הבאה מאחזרת את סרטוני הספורט הפופולריים ביותר בספרד:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list?
        part=snippet
        &chart=mostPopular
        &regionCode=es
        &videoCategoryId=17

העלאת סרטון

מאחר ש-APIs Explorer לא תומך ביכולת להעלות קבצים, התיאור הזה לא מקשר לדוגמה של קובץ הפעלה. המשאבים הבאים יעזרו לך לשנות את האפליקציה כך שהיא תוכל להעלות סרטונים באמצעות ממשק ה-API של גרסה 3:

  • מסמכי התיעוד של השיטה videos.insert ב-API כוללים כמה דוגמאות קוד שמסבירות איך להעלות סרטון בשפות תכנות שונות.

  • המדריך העלאות שניתן להמשיך מסביר את רצף בקשות ה-HTTP שבהן אפליקציה משתמשת כדי להעלות סרטונים באמצעות תהליך העלאה שניתן להמשיך. המדריך מיועד בעיקר למפתחים שלא יכולים להשתמש בספריות הלקוח של Google API. חלקם מספקים תמיכה מקומית להעלאות שניתנות לחידוש.

  • בדוגמת ה-JavaScript להעלאת סרטון נעשה שימוש ב-CORS (שיתוף משאבים בין מקורות) כדי להדגים איך להעלות קובץ סרטון דרך דף אינטרנט. ספריית ההעלאות CORS ש-v3 API משתמשת בה באופן טבעי תומכת בהעלאות שניתנות לחידוש. בנוסף, הדוגמה מראה איך לבדוק את הסטטוס של סרטון שהועלה על ידי אחזור החלק 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.

    הבקשה הבאה בודקת את הסטטוס של הסרטון. כדי להשלים את הבקשה ב-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 של ה-API של גרסה 3 כדי להעלות תמונה ממוזערת מותאמת אישית ולהגדיר אותה עבור סרטון. בבקשה שלך, הערך של הפרמטר videoId מזהה את הסרטון שבו ייעשה שימוש בתמונה הממוזערת.

לא ניתן לבדוק את השאילתה הזו באמצעות APIs Explorer, מכיוון ש-APIs Explorer לא תומך ביכולת להעלות קובצי מדיה, דרישה זו נדרשת בשיטה זו.

דוגמאות קוד קשורות: PHP, Python

מחיקת סרטון

בדוגמה הזו מוסבר איך למחוק סרטון. לדוגמה:

  • שלב 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