Krótkie wprowadzenie do Pythona

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:

  1. Aby pobrać informacje o kanale Google Developers w YouTube, będziesz używać klucza interfejsu API identyfikującego aplikację.
  2. 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 i google-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:

  1. W panelu biblioteki wyszukaj YouTube Data API v3. Kliknij informacje o tym interfejsie API i sprawdź, czy jest on włączony w Twoim projekcie.

  2. W panelu danych logowania utwórz 2 dane logowania:

    1. 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.

    2. 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, gdzie CLIENTID 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.

  1. Otwórz dokumentację metody channels.list interfejsu API.
  2. 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.

    Obraz pokazujący lokalizację linku z symbolem kodu w tabeli, który zawiera listę przypadków użycia w dokumentacji kanału. Tekst alternatywny obrazu identyfikuje ten obraz jako symbol kodu i określa przypadek użycia powiązany z tym linkiem.

  3. Po lewej stronie pełnoekranowego interfejsu API znajdują się następujące informacje:

    1. Pod nagłówkiem Parametry żądania znajduje się lista parametrów obsługiwanych przez daną metodę. Wartości parametrów part i id powinny być ustawione. Wartość parametru id (UC_x5XG1OV2P6uZZ5FSM9Ttw) to identyfikator kanału YouTube Google Developers.

    2. 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.

      Obraz przedstawiający „Dane logowania” w pełnoekranowym Eksploratorze interfejsów API oraz menu z opcją „Klucz interfejsu API”.

  4. Po prawej stronie pełnoekranowego interfejsu API znajdują się karty z przykładowym kodem w różnych językach. Wybierz kartę Python.

  5. Skopiuj przykładowy kod i zapisz go w pliku o nazwie example.py.

  6. 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.

  7. Uruchom przykład z poziomu wiersza poleceń. W katalogu roboczym uruchom polecenie:

    python example.py

  8. 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.

  1. Wróć do dokumentacji metody channels.list interfejsu API.

  2. 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”.

  3. Po lewej stronie pełnoekranowego interfejsu API Eksploratora zobaczysz listę parametrów i sekcję Dane logowania. Są jednak 2 zmiany w tym przykładzie:

    1. W sekcji parametrów zamiast wartości parametru id ustaw wartość mine na true. Dzięki temu serwer API otrzyma informacje o kanale użytkownika, który jest obecnie uwierzytelniony.

    2. 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.

      Obraz pokazujący zakresy w eksploratorze interfejsów API pełnoekranowego oraz możliwość użycia danych logowania „Google OAuth 2.0”.

  4. 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.

  5. Uruchom przykład z poziomu wiersza poleceń. W katalogu roboczym uruchom polecenie:

    python example.py

  6. 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.

  7. Kliknij przycisk, aby przyznać aplikacji dostęp do zakresów określonych w przykładowym kodzie.

  8. 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.

Więcej informacji