Youtube Search API v3无法返回SD/Max分辨率缩略图咨询
解决Youtube API v3搜索接口无法获取SD/Max分辨率缩略图的问题
我之前也碰到过一模一样的情况,其实这是Search: list接口的设计限制导致的——这个接口返回的缩略图只包含default、medium和high这几个基础规格,不会提供sddefault(SD分辨率)、maxresdefault(最大分辨率)这类更高清的缩略图URL。
要拿到这些更高清的缩略图,你需要分两步操作:
- 第一步:从Search接口的返回结果中提取目标视频的
videoId(比如你例子里的tCXGJQYZ9JA) - 第二步:调用Videos: list接口,传入这个
videoId来获取完整的缩略图信息
示例Videos接口请求
GET https://www.googleapis.com/youtube/v3/videos?part=snippet&id=tCXGJQYZ9JA&key={YOUR_API_KEY}
在这个接口的返回结果里,snippet.thumbnails字段会包含更多分辨率选项,比如:
"thumbnails": { "default": { "url": "https://i.ytimg.com/vi/tCXGJQYZ9JA/default.jpg", "width": 120, "height": 90 }, "medium": { "url": "https://i.ytimg.com/vi/tCXGJQYZ9JA/mqdefault.jpg", "width": 320, "height": 180 }, "high": { "url": "https://i.ytimg.com/vi/tCXGJQYZ9JA/hqdefault.jpg", "width": 480, "height": 360 }, "sddefault": { "url": "https://i.ytimg.com/vi/tCXGJQYZ9JA/sddefault.jpg", "width": 640, "height": 480 }, "maxresdefault": { "url": "https://i.ytimg.com/vi/tCXGJQYZ9JA/maxresdefault.jpg", "width": 1280, "height": 720 } }
注意事项
不是所有视频都有maxresdefault规格的缩略图——只有当原视频是高清(1080p及以上)画质时,Youtube才会生成这个分辨率的缩略图。如果视频本身没有对应的高清源,接口就不会返回这个字段,调用时要做好空值判断。
内容的提问来源于stack exchange,提问作者frangulyan
相关产品推荐
相关产品推荐

