首页 > 解决方案 > YouTube 报告 API 报告均为空白

问题描述

我为 YouTube 频道创建了一组 YouTube 报告工作。这些作业每天都按计划创建和运行。但是,当我去下载作业时,它们都是空白的。

这就是我使用 API 进行身份验证的方式:

def authenticate_from_credentials(API_SERVICE_NAME, API_VERSION):
        youtube_client_id = os.environ['youtube_client_id']
        youtube_client_secret = os.environ['youtube_client_secret']
        youtube_refresh_token = os.environ['youtube_refresh_token']
        credentials = client.OAuth2Credentials(
            access_token=None,
            client_id=youtube_client_id,
            client_secret=youtube_client_secret,
            refresh_token=youtube_refresh_token,
            token_expiry=None,
            token_uri='https://oauth2.googleapis.com/token',
            user_agent=None,
            revoke_uri=None
        )
        youtube_reporting = build(API_SERVICE_NAME, API_VERSION, credentials=credentials)
        return youtube_reporting

这是我用来创建作业的方法:

# Call the YouTube Reporting API's jobs.create method to create a job.
def create_reporting_job(youtube_reporting, report_type_id, name):
  # Provide keyword arguments that have values as request parameters.
    reporting_job = youtube_reporting.jobs().create(
        body=dict(
          reportTypeId=report_type_id,
          name=name
        ),
      ).execute()
    print ('Reporting job "%s" created for reporting type "%s" at "%s"'
           % (reporting_job['name'], reporting_job['reportTypeId'],
              reporting_job['createTime']))

我像这样进行身份验证:

youtube_reporting=authenticate_from_credentials('youtubereporting','v1')

我将创建一个这样的工作:

create_reporting_job(youtube_reporting,"channel_combined_a2","Channel Combined a2")

我不确定这里有什么问题。该频道确实有内容和订阅者,因此报告不应为空。我认为凭据可能存在问题,或者可能与报告相关联的频道错误,因为开发人员的 Google 帐户与内容所有者不同。但是我检查了与我正在使用的 Oauth 凭据关联的通道,它是正确的通道。

为什么我的报告可能是空的,我该如何解决这个问题?

标签: youtube-apiyoutube-analytics-api

解决方案


我遇到了同样的问题,问题是您需要等待几个小时才能在后端生成报告,此时重新查询报告将显示结果。

在第 3 步下的https://developers.google.com/youtube/reporting/v1/reports上有一个关于此延迟的微妙提及:

对jobs.create 方法的API 响应包含一个Job 资源,该资源指定唯一标识该作业的ID。您可以在作业创建后 48 小时内开始检索报告,第一个可用报告将是您安排作业当天的报告。

这很令人困惑。


推荐阅读