如何使用 youtube api 一次更新多个播放列表项的位置?

Posted

技术标签:

【中文标题】如何使用 youtube api 一次更新多个播放列表项的位置?【英文标题】:how to update multiple playlist items position at once using youtube api? 【发布时间】:2021-12-04 05:47:07 【问题描述】:

我喜欢按照自己的标准对 youtube 播放列表项进行排序和更新,但问题是我无法弄清楚如何一次更新整个播放列表项的位置。

作为请求体所需的数据格式如下:

    body = 
      "snippet": 
        "playlistId": "PLyR_eqaLz2hmBPeDYO3pyXaqexCIV-PGp",
        "resourceId": 
            "kind": "youtube#video",
            "videoId": "fc6ZQX46Kz8"
        ,
        "position": 3
      ,
      "id": "UEx5Ul9lcWFMejJobUJQZURZTzNweVhhcWV4Q0lWLVBHcC41MjE1MkI0OTQ2QzJGNzNG"
    

这种格式的问题是我只能在每个请求中请求更新单个视频。单个请求花费大约 50 个单位的配额,而且速度也很慢。因此,不适合将其应用于相当大的播放列表。

谁能帮助我如何在一个正文中请求多个项目,或者如果有人已经在一个正文请求中更新了多个项目,请分享您的代码?无论是用于 youtube API 还是任何其他应用程序。

谢谢

【问题讨论】:

【参考方案1】:

如果您查看文档,您会注意到PlaylistItems: update

修改播放列表项。例如,您可以更新项目在播放列表中的位置。

它更新单个播放列表项。最多只能更新一个。

大多数 Google api 都支持批处理,但这对您没有帮助,因为批处理仍然使用与发送单数请求相同数量的配额。我找不到任何说明 YouTube Data api 甚至支持批处理的文档。

您最好的选择是继续您现在正在做的事情,并在需要时申请额外的配额。

【讨论】:

【参考方案2】:

无法一次更新播放列表中的多个项目。如果您注意到,它的行为遵循插入排序算法,其中插入一个项目会导致所有其他项目移动,具体取决于该项目将被插入的位置。同样的行为也适用于更新和删除。

例如,如果您在第一个位置插入一个项目,则播放列表中的所有项目都会向后移动。

【讨论】:

以上是关于如何使用 youtube api 一次更新多个播放列表项的位置?的主要内容,如果未能解决你的问题,请参考以下文章

在单个页面上嵌入多个 YouTube 播放列表供稿? jQuery/YouTube API v3

Android youtube API 在一个主要活动中播放两个或多个 Youtube 播放器

YouTube Api 播放列表视频限制为 50 个。如何获取更多?

我想要 youtube 播放的总量

Youtube Data API v3 PlaylistItems 更新不适用于“稍后观看”播放列表

Youtube API v3,视频播放时参数无效问题