gpt4 book ai didi

video - YouTube get_video_info 引发限制错误

转载 作者:行者123 更新时间:2023-12-03 06:15:01 32 4
gpt4 key购买 nike

我已经为 joomla 创建了(是的另一个)YouTube 播放器模块!
在模块后端中,我使用了 this answer 中的代码显示视频标题。不幸的是,对于大多数视频 ID,get_video_info 返回的只是嵌入的禁止文本,例如:“此视频包含来自 VEVO 的内容。它被限制在某些网站或应用程序上播放。在 YouTube 上观看”。

实际上,我从 videoinfo 获取信息并搜索标题或原因(如果存在),模块会在后端回显该值。
我的问题是 - 任何人都知道为什么 yt get_video_info 会引发此错误,即使它仍然可以嵌入视频?

一个例子:
视频 ID Y1_VsyLAGuk

如果您尝试从以下位置获取视频信息:
http://youtube.com/get_video_info?video_id=Y1_VsyLAGuk你只会得到不可能的错误。

但该模块可以在同一主机上的嵌入式 youtube API v3 播放器中创建和播放视频。

if (isset($formID)){
$cleanedID = cleanUp($id);
// Some Magic to get the Video Title, Thanks to Stack Overflow User Cruel for this nice Hint
$content = file_get_contents("http://youtube.com/get_video_info?video_id=".$cleanedID);
parse_str($content, $ytarr);

if(array_key_exists('title', $ytarr)){
return '<div style="width:220px;"><h4>'.$ytarr['title'].'</h4><img style="border-radius:4px;" src="https://img.youtube.com/vi/'.$cleanedID.'/hqdefault.jpg" width="100%" /></div>';

// Credits: https://stackoverflow.com/a/5151862/4708062
}elseif(array_key_exists('reason', $ytarr)){
return '<div class="alert alert-danger" style="width:170px;"><p style="text-align:center">'.$ytarr['reason'].'</p></div><img style="border-radius:4px;" src="https://img.youtube.com/vi/'.$cleanedID.'/hqdefault.jpg" width="220px" />';
}else{
//print_r($ytarr);
return ;
}
}

最佳答案

解决方案是使用 noembed.com 服务获取视频信息:

示例 URL:“https://noembed.com/embed?url=https://www.youtube.com/watch?v=YXN_lNZZAZA

关于video - YouTube get_video_info 引发限制错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45190533/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com