返回列表 发帖

【教程】迅雷离线,如何离线超过2000个文件的BT种子。

本帖最后由 枫谷剑仙 于 2013-12-7 21:57 编辑

迅雷离线下载每个BT种子最大只支持2000个文件,所以我研究了下怎么建立统一种子的多个任务来下载所有的文件。
这里我用TLMC神种主体部分为例,神种里面有5000多个文件,而且特别大。

  • 打开新版迅雷客户端,在此直接添加BT任务。因为不需要下载到本地,可以选择“手动下载”。
    http://ww4.sinaimg.cn/large/6c84b2d6gw1eb3xuh6z13j20o70kg0vb.jpg
  • 在此建立离线任务(网页版直接添加BT任务会失败,所以得在这里添加)
    http://ww2.sinaimg.cn/large/6c84b2d6gw1eb3xur91xzj20j803kwel.jpg
  • 然后访问网页版,可以看到任务已经建立并秒掉了。但是其大小明显小于神种大小。是因为迅雷只建立了前2000个文件的任务。
    http://ww3.sinaimg.cn/large/6c84b2d6gw1eb3xuynyk1j20qc0de0ub.jpg
  • 打开这个BT任务,点击编辑BT任务。
    http://ww1.sinaimg.cn/large/6c84b2d6gw1eb3xveyojaj20lu0bz0tp.jpg
  • 进入任务编辑界面
    http://ww4.sinaimg.cn/large/6c84b2d6gw1eb3xvl1fmsj20fn0d0dgn.jpg
  • 这个时候对该网页运行如下JS代码,不会用JS代码的,帖子最后有介绍。
    1. function maintable(){
    2.         var rulelist = document.getElementById("rulelist");
    3.                 var rwlis = rulelist.getElementsByClassName("selit");
    4.         spacetable = '';
    5.         spacetable += '<div id="rlinfo">该BT种子总共有 '+rwlis.length+' 个文件。</div>';
    6.         spacetable += '<label>开始序号<input id="liststart" type="text" /></label><br />';
    7.         spacetable += '<label>结束序号<input id="listend" type="text" /></label><br />';
    8.         spacetable += '<input id="listcheck" type="button" value="选择" onClick="getlistnum(\'liststart\',\'listend\')" />';
    9.         spacetable += '<div id="slinfo"/>';
    10.         return spacetable;
    11. }
    12. function getlistnum(startname,endname){
    13.         var liststart = document.getElementById(startname).value;
    14.         var listend = document.getElementById(endname).value;
    15.         liststart=parseInt(liststart);
    16.         listend=parseInt(listend);
    17.         checklist(liststart,listend);
    18. }
    19. function checklist(start,end){
    20.         var slinfo = document.getElementById("slinfo");
    21.         if(isNaN(start) || isNaN(end) || start < 1 || start > end){
    22.                 slinfo.innerHTML = '开始序号:' + start + '<br />结束序号:' + end + '<br /><font style="color:#F00">请确保开始序号与结束序号都是正整数,且开始序号大于结束序号。</font>';
    23.                 return;
    24.         }else{
    25.                 var rulelist = document.getElementById("rulelist");
    26.                 var rwlis = rulelist.getElementsByClassName("selit");
    27.                 var rlinfo = document.getElementById("rlinfo");
    28.                 rlinfo.innerHTML = '该BT种子总共有 '+rwlis.length+' 个文件。';
    29.                 if (end > rwlis.length){
    30.                         end = rwlis.length;
    31.                         if (start > end){
    32.                                 slinfo.innerHTML = '输入数字过大,BT任务里只有'+ rwlis.length +'个文件';
    33.                                 return;
    34.                         }
    35.                 }
    36.                 slinfo.innerHTML = '程序开始自动选择文件<br />开始序号:' + start + '<br />结束序号:' + end + '<br />共选择' + (end-start+1) + '个文件';
    37.         }
    38.         
    39.         for (id=0;id<rwlis.length;id++){
    40.                 if (id >= start-1 && id <= end-1){
    41.                         checkit(rwlis[id],true);
    42.                 }else{
    43.                         checkit(rwlis[id],false);
    44.                 }
    45.         }
    46.         bt_manual_select('edit');bt_check_click('edit');
    47. }
    48. function checkit(obj,value){
    49. /*        if(value){
    50.                 if(obj.checked == false){
    51.                         obj.click();
    52.                 }
    53.         }else{
    54.                 if(obj.checked == true){
    55.                         obj.click();
    56.                 }
    57.         }*/
    58.         if(value){
    59.                 if(obj.checked == false){
    60.                         obj.checked = true;
    61.                 }
    62.         }else{
    63.                 if(obj.checked == true){
    64.                         obj.checked = false;
    65.                 }
    66.         }
    67. }

    68. ;(function(window){
    69.         var d,i,c,clickHandler;
    70.         if(window.lixianselect){
    71.                 return false;
    72.         }
    73.         if(!window.FormData){
    74.                 return false;        
    75.         }
    76.         
    77.         clickHandler = function(){
    78.                 d.parentNode && document.body.removeChild(d);
    79.                 c.removeEventListener('click',clickHandler);        
    80.                 d = i = c = null;
    81.                 delete window.lixianselect;                                
    82.         }
    83.         
    84.         i = document.createElement('div');
    85.         i.style.cssText = [
    86.                  ''
    87.                 ,'width:180px'
    88.                 ,''
    89.         ].join(';');
    90.         i.innerHTML = maintable();
    91.         
    92.         c = document.createElement('div');
    93.         c.innerHTML = '关&#x95ED';//关闭
    94.         c.style.cssText = [
    95.                  ''
    96.                 ,'width:40px'
    97.                 ,'box-shadow:0 0 2px #333'
    98.                 ,'position:absolute'
    99.                 ,'top:0'
    100.                 ,'left:-40px'
    101.                 ,'line-height:25px'
    102.                 ,'padding:0'
    103.                 ,'margin:0'
    104.                 ,'border-radius:0'
    105.                 ,'border:none'
    106.                 ,'background:#515151'
    107.                 ,'z-index:99999'
    108.                 ,'text-align:center'
    109.                 ,'color:#aaa'
    110.                 ,'cursor:pointer'
    111.                 ,''
    112.         ].join(';');
    113.         c.addEventListener('click',clickHandler);

    114.         d = document.createElement('div');
    115.         d.style.cssText = [
    116.                  ''
    117.                  ,'box-shadow:0 0 10px #333'
    118.                  ,'position:fixed'
    119.                  ,'top:0'
    120.                  ,'right:0'
    121.                  ,'z-index:1000000'
    122.                  ,'font-family:arial,sans-serif'
    123.                  ,'padding:5px'
    124.                  ,'margin:0'
    125.                  ,'border-radius: 0 0 0 5px'
    126.                  ,'background:#F5F8FA'
    127.                  ,''
    128.         ].join(';');
    129.         d.appendChild(c);
    130.         d.appendChild(i);
    131.         document.body.appendChild(d);
    132.         window.lixianselect = d;        
    133. })(window);
    复制代码
  • 网页右上角便会出来一个窗口,在这里设置你希望选择的序号,点击选择后便会改变选择。因为前一个任务已经是前2000个文件,因此这里就选择2001-4000号文件。
    http://ww3.sinaimg.cn/large/6c84b2d6gw1eb3xvr02vjj20rm0fngn9.jpg
  • 因为相同BT种子的任务可能合并,可以为任务改名,还便于区分,。
    http://ww2.sinaimg.cn/large/6c84b2d6gw1eb3xvxuzvij20eh09tmxn.jpg


建议配合此方法使用:批量下载超大文件数量的迅雷离线的方法



我要img代码阿

技术贴

TOP

技术流
真复杂

TOP

2000个..................

TOP

学习了。
重庆医科大学啊,不错。楼主有前途~

TOP

跳过技术,直接回复。

TOP

回复 5# Life


    哪里看到我是重医的了

TOP

回复  Life


    哪里看到我是重医的了
枫谷剑仙 发表于 2013-12-2 20:26 http://bbs.theworld.cn/images/common/back.gif

教务系统的截图。

TOP

回复 8# 412268499


    也没看见重医的字样啊

TOP

回复  412268499


    也没看见重医的字样啊
枫谷剑仙 发表于 2013-12-2 23:47 http://bbs.theworld.cn/images/common/back.gif

cqmu。。。

TOP

回复 10# 412268499


    知道这个的人很少吧

TOP

回复  412268499


    知道这个的人很少吧
枫谷剑仙 发表于 2013-12-3 20:36 http://bbs.theworld.cn/images/common/back.gif

随手百度下。。。

TOP

返回列表