🎨香香宅腐💞

https://boylove.cc

xiaohan231 (515)2024/08/03

V2.3版,激活码:555666
二维码导入
{
    "bookSourceComment": "",
    "bookSourceGroup": "🔭 其他,🎊 常用,🎨 漫画",
    "bookSourceName": "🎨香香宅腐💞",
    "bookSourceType": 2,
    "bookSourceUrl": "https:\/\/boylove.cc",
    "bookUrlPattern": "https:\/\/.*\/book\/\\d+\/?img_host=\\d",
    "concurrentRate": "",
    "customOrder": 0,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "exploreUrl": "<js>\neval(String(source.loginUrl));\nvar exploreUrl = [];\nAccount = (cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0) ? cache.get(java.md5Encode16(Get('url') + \"Account_1\")) : Map('账号:');\nif(String(Account).length > 0) {\n    if (java.ajax(Get('url')).includes(Account)) {\n        login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + '\\n账号:' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛')));\n    } else {\n        Login();\n    }\n    if(cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0) {\n        cache.put(java.md5Encode16(Get('url') + \"Account_1\"), Account);\n        exploreUrl.push(explore('✣【' + Account + '】✣', '', 1, 1, false));\n        var signdate = sign();\n        cache.put(\"xxzf-sign\", signdate);\n        exploreUrl.push(explore(signdate + '✔️', '', 1, 0.45, false));\n        exploreUrl.push(explore('收藏', `{{Get('url')}}\/home\/api\/favorite?tp=1-{{page}}&apimhstatus=all`, 1, 0.45, false));\n    }\n}\ntitle = '✣       ✣  榜  单  ✣       ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nurl1 = `{{Get('url')}}\/home\/api\/getpage\/tp\/1-topestmh-<,{{page}}>`;\nexploreUrl.push(explore('排行', url1, 1, 0.25, false));\nurl2 = `{{Get('url')}}\/home\/api\/getpage\/tp\/1-newest-<,{{page}}>`;\nexploreUrl.push(explore('最新', url2, 1, 0.25, false));\nurl3 = `{{Get('url')}}\/home\/api\/getpage\/tp\/1-cnxh-{{page}}`;\nexploreUrl.push(explore('推荐', url3, 1, 0.25, false));\ntitle = '✣       ✣  标  签  ✣       ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nvar kind = org.jsoup.Jsoup.parse(java.ajax(Get('url') + '\/home\/book\/cate.html')).select('.tagBtnClass');\nO = `{{Get('o')}}`;\nP = `{{Get('p')}}`;\nQ = `{{Get('q')}}`;\nfor (i in kind) {\n    url = `{{Get('url')}}\/home\/api\/cate\/tp\/1-${kind[i].attr('data-value')}-${P}-1-{{page}}-${Q}-1-${O}`;\n    exploreUrl.push(explore(kind[i].attr('data-value') + kind[i].select('span').text(), url, 1, 0.25, false));\n}\nBID = (kind.length % 3) < 1 ? 0 : (3 - (kind.length % 3));\nfor (i = 0; i < BID; i++) {\n   exploreUrl.push(explore('', '', 1, 0.25, false)); \n}\nJSON.stringify(exploreUrl);\n<\/js>",
    "header": "<js>\nvar Proxy = Map('代理:').split(\",\");\nheaders={\n    \"User-Agent\": \"Mozilla\/5.0 (Linux; Android 10; K) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/127.0.0.0 Mobile Safari\/537.36 EdgA\/127.0.0.0\",\n    \"Referer\": Get('url'),\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n<\/js>",
    "jsLib": "function explore(title, url, Grow, Basis, bool) {\n    style = {\n        title:title,\n        url:url,\n        style:{\n            layout_flexGrow:Grow,\n            layout_flexBasisPercent:Basis,\n            layout_wrapBefore: bool\n        }\n    };\n    return style;\n}\nfunction Get(e) {\n    const { java, source, cookie, cache } = this;\n    var Variable = String(source.getVariable()).length > 0 ? source.getVariable() : '{}';\n    var get = JSON.parse(Variable);\n    return get[e];\n}\nfunction Put(data) {\n    const { java, source, cookie, cache } = this;\n    var Variable = String(source.getVariable()).length > 0 ? source.getVariable() : '{}';\n    var get = JSON.parse(Variable);\n    data = get['TC_to_SC'] == true ? java.t2s(data) : data;\n    return JSON.parse(data);\n}\nfunction Map(e) {\n    const { java, source, cookie, cache } = this;\n    var infomap = source.getLoginInfoMap();\n    var map = (infomap !== null && infomap.get(e)) ? infomap.get(e) : '';\n    return map;\n}\nfunction Num(e) {\n    e = String(e);\n    var num = e.length > 8 ? (e.substring(0, e.length - 8) + \"亿\") : (e.length > 4 ? (e.substring(0, e.length - 4) + \"万\") : e);\n    return num;\n}\nfunction sleep(milliseconds) {\n    var start = new Date().getTime();\n    while (new Date().getTime() - start < milliseconds) {\n    }\n}\nfunction Checkwait(e) {\n    while (e == '') {\n        sleep(10000);\n        return true;\n    }\n    return e;\n}\nfunction sign() {\n    const { java, source, cookie, cache } = this;\n    var get = JSON.parse(source.getVariable());\n    var requestBody = 'td=&auto=true&type=1';\n    var headers = '{\"Content-Type\":\"application\/x-www-form-urlencoded\"}';\n    var option = {\n        \"method\": \"POST\",\n        \"body\": String(requestBody),\n        \"headers\": String(headers)\n    };\n    var Url = get['url'] + '\/home\/Api\/signupNew.html,' + JSON.stringify(option);\n    var sign = JSON.parse(java.ajax(Url));\n    var date = String(java.timeFormat(new Date().getTime())).replace(\/\\d+\\\/(.*)\\s.*\/, '$1');\n    java.longToast('【登录提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + '\\n账号:' + cache.get(java.md5Encode16(get['url'] + \"Account_1\")) + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + (sign.code < 400 ? ('\\n📆今日签到成功~\\n┋┋') : ('\\n📆' + sign.msg + '\\n┋┋')) + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    return date;\n}",
    "lastUpdateTime": "1722691884101",
    "loginCheckJs": "",
    "loginUi": "[\n  { name: \"激活码:\", type: \"text\" },\n  { name: \"代理:\", type: \"text\" },\n  { name: \"账号:\", type: \"text\" },\n  { name: \"密码:\", type: \"password\" },\n  {\n    name: \"      💡登录账号💡      \",\n    type: \"button\",\n    action: \"Login()\"\n  },\n  {\n    name: \"      💡源站更新💡      \",\n    type: \"button\",\n    action: \"update()\"\n  },\n  { name: \"  查看当前  \", type: \"button\", action: \"look(0)\" },\n  { name: \"   查看历史   \", type: \"button\", action: \"look(1)\" },\n  { name: \"  恢复默认  \", type: \"button\", action: \"test(0)\" },\n  { name: \"  繁体搜索  \", type: \"button\", action: \"search_TC()\" },\n  { name: \"   繁简转换   \", type: \"button\", action: \"TC_to_SC()\" },\n  { name: \"  目录整理  \", type: \"button\", action: \"settle()\" },\n\n  { name: \"                      ༺ˇ»`ʚ  点击切换源站  ɞ´«ˇ༻                     \", type: \"button\" },\n  { name: \" ① 香香 ❶ \", type: \"button\", action: \"$(1)\" },\n  { name: \" ② 香香 ② \", type: \"button\", action: \"$(2)\" },\n  { name: \" ③ 香香 ③ \", type: \"button\", action: \"$(3)\" },\n  { name: \" ④ 香香 ④ \", type: \"button\", action: \"$(4)\" },\n  { name: \" ⑤ 香香 ⑤ \", type: \"button\", action: \"$(5)\" },\n  { name: \" ⑥ 香香 ⑥ \", type: \"button\", action: \"$(6)\" },\n\n  { name: \"                      ༺ˇ»`ʚ  点击切换会员  ɞ´«ˇ༻                    \", type: \"button\" },\n  { name: \"      全 部      \", type: \"button\", action: \"o(2)\" },\n  { name: \"      一 般      \", type: \"button\", action: \"o(0)\" },\n  { name: \"       VIP      \", type: \"button\", action: \"o(1)\" },\n\n  { name: \"                      ༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻                    \", type: \"button\" },\n  { name: \"      全 部      \", type: \"button\", action: \"p(2)\" },\n  { name: \"      连 载      \", type: \"button\", action: \"p(0)\" },\n  { name: \"      完 结     \", type: \"button\", action: \"p(1)\" },\n\n  { name: \"                      ༺ˇ»`ʚ  点击切换分级  ɞ´«ˇ༻                    \", type: \"button\" },\n  { name: \"      全 部      \", type: \"button\", action: \"q(0)\" },\n  { name: \"      清 水      \", type: \"button\", action: \"q(1)\" },\n  { name: \"      有 肉     \", type: \"button\", action: \"q(2)\" },\n\n  { name: \"                      ༺ˇ»`ʚ  点击评论排序  ɞ´«ˇ༻                     \", type: \"button\" },\n  { name: \"           最新评论           \", type: \"button\", action: \"r(0)\" },\n  { name: \"           最热评论           \", type: \"button\", action: \"r(1)\" },\n\n  {\n    name: \"                   设置填写的页数为评论加载页数                   \",\n    type: \"button\",\n    action: \"f()\"\n  },\n  { name: \"页数:\", type: \"text\" },\n  {\n    name: \"            💡   源   站   打   印   💡            \",\n    type: \"button\",\n    action: \"test()\"\n  }\n]",
    "loginUrl": "var fburl_0 = 'https:\/\/fuhouse.club\/bl';\nvar fburl = Get('url') + '\/home\/adopt\/getadopt';\noriginal = {\n    'ci0': 0,\n    'ci1': 0,\n    'ci2': 0,\n    'ci3': 0,\n    'f': 5,\n    'o': 2,\n    'p': 2,\n    'q': 0,\n    'r': 0,\n    'search_TC': false,\n    'TC_to_SC': true,\n    'settle': false,\n    'url': 'https:\/\/boylove.cc',\n    'urls': [\n        'https:\/\/boylove.cc',\n        'https:\/\/boylove.cc'\n    ]\n};\ntry {\n    $$$ = JSON.parse(source.getVariable());\n    if ($$$ == null) {\n        error;\n    } else {\n        '';\n    };\n} catch (e) {\n    $$$ = original;\n    put($$$);\n}\nx = '⓪①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚';\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")));\nvar Option = {\n    \"method\": \"GET\",\n    \"headers\": Headers\n};\nfunction test(e) {\n    if (e == undefined) {\n        return java.log('\\n' + JSON.stringify($$$['urls'], null, '\\t')) + login('【源站输出提示】' + n(2) + '源站已打印完毕,请到日志查看');\n    }\n    if (e == 0) {\n        login('【初始化提示】' + n(2) + '已恢复默认设置');\n        return put(original);\n    }\n    date1 = new Date().getTime();\n    html = java.ajax($$$.urls[e]);\n    date2 = new Date().getTime();\n    t = date2 - date1;\n    time = t \/ 1000 + 's';\n    c = String(html).indexOf('香香');\n    logTime = '【' + name(e) + '】\\n┋┋\\n' + '解析时间:' + time;\n    if (c == -1 || t > 5000) {\n        return login('【访问失败提示】' + n(2) + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️源站已失效(可能被墙)♣️\\n┋┋\\n请更新网址\/切换源站\/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    } else if (t < 1000) {\n        return login('【网络环境优良】' + n(2) + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低,推荐使用此站❤️\\n┋┋\\n网络环境优良,请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        return login('【网络环境一般】' + n(2) + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般,勉强可使用♦️\\n┋┋\\n请切换其他源站或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        return login('【网络环境堪忧】' + n(2) + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高,不建议使用♠\\n┋┋\\n请切换其他源站或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    }\n}\nfunction put(data) {\n    return source.setVariable(JSON.stringify(data, null, '\\t'));\n}\nfunction update() {\n    $$$['urls'].splice(original['urls'].length);\n    host0 = String(java.connect(fburl_0).url()).replace(\/\\\/$\/,'');\n    if (String($$$['urls']).indexOf(host0) === -1) {\n        java.log('\\n✅已添加源站:\\n' + host0);\n        $$$['urls'].push(host0);\n        put($$$);\n    }\n    html = java.ajax(fburl);\n    u = JSON.parse(html).adoptList;\n    for (i in u) {\n        host = String(u[i].adopt_link);\n        if (String($$$['urls']).indexOf(host) === -1) {\n            java.log('\\n✅已添加源站:\\n' + host);\n            $$$['urls'].push(host);\n            put($$$);\n        }\n    }\n    return login('【源站更新提示】' + n(2) + '源站更新完毕,请到日志查看');\n}\nfunction name(e) {\n    if (e == undefined) {\n        e = 0;\n    }\n    return x[e] + ' ' + $$$.urls[e];\n}\nfunction login(e) {\n    if (e == undefined) {\n        return;\n    }\n    java.longToast(e);\n}\nfunction n(e) {\n    n = '\\n';\n    for (m = 1; m < e; m++) {\n        n = n + '\\n';\n    }\n    return n;\n}\nfunction k(e) {\n    k = ' ';\n    for (q = 1; q < e; q++) {\n        k = k + ' ';\n    }\n    return k;\n}\nfunction l(e) {\n    l = '';\n    for (o = 1; o < e; o++) {\n        l = l + '';\n    }\n    return l;\n}\nfunction look(e) {\n    if (e == 0) {\n        return login('【查看当前源站】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + ('\\n ' + '📌' + name($$$.ci0)) + '\\n┋┋' + ('\\n' + '💴会员类型:' + typeO($$$.o)) + '\\n┋┋' + ('\\n' + '⏲️漫画进度:' + typeP($$$.p)) + '\\n┋┋' + ('\\n' + '🃏当前分级:' + typeQ($$$.q)) + '\\n┋┋' + ('\\n' + '📰评论页数:前' + ($$$.f) + '页') + '\\n┋┋' + ('\\n' + '📝评论排序:' + typeR($$$.r)) + '\\n┋┋' + ('\\n🔍繁体搜索:' + ($$$.search_TC == true ? '开启' : '关闭')) + '\\n┋┋' + ('\\n📑繁简转换:' + ($$$.TC_to_SC == false ? '关闭' : '开启')) + '\\n┋┋' + ('\\n🗃目录整理:' + ($$$.settle == false ? '关闭' : '开启')) + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    } else {\n        return login('【查看历史接口】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + ('\\n ci1:' + name($$$.ci1)) + '\\n┋┋' + ('\\n ci2:' + name($$$.ci2)) + '\\n┋┋' + ('\\n ci3:' + name($$$.ci3)) + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n    }\n}\nfunction $(e) {\n    if (e == undefined) {\n        e = result['序号:'];\n        e = e > 0 ? e : '0';\n    }\n    if (\/^ci[123]$\/.test(e)) {\n        eval('i=$$$.' + e);\n    }\n    if (\/\\D|^$\/.test(e) || e < 0 || e >= $$$['urls'].length) {\n        return login('【源站错误提示】' + n(2) + '已选择的源站无效,请重新选择');\n    }\n    $$$['url'] = $$$['urls'][e];\n    $$$['ci3'] = $$$['ci2'];\n    $$$['ci2'] = $$$['ci1'];\n    $$$['ci1'] = $$$['ci0'];\n    $$$['ci0'] = e;\n    put($$$);\n    test(e);\n}\nfunction f(e) {\n    if (e == undefined) {\n        e = result['页数:'];\n        e = e > 0 ? e : '0';\n    }\n    if (e == $$$.f) {\n        return login('【评论加载方案提示】' + n(2) + '正在使用此评论加载方案,无需更换');\n    }\n    login('【评论加载方案提示】' + n(2) + '已经设置评论加载前' + e + '页,请刷新详情');\n    $$$.f = e;\n    return put($$$);\n}\nO = ['一般','VIP','全部'];\nfunction typeO(e) {\n    if (e == undefined) {\n        e = 0;\n    }\n    return O[e];\n}\nfunction o(e) {\n    if (o == undefined) {\n        o = result.o;\n    }\n    if (e == $$$.o) {\n        return login('【会员切换提示】' + n(2) + '已经选择此会员,无需更换');\n    }\n    login('【会员切换提示】' + n(2) + '已经切换到[' + typeO(e) + ']会员');\n    $$$.o = e;\n    return put($$$);\n}\nP = ['连载','完结','全部'];\nfunction typeP(e) {\n    if (e == undefined) {\n        e = 0;\n    }\n    return P[e];\n}\nfunction p(e) {\n    if (p == undefined) {\n        p = result.p;\n    }\n    if (e == $$$.p) {\n        return login('【进度切换提示】' + n(2) + '已经选择此进度,无需更换');\n    }\n    login('【进度切换提示】' + n(2) + '已经切换到[' + typeP(e) + ']进度');\n    $$$.p = e;\n    return put($$$);\n}\nQ = ['全部','清水','有肉'];\nfunction typeQ(e) {\n    if (e == undefined) {\n        e = 0;\n    }\n    return Q[e];\n}\nfunction q(e) {\n    if (q == undefined) {\n        q = result.q;\n    }\n    if (e == $$$.q) {\n        return login('【分级切换提示】' + n(2) + '已经选择此分级,无需更换');\n    }\n    login('【分级切换提示】' + n(2) + '已经切换到[' + typeQ(e) + ']分级');\n    $$$.q = e;\n    return put($$$);\n}\nR = ['最新','热门'];\nfunction typeR(e) {\n    if (e == undefined) {\n        e = 0;\n    }\n    return R[e];\n}\nfunction r(e) {\n    if (r == undefined) {\n        r = result.r;\n    }\n    if (e == $$$.r) {\n        return login('【排序切换提示】' + n(2) + '已经选择此排序,无需更换');\n    }\n    login('【排序切换提示】' + n(2) + '已经切换到[' + typeR(e) + ']排序,请刷新详情');\n    $$$.r = e;\n    return put($$$);\n}\nfunction search_TC() {\n    if (search_TC == undefined) {\n        search_TC = true;\n    }\n    if ($$$.search_TC == true) {\n        login('【繁体搜索提示】' + n(2) + '已关闭繁体搜索,请重新搜索');\n        $$$.search_TC = false;\n        put($$$);\n    } else {\n        login('【繁体搜索提示】' + n(2) + '已开启繁体搜索,请重新搜索');\n        $$$.search_TC = true;\n        put($$$);\n    }\n}\nfunction TC_to_SC() {\n    if (TC_to_SC == undefined) {\n        TC_to_SC = true;\n    }\n    if ($$$.TC_to_SC == true) {\n        login('【简繁转换提示】' + n(2) + '已关闭繁体转换,请刷新书籍');\n        $$$.TC_to_SC = false;\n        put($$$);\n    } else {\n        login('【简繁转换提示】' + n(2) + '已开启繁体转换,请刷新书籍');\n        $$$.TC_to_SC = true;\n        put($$$);\n    }\n}\nfunction settle() {\n    if (settle == undefined) {\n        settle = true;\n    }\n    if ($$$.settle == true) {\n        login('【目录整理提示】' + n(2) + '已关闭目录整理,请刷新目录');\n        $$$.settle = false;\n        put($$$);\n    } else {\n        login('【目录整理提示】' + n(2) + '已开启目录整理,请刷新目录');\n        $$$.settle = true;\n        put($$$);\n    }\n}\nvar result = typeof result !== 'undefined' ? result : {};\nfunction Login() {\n    var Account = result['账号:'] || Map('账号:');\n    var Password = result['密码:'] || Map('密码:');\n    if (Account == '' && Password == '') {\n        login((cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0) ? (Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + '\\n已退出账号:' + cache.get(java.md5Encode16(Get('url') + \"Account_1\")) + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛'))) : ('【登录提示】' + '\\n\\n请输入账号和密码'));\n        cookie.removeCookie(Get('url'));\n        cache.put(java.md5Encode16(Get('url') + \"Account_1\"),'');\n        return;\n    } else if (Account == '') {\n        login('【登录提示】' + '\\n\\n请输入账号');\n        return;\n    } else if (Password == '') {\n        login('【登录提示】' + '\\n\\n请输入密码');\n        return;\n    } else {\n            Code = java.getVerificationCode(Get('url') + '\/captcha.html?' + new Date().getTime());\n            var requestBody = 'username=' + Account + '&password=' + Password + '&vfycode=' + Code + '&type=login';\n            var headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")));\n            var option = {\n                \"method\": \"POST\",\n                \"body\": String(requestBody),\n                \"headers\": String(headers)\n            };\n            Response = java.ajax(Get('url') + '\/home\/auth\/login.html,' + JSON.stringify(option));\njava.log(Response);\n            if (\/成功\/.test(JSON.parse(Response).info)) {\n                cache.put(java.md5Encode16(Get('url') + \"Account_1\"), Account);\n                login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + '\\n账号:' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛')));\n            } else {\n                cookie.removeCookie(Get('url'));\n                cache.put(java.md5Encode16(Get('url') + \"Account_1\"),'');\n                login('【登录提示】' + '\\n\\n♣️登录失败♣️\\n\\n请检查账号和密码');\n            }\n    }\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
        "author": "author",
        "canReName": "reName",
        "coverUrl": "cover",
        "downloadUrls": "durl",
        "init": "<js>\neval(String(source.loginUrl));\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\nvar Option = {\n    \"method\": \"GET\",\n    \"headers\": Headers\n};\nif (String(book['author']) !== \"xiaohan231\") {\n    Account = (cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0) ? cache.get(java.md5Encode16(Get('url') + \"Account_1\")) : Map('账号:');\n    var J = org.jsoup.Jsoup.parse(result);\n    var $1 = s1 => String(java.getElements(s1).attr('content'));\n    var $2 = s1 => String(java.getElements(s1).text());\n    var $2_0 = (s1, s2, s3) => String(java.getElements(s1)[s2].select(s3).text());\n    var $2_1 = (s1, s2) => String(java.getElements(s1)[s2].text());\n    var $3 = s1 => String(J.select(s1).attr('src'));\n\/\/java.log(java.getElements('.book-intro li')[3].text());\n    s = '✦ ' + Num($2_0('.book-intro li',3,'span')) + ',' + '♥ ' + Num($2_0('.book-intro li',2,'span'));\n    k = $2_1('.book-intro li',1).replace(\/[中已]\/g, '') + ',' + $1('[name=\"keywords\"]');\n    t = $2_0('.book-intro li',4,'span');\n    l = $2_0('.book-intro li',5,'span');\n    l = String(l);\n    l = Get('settle') == true ? l.replace(\/\\s-\\s|-\/g, ' ').replace(\/\\s+\/, ' ').replace(\/.*第(\\d+)[话話章回期](|\\s)第.*?[话話章回期]\/, '$1').replace(\/.*第(\\d+)[话話章回期][^\\s]\/, '$1 ').replace(\/.*第(\\d+)[话話章回期]\\s\\d+\/, '$1').replace(\/.*第.*(\\d+).*?[话話章回期]\/, '$1').replace(\/(\\d+)\/, l.match(\/\\d+\/) ? l.match(\/(\\d+)\/)[1].padStart(3, '0') : '$1') : l;\n    Setting = '\\n📌当前源站:' + (Get('ci0') == 0 ? '〖默认〗' : '〖自选〗') + x[Get('ci0')] + (Get('url').length > 26 ? Get('url').substring(0, 26) + \"<br>\" + Get('url').substring(26) : Get('url')) + ('\\n💴会员类型:〖' + (Get('o') == 2 ? '默认' : '自选') + '〗' + O[Get('o')]) + ('\\n⏲️漫画进度:〖' + (Get('p') == 2 ? '默认' : '自选') + '〗' + P[Get('p')]) + ('\\n🃏当前分级:〖' + (Get('q') == 0 ? '默认' : '自选') + '〗' + Q[Get('q')]) + ('\\n📰评论页数:〖' + (Get('f') == 5 ? '默认' : '自选') + '〗前' + Get('f') + '页') + ('\\n📝评论排序:〖' + (Get('r') == 0 ? '默认' : '自选') + '〗' + R[Get('r')]) + ('\\n🔍繁体搜索:' + (Get('search_TC') == true ? '〖自选〗开启' : '〖默认〗关闭')) + ('\\n📑繁简转换:' + (Get('TC_to_SC') == true ? '〖默认〗开启' : '〖自选〗关闭')) + ('\\n🗃目录整理:' + (Get('settle') == true ? '〖自选〗开启' : '〖默认〗关闭'));\n    changeLog = '\\nㅤ\\nㅤ\\n' + Setting + '\\nㅤ\\n';\n    mhid = baseUrl.replace(\/.*\\\/(\\d+)$\/,'$1');\n    R1 = ['new','hot'];\n    var list1 = [];\n    var list2 = [];\n    for (var c = 0; c < Get('f'); c++) {\n        var page = c;\n        var headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\n        var requestBody = 'manhua_id=' + mhid + '&page=' + page + '&loadMod=' + R1[Get('r')] + '&force=false';\n        var option = {\n            \"method\": \"POST\",\n            \"body\": String(requestBody),\n            \"headers\": headers\n        };\n        var Url = Get('url') + '\/home\/api\/getComment,' + JSON.stringify(option);\n        result1 = java.ajax(Url);\n        pageList = JSON.parse(result1).result.list;\n        list1 = list1.concat(pageList);\n    }\n    var intro2 = '';\n    var intro3 = '';\n    for (var i = 0; i < list1.length; i++) {\n        if (!pageList) {\n            break;\n        }\n        var intro2_1 = String('[' + list1[i].created_at + ']\\n' + '〈' + list1[i].capter_title + '〉').replace(\/〈〉\/, '');\n        var intro2_2 = '⛄【' +  (list1[i].nickname ? list1[i].nickname : list1[i].username) + '】:';\n        var intro2_3 = list1[i].content;\n        if (list1[i].reply_count !== 0) {\n            var cid = list1[i].id;\n            var pages = Math.ceil(list1[i].reply_count \/ 15);\n            for (var c = 0; c < pages; c++) {\n                var page = c;\n                var headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\n                var requestBody = 'comment_id=' + cid + '&manhua_id=' + mhid + '&page=' + page + '&force=false';\n                var option = {\n                    \"method\": \"POST\",\n                    \"body\": String(requestBody),\n                    \"headers\": headers\n                };\n                var Url = Get('url') + '\/home\/api\/getSubComment,' + JSON.stringify(option);\n                result2 = java.ajax(Url);\n                pageList = JSON.parse(result2).result.list;\n                list2 = list2.concat(pageList);\n            }\n            for (var j = 0; j < list2.length; j++) {\n                var intro2_1_1 = '[' + list2[j].created_at + ']';\n                var intro2_2_1 = '⛄【' +  (list2[j].nickname ? list2[j].nickname : list2[j].username) + '】:';\n                var intro2_3_1 = list2[j].content;\n                intro3 = intro3 +'\\nㅤ     ' +  intro2_1_1 + '\\nㅤ     ' +  intro2_2_1 +  intro2_3_1;\n            }\n        }\n        intro2 = intro2 + '\\nㅤ\\n' +  intro2_1 + '\\n' +  intro2_2 +  intro2_3 + intro3;\n        intro3 = '';\n    }\n    if(String(Account).length > 0) {\n        let dataId = mhid;\n        var SC = cache.get(java.md5Encode16(book.originName + Account + dataId)) ? cache.get(java.md5Encode16(book.originName + Account + dataId)) : '';\n        var BN = $2('.book-title');\n        var Bookname = BN.length >= 60 ? BN.substring(0, 14) + \"\\n\" + BN.substring(14, 29) + \"\\n\" + BN.substring(29, 44) + \"\\n\" + BN.substring(44, 59) + \"\\n\" + BN.substring(59) : (BN.length >= 45 ? BN.substring(0, 14) + \"\\n\" + BN.substring(14, 29) + \"\\n\" + BN.substring(29, 44) + \"\\n\" + BN.substring(59) : (BN.length >= 30 ? BN.substring(0, 14) + \"\\n\" + BN.substring(14, 29) + \"\\n\" + BN.substring(29) : (BN.length >= 15 ? BN.substring(0, 14) + \"\\n\" + BN.substring(14) : BN)));\n        if (book.readConfig && book.group > 0 && !SC.includes('y')) {\n            let url = Get('url') + '\/home\/api\/dosubscribe?action=add&article_id=' + mhid;\n            java.ajax(url);\n            cache.put(java.md5Encode16(book.originName + Account + dataId),'y');\n            login(Put(JSON.stringify('【收藏提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + Bookname + '\\n┋┋' + '\\n❤️已添加收藏❤️\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛')));\n        }\n        if (book.readConfig && book.group < 1 && SC.includes('y')) {\n            let url = Get('url') + '\/home\/api\/dosubscribe?action=del&article_id=' + mhid;\n            java.ajax(url);\n            cache.put(java.md5Encode16(book.originName + Account + dataId),'n');\n            login(Put(JSON.stringify('【收藏提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + Bookname + '\\n┋┋' + '\\n♣️已取消收藏♣️\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛')));\n        }\n    }\n    book = JSON.stringify({\n        'name': $2('.book-title'),\n        'author': $2('.info').replace(\/,\/g, '\/').replace(\/\\s*\\\/\\s*\/g, '\/'),\n        'kind': String(s + ',' + k).replace(\/^(.{36}).*\/, '$1'),\n        'word': '',\n        'latest': l + '〔' + t + '〕',\n        'intro': (t != '' ? ('更新时间:' + t + '\\nㅤ\\n') : '') + '\\n' + $1('[name=\"description\"]').replace(\/\"br\\s\\\/\"\/g,'') + changeLog+ '☕【评论】                                      评论数:' + $2('#comment_count').replace(\/\\+\/,'') + intro2,\n        'cover': Get('url') + $1('[property=\"og:image\"]'),\n        'url': baseUrl.replace(\/book\\\/index\\\/id\/, 'api\/chapter_list\/tp') + '-1-0-10',\n        'durl': '',\n        'reName': true\n    });\n} else {\n    (function Book() {\n        apiBaseUrl = cache.get(java.md5Encode16('cache_api_' + Get('url')));\n        json = java.ajax(apiBaseUrl);\n        Title = JSON.parse(json)['title'];\n        Intro = cache.get(java.md5Encode16('User' + Get('url'))) == 'y' ? JSON.parse(json)['intro1'] : JSON.parse(json)['intro'];\n        return { Title: Title, Intro: Intro };\n    }());\n    book = JSON.stringify({\n        'kind': book['kind'],\n        'latest': Title[Title.length - 1],\n        'intro': Intro[0]\n    });\n}\nPut(book);\n<\/js>",
        "intro": "intro",
        "kind": "kind",
        "lastChapter": "latest",
        "name": "name",
        "tocUrl": "url",
        "wordCount": "word"
    },
    "ruleContent": {
        "content": "<js>\nif (String(book['author']) !== \"xiaohan231\") {\n    var Date = String(java.timeFormat(new Date().getTime())).replace(\/\\d+\\\/(.*)\\s.*\/, '$1');\n    if (cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0 && !Date.includes(cache.get(\"xxzf-sign\"))) {\n        var signdate = sign();\n        cache.put(\"xxzf-sign\", signdate);\n    }\n    var headers = '';\n    if (result.match(\/do_mergeImg\\([^(]+\\,(.*?)\\s\\);\/)) {\n        var N = result.match(\/do_mergeImg\\([^(]+\\,(.*?)\\s\\);\/)[1];\n        var reg = new RegExp(N + '\\\\s=\\\\s(\\\\d+);');\n        var num = result.match(reg)[1];\n        headers = ',{\"headers\":{\"Cookie\": \"' + num + '\"}}';\n    }\n    var data = [];\n    var list = java.getElements('.reader-cartoon-image img');\n    for (i in list) {\n        var pic = Get('url') + String(list[i].attr('data-original')).replace(\/^\\s*\/,'') + headers;\n        data.push('<br><img src=\"' + pic + '\">');\n    }\n    String(data).replace(\/>,\/g, '>');\n} else {\n    if (baseUrl.includes('\/json\/')) {\n        '<br><img src=\"https:\/\/qyyuapi.com\/j-img\/' + title.replace(\/〔.*$\/, \"\") + '.jpg\">';\n    } else {\n        '<br><img src=\"https:\/\/qyyuapi.com\/img\/' + title.replace(\/〔.*$\/, \"\") + '.jpg\">';\n    }\n}\n<\/js>",
        "imageDecode": "if (src.search(\"qyyuapi.com\") != -1 || src.search(\"Cookie\") == -1) {\n    result;\n} else {\n    var Magua = new JavaImporter();\n    Magua.importPackage(Packages.java.io, Packages.android.graphics);\n    with(Magua) {\n        var num = src.match(\/\\d+\/g).slice(-1);\n        var img = BitmapFactory.decodeByteArray(result, 0, result.length);\n        var height = img.getHeight();\n        var width = img.getWidth();\n        var x = width \/ num;\n        var newImg = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);\n        let canvas = new Canvas(newImg);\n        for (let i = 1; i <= num; i++) {\n            canvas.drawBitmap(Bitmap.createBitmap(img, x * (i - 1), 0, x, height), width - x * i, 0, null);\n        }\n        var newbit = new ByteArrayOutputStream();\n        newImg.compress(Bitmap.CompressFormat.PNG, 100, newbit);\n        newbit.toByteArray();\n    }\n}",
        "imageStyle": "FULL",
        "webJs": ""
    },
    "ruleExplore": {
        "author": "author",
        "bookList": "<js>\nvar _0x1c4e=['\\x59\\x57\\x56\\x7a\\x51\\x6d\\x46\\x7a\\x5a\\x54\\x59\\x30\\x52\\x47\\x56\\x6a\\x62\\x32\\x52\\x6c\\x56\\x47\\x39\\x54\\x64\\x48\\x4a\\x70\\x62\\x6d\\x63\\x3d','\\x64\\x6d\\x46\\x79\\x61\\x57\\x46\\x69\\x62\\x47\\x56\\x44\\x62\\x32\\x31\\x74\\x5a\\x57\\x35\\x30','\\x49\\x79\\x4d\\x6a\\x49\\x33\\x68\\x70\\x59\\x57\\x38\\x74\\x61\\x47\\x46\\x75\\x4a\\x69\\x59\\x6d\\x4a\\x67\\x3d\\x3d','\\x51\\x55\\x56\\x54\\x4c\\x30\\x56\\x44\\x51\\x69\\x39\\x51\\x53\\x30\\x4e\\x54\\x4e\\x31\\x42\\x68\\x5a\\x47\\x52\\x70\\x62\\x6d\\x63\\x3d'];var _0xf78a=function(_0x1c4e2e,_0xf78a98){_0x1c4e2e=_0x1c4e2e-0x0;var _0x4d3abc=_0x1c4e[_0x1c4e2e];if(_0xf78a['MlDNce']===undefined){(function(){var _0x5534a8;try{var _0x91a46=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x5534a8=_0x91a46();}catch(_0x462a28){_0x5534a8=window;}var _0x3c881c='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x5534a8['atob']||(_0x5534a8['atob']=function(_0x1440c6){var _0x35b680=String(_0x1440c6)['replace'](\/=+$\/,'');var _0x47f8fd='';for(var _0x449ee8=0x0,_0x861da9,_0x434114,_0x51ab63=0x0;_0x434114=_0x35b680['charAt'](_0x51ab63++);~_0x434114&&(_0x861da9=_0x449ee8%0x4?_0x861da9*0x40+_0x434114:_0x434114,_0x449ee8++%0x4)?_0x47f8fd+=String['fromCharCode'](0xff&_0x861da9>>(-0x2*_0x449ee8&0x6)):0x0){_0x434114=_0x3c881c['indexOf'](_0x434114);}return _0x47f8fd;});}());_0xf78a['KSuNQp']=function(_0x25f3da){var _0x4912d2=atob(_0x25f3da);var _0x4ea90d=[];for(var _0x1c558b=0x0,_0x59c934=_0x4912d2['length'];_0x1c558b<_0x59c934;_0x1c558b++){_0x4ea90d+='%'+('00'+_0x4912d2['charCodeAt'](_0x1c558b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ea90d);};_0xf78a['WNCQwD']={};_0xf78a['MlDNce']=!![];}var _0x46ea26=_0xf78a['WNCQwD'][_0x1c4e2e];if(_0x46ea26===undefined){_0x4d3abc=_0xf78a['KSuNQp'](_0x4d3abc);_0xf78a['WNCQwD'][_0x1c4e2e]=_0x4d3abc;}else{_0x4d3abc=_0x46ea26;}return _0x4d3abc;};eval(String(java[_0xf78a('\\x30\\x78\\x30')](source[_0xf78a('\\x30\\x78\\x31')],_0xf78a('\\x30\\x78\\x32'),_0xf78a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\nvar Option = {\n    \"method\": \"GET\",\n    \"headers\": Headers\n};\nUser = Checkwait(User);\nif (User == true) {\n    var Date = String(java.timeFormat(new Date().getTime())).replace(\/\\d+\\\/(.*)\\s.*\/, '$1');\n    if (cache.get(java.md5Encode16(Get('url') + \"Account_1\")) && String(cache.get(java.md5Encode16(Get('url') + \"Account_1\"))).length > 0 && !Date.includes(cache.get(\"xxzf-sign\"))) {\n        var signdate = sign();\n        cache.put(\"xxzf-sign\", signdate);\n    }\n    if (baseUrl.includes('\/favorite')) {\n        var list = JSON.parse(result).result.data;\n        for (i in list) {\n            data.push({\n                'name': list[i].title,\n                'author': '',\n                'kind': '',\n                'word': '',\n                'latest': list[i].lastcapter + '〔' + list[i].update_time + '〕',\n                'intro': list[i].desc,\n                'cover': Get('url') + list[i].image,\n                'url': Get('url') + '\/home\/book\/index\/id\/' + list[i].bid\n            });\n        }\n        var next = java.ajax(baseUrl.replace(\/1-(\\d+)\/, function(match, p1) {return '1-' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n        if (!list[0] || !JSON.parse(next).result.data[0]) {\n            Data();\n        }\n    } else {\n        var list = JSON.parse(result).result.list;\n        for (i in list) {\n            var kind = (list[i].mhstatus > 0 ? '完结' : '连载') + ',' + (list[i].limitVip == 'false' ? '' : 'VIP') + ',' + list[i].keyword;\n            data.push({\n                'name': list[i].title,\n                'author': list[i].auther.replace(\/,\/g, '\/'),\n                'kind': kind,\n                'word': '',\n                'latest': list[i].last_chapter_title + '〔' + list[i].update_time + '〕',\n                'intro': list[i].desc,\n                'cover': Get('url') + list[i].image,\n                'url': Get('url') + '\/home\/book\/index\/id\/' + list[i].id\n            });\n        }\n        var next = java.ajax(baseUrl.replace(\/(\\d+)(-\\d-\\d-\\d)$\/, function(match, p1, p2) {return (parseInt(p1) + 1) + p2;}) + ',' + JSON.stringify(Option));\n        if (!list[0] || !JSON.parse(next).result.list[0]) {\n            Data();\n        }\n    }\n    data = JSON.stringify(data);\n} else {\n    data = Data();\n}\nPut(data);\n<\/js>",
        "bookUrl": "url",
        "coverUrl": "cover",
        "intro": "intro",
        "kind": "kind",
        "lastChapter": "latest",
        "name": "name",
        "wordCount": "word"
    },
    "ruleSearch": {
        "author": "author",
        "bookList": "<js>\nvar _0x1c4e=['\\x59\\x57\\x56\\x7a\\x51\\x6d\\x46\\x7a\\x5a\\x54\\x59\\x30\\x52\\x47\\x56\\x6a\\x62\\x32\\x52\\x6c\\x56\\x47\\x39\\x54\\x64\\x48\\x4a\\x70\\x62\\x6d\\x63\\x3d','\\x64\\x6d\\x46\\x79\\x61\\x57\\x46\\x69\\x62\\x47\\x56\\x44\\x62\\x32\\x31\\x74\\x5a\\x57\\x35\\x30','\\x49\\x79\\x4d\\x6a\\x49\\x33\\x68\\x70\\x59\\x57\\x38\\x74\\x61\\x47\\x46\\x75\\x4a\\x69\\x59\\x6d\\x4a\\x67\\x3d\\x3d','\\x51\\x55\\x56\\x54\\x4c\\x30\\x56\\x44\\x51\\x69\\x39\\x51\\x53\\x30\\x4e\\x54\\x4e\\x31\\x42\\x68\\x5a\\x47\\x52\\x70\\x62\\x6d\\x63\\x3d'];var _0xf78a=function(_0x1c4e2e,_0xf78a98){_0x1c4e2e=_0x1c4e2e-0x0;var _0x4d3abc=_0x1c4e[_0x1c4e2e];if(_0xf78a['MlDNce']===undefined){(function(){var _0x5534a8;try{var _0x91a46=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x5534a8=_0x91a46();}catch(_0x462a28){_0x5534a8=window;}var _0x3c881c='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x5534a8['atob']||(_0x5534a8['atob']=function(_0x1440c6){var _0x35b680=String(_0x1440c6)['replace'](\/=+$\/,'');var _0x47f8fd='';for(var _0x449ee8=0x0,_0x861da9,_0x434114,_0x51ab63=0x0;_0x434114=_0x35b680['charAt'](_0x51ab63++);~_0x434114&&(_0x861da9=_0x449ee8%0x4?_0x861da9*0x40+_0x434114:_0x434114,_0x449ee8++%0x4)?_0x47f8fd+=String['fromCharCode'](0xff&_0x861da9>>(-0x2*_0x449ee8&0x6)):0x0){_0x434114=_0x3c881c['indexOf'](_0x434114);}return _0x47f8fd;});}());_0xf78a['KSuNQp']=function(_0x25f3da){var _0x4912d2=atob(_0x25f3da);var _0x4ea90d=[];for(var _0x1c558b=0x0,_0x59c934=_0x4912d2['length'];_0x1c558b<_0x59c934;_0x1c558b++){_0x4ea90d+='%'+('00'+_0x4912d2['charCodeAt'](_0x1c558b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ea90d);};_0xf78a['WNCQwD']={};_0xf78a['MlDNce']=!![];}var _0x46ea26=_0xf78a['WNCQwD'][_0x1c4e2e];if(_0x46ea26===undefined){_0x4d3abc=_0xf78a['KSuNQp'](_0x4d3abc);_0xf78a['WNCQwD'][_0x1c4e2e]=_0x4d3abc;}else{_0x4d3abc=_0x46ea26;}return _0x4d3abc;};eval(String(java[_0xf78a('\\x30\\x78\\x30')](source[_0xf78a('\\x30\\x78\\x31')],_0xf78a('\\x30\\x78\\x32'),_0xf78a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\nvar Option = {\n    \"method\": \"GET\",\n    \"headers\": Headers\n};\nUser = Checkwait(User);\nif (User == true) {\n    var list = JSON.parse(result).result.list;\n    for (i in list) {\n        var kind = (list[i].mhstatus > 0 ? '完结' : '连载') + ',' + (list[i].limitVip == 'false' ? '' : 'VIP') + ',' + list[i].keyword;\n        data.push({\n            'name': list[i].title,\n            'author': list[i].auther.replace(\/,\/g, '\/'),\n            'kind': kind,\n            'word': '',\n            'latest': list[i].last_chapter_title + '〔' + list[i].update_time + '〕',\n            'intro': list[i].desc,\n            'cover': Get('url') + list[i].image,\n            'url': Get('url') + '\/home\/book\/index\/id\/' + list[i].id\n        });\n    }\n    var next = java.ajax(baseUrl.replace(\/pageNo=(\\d+)\/, function(match, p1) {return 'pageNo=' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n    var searchkey = java.get(java.md5Encode16(Get('url') + \"searchkey\"));\n    if (!JSON.parse(next).result.list || !list[0] || !JSON.parse(next).result.list[0] || \/书源|使用|说明|書源|說明\/.test(searchkey)) {\n        Data();\n    }\n    data = JSON.stringify(data);\n} else {\n    data = Data();\n}\nPut(data);\n<\/js>",
        "bookUrl": "url",
        "checkKeyWord": "秘密",
        "coverUrl": "cover",
        "intro": "intro",
        "kind": "kind",
        "lastChapter": "latest",
        "name": "name",
        "wordCount": "word"
    },
    "ruleToc": {
        "chapterList": "<js>\nvar _0x1c4e=['\\x59\\x57\\x56\\x7a\\x51\\x6d\\x46\\x7a\\x5a\\x54\\x59\\x30\\x52\\x47\\x56\\x6a\\x62\\x32\\x52\\x6c\\x56\\x47\\x39\\x54\\x64\\x48\\x4a\\x70\\x62\\x6d\\x63\\x3d','\\x64\\x6d\\x46\\x79\\x61\\x57\\x46\\x69\\x62\\x47\\x56\\x44\\x62\\x32\\x31\\x74\\x5a\\x57\\x35\\x30','\\x49\\x79\\x4d\\x6a\\x49\\x33\\x68\\x70\\x59\\x57\\x38\\x74\\x61\\x47\\x46\\x75\\x4a\\x69\\x59\\x6d\\x4a\\x67\\x3d\\x3d','\\x51\\x55\\x56\\x54\\x4c\\x30\\x56\\x44\\x51\\x69\\x39\\x51\\x53\\x30\\x4e\\x54\\x4e\\x31\\x42\\x68\\x5a\\x47\\x52\\x70\\x62\\x6d\\x63\\x3d'];var _0xf78a=function(_0x1c4e2e,_0xf78a98){_0x1c4e2e=_0x1c4e2e-0x0;var _0x4d3abc=_0x1c4e[_0x1c4e2e];if(_0xf78a['MlDNce']===undefined){(function(){var _0x5534a8;try{var _0x91a46=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x5534a8=_0x91a46();}catch(_0x462a28){_0x5534a8=window;}var _0x3c881c='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x5534a8['atob']||(_0x5534a8['atob']=function(_0x1440c6){var _0x35b680=String(_0x1440c6)['replace'](\/=+$\/,'');var _0x47f8fd='';for(var _0x449ee8=0x0,_0x861da9,_0x434114,_0x51ab63=0x0;_0x434114=_0x35b680['charAt'](_0x51ab63++);~_0x434114&&(_0x861da9=_0x449ee8%0x4?_0x861da9*0x40+_0x434114:_0x434114,_0x449ee8++%0x4)?_0x47f8fd+=String['fromCharCode'](0xff&_0x861da9>>(-0x2*_0x449ee8&0x6)):0x0){_0x434114=_0x3c881c['indexOf'](_0x434114);}return _0x47f8fd;});}());_0xf78a['KSuNQp']=function(_0x25f3da){var _0x4912d2=atob(_0x25f3da);var _0x4ea90d=[];for(var _0x1c558b=0x0,_0x59c934=_0x4912d2['length'];_0x1c558b<_0x59c934;_0x1c558b++){_0x4ea90d+='%'+('00'+_0x4912d2['charCodeAt'](_0x1c558b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ea90d);};_0xf78a['WNCQwD']={};_0xf78a['MlDNce']=!![];}var _0x46ea26=_0xf78a['WNCQwD'][_0x1c4e2e];if(_0x46ea26===undefined){_0x4d3abc=_0xf78a['KSuNQp'](_0x4d3abc);_0xf78a['WNCQwD'][_0x1c4e2e]=_0x4d3abc;}else{_0x4d3abc=_0x46ea26;}return _0x4d3abc;};eval(String(java[_0xf78a('\\x30\\x78\\x30')](source[_0xf78a('\\x30\\x78\\x31')],_0xf78a('\\x30\\x78\\x32'),_0xf78a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\nvar Option = {\n    \"method\": \"GET\",\n    \"headers\": Headers\n};\nif (String(book['author']) !== \"xiaohan231\") {\n    var list = JSON.parse(result).result.list;\n    date = String(list[list.length - 1].create_time);\n    for (i in list) {\n        title = list[i].title;\n        order = title.match(\/(\\d+)\/);\n        title = Get('settle') == true ? String(title).replace(\/\\s共.*?图\/, '').replace(\/(-|_|\\s-\\s)\/g, ' ').replace(\/\\s-\\s|-\/g, ' ').replace(\/\\s+\/, ' ').replace(\/.*第(\\d+)[话話章回期](|\\s)第.*?[话話章回期]\/, '$1').replace(\/.*第(\\d+)[话話章回期][^\\s]\/, '$1 ').replace(\/.*第(\\d+)[话話章回期]\\s\\d+\/, '$1').replace(\/.*第.*(\\d+).*?[话話章回期]\/, '$1').replace(\/(\\d+)\/, title.match(\/\\d+\/) ? order[1].padStart(3, '0') : '$1') : title;\n        data.push({\n            'title': i == list.length - 1 ? (title + '〔' + date + '〕') : title,\n            'link': Get('url') + '\/home\/book\/capter\/id\/' + list[i].id,\n            'time': String(list[i].create_time)\n        });\n    }\n    data = JSON.stringify(data);\n} else {\n    data = Data1();\n}\nPut(data);\n<\/js>",
        "chapterName": "title",
        "chapterUrl": "link",
        "isVip": "",
        "preUpdateJs": "if (!String(book.bookUrl).includes(Get('url'))) {\n    book.bookUrl = String(book.bookUrl).replace(\/.*\\\/\\\/[a-z0-9.-]+\/g, Get('url'));\n    book.tocUrl = String(book.tocUrl).replace(\/.*\\\/\\\/[a-z0-9.-]+\/g, Get('url'));\n    java.refreshTocUrl();\n}",
        "updateTime": ""
    },
    "searchUrl": "<js>\neval(String(source.loginUrl));\n(function (e) {\n    if (Get('search_TC') == true || e.indexOf('TC') > -1) {\n        e = String(java.s2t(e)).replace(\/TC\/, '');\n    }\n    java.put(java.md5Encode16(Get('url') + \"searchkey\"), e);\n    return Get('url') + '\/home\/api\/searchk?keyword=' + e.replace(\/\\s.*$|\\\/.*$\/g, '') + '&type=1&pageNo={{page}}';\n}(key));\n<\/js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3eyNhq2zjScuOviEmQe5NinuQPm6gkVOfbKqM5kCCPowDXJkiSRSa3npJPxd9vxKh3cMNvD1zWkrw4ju5caIY4nxOyT73azNVhhjJZjyz\/ebHvYW8WL3jcWxqxmNG6krxvli7namCa0q6ODFeq24oEdko9o6Qp4abnH7CJftdjfn6wuSjWOHcv24gGCqJw4SAAmrFhFTTu5N1\/yBmdA\/FoFdXzVCmh2O7QuWCNXEFEvtqz\/dxjI8B6IAvPH5ODSHyJK4S1EmxkBS2KulmuqCT2aDz6rJyZNvlzxUKRZTZDpuhW1k7t9LEvq1mTbfzdhHTSUJeKpWwCLeVq0vUQi7hX6pIpxSPMWsKBl+WMzv\/puLxTaIYB8le4S26dkr2hV2bGH3pA5YCkYUScdfILxk5JAGQ4QGx6B0jUjw0g1As4m9xlu3aXTAeop8NkfCtnPkaGqBNz5Jy8n9Dsb9YyaTRE01Sq2WGuErTpnYTaYDsFukJL3Oq071kZl65uglkJOlJyI8LMAZfXnykL7kV69T94fNpfR7l5B+PMUuV2leXpXCCpnf\/g+EazBuR8T\/LtV+2hhbC3WJ4NSmBmaUkg2iTWCSK2h+e7NfC4EW3MMwuRVyyx0zaQn+ISAjDUzWX0Ur7M8EZdnLkuDi1+eZUo69QfZJxsJ8r8KA32ZtRwkY\/dGFWKg4m7zvhyYv7rJyry69F7t7JSwXGIuHVQPbQw6QHKdZxLa+ezvVp1Q\/61gbbPagg8W9Mu53Yc+pVacX0KwmLxZNbmRAA5MsbdEXdaYReinkNuOn+6KuiZGDOWUnIIRe8xdSp2cnEyLOoVMl2oBBQyqNfRav38wVvgXxreX6e6sG2qmGnsropuSSC1mbGqr1E7JBHyUXKBmnLHm+ff0nEG6o03qRuKVtaSv6K+PmQ\/Js7OunyQ2TLFzXsl0ktofIlfXbJpu9XUHQa6qp\/VFBwTyRK2BZO203BgBmOZLZ0i75qDtvnvgr4QQpfGc8j9+XH\/iQGyFKoIj+K8MG7P3hOLficXkTii5axnk5y2NTJ8+HdsY1YG1r45W6\/lkxVAfrFp3xA0zuA26swvTkj3JHyNDZGy6+oZkDiSlvAYC+QbKNbt6gY91gYWClHHgdancLK\/pmEL68KyHSwAeT\/tYgEcGkXtrq1GY90qM8oqLnutGfznb4rxl\/aNRsDzL64Nco0U9DG9KlUZccILoTjDy3eBUSJqX1AnO1fnPlnII\/tFZZ9B\/2ZFN2M0Wo4YwoWNTa3KCtks1NIOhdm35zYLWZyPihAf68CpvxFSTkMZEjnowicrcDVpAtBWiNPO\/LNvf8ZiivdOdJ7AEhZSts5F9BBnf57ImNd15rkHpOOugmHYQcrZbLyvSZze9a7g\/AY0OtvyT9MhnuFcPck3V5uxRUAyfmPJp4rf5vPEhUzCHKQirR2kBHiloP7PEIRR8PW226svEm8+Ikpdfu111+YEgvSsSNWBCVoIFDcTDAyOaX9lri\/iHdiq+6aRMwAfkj5T3RzMv25jHMnWEqcGeCWBnqpIMRl53kNmQJPsRFXgIhNj281NBUWbOVjWwjTwfWx6yjg6CC0WWYv3qlO3OpHNeoLR6p4s1ho1DUbuLmMH1tBVurLGzZZGFGBu\/jD8WtRbR\/Bs7LkLchQ3sfQucwHk47pnpKUeOWW2GmI\/hnRoGUwUDD4EAgfBvXfVaOxw4fL+UNujaE9Pn2Vb\/\/ppEl4+nPcx5s6ljqP\/AOD1NEsB4z6Zhe5BbMv7LSKtMqB8AR8uAgGB7YU0Lmlz1tnLJ5PR56\/SBC6TfbqwrDrFSJUn5tJTALE2Mx40PM6TRr9kRHed7yo\/fCiQ0iNIpETAefKJdlDQsjUumL4w6iZzSe8tuWcbVNGueCkt8MOL\/G2Ae9L1EMQgy2uaoMUUyFAe0Xl4drtKnLLxaYNZK2rkgeesR884FDbu\/XtQ\/l2GF+wVd3Ijvw0nx\/3\/vRGzgb3BGN46CRRM\/BVlEcEExf\/zX+pa+x5qd7Rv43lspe5nEj80rhbVu8rHGHSuoie+hAgCSEOa3wMiu7Z1d6CjRLQVgNlZ7HOtPHQC8h9s7866I+EKJEUohzUkaAZjwB3EnztTIyrdJg4vH8dOWL9Q\/mcoVzHjNVGSIPSeC4VXlUjVkzZ5beTF\/KuYD4OLx5qPNgEGgCaf1ap8LkSwaNxP+FsPnSfCIR2fYsW1d1dhtFGRSXUwLYxIKx4JA6CYUSXUVcTdhDlg\/YIVfrL6AXg3hqgzbe\/YMjEdmenSxn9X6107iqHA2zMIzz1IuunO7cRJ68X1ivD5PJhVUN4tMGgP2oF\/OC3V98B9+yAWyZoxua14nekramugI2g4KAM+e2KNDfpzXBqILWNQTZcK7yyT65AtwGwpCqB8r3dA0oRir2i4odj8hyOGJO6vGSOdTPmQajjJlybT9txAT\/1VMU8lg1JL0T1Pv7CsMkdxR5txqr97gZ25+GkQCRnLqneb0qqvwttz5IOn90DAllQfgHO0QIn4j+3tUwNMIJA7g5BytpXWvP0yYJToe1reU6NsTAYg2JZ8MxIk2ziw\/qErbZkqyLQBlcCmQL6Ss47RBU5Y8I0uTueRDr7iqrDTFcXDy\/xWqdRhekM\/MiGu4kaBSJK19Gi7rueDwl9cDzdgdnOO1k7Ew3WxpjlSfX06Vtbt1Uy1vxkYo\/wURlI69Cj7b06C7Z9UbhJkKq2PqNZA471\/vPME8u39NQ4+yPBNlwrvLJPrkC3AbCkKoHyvd0DShGKvaLih2PyHI4Yk6kBvmJVTgO0Hh2UJ76eZMjIDM0VH80fjCG2yWrpS2M0aPO13VxOE5KnCEadD9ceQKa1MSQ5OVlxrQSC1RgVHyFgSy3sPNv36YyMI1BP+FQWTNPJZukfb\/2\/Vt\/wfN5gSVr7LZOUt14xNeaHM2fObrHw3jC++5vV1Nh+KTCJiXdn+SFn6uhqLOnH9r+V9GaEv21qZngu4e\/AT5BIuTPLpw6iDROnaOPTNKOaCiV5GJaZ\/Fz8OqWd2n3Ce3fPTev9ojgUZDn3lDyehz\/Ed+p3KMxmbbvGgbWgAs4uudaIDbPO\/McFZ1tGwIXFBvWRtRIKwuL3yjp6mS0BFTKhPd85xcv\/XIs2mYKFPVDSQQts7\/pFxVY027y+0ieJ4PkK+IBr6oC0vvLQeMNBuhDfrCmnoikgN7\/A61NZtk9RcQLU93nakLISuaAQ3bj+PXTLYobsN6AhlfRda7XrBL38xUIAD89iU4aoJxG5nFGD3WKMBNSwumy+bK8dxMw9dvwd8P68x2Yay9rSQmpp7rPp\/Famow2\/NYqrR0YdQfsxA3\/buXdkWhnf442nvw235Ze3lmeSuOPvCfdOZ+kKaeRZ34K4psSwn9l\/rNxYXBp1P5YR\/Ptkh79zt\/PdjWbb86sLZ1A\/cAIsKwnobJ6FOSns5XLi7m13QrjiiyGTJ1my3ICqtbSHP8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ\/CZIrpSn6IGrkyhuI3iIlbobu22GpojRXJARPXkNvYETPHTA+xlI8JYRY1cybC73CUNPTOXKS6rG\/T9sV9SKCRcLbu2YPcOTFh36SlxdcLbpItA\/qW1X898NMDqxLPQXU3EuTBxWrUSWqyI3eUzPFPLXlkbOsyyn68vJQfeMjnjH2nRoTHO77otPtZN09xfDJlP7916uev2j7hL+W+OUajrQ5n7s0gku8EI=",
    "weight": 0
}
广告