【问题标题】:"Insufficient permission to access this report." - youtube analytics api“访问此报告的权限不足。” - youtube 分析 API
【发布时间】:2021-04-10 03:46:51
【问题描述】:

我正在尝试运行此报告:



SCOPES = ['https://www.googleapis.com/auth/yt-analytics.readonly','https://www.googleapis.com/auth/yt-analytics.force-ssl','https://www.googleapis.com/auth/yt-analytics-monetary.readonly','https://www.googleapis.com/auth/youtube.readonly']
API_SERVICE_NAME = 'youtubeAnalytics'
API_VERSION = 'v2'
CLIENT_SECRETS_FILE = '/Users/secret.json'

def initialize_analyticsreporting():
    parser = argparse.ArgumentParser(
        formatter_class=argparse.RawDescriptionHelpFormatter,
        parents=[tools.argparser])
    flags = parser.parse_args([])

    flow = client.flow_from_clientsecrets(
        CLIENT_SECRETS_FILE, scope=SCOPES,
        message=tools.message_if_missing(CLIENT_SECRETS_FILE))

    storage = file.Storage('analyticsreporting.dat')
    credentials = storage.get()

    if credentials is None or credentials.invalid:
        credentials = tools.run_flow(flow, storage, flags)
    http = credentials.authorize(http=httplib2.Http())
    analytics = build('youtubeAnalytics', 'v2', http=http)

    return analytics


def execute_api_request(client_library_function, **kwargs):
  response = client_library_function(
    **kwargs
  ).execute()

  print(response)

youtubeAnalytics = initialize_analyticsreporting()
execute_api_request(
    youtubeAnalytics.reports().query,
    ids='channel==MINE',
    startDate='2020-05-01',
    endDate='2020-12-31',
    dimensions='video',
    metrics='views,likes,dislikes,shares,adImpressions',
    maxResults=200,
    sort='-views'
)

但我明白了:

“访问此报告的权限不足。”

我已通过 OAuth 进行身份验证,我是内容所有者,但我无法获得 adImpressions metric to work

我的最终目标是使用 youtube 分析 API 简单地获得视频的印象。我已经看到了关于这个主题的多个主题,但都没有回答这个问题。

【问题讨论】:

  • 您是否更改了范围而不是重新验证?我还会仔细检查您正在使用的用户。听起来你没有访问权限。
  • 我确实添加了更多范围并且没有未经身份验证,我会尝试的。用户是拥有 youtube 频道的帐户的所有者。
  • @DaImTo,重新认证有帮助,但我不得不删除 force-ssl,谢谢你的回答。

标签: google-api youtube-api youtube-analytics-api


【解决方案1】:

正如 cmets 中提到的DalmTo

添加其他作用域后:

SCOPES = ['https://www.googleapis.com/auth/yt-analytics.readonly']

SCOPES = ['https://www.googleapis.com/auth/yt-analytics.readonly',
          'https://www.googleapis.com/auth/yt-analytics-monetary.readonly',
          'https://www.googleapis.com/auth/youtube.readonly']

然后重新验证 - 删除 .dat 文件,然后创建一个新文件,现在我可以接收所需的指标。

【讨论】:

    猜你喜欢
    • 2017-06-21
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    • 2022-08-19
    • 2014-07-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多