Анализ исследования данных Что мы знаем о каналах YouTube (Часть 2)

Расшифровка данных исследования новые открытия о каналах YouTube (Часть 2)

Получение статистических показателей с использованием Pandas и YouTube Data API

Картинка от Souvik Banerjee, Unsplash

В первой части истории я собрал статистические данные о примерно 3000 YouTube-каналах и получил несколько интересных идей. В этой части я углублюсь немного больше, с уровня общего “канала” до отдельного уровня “видео”. Я покажу, как собирать данные о YouTube-видео и какие показатели мы можем получить.

Методология

Чтобы собрать данные о YouTube-видео, нам нужно выполнить несколько шагов:

  • Получить учетные данные для YouTube Data API. Он бесплатный, а лимит API в 10 000 запросов в день достаточен для нашей задачи.
  • Найти несколько YouTube-каналов, которые мы хотим проанализировать.
  • Написать некоторый код на Python для получения последних видео и их статистики для выбранного канала. Аналитика YouTube доступна только владельцам каналов, и мы можем получить только данные на текущий момент. Но мы можем запустить код некоторое время. В моем случае я собрал данные в течение трех недель с использованием Apache Airflow и Raspberry Pi.
  • Выполнить анализ данных. Для этого я буду использовать Pandas, Matplotlib и Seaborn.

Получение учетных данных API YouTube и настройка Apache AirFlow были описаны в моих предыдущих статьях, и я рекомендую читателям остановиться на этой статье и прочитать эту часть первой:

Анализ исходных данных: Что мы знаем о YouTube-каналах

Получение статистических показателей с использованием Pandas и YouTube Data API

towardsdatascience.com

Итак, давайте начнем.

1. Получение данных

Чтобы получить информацию о YouTube-видео, я буду использовать библиотеку python-youtube. Удивительно, но нет готового метода для получения списка видео с определенного канала, и нам нужно реализовать это самостоятельно.

Сначала нам нужно вызвать метод get_channel_info, который, как следует из его названия, вернет нам основную информацию о канале.

from pyyoutube import Apidef get_channel_info(api: Api, channel_id: str)…