+ -
当前位置:首页 → 问答吧 → youku简单采集.

youku简单采集.

时间:2009-12-15

来源:互联网

本帖最后由 ajaxer 于 2009-12-15 23:52 编辑

[php]
<?php
/**
author:ajaxer
date:2009-12-15
**/
set_time_limit(0);
$url="http://www.youku.com/playlist_show/id_2250354.html";//专辑地址
$_youkuhtml =file_get_contents($url);
preg_match("/<div class=\"pageBar\">(.*)<!--listData end-->/isU",$_youkuhtml,$pagebar);//分页区域
preg_match_all("/href=\"([^\"]+)/i", $pagebar[1], $pagelinks);//分页连接
//preg_match("/<div class=\"videos\">(.*)<!--videos end-->/isU",$_youkuhtml,$videos);//视频连接
preg_match_all("/<img class=\"QLiconB\".*id=\"PlayListFlag\_([^\"]+)/i", $_youkuhtml, $videoid);//视频id
$pagelinks=$pagelinks[1];//找出分页链接,
$totaolpage=count($pagelinks)-1;//算出共有几页
$baseurl="http://www.youku.com".substr($pagelinks[0],0,-6);
$vid=implode(",",$videoid[1]);//这个是视频id,用来播放视频用的,这个值要传到js的uplayer中.
/*
以下是找出专辑中所有视频的视频id
*/
for($i=1;$i<=$totaolpage;$i++){
$pages[]=$baseurl.$i.".html";
if($i>1){
  preg_match_all("/<img class=\"QLiconB\".*id=\"PlayListFlag\_([^\"]+)/i",
      file_get_contents($pages[$i-1]),
      $tempid
       );
  $vid.=implode(",",$tempid[1]);
}

}
$vid=explode(",",$vid);
?>
<html>
<head>
  <script type="text/javascript">
   function uplay(code)
   {
    var str="<EMBED pluginspage=http://www.macromedia.com/go/getflashplayer src=http://player.youku.com/player.php/sid/"+code+"=/v.swf width=\"100%\" height=\"100%\" type=application/x-shockwave-flash flashvars=\"isAutoPlay=true&Version=/v1.0.0304&winType=interior\" allowscriptaccess=\"always\" allowfullscreen=\"true\" quality=\"high\" bgcolor=\"#FFFFFF\" EnableContextMenu=\"1\"></EMBED>";
    document.getElementById('youkuplayer').innerHTML=str
   }

  </script>
</head>
<body>
  <div id="youkuplayer" style="width:400px;height:300px;border:1px solid red;float:left">
   
  </div>
  <div id="links" style="width:200px;float:left;margin-left:30px;border:1px solid red;">
   <?php
    foreach($vid as $k=>$v){
   ?>
   <a href="javascript:uplay('<?php echo $v;?>')"><?php echo ($k+1);?>集</a>
   <?php
    }
   ?>
  </div>
</body>
</html>
[/php]

作者: ajaxer   发布时间: 2009-12-15

代码注释呢?

作者: yoursjzz   发布时间: 2009-12-15

作个记号

作者: uit88   发布时间: 2009-12-16

~~收藏~~

作者: zhoushj   发布时间: 2009-12-16

需要~

作者: evarainy   发布时间: 2009-12-16

路过。。

作者: keminar   发布时间: 2009-12-17

看看

作者: liuzhaoqing868   发布时间: 2010-01-03

收藏

作者: lingandlan   发布时间: 2010-01-05

收藏

作者: lingandlan   发布时间: 2010-01-05

搜藏

作者: jliang   发布时间: 2010-01-20