根据 Youtube Analytics API 文档 (https://developers.google.com/youtube/analytics/v1/available_reports),看起来您应该能够使用"视频"维度检索特定视频的指标。 我能够成功获取所有其他指标 - 要么指定"天"和"国家"等维度,要么根本不提供维度。
但是,当我将尺寸值更改为"video"时,我收到一个 400 错误代码,其中包含消息"不支持查询。查看文档以了解支持的查询。 这是一个频道报告 - 不是内容所有者报告 - 但根据文档,这应该是一个有效的报告请求。 我什至尝试使用许多额外的参数(如启动索引、最大结果和排序)来限制结果集。
工程
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views"})
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "day"})
不起作用 - 返回 400 错误
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "video"})
client.execute(:api_method => "youtubeAnalytics.reports.query",
:parameters => {'ids' => "channel==##USER_ID##",
"start-date" => "2012-01-01", "end-date" => "2012-02-01",
"metrics" => "views",
"dimensions" => "video",
"start-index" => 1,
"max-results" => 5,
"sort" => "views"})
有没有人能够成功请求视频级别详细信息的频道报告?
因此,以下内容确实有效:
channel==USER_ID
start-date=YYYY-MM-DD
end-date=YYYY-MM-DD
metrics=views
dimensions=video
max-results=10
sort=-views
重要的是,如果要运行dimensions=video
报表,则需要按降序视图进行排序,并且最多只能检索 10 个结果。这在第二个表中进行了解释,网址为
https://developers.google.com/youtube/analytics/v1/available_reports#Channel_Reports
他们的文档中提到的 10 个最大结果(按视图减少排序)显然是 Analytics 数据的后端源强加的人为限制,但这就是 API 之前可以支持的全部内容。谷歌刚刚更新了它,因此您最多可以获得200个视频结果 - https://developers.google.com/youtube/analytics/revision_history
如果您想获取给定帐号(而不仅仅是观看次数最多的 10 个视频)的 Analytics(分析)数据,则需要将维度设置为视频以外的其他维度,然后生成报表,其中filter=
设置为您感兴趣的帐号中的每个视频 ID。同样,这种情况将来可能会改变,但截至目前,Analytics API 不适合在单个 API 调用中为帐户中的每个视频获取大量数据转储。
请注意,YouTube API 最近于 2014 年 8 月进行了更改,现在允许每次 API 调用提取最多 200 个视频的指标。
查看 2014 年 8 月 28 日的 https://developers.google.com/youtube/analytics/revision_history