使用PHP检索YouTube视频详细信息,包括视频网址中的说明?

use*_*300 -1 php youtube-api

搜索stackoverflow后,我发现:如何使用PHP从视频URL中检索YouTube视频详细信息?

使用以下代码(我已更改为https而不是http,并添加$ _GET ['v']以从浏览器URL获取视频代码):

function get_youtube($url) {

 $youtube = "https://www.youtube.com/oembed?url=". $url ."&format=json";

 $curl = curl_init($youtube);
 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
 $return = curl_exec($curl);
 curl_close($curl);
 return json_decode($return, true);

}

$url = 'https://www.youtube.com/watch?v=' . $_GET['v'];

// Display Data 
echo '<pre>';
print_r(get_youtube($url));
echo '</pre>';
Run Code Online (Sandbox Code Playgroud)

我得到了以下结果:

Array
(
    [thumbnail_url] => https://i.ytimg.com/vi/AhN5MbTJ0pk/hqdefault.jpg
    [version] => 1.0
    [type] => video
    [html] => <iframe width="480" height="270" src="https://www.youtube.com/embed/AhN5MbTJ0pk?feature=oembed" frameborder="0" allowfullscreen></iframe>
    [provider_url] => https://www.youtube.com/
    [thumbnail_width] => 480
    [width] => 480
    [thumbnail_height] => 360
    [author_url] => https://www.youtube.com/user/AndreasChoice
    [author_name] => AndreasChoice
    [title] => GROSS SMOOTHIE CHALLENGE! ft. Tealaxx2
    [height] => 270
    [provider_name] => YouTube
)
Run Code Online (Sandbox Code Playgroud)

这很棒,但我还需要检索丢失的视频的完整"描述".我怎样才能做到这一点?谢谢.

Hac*_*Guy 5

要获得视频说明,您有2个选项.

  1. 使用API​​.
  2. 抓取网站.

您需要的API位于googleapis.com域下.

您需要使用的网址是:

https://www.googleapis.com/youtube/v3/videos?id=VIDEO_ID&key=YOUR_API_KEY&fields=items(id,snippet(description))&part=snippet
Run Code Online (Sandbox Code Playgroud)

请注意,您必须更改VIDEO_IDYOUR_API_KEY.
要获取API密钥,请按以下说明操作:链接.


构建Web爬网程序更复杂.
请尝试按照本教程在此处构建您自己的Web爬网程序