Poniższe przykłady pokazują, jak korzystać z interfejsu YouTube Data API (v3) do obsługi napisów.
Pobieranie listy ścieżek z napisami do filmu
Aby pobrać listę ścieżek napisów dostępnych dla konkretnego filmu, wywołaj metodę captions.list
. Ustaw wartość parametru videoId
na identyfikator filmu w YouTube, który jednoznacznie identyfikuje film, do którego pobierasz napisy. Twoje żądanie musi zostać autoryzowane przez OAuth 2.0.
W żądaniu znajduje się lista napisów do filmu na kanale Relacje Google:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.list? part=snippet &videoId=PRU2ShMzQRg
Przykłady kodu znajdziesz w dokumentacji metody captions.list
.
Tworzenie ścieżki z napisami
Tego zapytania nie można przetestować za pomocą narzędzia APIs Explorer, ponieważ nie obsługuje ono przesyłania plików, co jest wymagane w przypadku tej metody.
Aby przesłać nową ścieżkę napisów do filmu, możesz użyć metody captions.insert
interfejsu API. Podczas przesyłania ścieżki musisz określić wartość tych właściwości zasobu caption
:
snippet.videoId
– określa film, do którego jest dodawana ścieżka z napisami.snippet.language
– język ścieżki napisów.snippet.name
– nazwa ścieżki z napisami;
Podczas przesyłania ścieżki z napisami są dostępne te dodatkowe opcje:
-
Jeśli ustawisz parametr
sync
natrue
, YouTube zignoruje wszystkie kody czasu w przesłanym pliku napisów i wygeneruje nowe kody czasowe dla napisów.Ustaw parametr
sync
natrue
, jeśli przesyłasz transkrypcję, która nie zawiera kodów czasu, lub jeśli uważasz, że kody czasowe w pliku są nieprawidłowe, i chcesz, aby YouTube naprawił je. -
Jeśli ustawisz właściwość
snippet.isDraft
zasobucaption
natrue
, ścieżka nie będzie widoczna publicznie.
Przykłady kodu znajdziesz w dokumentacji metody captions.insert
.
Pobieranie ścieżki z napisami
Tego zapytania nie można przetestować za pomocą narzędzia APIs Explorer, ponieważ nie obsługuje ono pobierania plików.
Aby pobrać konkretną ścieżkę napisów, wywołaj metodę captions.download
. Ustaw wartość parametru id
na identyfikator ścieżki napisów YouTube, który jednoznacznie identyfikuje pobieraną ścieżkę napisów. Twoje żądanie musi zostać autoryzowane przez OAuth 2.0.
Interfejs API v3 obsługuje następujące opcje:
-
Aby wskazać, że ścieżka z napisami musi być zwracana w określonym formacie, ustaw wartość parametru
tfmt
w celu zidentyfikowania odpowiedniego formatu. Definicja parametru zawiera obsługiwane wartości. -
Aby pobrać tłumaczenie ścieżki napisów, ustaw wartość parametru
tlang
na dwuliterowy kod języka w standardzie ISO 639-1, który wskazuje wybrany język napisów. Tłumaczenia są generowane z wykorzystaniem tłumaczenia maszynowego, np. Tłumacza Google.
Przykłady kodu znajdziesz w dokumentacji metody captions.download
.
Zaktualizuj ścieżkę z napisami
Interfejs API obsługuje możliwość zmiany stanu wersji ścieżki napisów, przesłania nowej ścieżki napisów do pliku lub obu tych elementów.
Za pomocą Eksploratora interfejsów API możesz przetestować możliwość zmiany stanu wersji roboczej ścieżki. Nie możesz jednak używać narzędzia Eksplorator interfejsów API, aby zaktualizować rzeczywistą ścieżkę napisów, ponieważ narzędzie nie obsługuje przesyłania plików.
W żądaniu znajduje się lista napisów do filmu na kanale Relacje Google:
Prośba zmieni stan wersji roboczej ścieżki z napisami na true
, co oznacza, że ścieżka nie będzie widoczna publicznie. Aby przesłać żądanie w eksploratorze interfejsów API, musisz ustawić wartość właściwości id
na identyfikację ścieżki z napisami.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.update? part=snippet
Przykłady kodu znajdziesz w dokumentacji metody captions.update
.
Usuwanie ścieżki z napisami
Ten przykład pokazuje, jak usunąć ścieżkę z napisami. Oto przykład:
-
Krok 1. Pobierz identyfikator ścieżki z napisami
Wykonaj czynności opisane powyżej, aby pobrać listę ścieżek napisów do filmu. Lista może służyć do wyświetlania listy ścieżek z napisami, używając identyfikatora każdej z nich jako klucza.
-
Krok 2. Usuń utwór
Wywołaj metodę
captions.delete
, aby usunąć konkretny film. W żądaniu parametrid
określa identyfikator ścieżki napisów, którą usuwasz. Żądanie musi być autoryzowane przez OAuth 2.0. Jeśli testujesz to zapytanie w eksploratorze interfejsów API, musisz zastąpić prawidłowy identyfikator ścieżki z napisami wartością parametruid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.delete? id=CAPTION_TRACK_ID