Implementierung: Videos

Die folgenden Beispiele zeigen, wie Sie mit der YouTube Data API (v3) Funktionen für Videos ausführen.

Hochgeladene Videos eines Kanals abrufen

In diesem Beispiel werden die Videos abgerufen, die auf einen bestimmten Kanal hochgeladen wurden. Das Beispiel besteht aus zwei Schritten:

In diesem Beispiel wird gezeigt, wie eine Liste der beliebtesten Videos auf YouTube abgerufen und anhand eines Algorithmus ausgewählt wird, der viele verschiedene Signale kombiniert, um die Beliebtheit insgesamt zu ermitteln.

Um die Liste der beliebtesten Videos abzurufen, rufen Sie die Methode videos.list auf und setzen den Wert des Parameters chart auf mostPopular. Beim Abrufen dieser Liste können Sie auch einen oder beide der folgenden Parameter festlegen:

  • regionCode: Weist die API an, eine Liste der Videos für die angegebene Region zurückzugeben.
  • videoCategoryId: Gibt die Videokategorie an, für die die beliebtesten Videos abgerufen werden sollen.

Mit der folgenden Anfrage werden die beliebtesten Sportvideos in Spanien abgerufen:

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

Video hochladen

Da APIs Explorer das Hochladen von Dateien nicht unterstützt, verweist diese Beschreibung nicht auf ein ausführbares Beispiel. Die folgenden Ressourcen helfen Ihnen, Ihre Anwendung so zu ändern, dass sie Videos mit der API v3 hochladen kann:

  • Die Dokumentation für die videos.insert-Methode der API enthält mehrere Codebeispiele, die zeigen, wie ein Video in verschiedenen Programmiersprachen hochgeladen wird.

  • Im Leitfaden Fortsetzbare Uploads wird die Sequenz von HTTP-Anfragen erläutert, die eine Anwendung verwendet, um Videos mithilfe eines fortsetzbaren Uploads hochzuladen. Der Leitfaden richtet sich in erster Linie für Entwickler, die die Google API-Clientbibliotheken nicht verwenden können. Einige davon bieten native Unterstützung für fortsetzbare Uploads.

  • Im JavaScript-Beispiel zum Hochladen eines Videos wird CORS (Cross-Origin Resource Sharing) genutzt, um zu zeigen, wie eine Videodatei über eine Webseite hochgeladen wird. Die CORS-Uploadbibliothek, die von der v3 API verwendet wird, unterstützt natürlich auch fortsetzbare Uploads. Außerdem ist im Beispiel zu sehen, wie der Status eines hochgeladenen Videos geprüft werden kann, indem der Teil processingDetails der Ressource video abgerufen und Statusänderungen für das hochgeladene Video verarbeitet werden.

Status eines hochgeladenen Videos prüfen

In diesem Beispiel wird gezeigt, wie der Status eines hochgeladenen Videos geprüft werden kann. Ein hochgeladenes Video wird sofort im hochgeladenen Feed des authentifizierten Nutzers angezeigt. Das Video ist auf YouTube aber erst zu sehen, wenn es verarbeitet wurde.

  • Schritt 1: Video hochladen

    Rufen Sie die Methode videos.insert auf, um das Video hochzuladen. Wenn die Anfrage erfolgreich ist, enthält die API-Antwort die Ressource video, die die eindeutige Video-ID für das hochgeladene Video identifiziert.

  • Schritt 2: Videostatus prüfen

    Rufen Sie die Methode videos.list auf, um den Status des Videos zu prüfen. Legen Sie für den Wert des id-Parameters die in Schritt 1 abgerufene Video-ID fest. Legen Sie den Wert des Parameters part auf processingDetails fest.

    Wenn die Anfrage erfolgreich verarbeitet wurde, enthält die API-Antwort die Ressource video. Prüfe den Wert der processingDetails.processingStatus-Property, um festzustellen, ob YouTube das Video noch verarbeitet. Der Wert der Property ändert sich in einen anderen Wert als processing, z. B. succeeded oder failed, wenn YouTube die Verarbeitung des Videos abgeschlossen hat.

    Der Anfragetext ist eine video-Ressource, in der die Eigenschaft id die Video-ID des Videos angibt, das du löschst. In diesem Beispiel enthält die Ressource auch ein recordingDetails-Objekt.

    In der Anfrage unten wird der Status eines Videos geprüft. Zum Abschließen der Anfrage im APIs Explorer müssen Sie den Wert der Property id festlegen.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list?
            part=snippet,processingDetails
            &id=VIDEO_ID

Hinweis: Deine App kann die API abfragen, um den Status eines neu hochgeladenen Videos regelmäßig zu prüfen. Sobald das Video verarbeitet wurde, kann Ihre Bewerbung ein Aufzählungszeichen erstellen oder mit einer anderen Aktion fortfahren, die vom Status des Videos abhängig ist.

Video aktualisieren

In diesem Beispiel wird gezeigt, wie ein Video aktualisiert wird, um Informationen zur Zeit und zum Ort hinzuzufügen, an der das Video aufgezeichnet wurde. Das Beispiel umfasst folgende Schritte:

  • Schritt 1: Video-ID abrufen

    Führe die oben genannten Schritte aus, um hochgeladene Videos für den Kanal des aktuell authentifizierten Nutzers abzurufen. Die Liste könnte verwendet werden, um eine Liste mit Videos anzuzeigen. Dabei wird die ID jedes Videos als Schlüssel verwendet.

    Hinweis: Es gibt verschiedene andere Möglichkeiten, Video-IDs abzurufen, z. B. Suchergebnisse abrufen oder Elemente in einer Playlist auflisten. Da ein Video jedoch nur vom Inhaber aktualisiert werden kann, ist das Abrufen einer Liste mit Videos, die dem Nutzer gehören, der die API-Anfrage autorisiert, wahrscheinlich der erste Schritt in diesem Prozess.

  • Schritt 2: Video aktualisieren

    Rufen Sie die videos.update-Methode auf, um ein bestimmtes Video zu aktualisieren. Legen Sie den Wert des Parameters part auf recordingDetails fest. Der Parameterwert hängt davon ab, welche Metadatenfelder des Videos aktualisiert werden.

    Der Anfragetext ist eine video-Ressource, in der die Eigenschaft id die Video-ID des Videos angibt, das du aktualisieren möchtest. In diesem Beispiel enthält die Ressource auch ein recordingDetails-Objekt.

    Die folgende Beispielressource zeigt, dass das Video am 30. Oktober 2013 in Boston aufgezeichnet wurde:

    {
      "id": "VIDEO_ID",
      "recordingDetails": {
        "location": {
          "latitude": "42.3464",
          "longitude": "-71.0975"
        }
        "recordingDate": "2013-10-30T23:15:00.000Z"
      }
    }

    Zum Abschließen der Anfrage im APIs Explorer müssen Sie den Wert der Property id festlegen.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update?
            part=snippet

Benutzerdefiniertes Thumbnail hochladen und für ein Video festlegen

Du kannst die Methode thumbnails.set der API V3 verwenden, um ein benutzerdefiniertes Thumbnail hochzuladen und es für ein Video festzulegen. In deiner Anfrage gibt der Wert des videoId-Parameters das Video an, für das die Miniaturansicht verwendet wird.

Diese Abfrage kann nicht mit dem APIs Explorer getestet werden, da APIs Explorer das Hochladen von Mediendateien nicht unterstützt.

Ähnliche Codebeispiele: PHP, Python

Video löschen

In diesem Beispiel wird gezeigt, wie ein Video gelöscht wird. Das Beispiel umfasst folgende Schritte:

  • Schritt 1: Video-ID abrufen

    Führe die oben genannten Schritte aus, um hochgeladene Videos für den Kanal des aktuell authentifizierten Nutzers abzurufen. Die Liste könnte verwendet werden, um eine Liste mit Videos anzuzeigen. Dabei wird die ID jedes Videos als Schlüssel verwendet.

    Hinweis: Es gibt verschiedene andere Möglichkeiten, Video-IDs abzurufen, z. B. Suchergebnisse abrufen oder Elemente in einer Playlist auflisten. Da ein Video jedoch nur vom Inhaber gelöscht werden kann, ist das Abrufen einer Liste mit Videos, die dem Nutzer gehören, der die API-Anfrage autorisiert, wahrscheinlich der erste Schritt in diesem Prozess.

  • Schritt 2: Video löschen

    Rufen Sie die Methode videos.delete auf, um ein bestimmtes Video zu löschen. In der Anfrage gibt der Parameter id die Video-ID des Videos an, das Sie löschen. Die Anfrage muss mit OAuth 2.0 autorisiert werden. Wenn Sie diese Abfrage im APIs Explorer testen, müssen Sie eine gültige Video-ID für den Parameterwert id ersetzen.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete?
            id=VIDEO_ID
    

Missbräuchliches Video melden

Dieses Beispiel zeigt, wie du ein Video melden kannst, das missbräuchliche Inhalte enthält. Das Beispiel umfasst folgende Schritte:

  • Schritt 1: IDs abrufen, die erklären, warum das Video gemeldet wird

    Sende eine autorisierte Anfrage an die Methode videoAbuseReportReasons.list, um eine Liste mit gültigen Gründen zum Melden von Videos abzurufen. Die folgende Beispielressource für videoAbuseReportReason enthält Informationen zum Melden eines Videos mit Spam oder irreführenden Inhalten.

    {
      "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"
          }
        ]
      }
    }

    Wie in der Ressource gezeigt, ist dieser Grund auf eine Liste weiterer Gründe zurückzuführen. Wenn Sie ein Video melden, das Spam enthält, müssen Sie die ID angeben. Wir empfehlen Ihnen außerdem, einen sekundären Grund anzugeben.

  • Schritt 2: Video wegen missbräuchlicher Inhalte melden

    Senden Sie eine autorisierte Anfrage an die Methode videos.reportAbuse, um das Video zu melden. Der Anfragetext ist ein JSON-Objekt, das sowohl das gemeldete Video als auch den Grund für die Meldung angibt. Wie in Schritt 1 erwähnt, wird aus einigen Gründen ein zweiter Grund unterstützt und dringend empfohlen.

    Die Eigenschaft videoId des JSON-Objekts identifiziert das Video, das gemeldet wird.

    Im folgenden JSON-Beispielobjekt wird ein Video wegen Spam oder irreführender Inhalte und insbesondere zur Verwendung eines irreführenden Thumbnails markiert. Wie im obigen JSON-Beispielobjekt gezeigt wird, lautet die ID für Spam oder irreführende Inhalte S. Die ID für ein irreführendes Thumbnail lautet 28.

    {
      "videoId": "VIDEO_ID",
      "reasonId": "S",
      "secondaryReasonId": "28",
      "comments": "Testing the video flagging feature.",
      "language": "en"
    }

    Die videos.reportAbuse-Anfrage muss mit OAuth 2.0 autorisiert werden. Über den Link unten wird das JSON-Objekt oben im APIs Explorer geladen. Um die Abfrage zu testen, müssen Sie eine gültige Video-ID für den videoId-Property-Wert ersetzen. Hinweis: Wenn Sie diese Anfrage senden, wird das Video tatsächlich gemeldet.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse