Poniższe przykłady pokazują, jak korzystać z interfejsu YouTube Data API (v3) w celu obsługi funkcji związanych z filmami.
Pobieranie filmów przesłanych na kanał
Ten przykład pozwala pobrać filmy przesłane na określony kanał. Przykład obejmuje 2 kroki:
-
Krok 1. Pobierz identyfikator playlisty filmów przesłanych na kanał
Wywołaj metodę
channels.list
, aby pobrać identyfikator playlisty zawierającej filmy przesłane przez kanał. Wartość parametrupart
żądania musi zawieraćcontentDetails
jako jeden z pobieranych elementów zasobuchannel
. W odpowiedzi interfejsu API właściwośćcontentDetails.relatedPlaylists.uploads
zawiera identyfikator playlisty.Kanał można zidentyfikować na kilka sposobów:
-
Ustaw wartość parametru
mine
natrue
, aby pobrać informacje dotyczące kanału obecnie uwierzytelnionego użytkownika YouTube. Żądanie musi być autoryzowane przez OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Ustaw parametr
forUsername
na nazwę użytkownika YouTube, aby pobrać informacje dotyczące kanału powiązanego z tą nazwą użytkownika. W tym przykładzie ustawiona jest wartość parametruforUsername
naGoogle
, aby pobrać informacje z oficjalnego kanału Google w YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
Ustaw parametr
id
na identyfikator kanału YouTube, który jednoznacznie identyfikuje kanał, dla którego pobierasz informacje. W tym przykładzie parametrid
ma wartośćUCK8sQmJBp8GCxrOtXWBpyEA
, która też wskazuje oficjalny kanał Google w YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
Krok 2. Pobierz listę przesłanych filmów
Wywołaj metodę
playlistItems.list
, aby pobrać listę przesłanych filmów. Ustaw wartość parametruplaylistId
na wartość uzyskaną w kroku 1. W tym przykładzie ustawiona wartość parametru toUUK8sQmJBp8GCxrOtXWBpyEA
, czyli lista filmów przesłanych na oficjalny kanał Google w YouTube.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Pobierz najpopularniejsze filmy
Ten przykład pokazuje, jak pobrać listę najpopularniejszych filmów w YouTube wybieranych przy użyciu algorytmu, który łączy wiele różnych sygnałów w celu określenia ogólnej popularności.
Aby pobrać listę najpopularniejszych filmów, wywołaj metodę videos.list
i ustaw wartość parametru chart
na mostPopular
. Pobierając tę listę, możesz ustawić jeden z tych parametrów lub oba naraz:
regionCode
: powoduje, że interfejs API zwraca listę filmów z danego regionu.videoCategoryId
: identyfikuje kategorię filmów, z których należy pobrać najpopularniejsze filmy.
Poniżej znajduje się lista najpopularniejszych filmów sportowych z Hiszpanii:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Prześlij film
Ponieważ interfejs API Explorer nie obsługuje przesyłania plików, ten opis nie zawiera linku do przykładu pliku wykonywalnego. Poniższe zasoby pomogą Ci zmodyfikować aplikację tak, aby mogła przesyłać filmy za pomocą interfejsu API w wersji 3:
-
Dokumentacja metody videos.insert interfejsu API zawiera kilka przykładów kodu wyjaśniających, jak przesłać film w innym języku programowania.
-
Przewodnik po wznawianiu przesyłania zawiera omówienie sekwencji żądań HTTP, których aplikacja używa do przesyłania filmów z wykorzystaniem procesu wznawiania. Przewodnik jest przeznaczony głównie dla deweloperów, którzy nie mogą korzystać z bibliotek klienta interfejsu API Google. Niektóre z nich umożliwiają natywne przesyłanie plików z wznowionym przesyłaniem.
-
W przykładzie JavaScriptu dotyczącym przesyłania filmów użyto języka CORS (udostępniania zasobów z innych domen), aby pokazać, jak przesłać plik wideo na stronie internetowej. Biblioteka przesyłania CORS, której interfejs API w wersji 3 używa w sposób naturalny, aby można było wznowić przesyłanie. Dodatkowo pokazujemy, jak sprawdzić stan przesłanego filmu, pobierając część
processingDetails
z zasobuvideo
oraz jak obsługiwać zmiany stanu przesłanego filmu.
Sprawdzanie stanu przesłanego filmu
Z tego przykładu dowiesz się, jak sprawdzić stan przesłanego filmu. Przesłany film będzie od razu widoczny w przesłanym filmie uwierzytelnionego użytkownika. Jednak film nie będzie widoczny w YouTube, dopóki nie zostanie przetworzony.
-
Krok 1. Prześlij film
Wywołaj metodę
videos.insert
, aby przesłać film. Jeśli żądanie zostanie zrealizowane, odpowiedź interfejsu API będzie zawierać zasóbvideo
, który określa unikalny identyfikator przesłanego filmu. -
Krok 2. Sprawdź stan filmu
Wywołaj metodę
videos.list
, aby sprawdzić stan filmu. Ustaw wartość parametruid
na identyfikator filmu uzyskanego w kroku 1. Ustaw wartość parametrupart
naprocessingDetails
.Jeśli żądanie zostanie przetworzone, odpowiedź interfejsu API będzie zawierać zasób
video
. Sprawdź wartość właściwościprocessingDetails.processingStatus
, aby określić, czy YouTube nadal przetwarza film. Gdy YouTube zakończy przetwarzanie filmu, wartość właściwości zmieni się na inną niżprocessing
, np.succeeded
lubfailed
.Treść żądania to zasób
video
, w którym właściwośćid
określa identyfikator filmu, który chcesz usunąć. W tym przykładzie zasób zawiera też obiektrecordingDetails
.Żądanie poniżej pozwala sprawdzić stan filmu. Aby przesłać żądanie w eksploratorze interfejsów API, musisz ustawić wartość właściwości
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Uwaga: aplikacja może sprawdzać interfejs API, aby okresowo sprawdzać stan nowo przesłanych filmów. Po przetworzeniu filmu może on utworzyć biuletyn lub wykonać inne działanie uzależnione od stanu filmu.
Aktualizowanie filmu
Ten przykład pokazuje, jak zaktualizować film, dodając informacje o czasie i miejscu nagrania. Oto przykładowe czynności:
-
Krok 1. Pobierz identyfikator filmu
Wykonaj czynności opisane powyżej, aby pobrać przesłane filmy z kanału obecnie uwierzytelnionego użytkownika. Ta lista może służyć do wyświetlania listy filmów z użyciem identyfikatora każdego z nich jako klucza.
Uwaga: identyfikatory filmów możesz uzyskać na wiele innych sposobów, np. korzystając z wyników wyszukiwania lub pozycji z playlisty. Ponieważ jednak film może być aktualizowany tylko przez właściciela, pobieranie listy filmów należących do użytkownika uprawnionego do żądania interfejsu API jest prawdopodobnie pierwszym etapem tego procesu.
-
Krok 2. Zaktualizuj film
Wywołaj metodę
videos.update
, aby zaktualizować konkretny film. Ustaw wartość parametrupart
narecordingDetails
. Wartość parametru zależy od tego, które pola metadanych filmu są aktualizowane.Treść żądania to zasób
video
, w którym właściwośćid
określa identyfikator wideo, który aktualizujesz. W tym przykładzie zasób zawiera też obiektrecordingDetails
.Przykładowy zasób pokazuje, że film został nagrany 30 października 2013 r. w Bostonie:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Aby przesłać żądanie w eksploratorze interfejsów API, musisz ustawić wartość właściwości
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Prześlij niestandardową miniaturę i ustaw ją dla filmu
Aby przesłać niestandardowy obraz miniatury i ustawić go na potrzeby filmu, możesz użyć metody thumbnails.set
interfejsu API w wersji 3. Wartość parametru videoId
w Twoim żądaniu wskazuje film, w którym zostanie użyta miniatura.
Tego zapytania nie można przetestować za pomocą narzędzia APIs Explorer, ponieważ nie umożliwia ono przesyłania plików multimedialnych, co jest wymagane w przypadku tej metody.
Usuwanie filmów
Ten przykład pokazuje, jak usunąć film. Oto przykładowe czynności:
-
Krok 1. Pobierz identyfikator filmu
Wykonaj czynności opisane powyżej, aby pobrać przesłane filmy z kanału obecnie uwierzytelnionego użytkownika. Ta lista może służyć do wyświetlania listy filmów z użyciem identyfikatora każdego z nich jako klucza.
Uwaga: identyfikatory filmów możesz uzyskać na wiele innych sposobów, np. korzystając z wyników wyszukiwania lub pozycji z playlisty. Ponieważ jednak film może usunąć tylko jego właściciel, pobieranie listy filmów należących do użytkownika uprawnionego do żądania interfejsu API jest prawdopodobnie pierwszym etapem tego procesu.
-
Krok 2. Usuń film
Aby usunąć konkretny film, użyj metody
videos.delete
. W żądaniu parametrid
określa identyfikator filmu, który chcesz usunąć. Żądanie musi być autoryzowane przez OAuth 2.0. Jeśli testujesz to zapytanie w narzędziu APIs Explorer, musisz zastąpić prawidłowy identyfikator filmu wartością parametruid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Zgłoś film naruszający zasady
Ten przykład pokazuje, jak zgłosić film zawierający nieodpowiednie treści. Oto przykładowe czynności:
-
Krok 1. Pobierz identyfikatory, które wyjaśniają, dlaczego film jest zgłaszany
Wyślij autoryzowane żądanie do metody
videoAbuseReportReasons.list
, aby pobrać listę prawidłowych powodów zgłoszenia filmu. Przykładowy zasóbvideoAbuseReportReason
poniżej zawiera informacje dotyczące zgłaszania filmu, który zawiera spam lub treści wprowadzające w błąd.{ "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" } ] } }
Jak widać w zasobie, przyczyna jest powiązana z listą przyczyn dodatkowych. Zgłaszając film zawierający spam, musisz podać identyfikator przyczyny. Zalecamy również podanie dodatkowego powodu.
-
Krok 2. Zgłoś film jako naruszający zasady
Aby zgłosić film, wyślij autoryzowane żądanie do metody
Właściwośćvideos.reportAbuse
. Treść żądania jest obiektem JSON, który identyfikuje zarówno zgłoszony film, jak i jego przyczynę. Jak już wspomnieliśmy w kroku 1, w przypadku niektórych rodzajów przyczyn druga przyczyna jest zalecana i zdecydowanie zalecana.videoId
obiektu JSON identyfikuje film, który jest oznaczony.Przykładowy obiekt JSON poniżej zgłasza film zawierający spam lub treści wprowadzające w błąd, a konkretnie jako obraz miniatury, który wprowadza w błąd. Jak pokazano w przykładowym obiekcie JSON, identyfikator treści spamowych lub wprowadzających w błąd to S. Identyfikator miniatury wprowadzającej w błąd to 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
Żądanie
videos.reportAbuse
musi być autoryzowane za pomocą protokołu OAuth 2.0. Link poniżej wczytuje obiekt JSON w narzędziu APIs Explorer. Aby przetestować zapytanie, musisz zastąpić prawidłowy identyfikator filmu wartością właściwościvideoId
. Pamiętaj, że zgłoszenie tej prośby spowoduje faktyczne zgłoszenie filmu.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse