我正在使用CURL来获取Youtube页面:
$url = "https://www.youtube.com/watch?v=jyPnQw_Lqds";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
echo $curl_scraped_page;
看来视频没有播放,我不知道为什么。我找到了一个脚本,通过将数据设置为format json
然后将json
解码为普通html
来解决此问题:
$youtube = "http://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);
$result = json_decode($return, true);
echo $result['html'];
我试图将这两个脚本“合并”为一个。我把脚本放在一起就像这样:
PHPFiddle EXAMPLE, CLICK THE RUN(F9) BUTTON
正如您所见,顶部的视频无法播放。如果向下滚动到底部,您将看到另一个视频(这是JSON回显的视频),这个视频实际上可以播放。
如何播放上(上)视频?我正在考虑首先“找到”“对象”,然后格式化为json等。但我担心这会弄乱页面。