Youtube Analytics API - Как получить всю статистику видео для данного канала и даты? - PullRequest
1 голос
/ 25 марта 2020

Мы создали собственную базу отчетов для нашего канала Youtube, чтобы измерить производительность канала и видео.

Чтобы поддержать это, мы реализовали работу ETL по извлечению с использованием YouTube Analytics API и использовали приведенный ниже код python для получения данных.

def GetAnalyticsData(extractDate,accessToken, channelId):
    channelId = 'channel%3D%3D{0}'.format(channelId)
    headers = {'Authorization': 'Bearer {}'.format(accessToken),
               'accept': 'application/json'}
    url = 'https://youtubeanalytics.googleapis.com/v2/reports?dimensions={dimensions}&endDate={enddate}&ids={ids}&maxResults={maxresults}&metrics={metrics}&startDate={startdate}&alt={alt}&sort={sort}'.format(
        dimensions='video',
        ids=channelId,
        enddate= extractDate,
        startdate=extractDate,
        metrics = 'views%2Ccomments%2Clikes%2Cdislikes%2Cshares%2CestimatedMinutesWatched%2CsubscribersGained%2CsubscribersLost%2CannotationClicks%2CannotationClickThroughRate%2CaverageViewDuration%2CaverageViewPercentage%2CannotationCloseRate%2CannotationImpressions%2CannotationClickableImpressions%2CannotationClosableImpressions%2CannotationCloses',
        maxresults = 200,
        alt ='json',
        sort='-views' 
    )
    return requests.get(url,headers=headers)

Мы используем этот API каждый день и получаем все видео метри c и отсортировано по просмотрам в порядке убывания.

Это частично решило нашу проблему, и он возвращает только 200 видео, если мы указываем maxResults более 200, он возвращает код ошибки 400.

Задача состоит в том, как получить все видео на заданную дату и данный канал?

Заранее спасибо. С уважением, Гуна

...