查看: 1973|回復(fù): 4
打印 上一主題 下一主題

搜狐視頻代理和采集得詳解實(shí)例

 關(guān)閉 [復(fù)制鏈接]

該用戶從未簽到

鮮花(0) 雞蛋(0)
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2012-6-22 16:21 | 只看該作者 回帖獎勵(lì) |倒序?yàn)g覽 |閱讀模式
你可以把 搜狐視頻 的電影,電視劇 的視頻 所在的網(wǎng)址復(fù)制起來,
然后粘帖到下面播放器中的輸入文本樞,
最后按確定 就可以看到代理,或者采集的過程序了

備用2個(gè)測試地址
電視劇測試 http://tv.sohu.com/20120402/n339672627.shtml
電影測試 http://tv.sohu.com/20100706/n273317584.shtml
實(shí)例效果地址;http://www.flashcs5as3.com/bfs/搜狐視頻代理.swf
源文件下載地址;[url]http://www.flashcs5as3.com/bfs/搜狐視頻代理.zip[/url]
腳本如下
  1. /*-------------------搜狐視頻 代理與采集-------------
  2.   |                 2012-06-18-日編                |
  3.   |              編  啊城  QQ 475830480            |
  4.   |               www.flashcs5as3.com              |
  5. ---------------------------------------------------*/
  6. //---------------------------常規(guī)參數(shù)設(shè)置---------------
  7. var i = 0;
  8. var 總片段數(shù)量;
  9. var ii = 1;
  10. var 劇集列表id;
  11. // 例子 http://tv.sohu.com/20120601/n344624004.shtml   http://tv.sohu.com/20120502/n342149564.shtml
  12. System.useCodepage = true;//防止亂碼
  13. _root.bfs = new Object();//新建原始參數(shù)
  14. //--------搜狐管方內(nèi)部的代理-----------------------------------------------------------
  15. _root.bfs.搜狐視頻代理 = "http://hot.vrs.sohu.com/vrs_flash.action?vid=";
  16. _root.bfs.搜狐劇集列表 = "http://hot.vrs.sohu.com/vrs_videolist.action?playlist_id=";
  17. //本人開發(fā)的代理 http://q475830480.cn/bfs/代理程序/搜狐.asp?vid=
  18. //------------------------------------------------------------------------------------
  19. _root.bfs.mySound = new Sound();//新建聲音
  20. _root.bfs.my_nc = new NetConnection();//新建視頻連接
  21. _root.bfs.my_nc.connect(null);//插定連接為空
  22. _root.bfs.my_ns = new NetStream(_root.bfs.my_nc);//新建視頻流
  23. _root.bfs.my_ns.setBufferTime(1);//設(shè)置續(xù)沖時(shí)間 值為 1 秒
  24. _root.bfs.buffer_ns = new NetStream(_root.bfs.my_nc);//新建副視頻流
  25. _root.bfs.buffer_download = false;//設(shè)置 視頻流 加載的裝態(tài)
  26. _root.bfs.downloading = false;//視頻流的長度 裝態(tài)
  27. _root.bfs.musicPlayId = _root.bfs.listPlayId=_root.bfs.listOpenId="0";
  28. _root.bfs.vol_value = 80;//設(shè)為音量為40
  29. _root.bfs.isPlaying = true;
  30. _root.bfs.搜狐視頻url = 輸入地址.text;
  31. scrollList._visible = false;
  32. loadhtm();
  33. //-------------------輸入按鈕------------------------
  34. 確定輸入按鈕.onPress = function() {
  35. System.useCodepage = true;//防止亂碼
  36. //----------清除文本樞內(nèi)容----------
  37. 網(wǎng)頁html的源文件.text = "";
  38. 視頻代理編號.text = "";
  39. flv_多少集.text = "";
  40. flv_多少片段.text = "";
  41. 合并完整flvurl.text = "";
  42. 劇集txt.text = "";
  43. 劇集列表txt.text = "";
  44. flv_xml.text = "";
  45. 集數(shù)例表.text = "";
  46. _root.scene.cfvideo.close();//清除視頻
  47. delete _root.bfs.my_nc;//清除視頻流
  48. delete 搜狐代理htm_id;//清除 加載視頻 的網(wǎng)頁地址
  49. delete 搜狐代理xml;//清除 加載 XML 地址
  50. delete 劇集列表;//清除  劇集列表  XML
  51. _root.bfs.musicPlayId = _root.bfs.listPlayId=_root.bfs.listOpenId="0";
  52. _root.bfs.搜狐視頻url = 輸入地址.text;
  53. };
  54. 確定輸入按鈕.onRelease = function() {
  55. i = 0;
  56. ii = 1;
  57. loadhtm();
  58. };
  59. //----------------------load 視頻網(wǎng)頁 html---------------------------
  60. function loadhtm() {//加載視頻所在的網(wǎng)頁地址  
  61. var 搜狐代理htm_id:XML = new XML();//新建一個(gè)XML
  62. 搜狐代理htm_id.ignoreWhite = true;//防止xml中的空格參數(shù)
  63. 搜狐代理htm_id.load(_root.bfs.搜狐視頻url);//加載 html
  64. 搜狐代理htm_id.onLoad = function(如果加載成功) {
  65.   if (如果加載成功) {//加載OK后,積行動作
  66.    網(wǎng)頁html的源文件.text = 搜狐代理htm_id;// 所有的html 源文件的代碼
  67.    var 代理編號 = 網(wǎng)頁html的源文件.text.split("vid="")[1];//先找到 電影分之類 的位置
  68.    視頻代理編號.text = 代理編號.split("";")[0];
  69.    if (網(wǎng)頁html的源文件.text.lastIndexOf("vrs_playlist_id=""") != -1) {
  70.     flv_多少集.text = "1";
  71.     loadok();
  72.    } else {
  73.     var 劇集 = 網(wǎng)頁html的源文件.text.split("vrs_playlist_id="")[1];
  74.     flv_多少集.text = 劇集.split("";")[0];
  75.     劇集列表m();
  76.    }
  77.   } else {
  78.    loadhtm();//如果沒有加載成功,就接著再次加載
  79.   }
  80. };
  81. }
  82. //---------------------load  劇集列表-------------------------------------
  83. function 劇集列表m() {
  84. System.useCodepage = true;//防止亂碼
  85. var 劇集列表:XML = new XML();//新建一個(gè)XML
  86. 劇集列表.ignoreWhite = true;//防止xml中的空格參數(shù)
  87. 劇集列表.load(_root.bfs.搜狐劇集列表+flv_多少集.text);//加載列表 xml
  88. 劇集列表.onLoad = function(加載列表xml) {
  89.   if (加載列表xml) {
  90.    劇集txt.text = 劇集列表;
  91.    劇集xml列表();
  92.   } else {
  93.    劇集列表m();
  94.   }
  95. };
  96. }
  97. function 劇集xml列表() {
  98. this.onEnterFrame = function() {
  99.   if (劇集txt.text.lastIndexOf("第"+ii+"集") != -1) {
  100.    劇集列表txt.text = 劇集txt.text.split("videoId":")[ii];//"relativeVideoId":
  101.   } else {
  102.    delete this.onEnterFrame;
  103.    劇集列表id = (ii-1);
  104.    flv_多少集.text = 劇集列表id;
  105.    loadok();
  106.    PlayList();
  107.    //trace(劇集列表id);
  108.   }
  109.   ii++;
  110. };
  111. }
  112. //--------------------------------------Play List------------------------------------
  113. function PlayList() {
  114. System.useCodepage = true;
  115. var _loc3;
  116. var _loc4 = new String("");
  117. var _loc5;
  118. var _loc5000;
  119. var _loc6 = flv_多少集.text;//劇集列表.firstChild.childNodes.length;
  120. var _loc2 = -1;
  121. var 影片名稱 = 劇集txt.text.split("videoName":"")[1];
  122. var 當(dāng)前影片名稱 = 影片名稱.split("第")[0];
  123. while (++_loc2<_loc6) {
  124.   var _loc3 = 當(dāng)前影片名稱+"  第"+(_loc2+1)+"集";
  125.   //---------------設(shè)定 點(diǎn)播后改變例表中的 色彩-----------------
  126.   _loc5 = "#ffffff";
  127.   if (_loc2 == _root.bfs.musicPlayId) {
  128.    if (_root.bfs.listPlayId == _root.bfs.listOpenId) {
  129.     _loc5 = "#00ff00";
  130.    }
  131.   }
  132.   _loc4 = _loc4+("<font color=""+_loc5+""><a href="asfunction:d,"+_loc2+""></a>"+(_loc2+1)+":  <a href="asfunction:p,"+_loc2+"">"+_loc3+"</a></font>"+"\n");
  133. }
  134. 集數(shù)例表.html = true;
  135. 集數(shù)例表.htmlText = _loc4;
  136. if (flv_多少集.text<=19) {
  137.   scrollList._visible = false;
  138. } else {
  139.   scrollList._visible = true;
  140. }
  141. //集數(shù)例表.setTextFormat(lrcFormat);
  142. false;
  143. if (_root.bfs.listPlayId == _root.bfs.listOpenId) {
  144.   集數(shù)例表.scroll = _root.bfs.musicPlayId-3;
  145. } else {
  146.   集數(shù)例表.scroll = 1;
  147. }
  148. if (_root.bfs.isPlaying) {
  149.   delete 搜狐代理xml;
  150.   Playflvxml();
  151. }
  152. }
  153. //-----------------------------------------------------------------------------
  154. function d(id) {
  155. 劇集列表.childNodes[0].childNodes[id].removeNode();
  156. //PlayList();
  157. }
  158. function p(id) {
  159. playThis(id);
  160. }
  161. function playThis(id) {
  162. _root.bfs.musicPlayId = id;
  163. _root.bfs.listPlayId = _root.bfs.listOpenId;
  164. _root.bfs.isPlaying = true;
  165. 劇集列表txt.text = "";
  166. PlayList();
  167. trace(_root.bfs.musicPlayId);
  168. }
  169. function Playflvxml() {
  170. _root.bfs.isPlaying = false;
  171. var mmtt = 劇集txt.text.split("videoId&quot;:")[_root.bfs.musicPlayId];
  172. 劇集列表txt.text = mmtt.split(",&quot;isNeedCaption")[0];
  173. loadok();
  174. }
  175. //---------------------------load  flv  xml ------------------------------------
  176. function loadok() {//加載代理中的XML相關(guān) flv 信息
  177. System.useCodepage = false;
  178. var flvurl;
  179. var 搜狐代理xml = new XML();
  180. 搜狐代理xml.ignoreWhite = true;
  181. if (_root.bfs.musicPlayId == "0") {
  182.   搜狐代理xml.load(_root.bfs.搜狐視頻代理+視頻代理編號.text);
  183. } else {
  184.   搜狐代理xml.load(_root.bfs.搜狐視頻代理+劇集列表txt.text);
  185. }
  186. 搜狐代理xml.onLoad = function(加載xml信息) {
  187.   if (加載xml信息) {
  188.    flv_xml.text = 搜狐代理xml;
  189.    var 總片段 = flv_xml.text.split("totalBlocks&quot;:")[1];
  190.    總片段數(shù)量 = 總片段.split(",&quot;ck&quot")[0];
  191.    flv_多少片段.text = 總片段數(shù)量;
  192.    //trace(總片段數(shù)量);
  193.    loadxml();
  194.   }
  195. };
  196. }
  197. function loadxml() {
  198. var flv_url = flv_xml.text.split("su&quot;:[&quot;")[1];
  199. var flvxml_t = flv_url.split("&quot;],&quot;sT&quot")[0];
  200. if (flv_xml.text.lastIndexOf("220.181.61.229") != -1) {//用字符串 搜索 視頻源 的 服務(wù)器的 IP
  201.   var url = flvxml_t.split("&quot;,&quot;")[i];
  202.   flvurl = "http://220.181.61.229/?new="+url;//采用 ?new 防止 視頻源 的 服務(wù)器 對客戶方封鎖IP (指觀看影片者)
  203.   合并完整flvurl.text = flvurl;
  204.   //trace(flvurl);
  205. } else if (flv_xml.text.lastIndexOf("abcdefghijklmnopqrstuvwxyz0123456789") != -1) {//如果說 搜索不到 視頻源 的 服務(wù)器的 IP 有可能是采用 別站 的資源
  206.   //采用別站的資源: 優(yōu)酷  奇藝  樂視 騰訊
  207.   var video_flvURL;
  208.   var 優(yōu)酷 = "http://www.youku.com/";
  209.   var 奇藝 = "http://www.iqiyi.com/";
  210.   var 樂視 = "http://www.letv.com/";
  211.   var 騰訊 = "http://v.qq.com/";
  212.   var 資源目錄路徑;
  213.   //------按時(shí)間來計(jì)算-調(diào)用 video 資源的路徑-----------
  214.   var 本地時(shí)間 = new Date();
  215.   var 本地時(shí)間的值 = 本地時(shí)間.getHours();
  216.   if (本地時(shí)間的值<8) {
  217.    資源目錄路徑 = "Q";
  218.   } else if (本地時(shí)間的值<10) {
  219.    資源目錄路徑 = "W";
  220.   } else if (本地時(shí)間的值<12) {
  221.    資源目錄路徑 = "E";
  222.   } else if (本地時(shí)間的值<13) {
  223.    資源目錄路徑 = "R";
  224.   } else if (本地時(shí)間的值<14) {
  225.    資源目錄路徑 = "T";
  226.   } else if (本地時(shí)間的值<15) {
  227.    資源目錄路徑 = "Y";
  228.   } else if (本地時(shí)間的值<16) {
  229.    資源目錄路徑 = "U";
  230.   } else if (本地時(shí)間的值<17) {
  231.    資源目錄路徑 = "I";
  232.   } else if (本地時(shí)間的值<18) {
  233.    資源目錄路徑 = "O";
  234.   } else if (本地時(shí)間的值<19) {
  235.    資源目錄路徑 = "P";
  236.   } else if (本地時(shí)間的值<20) {
  237.    資源目錄路徑 = "A";
  238.   } else if (本地時(shí)間的值<21) {
  239.    資源目錄路徑 = "S";
  240.   } else if (本地時(shí)間的值<22) {
  241.    資源目錄路徑 = "D";
  242.   } else if (本地時(shí)間的值<23) {
  243.    資源目錄路徑 = "F";
  244.   } else {
  245.    資源目錄路徑 = "qwertyuiopasdfghjklzxcvbnm";
  246.   }
  247.   //---------------分析解密的路徑------------------
  248.   loadurl(本地時(shí)間的值+"?new");//采用 ?new 防止 視頻源 的 服務(wù)器 對客戶方封鎖IP
  249.   function loadurl(str) {
  250.    var _local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
  251.    var _local1 = 0;
  252.    var _local5 = new String("");
  253.    var _local11;
  254.    var _local7;
  255.    var _local4;
  256.    var _local6;
  257.    var _local10;
  258.    var _local9;
  259.    var _local8;
  260.    var _local12 = str.length;
  261.    while (_local1<_local12) {
  262.     _local11 = _local2.indexOf(str.charAt(_local1++));
  263.     _local7 = _local2.indexOf(str.charAt(_local1++));
  264.     _local4 = _local2.indexOf(str.charAt(_local1++));
  265.     _local6 = _local2.indexOf(str.charAt(_local1++));
  266.     _local10 = (_local11 << 2) | (_local7 >> 4);
  267.     _local5 = _local5+String.fromCharCode(_local10);
  268.     if (_local4 != 64) {
  269.      _local9 = ((_local7 & 15) << 4) | (_local4 >> 2);
  270.      _local5 = _local5+String.fromCharCode(_local9);
  271.     }
  272.     if (_local6 != 64) {
  273.      _local8 = ((_local4 & 3) << 6) | _local6;
  274.      _local5 = _local5+String.fromCharCode(_local8);
  275.     }
  276.    }
  277.    video_flvURL = _local5;
  278.    return (_local5);
  279.   }
  280.   //---------------結(jié)束 解密的路徑------------------
  281.   //----------根據(jù) 各站的域名 來進(jìn)行 合并完整視頻的地址----------
  282.   if (flv_xml.text.lastIndexOf("youku") != -1) {
  283.    flvurl = 優(yōu)酷+url+video_flvURL+"flv";
  284.   } else if (flv_xml.text.lastIndexOf("iqiyi") != -1) {
  285.    flvurl = 奇藝+url+video_flvURL+"flv";
  286.   } else if (flv_xml.text.lastIndexOf("letv") != -1) {
  287.    flvurl = 樂視+url+video_flvURL+"flv";
  288.   } else if (flv_xml.text.lastIndexOf("qq") != -1) {
  289.    flvurl = 騰訊+url+video_flvURL+"mp4";
  290.   } else {
  291.    trace("代理資源過期");
  292.   }
  293.   合并完整flvurl.text = flvurl;
  294. }
  295. playflv(flvurl,flvurl);//傳達(dá)給 播放 接口
  296. i++;
  297. }
  298. //---------------------play video -------------------------------------
  299. function playflv(mu, t) {
  300. if (t == undefined) {
  301.   _root.bfs.my_ns_duration = 180;
  302. } else {
  303.   _root.bfs.my_ns_duration = t;
  304. }
  305. _root.bfs.my_ns.play(mu);
  306. if (_root.bfs.buffer_download) {//清除相關(guān)視頻流通
  307.   _root.bfs.buffer_ns.close();
  308.   _root.bfs.my_ns.seek(0);
  309. }
  310. _root.bfs.my_ns.onMetaData = function(infoObject) {//檢查回調(diào) 從中獲取FLV文件的總時(shí)間長度
  311.   _root.bfs.my_ns_duration = infoObject.duration;//視頻流的總長度
  312.   //---------顯示當(dāng)前的視頻總時(shí)間參數(shù)-------
  313.   mmm = infoObject.duration;
  314.   tm1 = int(mmm/60);
  315.   tm2 = int(mmm%60);
  316.   tm1 = ((tm1<10) ? ("0"+tm1) : (tm1));
  317.   tm2 = ((tm2<10) ? ("0"+tm2) : (tm2));
  318.   tmm = (tm1+":")+tm2;
  319. };
  320. //---------顯示當(dāng)前的視頻 已經(jīng)播放時(shí)間參數(shù)-------
  321. function 純環(huán)() {
  322.   mmm = _root.bfs.my_ns.time;
  323.   tta = int(mmm/60);
  324.   tts = int(mmm%60);
  325.   tta = ((tta<10) ? ("0"+tta) : (tta));
  326.   tts = ((tts<10) ? ("0"+tts) : (tts));
  327.   mmmm = (tta+":")+tts;
  328. }
  329. clearInterval(純環(huán)事件目標(biāo));//先清除周期性時(shí)間值
  330. var 純環(huán)事件目標(biāo) = setInterval(純環(huán), 100);//聲明 一個(gè)含數(shù)的值為 周期性時(shí)間 計(jì)算方法:1000為1秒
  331. //------------------------檢測視頻流的播放狀態(tài)-------
  332. _root.bfs.my_ns_downloaded = false;
  333. _root.bfs.my_ns.onStatus = function(infoObject) {
  334.   switch (infoObject.code) {
  335.    case "NetStream.Play.StreamNotFound" ://當(dāng)視頻流 播放時(shí),是否可充全屏
  336.     //自己定義全屏接口();
  337.     break;
  338.    case "NetStream.Buffer.Empty" ://開始檢查視頻源 是否有效
  339.     if (_root.bfs.my_ns_downloaded) {//如果視頻源出錯(cuò)
  340.      if (i<總片段數(shù)量) {
  341.       loadxml();
  342.      } else {
  343.       下一集();
  344.      }
  345.     } else {
  346.      var _local3 = setInterval(checkBufferTime, 100);//聲明 一個(gè)含數(shù)的值為 周期性時(shí)間 計(jì)算方法:1000為1秒
  347.     }
  348.     break;
  349.    case "NetStream.Play.Start" ://播放后,續(xù)沖視頻流不到位,進(jìn)行續(xù)沖
  350.     var _local3 = setInterval(checkBufferTime, 100);
  351.     break;
  352.    case "NetStream.Buffer.Full" ://續(xù)沖完畢后,結(jié)束 周期性得設(shè)定時(shí)間值
  353.     clearInterval(_local3);//清除周期性時(shí)間值
  354.     break;
  355.    case "NetStream.Buffer.Flush" ://檢查視頻源 一切正常
  356.     _root.bfs.my_ns_downloaded = true;//傳達(dá)值數(shù) 為正常
  357.     break;
  358.    case "NetStream.Play.Stop" ://檢查視頻流 是否播放 完
  359.     if (i<總片段數(shù)量) {
  360.      loadxml();
  361.     } else {
  362.      下一集();
  363.     }
  364.     break;
  365.    default :
  366.     break;
  367.   }
  368. };
  369. changesize(438,278);//定義 video 的寬與高
  370. sound.volset.setVol();//設(shè)置音量
  371. _root.scene.cfvideo.attachVideo(_root.bfs.my_ns);//設(shè)定視頻流對象要顯示給  video  視頻輸入
  372. _root.bfs.my_ns_mc.attachAudio(_root.bfs.my_ns);//執(zhí)行 視頻流對象
  373. _root.bfs.mySound = new Sound(_root.bfs.my_ns_mc);//從 視頻流 中設(shè)定 Sound 聲音
  374. //------------------------------  video  加載  與 緩沖-------------------------------
  375. function checkBufferTime() {
  376.   var _loc2 = Math.round(_root.bfs.my_ns.bufferLength/_root.bfs.my_ns.bufferTime*100);
  377.   ffff = Math.round(_root.bfs.my_ns.bytesLoaded/_root.bfs.my_ns.bytesTotal*100)+"%";
  378.   if (_loc2<100 && _root.bfs.my_ns.bytesLoaded != _root.bfs.my_ns.bytesTotal) {
  379.    _root.scene.bufferinfo.text = "緩沖 "+_loc2+"%";
  380.   } else {
  381.    _root.scene.bufferinfo.text = "";
  382.   }
  383. }
  384. function changesize(w, h) {
  385.   var _loc3 = w;
  386.   var _loc2 = h;
  387.   var _loc4 = mu;
  388.   if (cn(_loc4)) {
  389.    _loc3 = _loc3*_loc4/100;
  390.    _loc2 = _loc2*_loc4/100;
  391.   }
  392.   _root.scene.cfvideo.smoothing = true;//設(shè)置視頻平滑
  393.   btn_play._visible = false;
  394.   btn_Stop._visible = true;
  395. }
  396. }
  397. //------------------------控制  播放 各 按鈕--------------------------
  398. btn_play.onRelease = function() {
  399. ps = true;
  400. btn_play._visible = false;
  401. btn_Stop._visible = true;
  402. bfs_pause();
  403. };
  404. btn_Stop.onRelease = function() {
  405. ps = false;
  406. btn_play._visible = true;
  407. btn_Stop._visible = false;
  408. bfs_pause();
  409. };
  410. btn_nextFrame.onRelease = function() {
  411. 下一集();
  412. };
  413. btn_prevFrame.onRelease = function() {
  414. 上一集();
  415. };
  416. function bfs_pause() {
  417. if (ps) {
  418.   _root.bfs.my_ns.pause(false);
  419. } else {
  420.   _root.bfs.my_ns.pause(true);
  421. }
  422. }
  423. //---------------------------------------------
  424. function 下一集() {
  425. _root.bfs.musicPlayId++;
  426. _root.bfs.listPlayId = _root.bfs.listOpenId;
  427. _root.bfs.isPlaying = true;
  428. 劇集列表txt.text = "";
  429. PlayList();
  430. trace(_root.bfs.musicPlayId);
  431. }
  432. function 上一集() {
  433. _root.bfs.musicPlayId--;
  434. _root.bfs.listPlayId = _root.bfs.listOpenId;
  435. _root.bfs.isPlaying = true;
  436. 劇集列表txt.text = "";
  437. PlayList();
  438. trace(_root.bfs.musicPlayId);
  439. }
復(fù)制代碼

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?中文注冊

x

簽到天數(shù): 134 天

[LV.7]常住居民III

鮮花(196) 雞蛋(0)
沙發(fā)
發(fā)表于 2012-6-22 18:23 | 只看該作者
感謝啊城分享~~辛苦了~~端午節(jié)快樂!

簽到天數(shù): 400 天

[LV.9]以壇為家II

鮮花(0) 雞蛋(0)
板凳
發(fā)表于 2012-6-22 18:42 | 只看該作者
{:soso__8961432591078930798_3:}阿城太專業(yè)了  問好  端午快樂

簽到天數(shù): 54 天

[LV.5]常住居民I

鮮花(5) 雞蛋(0)
地板
發(fā)表于 2012-6-22 21:57 | 只看該作者
視頻網(wǎng)站盜鏈需要這個(gè),阿城高手啊!{:soso_e179:}

簽到天數(shù): 425 天

[LV.9]以壇為家II

鮮花(0) 雞蛋(0)
5#
發(fā)表于 2012-6-22 23:08 | 只看該作者
清音王梓 發(fā)表于 2012-6-22 21:57
視頻網(wǎng)站盜鏈需要這個(gè),阿城高手啊!

這個(gè)真的很專業(yè)!
您需要登錄后才可以回帖 登錄 | 中文注冊

本版積分規(guī)則

關(guān)閉

站長推薦上一條 /1 下一條

網(wǎng)站地圖|小黑屋|Archiver|中畫網(wǎng) ( 蜀ICP備11021737號-2 )|網(wǎng)站地圖

GMT+8, 2025-6-28 18:04 , Processed in 0.050187 second(s), 17 queries , MemCached On.

上網(wǎng)要文明 發(fā)言要理性

Powered by Discuz! © 2008-2021 YinHuaBBS.CN

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久综合精品国产二区无码| 婷婷久久综合| 精品国产综合成人亚洲区| 丁香五月缴情综合网| 欧美亚洲另类久久综合婷婷| 亚洲国产综合人成综合网站| 丁香婷婷综合网| 99久久国产综合精品网成人影院 | 久久综合亚洲欧美成人| 精品国产国产综合精品| 欧美日韩国产综合新一区| 99久久伊人精品综合观看| 伊人久久大香线焦综合四虎| 国产91色综合久久免费| 99久久婷婷国产综合精品草原| HEYZO无码综合国产精品| 国产福利电影一区二区三区久久久久成人精品综合 | 婷婷五月综合色视频| 亚洲五月激情综合图片区| 色噜噜狠狠成人中文综合| 亚洲色婷婷综合久久| senima亚洲综合美女图| 国产精品亚洲综合久久| 色综合久久最新中文字幕| 欧美亚洲综合另类成人| 色综合中文字幕| 久久久久青草线蕉综合超碰| 国产成人精品综合在线观看| 久久精品综合一区二区三区| 久久综合精品国产二区无码| 一本一道久久综合狠狠老| 最新狠狠色狠狠色综合| 一本一本久久A久久综合精品| 久久久久久青草大香综合精品 | 久久婷婷五月综合97色直播 | 亚洲综合成人网| 激情五月综合综合久久69| 亚洲欧美综合区自拍另类| 亚洲人成伊人成综合网久久久| 狠狠88综合久久久久综合网| 国产精品综合久成人|