使用 R 连接到 Youtube Analytics API
Connecting to Youtube Analytics API using R
我正在尝试使用 R 从 Youtube Analytics API 中提取数据,但遇到了困难。我收到状态 403 错误。我可以确认:
- 我试过注销所有帐户、重新启动、重新验证然后登录到 1 个帐户,但没有成功
- 我试过只使用 https://www.googleapis.com/auth/youtube.readonly 范围(这应该是正确的)并且所有 youtube 分析范围都在应用程序内授权(每个都有自己的凭据密钥),它没有用。
- 我试过从不同的浏览器进行身份验证,但没有成功
- 我可以确认调用来自 https://developers.google.com/apis-explorer/#p/youtubeAnalytics/v2/youtubeAnalytics.reports.query。
更新
我找到了解决方案并将代码更新为现在可用的代码
scopes<- c('https://www.googleapis.com/auth/youtube.readonly')
endpoint<- oauth_endpoints('google')
youtubeapp<- oauth_app(appname='Youtube Analytics API',
key=client_id,
secret=client_secret)
youtube_token<- oauth2.0_token(
endpoint= oauth_endpoints('google'),
app = youtubeapp,
scope = scopes)
raw_data<- GET(paste("https://youtubeanalytics.googleapis.com/v2/reports?dimensions=",dimensions,"&endDate=",enddate,"&ids=",ids,"&metrics=",metrics,"&startDate=",startdate,sep=""),
config=youtube_token,content_type('application/json'))
content(raw_data, as= 'text')
我发现访问权限是由 Youtube 决定的(而不是 API IAM),因此即使我的个人电子邮件是品牌帐户的所有者并且 API 我仍然需要进行身份验证使用品牌帐户拨打电话,否则将无法正常工作(个人电子邮件收到 403 错误)。我尝试将我的 Youtube 频道从品牌频道切换到个人频道,然后我的个人电子邮件就可以使用了。不过品牌账号下需要,所以切换回来了
无论如何我都会留下这段代码,因为我发现缺少使用 R 的好例子,我希望你觉得这很有用。
我正在尝试使用 R 从 Youtube Analytics API 中提取数据,但遇到了困难。我收到状态 403 错误。我可以确认:
- 我试过注销所有帐户、重新启动、重新验证然后登录到 1 个帐户,但没有成功
- 我试过只使用 https://www.googleapis.com/auth/youtube.readonly 范围(这应该是正确的)并且所有 youtube 分析范围都在应用程序内授权(每个都有自己的凭据密钥),它没有用。
- 我试过从不同的浏览器进行身份验证,但没有成功
- 我可以确认调用来自 https://developers.google.com/apis-explorer/#p/youtubeAnalytics/v2/youtubeAnalytics.reports.query。
更新 我找到了解决方案并将代码更新为现在可用的代码
scopes<- c('https://www.googleapis.com/auth/youtube.readonly')
endpoint<- oauth_endpoints('google')
youtubeapp<- oauth_app(appname='Youtube Analytics API',
key=client_id,
secret=client_secret)
youtube_token<- oauth2.0_token(
endpoint= oauth_endpoints('google'),
app = youtubeapp,
scope = scopes)
raw_data<- GET(paste("https://youtubeanalytics.googleapis.com/v2/reports?dimensions=",dimensions,"&endDate=",enddate,"&ids=",ids,"&metrics=",metrics,"&startDate=",startdate,sep=""),
config=youtube_token,content_type('application/json'))
content(raw_data, as= 'text')
我发现访问权限是由 Youtube 决定的(而不是 API IAM),因此即使我的个人电子邮件是品牌帐户的所有者并且 API 我仍然需要进行身份验证使用品牌帐户拨打电话,否则将无法正常工作(个人电子邮件收到 403 错误)。我尝试将我的 Youtube 频道从品牌频道切换到个人频道,然后我的个人电子邮件就可以使用了。不过品牌账号下需要,所以切换回来了
无论如何我都会留下这段代码,因为我发现缺少使用 R 的好例子,我希望你觉得这很有用。