跟踪YouTube观看记录

时间:2017-10-28 08:21:55

标签: javascript youtube youtube-api

为了自动跟踪我的时间,我想获取我的观看历史记录(最佳情况:每天一次,最差情况每分钟一次),并将其添加为Google日历活动。

虽然我设法添加Google日历活动,但我无法获取YouTube观看记录。

所以我想知道v3 API是否提供类似的东西,或者是否有某种技巧来创建播放列表?

1 个答案:

答案 0 :(得分:13)

很遗憾,YouTube API小组似乎已将此功能置于睡眠状态。

2016年8月11日,they announced that they would be deprecating the APIs for watch later and watch history playlists

  

频道资源的contentDetails.relatedPlaylists.watchHistorycontentDetails.relatedPlaylists.watchLater属性仅对授权用户检索有关用户自己频道的数据可见。 2016年9月12日之后,contentDetails.relatedPlaylists.watchHistory将返回HL的值,contentDetails.relatedPlaylists.watchLater属性将为所有渠道返回WL的值。

     

请求检索频道观看历史记录的播放列表详细信息(playlists.list)或观看以后的播放列表将在2016年9月12日之后返回一个空列表。请求检索任一播放列表项目(playlistItems.list)那些播放列表也会在那之后返回一个空列表。这适用于新值HLWL,以及您的API客户端可能已存储的任何观看记录或观看以后的播放列表ID。

2016年9月15日,they announced they had removed this information from the APIs :(强调我的)

  

频道资源的contentDetails.relatedPlaylists.watchHistorycontentDetails.relatedPlaylists.watchLater属性现在分别包含所有频道的HLWL值。

     

要清楚,这些属性仅对授权用户检索有关用户自己频道的数据可见。即使授权用户检索有关用户自己频道的数据,属性也始终包含值HLWL。因此,无法通过API检索观看记录和观看以后的播放列表ID。

     

此外,检索频道观看历史记录的播放列表详情(playlists.list)或播放列表项目(playlistItems.list)或观看以后播放列表的请求现在返回空列表。对于新值HLWL,以及您的API客户端可能已存储的任何观看记录或观看以后的播放列表ID,此行为均属实。

2016年11月2日,他们甚至announced new errors indicating that such contents cannot be retrieved from the API

  

playlistItems.list方法返回此错误,表示请求尝试检索“观看记录”播放列表项,但无法使用API​​检索这些项。

另一方面,有overview pagemigration from v2 guide等文档仍然表明通过播放列表API获取ID的旧方法。我个人认为这些文档已经过时了。

如果我在你的位置,我只是按照它来处理我的要求,避免这种情况。你可以回到v2或做一些其他的事情,比如抓取网站,但如果YouTube API明确禁止第三方使用这些内容,那么你可能会遇到法律问题。