🎨再漫画💓
https://www.zaimanhua.com
xiaohan231 (515)09/14 20:23
V2.4版,激活码:555666
{ "bookSourceComment": "", "bookSourceGroup": "🍿 日常,🎊 常用,🎨 漫画", "bookSourceName": "🎨再漫画💓", "bookSourceType": 2, "bookSourceUrl": "https:\/\/www.zaimanhua.com", "bookUrlPattern": "https:\/\/.*\/app\/v1\/comic\/detail\/\\d+", "concurrentRate": "", "coverDecodeJs": "", "customOrder": 0, "enabled": true, "enabledCookieJar": false, "enabledExplore": true, "exploreUrl": "<js>\neval(String(source.loginUrl));\neval(String(source.header).replace(\/<.*?>\/g,''));\nvar Headers = JSON.parse(cache.get(java.md5Encode16(Get('url') + \"headers\")).replace(Get('url'), baseUrl));\nHeaders.Authorization = ('Bearer ' + cache.get(java.md5Encode16(Get('url') + \"token\"))) || '';\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\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 (!cache.get(java.md5Encode16(Get('url') + \"token\")) || cache.get(java.md5Encode16(Get('url') + \"token\")) == '') {\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 exploreUrl.push(explore('我的订阅', `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/sub\/list?status=0&firstLetter=&page={{page}}&size=20,${JSON.stringify(Option)}`, 1, 0.25, false));\n \/\/exploreUrl.push(explore('浏览历史', `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/sub\/list?status=0&firstLetter=&page={{page}}&size=20,${JSON.stringify(Option)}`, 1, 0.25, false));\n }\n}\ntitle = '✣ ✣ 榜 单 ✣ ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nT = `{{Get('t')}}`;\nU = `{{Get('u')}}`;\nurl1 = `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/rank\/list?tag_id=0&by_time=${U}&rank_type=${T}&page={{page+1}}`;\nexploreUrl.push(explore('人气', url1, 1, 0.25, false));\nurl2 = `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/rank\/list?tag_id=0&by_time=${U}&rank_type=${T}&page={{page+1}}`;\nexploreUrl.push(explore('吐槽', url2, 1, 0.25, false));\nurl3 = `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/rank\/list?tag_id=0&by_time=${U}&rank_type=${T}&page={{page+1}}`;\nexploreUrl.push(explore('订阅', url3, 1, 0.25, false));\ntitle = '✣ ✣ 标 签 ✣ ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nvar Url = Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/filter\/classify';\nvar kind = JSON.parse(java.ajax(Url)).data.classifyList[0].list;\nR = `{{Get('r')+1}}`;\nCate = `{{get('cate',Get('o'))}}`;\nStatus = `{{get('status',Get('p'))}}`;\nZone = `{{get('zone',Get('q'))}}`;\nfor (i in kind) {\n url = `{{Get('url').replace(\/www\/, 'v4api')}}\/app\/v1\/comic\/filter\/list?theme=${kind[i].tagId}&cate=${Cate}&status=${Status}&zone=${Zone}&sortType=${R}&page={{page}}&size=20`;\n exploreUrl.push(explore(kind[i].tagName, 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 \"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 get(tag,num) {\n const { java, source, cookie, cache } = this;\n var get = JSON.parse(source.getVariable());\n var Url = get['url'].replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/filter\/classify';\n var list = JSON.parse(java.ajax(Url)).data.classifyList;\n if (\/theme\/.test(tag)) {\n theme = list[0].list[num].tagId;\n }\n if (\/cate\/.test(tag)) {\n cate = list[1].list[num].tagId;\n }\n if (\/status\/.test(tag)) {\n status = list[2].list[num].tagId;\n }\n if (\/zone\/.test(tag)) {\n zone = list[3].list[num].tagId;\n }\n var e = eval(tag);\n return e;\n}\nfunction 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 String(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 formatBytes(bytes, decimals) {\n decimals = decimals === undefined ? 2 : decimals;\n if (bytes === 0) return '0 Bytes';\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n const i = Math.floor(Math.log(bytes) \/ Math.log(1024));\n return `${(bytes \/ Math.pow(1024, i)).toFixed(decimals)} ${sizes[i]}`;\n}", "lastUpdateTime": "1726316622708", "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: \"test(1)\"\n },\n { name: \" 查看当前 \", type: \"button\", action: \"look(0)\" },\n { name: \" 查看历史 \", type: \"button\", action: \"look(1)\" },\n { name: \" 恢复默认 \", type: \"button\", action: \"test(-1)\" },\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: \"t(0)\" },\n { name: \" 热 血 \", type: \"button\", action: \"t(1)\" },\n { name: \" 少 年 \", type: \"button\", action: \"t(2)\" },\n { name: \" 搞 笑 \", type: \"button\", action: \"t(3)\" },\n { name: \" 少 女 \", type: \"button\", action: \"t(4)\" },\n { name: \" 后 宫 \", type: \"button\", action: \"t(5)\" },\n { name: \" 四 格 \", type: \"button\", action: \"t(6)\" },\n { name: \" \", type: \"button\" },*\/\n\n { name: \" ༺ˇ»`ʚ 榜单时间切换 ɞ´«ˇ༻ \", type: \"button\" },\n { name: \" 今 日 \", type: \"button\", action: \"u(0)\" },\n { name: \" 本 周 \", type: \"button\", action: \"u(1)\" },\n { name: \" 本 月 \", type: \"button\", action: \"u(2)\" },\n { name: \"总排行 \", type: \"button\", action: \"u(3)\" },\n\n { name: \" ༺ˇ»`ʚ 标签取向切换 ɞ´«ˇ༻ \", type: \"button\" },\n { name: \" 全 部 \", type: \"button\", action: \"o(0)\" },\n { name: \" 少 年 \", type: \"button\", action: \"o(1)\" },\n { name: \" 少 女 \", type: \"button\", action: \"o(2)\" },\n { name: \" 青 年 \", type: \"button\", action: \"o(3)\" },\n { name: \" 女 青 \", type: \"button\", action: \"o(4)\" },\n { name: \" \", type: \"button\" },\n\n { name: \" ༺ˇ»`ʚ 标签进度切换 ɞ´«ˇ༻ \", type: \"button\" },\n { name: \" 全 部 \", type: \"button\", action: \"p(0)\" },\n { name: \" 连 载 \", type: \"button\", action: \"p(1)\" },\n { name: \" 完 结 \", type: \"button\", action: \"p(2)\" },\n { name: \" 短 篇 \", type: \"button\", action: \"p(3)\" },\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 { name: \" 欧 美 \", type: \"button\", action: \"q(3)\" },\n { name: \" 港 台 \", type: \"button\", action: \"q(4)\" },\n { name: \" 内 地 \", type: \"button\", action: \"q(5)\" },\n { name: \" 其 它 \", type: \"button\", action: \"q(6)\" },\n { name: \" \", type: \"button\" },\n\n { name: \" ༺ˇ»`ʚ 标签排序切换 ɞ´«ˇ༻ \", type: \"button\" },\n { name: \" 热门人气 \", type: \"button\", action: \"r(0)\" },\n { name: \" 更新时间 \", type: \"button\", action: \"r(1)\" },\n\n \/*{ name: \"页数:\", type: \"text\" },*\/\n\n {\n name: \" 💡 源 站 打 印 💡 \",\n type: \"button\",\n action: \"test()\"\n }\n]", "loginUrl": "var fburl = '';\noriginal = {\n 'ci0': 0,\n 'ci1': 0,\n 'ci2': 0,\n 'ci3': 0,\n 'o': 0,\n 'p': 0,\n 'q': 0,\n 'r': 0,\n 't': 0,\n 'u': 3,\n 'search_TC': false,\n 'TC_to_SC': true,\n 'settle': false,\n 'url': 'https:\/\/www.zaimanhua.com',\n 'urls': [\n 'https:\/\/www.zaimanhua.com',\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) + k(3) + '源站已打印完毕,请到日志查看 ');\n }\n if (e == -1) {\n login('【初始化提示】' + n(2) + k(17) + '已恢复默认设置 ');\n return put(original);\n }\n if (e == 0) {\n date1 = new Date().getTime();\n html = java.ajax($$$.urls[0] + ',' + JSON.stringify(Option));\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' + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️源站已失效(可能被墙)♣️\\n┋┋\\n请更新网址\/切换源站\/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n } else if (t < 1000) {\n return login('【源站更新提示】' + n(2) + '源站更新完毕,请到日志查看' + '\\n \\n' + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低,推荐使用此站❤️\\n┋┋\\n网络环境优良,请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n } else if (t >= 1000 && t < 2000) {\n return login('【源站更新提示】' + n(2) + '源站更新完毕,请到日志查看' + '\\n \\n' + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般,勉强可使用♦️\\n┋┋\\n请切换其他源站或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n } else if (t >= 2000 && t < 5000) {\n return login('【源站更新提示】' + n(2) + '源站更新完毕,请到日志查看' + '\\n \\n' + '┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高,不建议使用♠\\n┋┋\\n请切换其他源站或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛');\n }\n }\n date1 = new Date().getTime();\n html = java.ajax($$$.urls[0]);\n date2 = new Date().getTime();\n t = date2 - date1;\n time = t \/ 1000 + 's';\n c = String(html).indexOf('漫画');\n logTime = '【' + name(0) + '】\\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(4);\n time = new Date().getTime();\n html = java.webViewGetOverrideUrl(null, fburl + '?t=' + time, null, '');\n J = org.jsoup.Jsoup.parse(html);\n u = J.select('.link2');\n for (i = 0; i < 1; i++) {\n host = String(u.attr('onclick').match(\/'(.*)'\/)[1].split(' ')[i]);\n if (String($$$.urls).replace(\/www.\/g,'').indexOf(host.replace(\/www.\/g,'')) == -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' + '📓榜单分类:' + typeT($$$.t)) + '\\n┋┋' + ('\\n' + '📅榜单时间:' + typeU($$$.u)) + '\\n┋┋' + ('\\n' + '🎯标签取向:' + typeO($$$.o)) + '\\n┋┋' + ('\\n' + '⏲️标签进度:' + typeP($$$.p)) + '\\n┋┋' + ('\\n' + '🗺标签地区:' + typeQ($$$.q)) + '\\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}\nO = ['全部','少年','少女','青年','女青'];\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}\nT = ['全部','热血','少年','搞笑','少女','后宫','四格'];\nfunction typeT(e) {\n if (e == undefined) {\n e = 0;\n }\n return T[e];\n}\nfunction t(e) {\n if (t == undefined) {\n t = result.t;\n }\n if (e == $$$.t) {\n return login('【分类切换提示】' + n(2) + '已经选择此分类,无需更换');\n }\n login('【分类切换提示】' + n(2) + '已经切换到[' + typeT(e) + ']分类');\n $$$.t = e;\n return put($$$);\n}\nU = ['今日','本周','本月','总排行'];\nfunction typeU(e) {\n if (e == undefined) {\n e = 0;\n }\n return U[e];\n}\nfunction u(e) {\n if (u == undefined) {\n u = result.u;\n }\n if (e == $$$.u) {\n return login('【分类切换提示】' + n(2) + '已经选择此分类,无需更换');\n }\n login('【分类切换提示】' + n(2) + '已经切换到[' + typeU(e) + ']分类');\n $$$.u = e;\n return put($$$);\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}\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 cache.put(java.md5Encode16(Get('url') + \"Account_1\"),'');\n cache.put(java.md5Encode16(Get('url') + \"uid\"),'');\n cache.put(java.md5Encode16(Get('url') + \"token\"),'');\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 var requestBody = 'username=' + Account + '&passwd=' + java.md5Encode(Password);\n var headers = {\"Content-Type\":\"application\/x-www-form-urlencoded\"};\n var option = {\n \"method\": \"POST\",\n \"body\": String(requestBody),\n \"headers\": headers\n };\n Response = java.ajax(Get('url').replace(\/www\/, 'account-api') + '\/v1\/login\/passwd,' + JSON.stringify(option));\n if (JSON.parse(Response).data.user.uid) {\n cache.put(java.md5Encode16(Get('url') + \"Account_1\"),Account);\n cache.put(java.md5Encode16(Get('url') + \"uid\"),JSON.parse(Response).data.user.uid);\n cache.put(java.md5Encode16(Get('url') + \"token\"),JSON.parse(Response).data.user.token);\n login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅━┅━┅━┅━┅┓\\n┋┋' + '\\n账号:' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n┗┅━┅━┅━┅━┅━┅━┅━┅━┅┛')));\n } else {\n cache.put(java.md5Encode16(Get('url') + \"Account_1\"),'');\n cache.put(java.md5Encode16(Get('url') + \"uid\"),'');\n cache.put(java.md5Encode16(Get('url') + \"token\"),'');\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));\nHeaders.Authorization = ('Bearer ' + cache.get(java.md5Encode16(Get('url') + \"token\"))) || '';\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 \/\/Page = \/\\d+\/.test(Map('页数:')) ? Map('页数:') : '5';\n var url = baseUrl;\n var J = org.jsoup.Jsoup.parse(result);\n var list = JSON.parse(result).data.data;\n var $2 = s1 => String(java.getElements(s1).text());\n var $3 = s2 => String(J.select(s2).attr('src'));\n var index = book.getVariable(\"custom\") > 0 ? book.getVariable(\"custom\") : '0';\n var others = [];\n var others1 = [];\n var other = '';\n var list2 = [];\n if (list.chapters) {\n var list1 = list.chapters;\n for (i in list1) {\n others.push(String('\\n[' + i + ']' + list1[i].title + '〔' + list1[i].data.length + '章〕'));\n others1.push(list1[i].title);\n }\n other = others.length > 1 ? ('📋全部目录:' + others.join(' ') + '\\nㅤ\\n') : '';\n list2 = list1[index].data;\n }\n s = '';\n var kinds = [];\n var kindElements = list.types;\n for (var j in kindElements) {\n kinds.push(String(kindElements[j].tag_name));\n }\n kind = kinds.join(',');\n k = list.status[0].tag_name.replace(\/[中已]\/g, '') + ',' + kind;\n t = String(java.timeFormat(list.last_updatetime*1000)).replace(\/\\\/\/g, '-');\n var authors = [];\n var authorElements = list.authors;\n for (var j in authorElements) {\n authors.push(String(authorElements[j].tag_name));\n }\n author = authors.join('\/');\n cache.put(java.md5Encode16(baseUrl + \"Author\"), author);\n reg = book.name + ':';\n l = list.last_update_chapter_name;\n l = String(l);\n l = Get('settle') == true ? l.replace(reg, '').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('t') == 0 ? '默认' : '自选') + '〗' + T[Get('t')]) + ('\\n📅榜单时间:〖' + (Get('u') == 3 ? '默认' : '自选') + '〗' + U[Get('u')]) + ('\\n🎯标签取向:〖' + (Get('o') == 0 ? '默认' : '自选') + '〗' + O[Get('o')]) + ('\\n⏲️标签进度:〖' + (Get('p') == 0 ? '默认' : '自选') + '〗' + P[Get('p')]) + ('\\n🗺标签地区:〖' + (Get('q') == 0 ? '默认' : '自选') + '〗' + Q[Get('q')]) + ('\\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 if(String(Account).length > 0) {\n let dataId = list.id;\n let value = cache.get(java.md5Encode16('Value' + baseUrl));\n var SC = cache.get(java.md5Encode16(book.originName + Account + dataId)) ? cache.get(java.md5Encode16(book.originName + Account + dataId)) : '';\n var BN = list.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').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/sub\/add?comic_id=' + dataId + ',' + JSON.stringify(Option);\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').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/sub\/del?comic_id=' + dataId + ',' + JSON.stringify(Option);\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': list.title,\n 'author': author,\n 'kind': s + ',' + k,\n 'word': '',\n 'latest': String(l + '〔' + t + '〕').replace('〔〕',''),\n 'intro': (t != '' ? ('更新时间:' + t + '\\nㅤ\\n') : '') + other + '\\n' + ((!list.chapters || !list2[0]) ? ('⛔' + '因版权、国家法规等原因,已不再提供此漫画在线观看。' + '\\nㅤ\\n').replace(\/(^)\/g, '$1<br>') : '') + list.description.replace(\/(^)\/g, '$1<br>') + changeLog,\n 'cover': list.cover,\n 'url': url,\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 imglist=JSON.parse(result).data.data.page_url_hd || JSON.parse(result).data.data.page_url;\n var result='';\n for(i in imglist){\n result +='<img src=\"' + imglist[i] + '\">\\n';\n }\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>", "imageStyle": "FULL", "nextContentUrl": "", "replaceRegex": "", "sourceRegex": "" }, "ruleExplore": { "author": "author", "bookList": "<js>\nvar _0x5849=['\\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 _0x3b0b=function(_0x5849ca,_0x3b0bde){_0x5849ca=_0x5849ca-0x0;var _0x5f5914=_0x5849[_0x5849ca];if(_0x3b0b['sOOuKQ']===undefined){(function(){var _0x10869b;try{var _0x14d658=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x10869b=_0x14d658();}catch(_0x21f5a8){_0x10869b=window;}var _0xeb1f6d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x10869b['atob']||(_0x10869b['atob']=function(_0x498612){var _0x49f879=String(_0x498612)['replace'](\/=+$\/,'');var _0x25db9a='';for(var _0x4223d4=0x0,_0x4ebff8,_0x5bab37,_0x335167=0x0;_0x5bab37=_0x49f879['charAt'](_0x335167++);~_0x5bab37&&(_0x4ebff8=_0x4223d4%0x4?_0x4ebff8*0x40+_0x5bab37:_0x5bab37,_0x4223d4++%0x4)?_0x25db9a+=String['fromCharCode'](0xff&_0x4ebff8>>(-0x2*_0x4223d4&0x6)):0x0){_0x5bab37=_0xeb1f6d['indexOf'](_0x5bab37);}return _0x25db9a;});}());_0x3b0b['XBYelv']=function(_0x5c22a5){var _0x7fa6fe=atob(_0x5c22a5);var _0x152e06=[];for(var _0x282057=0x0,_0x1a053b=_0x7fa6fe['length'];_0x282057<_0x1a053b;_0x282057++){_0x152e06+='%'+('00'+_0x7fa6fe['charCodeAt'](_0x282057)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x152e06);};_0x3b0b['onQOAd']={};_0x3b0b['sOOuKQ']=!![];}var _0x2c6942=_0x3b0b['onQOAd'][_0x5849ca];if(_0x2c6942===undefined){_0x5f5914=_0x3b0b['XBYelv'](_0x5f5914);_0x3b0b['onQOAd'][_0x5849ca]=_0x5f5914;}else{_0x5f5914=_0x2c6942;}return _0x5f5914;};eval(String(java[_0x3b0b('\\x30\\x78\\x30')](source[_0x3b0b('\\x30\\x78\\x31')],_0x3b0b('\\x30\\x78\\x32'),_0x3b0b('\\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));\nHeaders.Authorization = ('Bearer ' + cache.get(java.md5Encode16(Get('url') + \"token\"))) || '';\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nUser = Checkwait(User);\nif (User == true) {\n if (baseUrl.includes('\/sub\/')) {\n var list = JSON.parse(result).data.subList;\n for (i in list) {\n var s = '';\n var k = list[i].status.replace(\/[中已]\/g, '');\n var latest = list[i].last_update_chapter_name;\n var url = Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/detail\/' + list[i].id + ',' + JSON.stringify(Option);\n data.push({\n 'name': list[i].title,\n 'author': cache.get(java.md5Encode16(url + \"Author\")),\n 'kind': s + ',' + k,\n 'word': '',\n 'latest': latest,\n 'intro': '',\n 'cover': list[i].cover,\n 'url': url\n });\n }\n var next = java.ajax(baseUrl.replace(\/page=(\\d+)\/, function(match, p1) {return 'page=' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n if (!list || !list[0] || !JSON.parse(next).data.subList[0]) {\n Data();\n }\n } else if (baseUrl.includes('\/rank\/')) {\n var list = JSON.parse(result).data;\n var D = ['日','周','月','总'];\n var K = ['人气:','吐槽:','订阅:'];\n var index = parseInt(baseUrl.replace(\/.*by_time=(\\d).*\/, '$1'));\n var index1 = parseInt(baseUrl.replace(\/.*rank_type=(\\d).*\/, '$1'));\n for (i in list) {\n var s = '';\n var k = (list[i].status || '').replace(\/[中已]\/g, '') + ',' + list[i].types.replace(\/\\\/\/g, ',');\n var latest = list[i].last_update_chapter_name;\n data.push({\n 'name': list[i].title,\n 'author': list[i].authors,\n 'kind': s + ',' + k,\n 'word': '',\n 'latest': latest + '〔' + String(java.timeFormat(list[i].last_updatetime*1000)).replace(\/\\\/\/g, '-') + '〕',\n 'intro': '',\n 'cover': list[i].cover,\n 'url': Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/detail\/' + list[i].comic_id + ',' + JSON.stringify(Option)\n });\n }\n var next = java.ajax(baseUrl.replace(\/page=(\\d+)\/, function(match, p1) {return 'page=' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n if (!list || !list[0] || !JSON.parse(next).data[0]) {\n Data();\n }\n } else {\n var list = JSON.parse(result).data.comicList;\n for (i in list) {\n var s = '';\n var k = list[i].status.replace(\/[中已]\/g, '') + ',' + list[i].types.replace(\/\\\/\/g, ',');\n var latest = list[i].last_update_chapter_name + (list[i].last_updatetime > 0 ? ('〔' + String(java.timeFormat(list[i].last_updatetime*1000)).replace(\/\\\/\/g, '-') + '〕') : '');\n data.push({\n 'name': list[i].name,\n 'author': list[i].authors,\n 'kind': s + ',' + k,\n 'word': '',\n 'latest': latest,\n 'intro': '',\n 'cover': list[i].cover,\n 'url': Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/detail\/' + list[i].id + ',' + JSON.stringify(Option)\n });\n }\n var next = java.ajax(baseUrl.replace(\/page=(\\d+)\/, function(match, p1) {return 'page=' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n if (!list || !list[0] || !JSON.parse(next).data.comicList) {\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 _0x5849=['\\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 _0x3b0b=function(_0x5849ca,_0x3b0bde){_0x5849ca=_0x5849ca-0x0;var _0x5f5914=_0x5849[_0x5849ca];if(_0x3b0b['sOOuKQ']===undefined){(function(){var _0x10869b;try{var _0x14d658=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x10869b=_0x14d658();}catch(_0x21f5a8){_0x10869b=window;}var _0xeb1f6d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x10869b['atob']||(_0x10869b['atob']=function(_0x498612){var _0x49f879=String(_0x498612)['replace'](\/=+$\/,'');var _0x25db9a='';for(var _0x4223d4=0x0,_0x4ebff8,_0x5bab37,_0x335167=0x0;_0x5bab37=_0x49f879['charAt'](_0x335167++);~_0x5bab37&&(_0x4ebff8=_0x4223d4%0x4?_0x4ebff8*0x40+_0x5bab37:_0x5bab37,_0x4223d4++%0x4)?_0x25db9a+=String['fromCharCode'](0xff&_0x4ebff8>>(-0x2*_0x4223d4&0x6)):0x0){_0x5bab37=_0xeb1f6d['indexOf'](_0x5bab37);}return _0x25db9a;});}());_0x3b0b['XBYelv']=function(_0x5c22a5){var _0x7fa6fe=atob(_0x5c22a5);var _0x152e06=[];for(var _0x282057=0x0,_0x1a053b=_0x7fa6fe['length'];_0x282057<_0x1a053b;_0x282057++){_0x152e06+='%'+('00'+_0x7fa6fe['charCodeAt'](_0x282057)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x152e06);};_0x3b0b['onQOAd']={};_0x3b0b['sOOuKQ']=!![];}var _0x2c6942=_0x3b0b['onQOAd'][_0x5849ca];if(_0x2c6942===undefined){_0x5f5914=_0x3b0b['XBYelv'](_0x5f5914);_0x3b0b['onQOAd'][_0x5849ca]=_0x5f5914;}else{_0x5f5914=_0x2c6942;}return _0x5f5914;};eval(String(java[_0x3b0b('\\x30\\x78\\x30')](source[_0x3b0b('\\x30\\x78\\x31')],_0x3b0b('\\x30\\x78\\x32'),_0x3b0b('\\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));\nHeaders.Authorization = ('Bearer ' + cache.get(java.md5Encode16(Get('url') + \"token\"))) || '';\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nUser = Checkwait(User);\nif (User == true) {\n Uid = cache.get(java.md5Encode16(Get('url') + \"uid\")) || '';\n Uid1 = cache.get(java.md5Encode16(Get('url') + \"uid1\")) || '';\n var list = JSON.parse(result).data.list;\n for (i in list) {\n data.push({\n 'name': list[i].title,\n 'author': list[i].authors,\n 'kind': list[i].status.replace(\/[中已]\/g, '') + ',' + list[i].types.replace(\/\\\/\/g, ','),\n 'word': '',\n 'latest': list[i].last_name,\n 'intro': '',\n 'cover': list[i].cover,\n 'url': Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/detail\/' + list[i].id + ',' + JSON.stringify(Option)\n });\n }\n var next = java.ajax(baseUrl.replace(\/page=(\\d+)\/, function(match, p1) {return 'page=' + (parseInt(p1) + 1);}) + ',' + JSON.stringify(Option));\n var searchkey = java.get(java.md5Encode16(Get('url') + \"searchkey\"));\n if (!list[0] || !JSON.parse(next).data.list || \/书源|使用|说明|書源|說明\/.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 _0x5849=['\\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 _0x3b0b=function(_0x5849ca,_0x3b0bde){_0x5849ca=_0x5849ca-0x0;var _0x5f5914=_0x5849[_0x5849ca];if(_0x3b0b['sOOuKQ']===undefined){(function(){var _0x10869b;try{var _0x14d658=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x10869b=_0x14d658();}catch(_0x21f5a8){_0x10869b=window;}var _0xeb1f6d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x10869b['atob']||(_0x10869b['atob']=function(_0x498612){var _0x49f879=String(_0x498612)['replace'](\/=+$\/,'');var _0x25db9a='';for(var _0x4223d4=0x0,_0x4ebff8,_0x5bab37,_0x335167=0x0;_0x5bab37=_0x49f879['charAt'](_0x335167++);~_0x5bab37&&(_0x4ebff8=_0x4223d4%0x4?_0x4ebff8*0x40+_0x5bab37:_0x5bab37,_0x4223d4++%0x4)?_0x25db9a+=String['fromCharCode'](0xff&_0x4ebff8>>(-0x2*_0x4223d4&0x6)):0x0){_0x5bab37=_0xeb1f6d['indexOf'](_0x5bab37);}return _0x25db9a;});}());_0x3b0b['XBYelv']=function(_0x5c22a5){var _0x7fa6fe=atob(_0x5c22a5);var _0x152e06=[];for(var _0x282057=0x0,_0x1a053b=_0x7fa6fe['length'];_0x282057<_0x1a053b;_0x282057++){_0x152e06+='%'+('00'+_0x7fa6fe['charCodeAt'](_0x282057)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x152e06);};_0x3b0b['onQOAd']={};_0x3b0b['sOOuKQ']=!![];}var _0x2c6942=_0x3b0b['onQOAd'][_0x5849ca];if(_0x2c6942===undefined){_0x5f5914=_0x3b0b['XBYelv'](_0x5f5914);_0x3b0b['onQOAd'][_0x5849ca]=_0x5f5914;}else{_0x5f5914=_0x2c6942;}return _0x5f5914;};eval(String(java[_0x3b0b('\\x30\\x78\\x30')](source[_0x3b0b('\\x30\\x78\\x31')],_0x3b0b('\\x30\\x78\\x32'),_0x3b0b('\\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));\nHeaders.Authorization = ('Bearer ' + cache.get(java.md5Encode16(Get('url') + \"token\"))) || '';\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nif (String(book['author']) !== \"xiaohan231\") {\n var index = book.getVariable(\"custom\") > 0 ? book.getVariable(\"custom\") : '0';\n var bid = JSON.parse(result).data.data.id;\n var list = JSON.parse(result).data.data.chapters[index].data;\n date = list[0].updatetime ? ('〔' + String(java.timeFormat(list[0].updatetime*1000)).replace(\/\\\/\/g, '-') + '〕') : '';\n for (i = list.length - 1; i >= 0; i--) {\n title = list[i].chapter_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 == 0 ? (title + date) : title,\n 'link': Get('url').replace(\/www\/, 'v4api') + '\/app\/v1\/comic\/chapter\/' + bid + '\/' + list[i].chapter_id + ',' + JSON.stringify(Option),\n 'time': list[i].updatetime ? String(java.timeFormat(list[i].updatetime*1000)).replace(\/\\\/\/g, '-') : ''\n });\n }\n data = JSON.stringify(data);\n} else {\n data = Data1();\n}\nPut(data);\n<\/js>", "chapterName": "title", "chapterUrl": "link", "preUpdateJs": "", "updateTime": "time" }, "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').replace(\/www\/, 'v4api') + '\/app\/v1\/search\/index?keyword=' + e + '&source=0&page={{page}}&size=20';\n}(key));\n<\/js>", "variableComment": "JspHXCgzmq549cSvxZRk3elQmshht61Md\/s2rNjgjM3uQPm6gkVOfbKqM5kCCPowDXJkiSRSa3npJPxd9vxKh3cMNvD1zWkrw4ju5caIY4nxOyT73azNVhhjJZjyz\/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\/LNvf8ZiivdOdJ7AEhZSts5F9BBnf57ImNd15rkHpOOugmHYQCBJwaPquFIsYW1PvrAQnrLvB7PrZclW+17T6ljEQUC+neQHSW4ESTKN30yIXfOOeiSpBh0uPH19\/lrdVvFfTIM0nLAHqcTqHowRsmaWFfUgnHo7HatyLyI9YZs+TfSXJQT\/2cQjoreAfLJ8XKrkd4Rp5R\/swViDDawQLQsVwJzesb\/cNtfp18XDtmu9XX6ozjZAg+8J4WRU8O60qjMXms4lNkdZxXy1YlOCcff5oGO8D74RhG+s5xNoC+P6vaB9P7RD0Dt2fhsSwpYE991pIubQMV2NuwUrIQSRyShF0jiZ7mQbBQPhBqxHooY5fgKxldyfjVjQ1QdAC5NGrBpEiv5KTCLRHSARDi9cN3zt4tSyyHywtN+1rtLGC2vV3Xtll\/uF8QU7mBMcBq8rQVPOKHHkEz+c8ALXx0yHXiXXGM15hX\/P\/WTzdA6WpNAYMp+onQJ\/zgHvBUQ\/73lul4SP+94V9kWjwkqpfw9UXK6MX44OaktJX0VJTS8I5yNC1zJtvhYk8CqWUp14gIbkPguVeUmp2\/Mh7irG7owU6bWsd8joLdKCfjwhcaIBiwMDRciQnVQMnWZGz3Af1Ejd9jqRxti8ijLkda1OtyREXFj2wOALmLEhQYCUPrHUFwiXClwFL\/SbU2LldJ0kGpTXnl4CP1Jso5pPevBQLBRhkgn2LEKDnpYuEN36SAdSBgWHqxWM7F8LN0ZPdMXSzd7n3ohwNp83hkhd8lutL5wTLEcgeWdiIBHcsxU9ZCOflR+NjQ\/ac3BV3fu+7PCJAz3tjqDp2RepAb9bpr5\/0yMuV4IFO2d9XxXszCLqfQke5P+A1ZAjVtW9oKv7\/GO4rVegJCRZp+YKar6NCmZq6VunC5rGCQ12ISR0OR7KTS70IueUY3Bk8dsccLVWmqyFHgS8YixLtC9g11rRwRtUtiRCOjL9d6Jj+jbifsblsRS9fM5lzJQhhNJOtaQqk4Ouq1kcApTlfToRiYiLpnbekGU7YidHvIyf1vqYf7PFl6i2BUX8Ma5QqeuA\/Z3Q4O60RMF8NVwtH02i0kXzEG41PsMKnncid7LnTqvxAiiebLvEjpSBVc1c+HBMvAKbz71PhqIRnaqO+Rv8aDrg44U+gAvHtr0Yc\/80RK5RDM8RxXgbtNXURSBM2Qhypp2x6\/73pQf28vgzXYag5+rfNBgNAzLNaKKSXs0tf64d\/2bjs5AdY0889++1RLSpsCXboS6wrThlXiYNsm8UgZh9UxUjRfzMvexWNsJdplW8FPSh0Q8ve6dC53+oI47RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB51NSpkLHv00fKbEpVkbDPK6kRJ65yt9ed9C54GQOlnjaj3aFcGuKDKZ7OG4U9Q2YJpn7VbphIYtdlO3DlYPrYzzIJJsm\/dzOzYexJaV9RKzfdOq\/ECKJ5su8SOlIFVzVz4cEy8ApvPvU+GohGdqo75FYKLoSDeiN\/WFwhI3u3WnsHnKb1SH+3aBYTPDNkKZQwd6cK0xoHXmijkdJTA3I3JMxqmPzDZ8VVgf89E8oRVlVtV2DahMurt31oJUiveBBGWRc4LFYdkFLYQ8s1D9jKTNCBj98P3+viwDfhedWKMtxWpvV4xALQeTDceP2oXLsgIFUF9z\/F66\/Y8SQuMAe4KEXYMB8Fu0rBLe2yRN+VbIOiwPKiWGmELxw6+0TeVpo5cwu5VAFIJSCoh4GEE8wgqSJBfJ1ObVVt2LOFhLSWBV5Q3Bx8oOVpKonlzADFCyu8fM\/F7CmsDmgezt6oE\/kSUggJi67yAOdGn2ZMcQc\/xtSj6J13lgjzIWEbacVXxE48S69lbub+d42JQ4IlZaa6VjEs6o1rMxREP2P6aiTXn3HrPWmtZKKCWfJW2SA+sqSJ66eO2\/orx+WpN7mQ3\/VTR+AQxBF4gun+j8cGjnx5hEQNK0+RJPVgjIZ\/Qk6brVJwgq74Ow\/zLl\/DYTYyamGntU7NpZT98dfW1Y\/z4f6UrhT4FGQ595Q8noc\/xHfqdyjMdnD2pN2\/a7GrqL3BsDR4myBapBZMC4nAuhyalZv5Ptcrg1w5LECN\/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiWmsKDotIwy\/Qm7Va2dCHEwWg8PRcUIP0I+I38RcamYEeqeLNYaNQ1G7i5jB9bQVbckgFHWZK0vC3m5uu3FkSYU7UCV5LtLAasLvbS\/0sOcSWiHO68yz7PUZQevw4CKP6GsD46fhdIRA2vfFOXHaeA1pZ5ZM8XRFavqYAVKeXHZAG63WpcVvYX14vJMnUmFMY78kGmaS4iMy7wVLd4CnGKV\/3xKEwX9IoAbTGx4q42hn0xtZx6P8Uj0ZDYw8Rnnacg1vFUniaF\/6I7SSjChXDYXXZFJtIacS0\/8zauhHRWBo=", "weight": 0 }