Greasy Fork

Greasy Fork is available in English.

某东,某喜-收取电力

2020/3/28 下午4:51:41

目前为 2020-04-09 提交的版本,查看 最新版本

// ==UserScript==
// @name        某东,某喜-收取电力
// @namespace   Violentmonkey Scripts
// @match       https://wqs.jd.com/pingou/dream_factory/*.html
// @match       https://wqs.jd.com/pingou/dream_factory/*.html?*
// @match       https://wqs.jd.com/pingou/dream_factory/market.html
// @match       https://wqs.jd.com/pingou/dream_factory/market.html?*
// @grant        GM_getValue
// @grant        GM_setValue
// @version     1.5
// @author      zhangdaren([email protected])
// @update      smilewind([email protected])
// @description 2020/3/28 下午4:51:41
// ==/UserScript==

(function() {
    console.log('奥利给!!!京喜工厂自动收取电力,开干~');
    console.log('每天7~21点之间自动加电~');
    GM_setValue("add_dream","加电");
    setTimeout(function(){
        lifecycle();
    }, 4000);
})();

function lifecycle() {

    let timeid = setInterval(function() {
        //自动加电力
        var add_dream = GM_getValue("add_dream");
        var myDate = new Date();
        var hours=myDate.getHours();       //获取当前小时数(0-23)
        //console.log("hours:" + hours + " add_dream:" + add_dream);
        if (hours>=7&&hours<=21&&add_dream=="加电") {
            //console.log("加电力")
            document.getElementsByClassName("icon icon_add")[0].click();
            if (document.getElementsByClassName("g_error_body")[0]) {
                var reg = RegExp(/加电上限/);
                var ERR = document.getElementsByClassName("g_error_body")[0].innerText;
                if (ERR.match(reg)){
                    document.getElementsByClassName("g_error_btn")[0].click();
                    //console.log("满电");
                    GM_setValue("add_dream","满电");
                }
            }
        } else if (hours<7||hours>21) {
            //console.log("恢复变量");
            GM_setValue("add_dream","加电");
        }
        if (document.getElementsByClassName("g_error_btn")[0]) {
            document.getElementsByClassName("g_error_btn")[0].click();
        }
        //自动获取电力
        if (document.querySelector(".alternator-num-n")) {
            var num = document.querySelector(".alternator-num-n").innerText;
            console.log("监测电力值 ->> " + num);
            num = parseFloat(num);
            if (num >= 300) {
                console.log("电力值到300啦")
                document.getElementById("alternator").click();
                document.getElementsByClassName('simple_dialog_txt_btn_txt')[0].click();
                document.getElementsByClassName('simple_dialog_txt_btn_txt')[0].click();
                //                 clearInterval(timeid);
                setTimeout(function() {
                    document.getElementsByClassName("close")[0].click();
                }, 2000)
            }
        } else if (document.querySelector(".floating_title")) {
            var secStr = document.querySelector(".floating_title").innerText;
            console.log("监测倒计时 ->> " + secStr);
            if (secStr === "已完成") {
                console.log("完成啦")
                document.querySelector(".floating_title").click();
                clearInterval(timeid);
                setTimeout(function() {
                    lifecycle();
                }, 2000)
            } else if (secStr === "30s") {
                console.log("滑动页面")
                document.querySelector(".scroll-view").scrollTo(0, 800);
            }
        }
    }, 1000);
}