通过PHP从其他站点抓取iframe视频

通过PHP从其他站点抓取iframe视频,php,iframe,video-streaming,scraper,webgrabber,Php,Iframe,Video Streaming,Scraper,Webgrabber,我想将视频从其他网站刮到我的网站(例如,从实时视频网站) 如何从其他网站上抓取视频?这个过程和抓取图像的过程一样吗 $html = file_get_contents('http://website.com/'); $dom = new domDocument; $dom->loadHTML($html); $dom->preserveWhiteSpace = false; $iframes = $dom->getElementsByTagName('frame'); fore

我想将视频从其他网站刮到我的网站(例如,从实时视频网站)

如何从其他网站上抓取
视频?这个过程和抓取图像的过程一样吗

$html = file_get_contents('http://website.com/');
$dom = new domDocument;
$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$iframes = $dom->getElementsByTagName('frame');
foreach ($iframes as $iframe) {
  $pic = $iframe->getAttribute('src');
  echo '<li><frame src="'.$pic.'"';
}
$html=file\u get\u contents('http://website.com/');
$dom=新的domDocument;
$dom->loadHTML($html);
$dom->preserveWhiteSpace=false;
$iframes=$dom->getElementsByTagName('frame');
foreach($iframes作为$iframe){
$pic=$iframe->getAttribute('src');

echo'
  • 这篇文章有点老了,但我的答案是:

    我建议您使用cURL和Xpath来抓取站点并解析HTML数据。file\u get\u内容存在一些安全问题,某些主机可能会禁用它。您可以执行以下操作:

    <?php
        function scrape($URL){
            //cURL options
            $options = Array(
                        CURLOPT_RETURNTRANSFER => TRUE, //return html data in string instead of printing it out on screen
                        CURLOPT_FOLLOWLOCATION => TRUE, //follow header('Location: location');
                        CURLOPT_CONNECTTIMEOUT => 60, //max time to try to connect to page
                        CURLOPT_HEADER => FALSE, //include header
                        CURLOPT_USERAGENT => "Mozilla/5.0 (X11; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0", //User Agent
                        CURLOPT_URL => $URL //SET THE URL
                        );
    
            $ch = curl_init($URL);//initialize a cURL session
            curl_setopt_array($ch, $options);//set the cURL options
            $data = curl_exec($ch);//execute cURL (the scraping)
            curl_close($ch);//close the cURL session
    
            return $data;
        }
    
        function parse(&$data, $query, &$dom){
            $Xpath = new DOMXpath($dom); //new Xpath object associated to the domDocument
            $result = $Xpath->query($query);//run the Xpath query through the HTML
            var_dump($result);
            return $result;
        }
    
    
        //new domDocument
        $dom = new DomDocument("1.0"); 
    
        //Scrape and parse
        $data = scrape('http://stream-tv-series.net/2013/02/22/new-girl-s1-e6-thanksgiving/'); //scrape the website
        @$dom->loadHTML($data); //load the html data to the dom
    
        $XpathQuery = '//iframe'; //Your Xpath query could look something like this
        $iframes = parse($data, $XpathQuery, $dom); //parse the HTML with Xpath
    
        foreach($iframes as $iframe){
    
            $src = $iframe->getAttribute('src'); //get the src attribute
            echo '<li><iframe src="' . $src . '"></iframe></li>'; //echo the iframes
        }
    ?>
    
    
    
    以下是一些有用的链接:

    卷曲:

    Xpath:


    php.net上还有DomDocument文档。我无法发布链接,我没有足够的声誉。

    那么,您的代码有什么不好用的地方?它被打印了很多次或有错误,没有被刮掉的视频