如何使用 PHP 检查 YouTube 上是否存在视频?

新手上路,请多包涵

如何使用 PHP 检查 YouTube 上是否存在视频?

原文由 Fero 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 456
2 个回答

使用 Youtube 的 API 怎么样?

毕竟,这将意味着使用一些官方的,这比解析一些 HTML 页面更不可能改变。

有关详细信息: YouTube API 和工具 - 开发人员指南:PHP

检索特定视频条目 似乎很有趣:如果您向这样的 URL 发送请求:

 http://gdata.youtube.com/feeds/api/videos/videoID

(用视频的 ID 替换“videoID”,当然 - 在您的示例中为“GeppLPQtihA”) ,如果视频有效,您将获得一些 ATOM 提要;如果不是,则为“无效 ID”

而且,我坚持认为:通过这种方式, 您依赖于记录在案的 API ,而不是依赖于当今存在但无法保证的某种行为。

原文由 Pascal MARTIN 发布,翻译遵循 CC BY-SA 4.0 许可协议

Youtube 支持 oEmbed 格式。

与 Pascal MARTIN 提供的 xml 响应相比,我的 3800 字节只需下载 600 字节,速度更快,占用的带宽更少(仅为大小的 1/6)。

 function yt_exists($videoID) {
    $theURL = "http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=$videoID&format=json";
    $headers = get_headers($theURL);

    return (substr($headers[0], 9, 3) !== "404");
}

$id = 'yyDUC1LUXSU'; //Video id goes here

if (yt_exists($id)) {
    //  Yep, video is still up and running :)
} else {
    //  These aren't the droids you're looking for :(
}

原文由 Giacomo Pigani 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏