如何使用 YouTube 数据 API v3 检查 YouTube 视频是否存在

How to check if YouTube video exists using YouTube Data API v3

我开发了一个网站,用户可以在其中添加和嵌入 YouTube 视频。我将 YouTube ID 存储在数据库中。

我遇到了视频被 YouTube 删除的问题,通常是 copyright/DMCA,私人视频或用户删除它们。

我想 运行 一个每小时一次的 CRON 作业,使用 PHP 脚本检查这些视频是否仍然存在,但我找不到任何相关资源。

有人能帮忙吗?

彼得

更好的解决方案:

if (sizeof($videoResponse['items'])) {
    // Video exist, do stuff     
}

来源:verify if video exist with youtube api v3

您可以检查您的 videoResponse 是否是一个对象:

$videoResponse = $youtube->videos->listVideos('snippet,statistics', array(
    'id' => $videoId 
));    

if (is_object($videoResponse['items'][0])) {
    // Video exist, do stuff     
}

或者检查是否为!empty:

if (!empty($videoResponse['items'][0])) {
    // Video exist, do stuff     
}

您实际上也可以检查隐私状态:

$videoResponse = $youtube->videos->listVideos('status', array(
    'id' => $videoId 
));    

$privacyStatus = $videoResponse['items'][0]['status']['privacyStatus'];