【问题标题】:Unable to insert video into the watch later (WL) playlist无法将视频插入稍后观看 (WL) 播放列表
【发布时间】:2021-05-15 07:05:59
【问题描述】:

我有一个 Google Apps 脚本已经运行了一段时间没有错误。

它从我的 RSS 提供商那里获取新的 RSS 提要项目,从 YoutTbe 获取有关视频的一些基本信息,然后根据这些信息将视频添加到某个播放列表中。

从几天前开始,虽然其他播放列表工作正常,但将任何视频添加到 WL(稍后观看)播放列表会导致以下错误:

GoogleJsonResponseException:对 youtube.playlistItems.insert 的 API 调用失败并出现错误:API 不支持将视频插入指定播放列表的功能。

这是我发送的请求(同样,为我创建的另外两个播放列表工作):

{
    snippet: {
        playlistId: 'WL',
        resourceId: {
            videoId: '<videoId>',
            kind: 'youtube#video'
        }
    }
}

它的使用方式是这样的:

YouTube.PlaylistItems.insert(resource, "snippet");

此外,我确实在脚本开头记录了 WL 播放列表的内容,并且播放列表项作为空列表返回(尽管列表中包含视频)。据我所知,这两个问题是同时开始的。

【问题讨论】:

    标签: google-apps-script youtube-api youtube-data-api


    【解决方案1】:

    根据 YouTube 数据 API 的官方修订历史记录中的 entry from September 9, 2020,不推荐使用稍后观看播放列表以将其与 PlaylistItems.insert API 端点一起使用:

    [...] playlistItems.insert 方法和 playlistItems.delete 方法对这些播放列表的支持现在也已完全弃用 [...]

    entry from January 28, 2021 声明:

    [...] 虽然确实无法通过 API 访问用户的观看历史记录和稍后观看列表 [...]

    因此,您必须承认您的 PlaylistItems.insert 端点用例不再有效。

    这很不幸,但这是一个(记录在案的)事实。

    【讨论】:

    • 经典谷歌,排除单个用例并且在 API 文档本身中没有关于它的注释,但要求用户查看修订历史记录。如果您转到 playlistItems.list 并在错误列表中看到(现已弃用)错误,您只知道稍后观看被排除在 API 之外,太好了。
    • 我要补充一点——尽管它有时被证明是有用的——但修订历史绝不是(那是不幸的!)健全和完整的。也就是说,虽然是官方的,但并不完全权威。处理此 API 时,必须依赖多种信息来源。 (另一个这样的来源:谷歌的own issue tracker site。)
    • 我可以看出该评论背后有一些战争故事。保持警惕
    • 试图开玩笑的评论,一切都很好
    • 我的意思是我写的;这是基于我对这个 API 的经验。只是对你的建议有点困惑。如果作为一名程序员,倾向于将修订历史视为一种(公开的)ChangeLog,那么他/她将(再次,不幸地)非常失望。我并不是说该页面本身没有任何优点。只是它不是 public ChangeLog
    猜你喜欢
    • 2017-07-19
    • 2017-05-18
    • 2014-03-25
    • 1970-01-01
    • 1970-01-01
    • 2015-04-23
    • 2018-04-09
    • 2016-07-14
    • 2013-03-31
    相关资源
    最近更新 更多