Z tego krótkiego przewodnika dowiesz się, jak skonfigurować prostą aplikację w języku Python, która wysyła żądania do interfejsu YouTube Data API. Ten krótki przewodnik wyjaśnia, jak utworzyć 2 żądania API:
- Aby pobrać informacje o kanale Google Developers w YouTube, będziesz używać klucza interfejsu API identyfikującego aplikację.
- Identyfikator klienta OAuth 2.0 służy do przesyłania autoryzowanych żądań pobierania informacji o Twoim kanale w YouTube.
Wymagania wstępne
Aby uruchomić ten krótki przewodnik, musisz mieć:
Python 2.7 lub Python 3.5+
Narzędzie do zarządzania pakietami
pip
Biblioteka klienta interfejsów API Google dla języka Python:
pip install --upgrade google-api-python-client
Biblioteki
google-auth-oauthlib
igoogle-auth-httplib2
do autoryzacji użytkowników.pip install --upgrade google-auth-oauthlib google-auth-httplib2
Krok 1. Skonfiguruj projekt i dane logowania
Utwórz lub wybierz projekt w Konsoli interfejsów API. Wykonaj te czynności w konsoli API w projekcie:
W panelu biblioteki wyszukaj YouTube Data API v3. Kliknij informacje o tym interfejsie API i sprawdź, czy jest on włączony w Twoim projekcie.
W panelu danych logowania utwórz 2 dane logowania:
Utwórz klucz interfejsu API. Będziesz używać tego klucza do wykonywania żądań do interfejsu API, które nie wymagają autoryzacji użytkownika. Aby na przykład uzyskać informacje o publicznym kanale YouTube, nie potrzebujesz zgody użytkownika.
Utwórz identyfikator klienta OAuth 2.0 Ustaw typ aplikacji na Inne. W przypadku żądań wymagających autoryzacji użytkownika musisz używać danych logowania OAuth 2.0. Aby na przykład uzyskać informacje o kanale YouTube uwierzytelnionego obecnie, użytkownik musi uzyskać upoważnienie.
Pobierz plik JSON zawierający Twoje dane logowania OAuth 2.0. Plik ma nazwę
client_secret_CLIENTID.json
, gdzieCLIENTID
to identyfikator klienta Twojego projektu.
Krok 2. Skonfiguruj i uruchom próbkę
Użyj widżetu Eksploratora interfejsów API w panelu bocznym, aby pobrać przykładowy kod do pobierania informacji o kanale YouTube dla programistów. To żądanie używa klucza interfejsu API do identyfikowania aplikacji i nie wymaga autoryzacji użytkownika ani żadnych specjalnych uprawnień użytkownika, który uruchomi przykład.
- Otwórz dokumentację metody channels.list interfejsu API.
Na tej stronie w sekcji „Typowe przypadki użycia” znajduje się tabela z opisem kilku typowych sposobów użycia metody. Pierwsza pozycja w tabeli zawiera wyniki dotyczące identyfikatora kanału.
Kliknij symbol kodu pierwszej wizytówki, aby otworzyć i wypełnić eksplorator interfejsów API pełnoekranowego.
Po lewej stronie pełnoekranowego interfejsu API znajdują się następujące informacje:
Pod nagłówkiem Parametry żądania znajduje się lista parametrów obsługiwanych przez daną metodę. Wartości parametrów
part
iid
powinny być ustawione. Wartość parametruid
(UC_x5XG1OV2P6uZZ5FSM9Ttw
) to identyfikator kanału YouTube Google Developers.Pod parametrami znajduje się sekcja Dane logowania. Menu rozwijane w tej sekcji powinno zawierać wartość Klucz interfejsu API. Interfejsy API API domyślnie używają danych logowania do wersji demonstracyjnej, aby ułatwić Ci pierwsze kroki. Aby użyć tego przykładowego kodu, musisz użyć własnego klucza interfejsu API.
Po prawej stronie pełnoekranowego interfejsu API znajdują się karty z przykładowym kodem w różnych językach. Wybierz kartę Python.
Skopiuj przykładowy kod i zapisz go w pliku o nazwie
example.py
.W pobranym przykładzie znajdź ciąg znaków
YOUR_API_KEY
i zastąp go kluczem interfejsu API utworzonym w kroku 1 tego krótkiego wprowadzenia.Uruchom przykład z poziomu wiersza poleceń. W katalogu roboczym uruchom polecenie:
python example.py
Przykład powinien wykonać żądanie i wydrukować odpowiedź do
STDOUT
.
Krok 3. Uruchom autoryzowane żądanie
W tym kroku zmodyfikujesz przykładowy kod, aby zamiast pobierania informacji o kanale YouTube dla programistów Google pobierał informacje o Twoim kanale w YouTube. To żądanie nie wymaga autoryzacji użytkownika.
Wróć do dokumentacji metody channels.list interfejsu API.
W sekcji „Typowe przypadki użycia” kliknij symbol kodu trzeciej listy w tabeli. Twój przypadek użycia to wywołać metodę
list
dla „mojego kanału”.Po lewej stronie pełnoekranowego interfejsu API Eksploratora zobaczysz listę parametrów i sekcję Dane logowania. Są jednak 2 zmiany w tym przykładzie:
W sekcji parametrów zamiast wartości parametru
id
ustaw wartośćmine
natrue
. Dzięki temu serwer API otrzyma informacje o kanale użytkownika, który jest obecnie uwierzytelniony.W sekcji Dane logowania należy wybrać opcję Google OAuth 2.0.
Dodatkowo, jeśli klikniesz link Pokaż zakresy, musisz zaznaczyć zakres https://www.googleapis.com/auth/youtube.readonly.
Podobnie jak w poprzednim przykładzie, wybierz kartę Python, skopiuj przykładowy kod i zapisz go w
example.py
.W kodzie znajdź ciąg znaków
YOUR_CLIENT_SECRET_FILE.json
i zastąp go lokalizacją pliku tajnego klienta pobranego w kroku 1 tego krótkiego wprowadzenia.Uruchom przykład z poziomu wiersza poleceń. W katalogu roboczym uruchom polecenie:
python example.py
-
Skopiuj adres URL z konsoli i otwórz go w przeglądarce.
Jeśli nie zalogowano się na konto Google, pojawi się prośba o zalogowanie. Jeśli zalogujesz się na wiele kont Google, pojawi się prośba o wybranie jednego z nich do autoryzacji.
Kliknij przycisk, aby przyznać aplikacji dostęp do zakresów określonych w przykładowym kodzie.
-
Skopiuj kod autoryzacji z przeglądarki i wklej go w terminalu. Następnie możesz zamknąć kartę przeglądarki na potrzeby procesu uwierzytelniania.
Odpowiedź interfejsu API zostanie ponownie wydrukowana na
STDOUT
.