通过 API 了解 Youtube 视频是否不可用

问题描述 投票:0回答:4

通过 Youtube API,如何检测 Youtube 视频是否不可用(例如:https://www.youtube.com/watch?v=5nRZlcB2jPY)?

谢谢

youtube-api
4个回答
3
投票

您可以调用 API 来获取视频状态。

https://www.googleapis.com/youtube/v3/videos?id=VIDEOID&part=status&key=APIKEY

然后查看json结果中的uploadStatus

"status": {
"uploadStatus": "processed",
"privacyStatus": "public",
"license": "youtube",
"embeddable": true,
"publicStatsViewable": true
}

3
投票

这在没有 API 的情况下也是部分可行的。假设您想查看以下视频是否可用:

https://www.youtube.com/watch?v=esDJPiGu5x0

视频的 ID 显示为 GET 参数

v

。使用此请求以下缩略图:

https://img.youtube.com/vi/esDJPiGu5x0/0.jpg

如果响应内容的长度为

0 和/或 youtube.com 的 http 响应代码为 404

,则该视频不再可用。


1
投票
无需API即可查看。

const https = require('https'); // Change your videoId that you want to check here const url = 'https://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=videoID&format=json'; https.get(url, (response) => { if (response.statusCode === 200) { console.log('Video available'); } else { console.log('Video not available'); } }).on('error', (error) => { console.error('Error:', error); });
如果您收到 200 的回复,则该视频可用。如果没有的话,视频就无法观看


0
投票
不需要再次调用 API。

在 YouTube iFrame 的 onReady 处理程序中,getPlayerState() 将为“不可用”视频返回 -1(未启动),而所有其他视频应返回状态 5(视频提示)。

© www.soinside.com 2019 - 2024. All rights reserved.