qq空间的视频解析是做到的? qq空间视频uploadcolorswf 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分享的视频地址一般都是直接带有视频ID的比如优酷的这个视频:http://v.youku.com/v_show/id_XNzAzMjQxMzY0_ev_1.htmlQQ空间直接获取到ID为XNzAzMjQxMzY0然后视频网站一般都有专门提供给分享的视频地址,你点击优酷视频底部分享给好友的下拉框,就可以看到视频分享地址,比如本视频是http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swfQQ空间直接把你粘贴的地址里的ID放到"http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swf"里就可以了。查看空间分享后视频的代码你就可以发现本视频QQ空间分享后代码是<object id="mood_flash_player" name="mood_flash_player" data="http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swf" type="application/x-shockwave-flash" height="345" width="512"><param name="allowScriptAccess" value="always"><param name="wmode" value="transparent"><param name="flashvars" value="&playMovie=true&list=2&isAutoPlay=true&auto=1&autoPlay=true&adss=0&source=qzone.qq.com"><param name="allowFullScreen" value="true"></object> 另外,预览图的地址在视频页的源码里也有,比如本图是http://g1.ykimg.com/0100641F465358FD94D79B0247A48FB0E2C883-BCF0-63CC-9821-BC976AAD32B9 $url='http://v.qq.com/cover/2/2rf445gx8ktfd8z.html?vid=v0131w3enif';if(preg_match("/http:\/\/v.qq.com\/.+?\/[^\/]+.html\?vid=([^\/]+)/i", $url, $matches)){ $vid=$matches[1];}elseif(preg_match("/http:\/\/v.qq.com\/.+?\/([^\/]+).html/i", $url, $matches)){ $vid=$matches[1];}if($vid) { $flv = 'http://static.video.qq.com/TPout.swf?vid='.$vid.'&exid=k0&showend=1'; $num = 0xFFFFFFFF + 1; $m = 10000 * 10000; $res = 0; $i = 0; while ( $i < strlen ( $vid ) ) { $temp = ord ( substr ( $vid, $i, 1 ) ); $res = $res * 32 + $res + $temp; while ( $res >= $num ) { $res -= $num; } $i++; } while ( $res >= $m ) { $res -= $m; } $imgurl='http://vpic.video.qq.com/'. $res .'/'. $vid .'.png';}echo $flv."<br>";echo "<img src='$imgurl'/>";$flv就是视频地址,$imgur就是预览图。视频地址和预览图的链接每个视频网站都不一样比如优酷: flv:http://player.youku.com/player.php/sid/'.$matches[1].'/v.swf img:http://v.youku.com/player/getPlayList/VideoIDS/'.$matches[1]还有一些网站的预览图,都是要自己去匹配出来 php4.0 使用PHP如何获得JS生成的年和月? 谁有dreamweaver+php+mysql 的增加记录教程 高分求一个php正则表达式 打个比方描述一下CMS跟一个网站的关系. include使用问题 php自动查询数据库,并刷新页面?????? 澳门某IT公司在珠海招聘PHP工程师5~6名 寻求有开发换装系统的个人或工作室合作 php怎样读取url的参数? PHP ajaxupload 上传图片到七牛 关于set_time_limit(0)的问题?
比如优酷的这个视频:http://v.youku.com/v_show/id_XNzAzMjQxMzY0_ev_1.html
QQ空间直接获取到ID为XNzAzMjQxMzY0
然后视频网站一般都有专门提供给分享的视频地址,
你点击优酷视频底部分享给好友的下拉框,就可以看到视频分享地址,比如本视频是http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swf
QQ空间直接把你粘贴的地址里的ID放到"http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swf"里就可以了。
查看空间分享后视频的代码你就可以发现本视频QQ空间分享后代码是
<object id="mood_flash_player" name="mood_flash_player" data="http://player.youku.com/player.php/sid/XNzAzMjQxMzY0/v.swf" type="application/x-shockwave-flash" height="345" width="512"><param name="allowScriptAccess" value="always"><param name="wmode" value="transparent"><param name="flashvars" value="&playMovie=true&list=2&isAutoPlay=true&auto=1&autoPlay=true&adss=0&source=qzone.qq.com"><param name="allowFullScreen" value="true"></object>
$vid=$matches[1];
}elseif(preg_match("/http:\/\/v.qq.com\/.+?\/([^\/]+).html/i", $url, $matches)){
$vid=$matches[1];
}if($vid) {
$flv = 'http://static.video.qq.com/TPout.swf?vid='.$vid.'&exid=k0&showend=1';
$num = 0xFFFFFFFF + 1;
$m = 10000 * 10000;
$res = 0;
$i = 0;
while ( $i < strlen ( $vid ) ) {
$temp = ord ( substr ( $vid, $i, 1 ) );
$res = $res * 32 + $res + $temp;
while ( $res >= $num ) {
$res -= $num;
}
$i++;
}
while ( $res >= $m ) {
$res -= $m;
}
$imgurl='http://vpic.video.qq.com/'. $res .'/'. $vid .'.png';
}echo $flv."<br>";
echo "<img src='$imgurl'/>";
$flv就是视频地址,$imgur就是预览图。
视频地址和预览图的链接每个视频网站都不一样
比如优酷:
flv:http://player.youku.com/player.php/sid/'.$matches[1].'/v.swf
img:http://v.youku.com/player/getPlayList/VideoIDS/'.$matches[1]
还有一些网站的预览图,都是要自己去匹配出来