Search

搜索结果包含与 API 请求中指定的搜索参数匹配的 YouTube 视频、频道或播放列表的相关信息。虽然搜索结果指向可唯一标识的资源(例如视频),但它自身没有持久性数据。

方法

该 API 支持使用以下搜索方法:

list
返回与 API 请求中指定的查询参数匹配的搜索结果集合。默认情况下,搜索结果集会标识匹配的 videochannelplaylist 资源,但您也可以将查询配置为仅检索特定类型的资源。立即试用

资源表示法

以下 JSON 结构显示了搜索结果的格式:

{
  "kind": "youtube#searchResult",
  "etag": etag,
  "id": {
    "kind": string,
    "videoId": string,
    "channelId": string,
    "playlistId": string
  },
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "channelTitle": string,
    "liveBroadcastContent": string
  }
}

属性

下表定义了搜索结果中显示的属性:

属性
kind string
标识 API 资源的类型。其值为 youtube#searchResult
etag etag
此资源的 Etag。
id object
id 对象包含的信息可用于唯一标识与搜索请求匹配的资源。
id.kind string
API 资源的类型。
id.videoId string
如果 id.type 属性的值为 youtube#video,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的视频的 ID。
id.channelId string
如果 id.type 属性的值为 youtube#channel,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的频道的 ID。
id.playlistId string
如果 id.type 属性的值为 youtube#playlist,则此属性会显示,并且其值将包含 YouTube 用来唯一标识与搜索查询匹配的播放列表的 ID。
snippet object
snippet 对象包含搜索结果的基本详情,例如其标题或说明。例如,如果搜索结果是一个视频,则标题就是视频的标题,说明就是视频的说明。
snippet.publishedAt datetime
搜索结果所标识的资源的创建日期和时间。该值以 ISO 8601 格式指定。
snippet.channelId string
YouTube 使用以下值来唯一标识发布搜索结果标识的资源的频道。
snippet.title string
搜索结果的标题。
snippet.description string
搜索结果的说明。
snippet.thumbnails object
与搜索结果相关联的缩略图图片的地图。对于地图中的每个对象,键是缩略图图片的名称,值是包含有关缩略图的其他信息的对象。
snippet.thumbnails.(key) object
有效的键值对包括:
  • default - 默认的缩略图图片。视频(或引用视频的资源,例如播放列表项或搜索结果)的默认缩略图宽 120 像素,高 90 像素。频道的默认缩略图宽 88 像素,高 88 像素。
  • medium – 更高分辨率版本的缩略图。对于视频(或引用视频的资源),该图片的宽度为 320 像素,高为 180 像素。对于频道,此图片宽 240 像素,高 240 像素。
  • high – 缩略图的高分辨率版本。对于视频(或引用视频的资源),该图片的宽度为 480 像素,高度为 360 像素。对于频道,此图片宽 800 像素,高 800 像素。
  • standard - 分辨率比 high 分辨率更高的缩略图版本。此图片适用于某些视频以及引用视频的其他资源,例如播放列表项或搜索结果。此图片宽 640 像素,高 480 像素。
  • maxres – 缩略图图像的最高分辨率版本。此图片大小适用于某些视频以及引用视频的其他资源,例如播放列表项目或搜索结果。此图片宽 1280 像素,高 720 像素。
snippet.thumbnails.(key).url string
图片的网址。
snippet.thumbnails.(key).width unsigned integer
图片的宽度。
snippet.thumbnails.(key).height unsigned integer
图片的高度。
snippet.channelTitle string
频道的标题,该频道发布了搜索结果标识的资源。
snippet.liveBroadcastContent string
指示 videochannel 资源是否有直播内容。有效的属性值包括 upcominglivenone

对于 video 资源,值为 upcoming 表示视频是尚未开始的直播活动,而值 live 表示视频正在进行现场直播。对于 channel 资源,值 upcoming 表示频道有尚未开始的预定直播,而值 live 表示频道正在进行现场直播。