Logo
Section 1 / 5

播放列表

了解播放列表资源及其如何用于获取或修改 YouTube 播放列表的信息。

导入

播放列表

了解播放列表资源及其如何用于获取或修改 YouTube 播放列表的信息。

YouTube上的播放列表是可连续观看的视频集合。这些播放列表可以由用户手动创建,也可以由YouTube自动生成,用于识别特定频道中的不同类型视频,例如喜欢的视频列表或上传的视频列表。关于这些播放列表的信息存储在 playlist 资源中。

支持的方法

API 支持以下针对 playlist 资源的方法:

  • list:返回与 API 请求参数匹配的播放列表列表。例如,我们可以获取某个 YouTube 频道拥有的所有播放列表。
  • insert:创建一个新的播放列表。
  • update:通过更改标题或描述来修改播放列表。
  • delete:删除一个播放列表。
...
Playlist resource

下面我们通过几个示例详细分析每个方法。

list 方法

我们可以使用 list 方法获取由特定 YouTube 频道拥有的播放列表列表,该频道由 API 调用中的 channelId 参数指定。在下面的例子中,我们将获取 Educative Sessions YouTube 频道拥有的播放列表。

注意: 我们将为此方法获取 snippet 和 contentDetails 部分,并使用 fields 参数对 API 响应进行过滤。

让我们运行以下代码,获取指定频道拥有的播放列表列表响应。

1scopes = ["https://www.googleapis.com/auth/youtube.readonly"] 2 3api_service_name = "youtube" 4api_version = "v3" 5DEVELOPER_KEY = "{{API_KEY}}" 6 7youtube = googleapiclient.discovery.build( 8 api_service_name, api_version, developerKey = DEVELOPER_KEY) 9 10request = youtube.playlists().list( 11 part="snippet,contentDetails,status", 12 channelId="UCT_8FqzTIr2Q1BOtvX_DPPw", # 这是 "Educative Sessions" YouTube 频道的 channelId 13 maxResults={{MAX_RESULTS}}, 14 fields="kind,items(id,snippet(channelId,title,description,channelTitle),contentDetails)" 15) 16 17response = request.execute()

在响应对象中,snippet 对象包含播放列表的 ID、标题、描述和频道标题。contentDetails 对象包含 itemCount,表示该播放列表中视频的数量。

你可以将上述代码中的频道 ID 替换为你自己的频道 ID,以获取你频道上的播放列表列表。

...
YouTube playlists

注意: 以下方法假设你的频道中尚未存在播放列表。

insert 方法

我们可以使用 insert 方法在自己的频道中创建一个新的播放列表。通过在请求体中指定所需的 snippet.title 参数,并可选地设置其他参数如 status 和 snippet.description,即可创建带有指定信息的播放列表。

下面我们通过一个示例来演示此方法。这里我们将创建一个隐私状态为 public 的播放列表,设置其标题和描述,并添加一些标签。

注意: 在下面代码的第 20 行,你可以将默认播放列表标题替换为你想要的名称。

点击“运行”按钮后,终端会提示“请访问以下网址以授权此应用”。复制该网址并粘贴到浏览器标签页中。

系统会要求你授予一些权限以允许 API 请求。最后,复制生成的授权码,并粘贴到终端中提示“输入授权码”的位置。

最终,你将在终端看到 API 的响应对象。

No configuration found for ID: 3b6f4bf11fee0527981ddd938b59a80ffc15329fff0befb3e26f9466e893d280

播放列表创建成功后,你会收到一个包含播放列表信息的 JSON 响应。其中包含播放列表的 ID,以及 snippet 和 status 对象。前往 YouTube 库,滚动到“播放列表”部分,查看新创建的播放列表。

update 方法

顾名思义,update 方法用于修改指定的播放列表。我们需要提供 id 参数来指定播放列表的 ID,以及 snippet.title 来指定播放列表的标题。这两个属性是必需的,其余属性均为可选。

注意: 我们将更新上一节创建的播放列表,但需要播放列表的 ID 才能进行更新。如果需要查找播放列表 ID,请参考本课程的相关步骤。

将播放列表 ID 粘贴到下方代码上方出现的 API 密钥框中的 PLAYLIST_ID 字段。

在下面代码的第 21 行,你可以将默认播放列表标题替换为你想要的名称。

让我们运行代码并按照步骤更新播放列表。

No configuration found for ID: 85dcb295eebd7d7da09e35b1ee4219c68f72b2d54cfd5bff46029adc8fda3f6a

播放列表更新成功后,我们将收到包含更新后信息的 JSON 响应。snippet 对象将显示更新后的播放列表标题和描述。前往 YouTube 库,滚动到“播放列表”部分,查看名称已更新的播放列表。

delete 方法

delete 方法用于删除指定的播放列表。我们使用 id 参数来指定要删除的播放列表的 ID。

注意: 我们将删除上一节中更新过的播放列表。API 密钥框中应包含上一节保存的 PLAYLIST_ID。如果没有,请参考相关步骤,并将播放列表 ID 粘贴到下方。

让我们运行代码并按照步骤删除指定的播放列表。

No configuration found for ID: c465b1978866447f22b20dd38a0a55720fca1cc7afefedbcdb0114510be993f5

当终端收到删除成功的消息后,前往你的频道确认播放列表是否已被删除。

处理 YouTube 视频数据

播放列表项