【转】油猴百度云批量离线插件,批量离线防验证码

  • 首页 > 代码研究院
  • 作者:梓熙
  • 时间: 2016年9月28日 18:49
  • 字数:10513 个
  • 字号:
  • 评论:0 条
  • 浏览:217 次
  • 百度:百度已收录
  • 分类: 代码研究院
  • 时间:2016-9-28 18:49 热度:217° 评论:0 条 


    脚本安装方法:(大牛请忽略此步骤)

    第一种方法,先安装下面的插件

    1、

    2、


    3、


    4、


    安装完毕。

    插件界面:







    链接: http://pan.baidu.com/s/1i48cupR 密码: 吾A


    -------------------------------------------------------------------------------------------------


    二种方法:打开百度云个人主页,在浏览器按F12, 点到console

    把下面的代码复制进去,然后回车(Enter),发发现浏览器刷新了,再重新打开离线下载

    就会出现个批量离线了



    // ==UserScript==
    // @name         百度批量离线
    // @namespace    http://www.52pojie.cn/
    // @version      0.6
    // @description  批量离线辅助脚本
    // @author       fenghengzhi
    // @match        http://pan.baidu.com/disk/*
    // @match        http://yun.baidu.com/disk/*
    // @match        https://pan.baidu.com/disk/*
    // @match        https://yun.baidu.com/disk/*
    // @grant        none
    // @run-at      document-end
    // @require     http://www.52pojie.cn/
    // @note        v0.2 好用多了,就是有点难看 v0.5简单美化
    // ==/UserScript==
    var urls;
    var i;
    function alertWin(title, msg, w, h) {
        //title='test1';msg='test2';w=300;h=150;
        var titleheight = "22px"; // 窗口标题高度
        var bordercolor = "#666699"; //窗口的边框颜色
        var titlecolor = "#FFFFFF"; // 窗口的标题颜色
        var titlebgcolor = "#666699"; // 窗口的标题背景色
        var bgcolor = "#FFFFFF"; // 内容背景色
        var iWidth = document.documentElement.clientWidth; //这个窗口的宽度
        var iHeight = document.documentElement.clientHeight; //这个窗口的高度
    
        //背景层的格式
        var bgObj = $("<div/>");
    
        bgObj.css("position","absolute");
        bgObj.css("left","0px");
        bgObj.css("top","0px");
        bgObj.css("width",iWidth+"px");
        bgObj.css("height",Math.max(document.body.clientHeight, iHeight)+"px");
        bgObj.css("filter","Alpha(Opacity=30)");
        bgObj.css("opacity","0.3");
        bgObj.css("background-color","#000000");
        bgObj.css("z-index","1000");
    
        $("body").append(bgObj);
    
        var iframe2 =  $("<iframe/>");
    
        iframe2.css("position","absolute");
        iframe2.css("top","0px");
        iframe2.css("filter","Alpha(Opacity=30)");
        iframe2.css("opacity","0.3");
        iframe2.css("background-color","#000000");
        iframe2.css("z-index","1001");
        iframe2.css("border-style","none");
        iframe2.css("border-width","0px");
        iframe2.css("border","0px");
        iframe2.css("width",iWidth+"px");
        iframe2.css("height",iHeight+"px");
    
        bgObj.append(iframe2);
    
        //创建一个弹出层
        var msgObj = $("<div/>");
        //设置弹出的层的样式
        msgObj.css("position","absolute");
        msgObj.css("font","1px '宋体'");
        msgObj.css("top",(iHeight - h) / 2+"px");
        msgObj.css("left",(iWidth - w) / 2+"px");
        msgObj.css("width",w+"px");
        msgObj.css("height",h+"px");
        msgObj.css("text-align","center");
        msgObj.css("border","1px solid " + bordercolor);
        msgObj.css("background-color",bgcolor);
        msgObj.css("padding","1px");
        msgObj.css("line-height","22px");
        msgObj.css("z-index","1001");
    
        $("body").append(msgObj);
        //创建一个table用于容纳层上的内容
        var table = $("<table/>");
        //将Table放到弹出层上
        msgObj.append(table);
        //设置table的格式
        table.css("margin","0px");
        table.css("border","0px");
        table.css("padding","0px");
        table.attr("cellSpacing",0);
        //插入一行用于显示标题
        var tr = $("<tr/>");
        table.append(tr);
    
        //插入一个单元格用于容纳标题
        var titleBar = $("<td/>");
        tr.append(titleBar);
        titleBar.css("width","100%");
        titleBar.css("width",titleheight + "px");
        titleBar.css("text-align","left");
        titleBar.css("padding","3px");
        titleBar.css("margin","0px");
        titleBar.css("font","bold 13px '宋体'");
        titleBar.css("color",titlecolor);
        titleBar.css("border","1px solid " + bordercolor);
        titleBar.css("cursor","move");
        titleBar.css("background-color",titlebgcolor);
    
        titleBar.css("paddingLeft","10px");
        //设置标题
        titleBar.text(title);
        //设置曾德拖动事件
        var moveX = 0;
        var moveY = 0;
        var moveTop = 0;
        var moveLeft = 0;
        var moveable = false;
        var docMouseMoveEvent = document.onmousemove;
        var docMouseUpEvent = document.onmouseup;
        //鼠标点击标题
        titleBar.mousedown(function() {
            var evt = getEvent();
            moveable = true;
            moveX = evt.clientX;
            moveY = evt.clientY;
            moveTop = parseInt(msgObj.css("top"));
            moveLeft = parseInt(msgObj.css("left"));
            //鼠标拖动
            function getEvent() {
                return window.event || arguments.callee.caller.arguments[0];
            }
            document.onmousemove = function() {
                if (moveable) {
                    var evt = getEvent();
                    var x = moveLeft + evt.clientX - moveX;
                    var y = moveTop + evt.clientY - moveY;
                    if (x > 0 && (x + w < iWidth) && y > 0 && (y + h < iHeight)) {
                        msgObj.css("left",x + "px");
                        msgObj.css("top", y + "px");
                    }
                }
            };
            document.onmouseup = function() {
                if (moveable) {
                    document.onmousemove = docMouseMoveEvent;
                    document.onmouseup = docMouseUpEvent;
                    moveable = false;
                    moveX = 0;
                    moveY = 0;
                    moveTop = 0;
                    moveLeft = 0;
                }
            };
        });
    
        //关闭按钮事件
        var closeBtn = $("<td/>");
        tr.append(closeBtn);
        closeBtn.css("cursor","pointer");
        closeBtn.css("text-align","right");
        closeBtn.css("padding","2px");
        closeBtn.css("background-color",titlebgcolor);
        closeBtn.append($("<span/>").css("font-size","15pt").css("color",titlecolor).text("×"));
        closeBtn.click(function() {
            bgObj.remove();
            msgObj.remove();
        });
    
        //弹出的消息窗口内容
        var msgBox = $("<td/>");
        table.append($("<tr/>").append(msgBox));
        msgBox.css("font","10pt '宋体'");
        msgBox.attr("colSpan",2);
        msgBox.text(msg);
        //层上模板名称的内容
        var nameBox = $("<tr/>");
        table.append(nameBox);
        nameBox.css("height","90px");
        //var nameLable = $("<td/>");
        //nameBox.append(nameLable);
        //nameLable.css("font","12pt '宋体'");
        //nameLable.css("text-align","center");
        //nameLable.html("<br/>输入身份证号:<br/>");
        var nametext = $("<td/>");
        nameBox.append(nametext);
        nametext.css("font","12pt '宋体'");
        nametext.css("text-align","center");
        nametext.attr("colSpan","2");
        nametext.append($("<textarea/>").attr("id","multi_urls").css("width","95%").css("height","80%"));
        //层上动作按钮的内容
    
        var submitBox = $("<tr/>");
        table.append(submitBox);
        var submitBtn = $("<td/>");
        submitBox.append(submitBtn);
        submitBtn.css("text-align","center;");
        submitBtn.attr("colSpan","2");
        submitBtn.append($("<button/>").text("确定").click(function(){
            urls=$("#multi_urls").val().split("\n");
            closeBtn.click();
            Multi_offline();
            console.debug(urls);
        }));
    }
    function add_multi_button(){
        if($("#offlinelist-dialog").css("display")!="block") return setTimeout(arguments.callee,100);
        $("#offlinelist-dialog").find(".dialog-control").children().click();
        var a=$("#_disk_id_2");
        var b=a.clone();
        b.find(".text").text("批量离线");
        b.attr('id','multi_download');
        b.click(function(){
            alertWin("输入链接","",300,150);
        });
        a.after(b);
    }
    function wait_page_complete(){
        $("span:contains('离线下载')[class='text']").click();
        add_multi_button();
    }
    (function() {
        'use strict';
        setTimeout(wait_page_complete,1000);
        // Your code here...
    })();
    
    
    window.Multi_offline=function(urls){
        $('#_disk_id_2').click();
        i=0;
        offline_download();
    };
    function offline_download(){
        $("#_disk_id_2").click();//点击新建按钮
        wait_newoffline_dialog();
    }
    function wait_newoffline_dialog(){//等待新建窗口
        if($("#newoffline-dialog").css("display")!="block") return setTimeout(arguments.callee,1000);
        $("#share-offline-link").val(urls[i]);
        $("#newoffline-dialog").find("span:contains('确定')[class='text']").click();//确定按钮
        check_code();
    }
    
    function check_code(){
        if($("#offlinelist-dialog").css("display")!="block" && $("#dialog1").css("display")!="block") return setTimeout(arguments.callee,100);
        if($("#dialog1").css("display")=="block"){//弹出验证码
            wait_checkcode_input();
        }
        else  wait_complete();//没有弹出验证码
    }
    function wait_checkcode_input(){
        $("#dialog1").find(".input-code").focus();
        if($("#dialog1").find(".input-code").val().length!=4) return setTimeout(arguments.callee,100);
        $("#dialog1").find("span:contains('确定')[class='text']").click();
        check_code();
    }
    function wait_complete(){
        if($("#offlinelist-dialog").css("display")!="block") return setTimeout(arguments.callee,1000);
        i++;
        if(i>=urls.length) return;//批量下载完成,脚本结束
        else offline_download();
    }




    正文到此结束
    您阅读这篇文章共花了: 
    本文链接:http://zixiylw.top/52.html
    版权声明:若无特殊注明,本文皆为《梓熙》原创,转载请保留文章出处。
    捐赠支持:如果觉得这篇文章对您有帮助,请“扫一扫”鼓励作者!

    热门推荐

    Hello! How do you see it?

    你还可以输入250 / 250 个字

    嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗


    既然没有吐槽,那就赶紧抢沙发吧!
    返回顶部    返回首页    手气不错    后花园   
    版权所有:梓熙博客    站点维护: 梓熙   +主题模板:【PJAX 梓熙主题】        sitemap