迅雷云点播的PHP,JS源码,网络上越来越多了,百度一下,一大把.你也可以到这里下载. 云点播架设基本代码:http://kuai.xunlei.com/d/AMGJOIOXOGSN
我也下载了一份,鼓捣了两个星期,简单写一下分析和修改的随笔.
其实比较难的是对BT种子的上传分析,大部分网站都是先将BT种子转换为magnet磁力链接,然后再播放,这样麻烦一点,也不是很完美.
对BT种子进行在线分析,主要用到两个库文件,BDecode.php 和 BEncode.php,已经打包了,有需要的话可以下载: http://kuai.xunlei.com/d/ANFNEXSVYOSJ
主要是取出Bt种子的40位info_hash和包含的文件名.大概代码如下:
1 require_once dirname(__FILE__)."\BDecode.php"; 2 require_once dirname(__FILE__)."\BEncode.php"; 3 ..... 4 5 $btinfo=array(); 6 $alltorrent = file_get_contents($file_name); //$file_name BT种子 7 $btinfo = BDecode($alltorrent); 8 9 10 $infohash = sha1(BEncode($btinfo['info'])); //求出hash值
其他的都很简单,毕竟有源码嘛,有兴趣的也可以根据我的云点播网站慢慢研究.http://svod.sinaapp.com/
这两天才弄好,放在了新浪的SAE云平台上.界面代码也是COPY其他网站,再自己修改了一些部分.支持 http,ftp,迅雷地址,快车地址,旋风地址,磁力链接和40位BT种子hash值 直接播放,也支持上传BT种子播放.
迅雷链接例:
快车链接例:
旋风链接例:
磁力链接例:
magnet:?xt=urn:btih:a9184052cf379b74f6e8a2a03fdccc5a3a3872f5
普通链接例(http也行):
ftp://dy:[email protected]:50060/[迅雷下载碟中谍4.BD1280高清中英双字.rmvb
电驴链接例:
ed2k://|file|3D%E8%82%89%E8%92%B2%E5%9B%A2%E4%B9%8B%E6%9E%81%E4%B9%90%E5%AE%9D%E9%89%B4_3D%E8%82%89%E8%92%B2%E5%9B%A2_3D%E7%8E%89%E8%92%B2%E5%9B%A2%5BBD%5D%5B2011%5D%5B%E5%9B%BD%E7%B2%A4%E5%8F%8C%E8%AF%AD%5D_%E5%9B%BD.rmvb|748189777|0B4A286D16D7DCB77867C9B9EE504C1F|/
哈希效验码例:
0152dd76597c6b44a69e82e9af449eec7c703fe2
复制种子的特征码就可以直接播放,不用下载BT种子,这样更方便一点.(很多H片都有特征编码,你懂得的) 主要是用js转换为磁力链接实现的.
1 if($("#url").val().trim().length == 40 && isNumberOr_Letter($("#url").val().trim())){ //判断长度是否为40,并且是否为数字与字母 2 var str = "magnet:?xt=urn:btih:" + $("#url").val().trim(); 3 $("#play_frame").attr("src", "/fvvod.php?url=" + Base64.encode(str)); 4 return 5 }
isNumberOr_Letter函数(用正则判断)
1 function isNumberOr_Letter( s ){ //判断是否是数字或字母 2 var regu = "^[0-9a-fA-F_]+$"; 3 var re = new RegExp(regu); 4 if (re.test(s)) { 5 return true; 6 }else{ 7 return false; 8 } 9 };
迅雷快车旋风地址等,都是用js转换为普通地址,这个比较简单.还有包含播放历史、添加观看列表等功能,都是js实现的,有兴趣的话可以到我的云点播网站 http://svod.sinaapp.com/下载js源码.