Logo
Section 1 / 4

视频

了解视频资源及其如何用于获取YouTube视频的相关信息。

导入

视频

了解视频资源及其如何用于获取YouTube视频的相关信息。

video 资源代表一个 YouTube 视频,可用于获取视频的统计数据。这些统计信息包括观看次数、点赞数、点踩数或视频的评论数量。

支持的方法

API 对 video 资源支持以下一些方法:

  • list:返回与 API 调用请求参数匹配的视频列表。
  • insert:将视频上传至 YouTube 频道,并可选择设置视频的元数据。
  • delete:删除一个 YouTube 视频。
  • rate:为视频添加或移除点赞或点踩评分。

注意:该资源还支持 getRating 和 update 等方法。在本课程中,我们将重点介绍上述方法。

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

list 方法

该方法返回与 API 调用请求参数匹配的视频列表。可以通过 id 参数指定 YouTube 视频的 ID 来获取视频信息,也可以获取授权用户点赞或点踩过的视频列表。

下面通过几个示例来演示该方法的实际应用。

示例 1:使用视频 ID 获取视频信息

在此示例中,我们将从一个 YouTube 频道获取一个视频的信息。要获取相关视频信息,需要提供视频的 ID。

注意:您可以在课程前面讲解如何查找视频 ID 的部分中查看相关步骤。

您也可以在下方代码中替换 id 参数。点击“编辑”按钮,在 VIDEO_ID 字段中输入新的视频 ID,然后点击“保存”。

注意:默认情况下,VIDEO_ID 使用的是示例频道的一个视频 ID。

运行以下代码以获取视频的相关信息响应:

1api_service_name = "youtube" 2api_version = "v3" 3DEVELOPER_KEY = "{{API_KEY}}" 4 5youtube = googleapiclient.discovery.build( 6 api_service_name, api_version, developerKey=DEVELOPER_KEY) 7 8request = youtube.videos().list( 9 part="snippet,statistics", 10 id="{{VIDEO_ID}}" 11) 12 13response = request.execute()

示例 2:获取已授权用户的点赞视频列表

此示例用于获取授权用户点赞过的视频列表。

注意:我们将使用 myRating 参数并将其值设为 like,表示仅获取用户点赞的视频列表。

请记得我们之前创建了 OAuth 2.0 客户端 ID,并保存了 client_secret_CLIENTID.json 文件的 JSON 对象。本示例将使用该对象。如果您尚未保存,请在下方代码框上方的 CLIENT_SECRET 字段中完成保存。

运行代码后,终端会提示:“请访问以下网址以授权此应用程序。” 复制该网址并在浏览器中打开。

系统将要求您授予 API 请求所需的权限。完成后,复制生成的授权码,并粘贴到终端中提示“请输入授权码”的位置。

最终,您将在终端中看到 API 的响应结果。

No configuration found for ID: 0ee2f3b0728c4baf2bd99c994abb399eed78767a2578badfa2b0c0a26ea23e74

insert 方法

该方法用于将视频上传至 YouTube,并可选择设置视频的元数据。上传视频需要提供一个视频文件。所有属性均为可选,但 snippet.title 和 snippet.categoryId 是必填项。

注意:本课程将使用课程资源中已提供的示例视频。在下方代码的第 29 行可以看到视频路径。

下面我们通过一个示例来演示该方法的实际应用。在此示例中,我们将上传一个隐私状态为 private 的视频(见第 25 行)。

No configuration found for ID: 69fce55e5f69ef583cdfb6baee938a33792a405985c5960187225a21a54975fe

视频上传成功后,系统将返回包含视频信息的 JSON 响应。要查看上传的私密视频,请进入您的频道,点击右上角的“管理视频”按钮。在下一页中即可看到已上传的视频。

delete 方法

顾名思义,delete 方法用于删除视频。通过 id 参数指定要删除的视频 ID。只有授权用户账户的视频才能被删除。

下面我们通过一个示例来演示该方法的使用。

注意:要使此方法生效,您必须拥有一个至少包含一个可删除视频的 YouTube 频道。

在上方代码框中的 API 密钥区域,将您要删除的视频的 ID 填入 USER_VIDEO_ID 字段。运行代码,并按照提示完成删除操作。

No configuration found for ID: a2dcad71baa671fea328329e1503bbce7db8a0081fafe38b82bab17991de54c1

当终端收到删除成功的消息后,建议您前往频道并点击右上角的“管理视频”按钮,确认视频是否已被成功删除。

rate 方法

rate 方法用于为视频添加点赞或点踩评分,或移除已有评分。我们通过 id 参数指定要评分的视频 ID,通过 rating 参数定义评分类型:like 或 dislike。

让我们通过一个示例来演示该方法的使用。此处我们将对 Educative Sessions 频道的一段视频进行评分。由于只有登录用户才能评分,因此需要先授权 API 请求。

运行下方代码,并按提示完成评分流程。

注意:评分类型(点赞或点踩)由下方小工具中 RATING 键的值决定。

No configuration found for ID: 7ffefc66105320f241088a5479f91a5eea4aea240ebfb4e9532a33c2ecc00fda

点赞的视频会被存储在 播放列表 中。请前往该播放列表查看您点赞的视频。

注意:请确保您使用的是当初点赞视频时所登录的账号。

video 资源是一个非常实用的功能模块,能够为您的项目增添多种功能。在后续课程中,我们将学习如何将其集成到真实的应用程序中。

开始使用资源

评论线程