В этом кратком руководстве объясняется, как настроить простое приложение командной строки Python, которое отправляет запросы к API данных YouTube. В этом кратком руководстве объясняется, как выполнить два запроса API:
- Вы будете использовать ключ API, идентифицирующий ваше приложение, для получения информации о канале GoogleDevelopers на YouTube.
- Вы будете использовать идентификатор клиента OAuth 2.0 для отправки авторизованного запроса, который получает информацию о вашем собственном канале YouTube.
Предварительные условия
Чтобы запустить это краткое руководство, вам понадобится:
Питон 2.7 или Питон 3.5+
Инструмент управления пакетами
pip
Клиентская библиотека API Google для Python:
pip install --upgrade google-api-python-client
Библиотеки
google-auth-oauthlib
иgoogle-auth-httplib2
для авторизации пользователей.pip install --upgrade google-auth-oauthlib google-auth-httplib2
Шаг 1. Настройте свой проект и учетные данные.
Создайте или выберите проект в консоли API . Выполните следующие задачи в консоли API для вашего проекта:
На панели библиотеки найдите API данных YouTube v3. Щелкните список этого API и убедитесь, что API включен для вашего проекта.
На панели учетных данных создайте два учетных данных:
Создайте ключ API. Вы будете использовать ключ API для выполнения запросов API, не требующих авторизации пользователя. Например, вам не нужна авторизация пользователя для получения информации об общедоступном канале YouTube.
Создайте идентификатор клиента OAuth 2.0. Установите тип приложения « Другое» . Вам необходимо использовать учетные данные OAuth 2.0 для запросов, требующих авторизации пользователя. Например, вам необходима авторизация пользователя для получения информации о канале YouTube текущего пользователя, прошедшего проверку подлинности.
Загрузите файл JSON, содержащий ваши учетные данные OAuth 2.0. Файл имеет имя типа
client_secret_CLIENTID.json
, гдеCLIENTID
— это идентификатор клиента вашего проекта.
Шаг 2. Настройте и запустите образец
Используйте виджет «Проводник API» на боковой панели, чтобы получить пример кода для получения информации о канале GoogleDevelopers на YouTube. В этом запросе используется ключ API для идентификации вашего приложения, и он не требует авторизации пользователя или каких-либо специальных разрешений от пользователя, запускающего образец.
- Откройте документацию по методу Channels.list API.
На этой странице раздел «Распространенные варианты использования» содержит таблицу, в которой объясняется несколько распространенных способов использования этого метода. Первый список в таблице предназначен для вывода результатов по идентификатору канала.
Щелкните символ кода для первого списка, чтобы открыть и заполнить полноэкранный проводник API.
В левой части полноэкранного проводника API отображается следующее:
Под заголовком Параметры запроса находится список параметров, которые поддерживает метод. Должны быть установлены значения параметров
part
иid
. Значение параметраid
,UC_x5XG1OV2P6uZZ5FSM9Ttw
, является идентификатором канала GoogleDevelopers на YouTube.Под параметрами есть раздел Credentials . В раскрывающемся меню в этом разделе должно отображаться значение API-ключа . API-интерфейс по умолчанию использует демонстрационные учетные данные, чтобы упростить начало работы. Но для локального запуска примера вы будете использовать свой собственный ключ API.
В правой части полноэкранного проводника API отображаются вкладки с примерами кода на разных языках. Выберите вкладку Python .
Скопируйте пример кода и сохраните его в файле с именем
example.py
.В скачанном образце найдите строку
YOUR_API_KEY
и замените ее ключом API, который вы создали на шаге 1 этого краткого руководства.Запустите образец из командной строки. В рабочем каталоге запустите:
python example.py
Образец должен выполнить запрос и вывести ответ на
STDOUT
.
Шаг 3. Запустите авторизованный запрос
На этом этапе вы измените пример кода так, чтобы вместо получения информации о канале GoogleDevelopers на YouTube он получал информацию о вашем канале YouTube. Этот запрос требует авторизации пользователя.
Вернитесь к документации по методу Channels.list API.
В разделе «Распространенные варианты использования» щелкните символ кода третьего списка в таблице. Этот вариант использования — вызов метода
list
для «моего канала».Опять же, в левой части полноэкранного проводника API вы увидите список параметров, за которым следует раздел «Учетные данные» . Однако в примере, где вы получили информацию о канале GoogleDevelopers, есть два изменения:
В разделе параметров вместо устанавливаемого значения параметра
id
для параметраmine
должно быть установлено значениеtrue
. Это дает указание серверу API получить информацию о канале текущего аутентифицированного пользователя.В разделе «Учетные данные» в раскрывающемся меню следует выбрать опцию Google OAuth 2.0 .
Кроме того, если щелкнуть ссылку «Показать области» , должна быть проверена область https://www.googleapis.com/auth/youtube.readonly .
Как и в предыдущем примере, выберите вкладку Python , скопируйте пример кода и сохраните его в
example.py
.В коде найдите строку
YOUR_CLIENT_SECRET_FILE.json
и замените ее расположением секретного файла клиента, который вы скачали на шаге 1 этого краткого руководства.Запустите образец из командной строки. В рабочем каталоге запустите:
python example.py
Скопируйте URL-адрес из консоли и откройте его в браузере.
Если вы еще не вошли в свою учетную запись Google, вам будет предложено войти в систему. Если вы вошли в несколько учетных записей Google, вам будет предложено выбрать одну учетную запись, которая будет использоваться для авторизации.
Нажмите кнопку, чтобы предоставить приложению доступ к областям, указанным в примере кода.
Скопируйте код авторизации из браузера и вставьте его в свой терминал. Затем вы можете закрыть вкладку браузера, используемую для процесса аутентификации.
Ответ API снова должен быть выведен на
STDOUT
.