视频
了解视频资源及其如何用于获取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 资源是一个非常实用的功能模块,能够为您的项目增添多种功能。在后续课程中,我们将学习如何将其集成到真实的应用程序中。