如何使用PHP Simple HTML DOM Parser使用file_get_contents获取Flash视频和下载视频数据

时间:2015-01-19 15:20:04

标签: php html flash dom

我只是想屏幕抓一个包含Flash视频的网页。在使用PHP Simple HTML DOM Parser抓取网页时,我想抓住嵌入代码段并下载视频数据。有人可以帮忙吗?

参考可能的帮助: How to find object tag with param and embed tag inside html using simple html d

2 个答案:

答案 0 :(得分:3)

我认为没有通用的解决方案,否则很多网站的youtube-dl special-casing都没有必要。 如果您想到的网站位于该列表中,我建议您只使用youtube-dl。

答案 1 :(得分:0)

如果你正在使用linux服务器,你可以使用这个小的PHP包装器为youtube-dl。只需将包含视频的网页的网址传递给该功能。

function video_download($video_url) {
    $downloaderUrl = 'https://yt-dl.org/downloads/2015.01.23.4/youtube-dl';
    $downloaderPath = '/tmp/youtube-dl';
    $videoPath = '/tmp/videos';

    if(!file_exists($videoPath.'/')) {
        mkdir($videoPath, 0777);
    }
    if(!file_exists($downloaderPath)) {
        file_put_contents($downloaderPath, file_get_contents($downloaderUrl));
        chmod($downloaderPath, 0777);
    }

    exec($downloaderPath.' -o "'.$videoPath.'/%(title)s.%(ext)s":w '.$video_url);
    return true;
}

用法示例:

video_download('http://www.youtube.com/watch?v=9bZkp7q19f0');

如果你对某些解释感兴趣,它只是从网站上获取youtube-dl下载程序,将其保存到你的tmp文件夹然后通过url传递它。结果将保存到tmp。

中的其他文件夹中