🎨Komiic漫画💓
https://komiic.com
xiaohan231 (515)2024/05/24
日常漫画,V2.0版,激活码:555666
{ "bookSourceComment": "", "bookSourceGroup": "🍿 日常,🎊 常用,🎨 漫画", "bookSourceName": "🎨Komiic漫画💓", "bookSourceType": 2, "bookSourceUrl": "https:\/\/komiic.com", "bookUrlPattern": "https:\/\/.*\/api\/query,.*comicById.*", "concurrentRate": "10\/5000", "customOrder": 120, "enabled": true, "enabledCookieJar": false, "enabledExplore": true, "exploreUrl": "<js>\neval(String(source.loginUrl));\nfunction explore(title, url, num, num_1, bool) {\n style = '{\\n title: \"' + title + '\",\\n url: \"' + url + '\",\\n style: {\\n layout_flexGrow: ' + num + ',\\n layout_flexBasisPercent: ' + num_1 + ',\\n layout_wrapBefore: ' + bool + '\\n }\\n }';\n return style;\n}\nvar exploreUrl = [];\nAccount = (cache.get(Get('url') + \"Account_1\") && String(cache.get(Get('url') + \"Account_1\")).length > 0) ? cache.get(Get('url') + \"Account_1\") : Map('账号:');\nif(String(Account).length > 0) {\n if (cache.get(Get('url') + \"authorization\") && String(cache.get(Get('url') + \"authorization\")).length !== 0 && ImageLimit() !== 'undefined') {\n let L = Login_1();\n login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅┅━┅━┅━┅━┅┓\\n┋┋' + '\\n' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n圖片讀取\/上限:' + L[1] + '\/' + L[0] + '\\n┋┋' + '\\n重置时间:' + secondsToHours(L[2]) + '後重置' + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅━┅━┅┛')));\n } else {\n Login();\n }\n if(String(cache.get(Get('url') + \"Account_1\")).length > 0) {\n exploreUrl.push(explore('✣【' + Account + '】✣', '', 1, 1, false));\n exploreUrl.push(explore('推荐漫画', `{{Get('url')}}\/api\/query@a{{page}}`, 1, 0.45, false));\n exploreUrl.push(explore('最近阅读', `{{Get('url')}}\/api\/query@b{{page}}`, 1, 0.45, false));\n exploreUrl.push(explore('✣ 收 藏 ✣', '', 1, 1, false));\n exploreUrl.push(explore('最新加入', `{{Get('url')}}\/api\/query@c{{page}}`, 1, 0.45, false));\n exploreUrl.push(explore('最近更新', `{{Get('url')}}\/api\/query@d{{page}}`, 1, 0.45, false));\n exploreUrl.push(explore('未看完', `{{Get('url')}}\/api\/query@e{{page}}`, 1, 0.25, false));\n exploreUrl.push(explore('未看', `{{Get('url')}}\/api\/query@f{{page}}`, 1, 0.2, false));\n exploreUrl.push(explore('已看完', `{{Get('url')}}\/api\/query@g{{page}}`, 1, 0.25, false));\n }\n}\ntype = [\n '最近更新',\n '热门排行',\n '爱心排行'\n];\nallCategory = [\n {\n \"id\": \"0\",\n \"name\": \"全部\"\n },\n {\n \"id\": \"1\",\n \"name\": \"爱情\"\n },\n {\n \"id\": \"3\",\n \"name\": \"神鬼\"\n },\n {\n \"id\": \"4\",\n \"name\": \"校园\"\n },\n {\n \"id\": \"5\",\n \"name\": \"搞笑\"\n },\n {\n \"id\": \"6\",\n \"name\": \"生活\"\n },\n {\n \"id\": \"7\",\n \"name\": \"悬疑\"\n },\n {\n \"id\": \"8\",\n \"name\": \"冒险\"\n },\n {\n \"id\": \"10\",\n \"name\": \"职场\"\n },\n {\n \"id\": \"11\",\n \"name\": \"魔幻\"\n },\n {\n \"id\": \"2\",\n \"name\": \"后宫\"\n },\n {\n \"id\": \"12\",\n \"name\": \"魔法\"\n },\n {\n \"id\": \"13\",\n \"name\": \"格斗\"\n },\n {\n \"id\": \"14\",\n \"name\": \"宅男\"\n },\n {\n \"id\": \"15\",\n \"name\": \"励志\"\n },\n {\n \"id\": \"16\",\n \"name\": \"耽美\"\n },\n {\n \"id\": \"17\",\n \"name\": \"科幻\"\n },\n {\n \"id\": \"18\",\n \"name\": \"百合\"\n },\n {\n \"id\": \"19\",\n \"name\": \"治愈\"\n },\n {\n \"id\": \"20\",\n \"name\": \"萌系\"\n },\n {\n \"id\": \"21\",\n \"name\": \"热血\"\n },\n {\n \"id\": \"22\",\n \"name\": \"竞技\"\n },\n {\n \"id\": \"23\",\n \"name\": \"推理\"\n },\n {\n \"id\": \"24\",\n \"name\": \"杂志\"\n },\n {\n \"id\": \"25\",\n \"name\": \"侦探\"\n },\n {\n \"id\": \"26\",\n \"name\": \"伪娘\"\n },\n {\n \"id\": \"27\",\n \"name\": \"美食\"\n },\n {\n \"id\": \"9\",\n \"name\": \"恐怖\"\n },\n {\n \"id\": \"28\",\n \"name\": \"四格\"\n },\n {\n \"id\": \"31\",\n \"name\": \"社会\"\n },\n {\n \"id\": \"32\",\n \"name\": \"历史\"\n },\n {\n \"id\": \"33\",\n \"name\": \"战争\"\n },\n {\n \"id\": \"34\",\n \"name\": \"舞蹈\"\n },\n {\n \"id\": \"35\",\n \"name\": \"武俠\"\n },\n {\n \"id\": \"36\",\n \"name\": \"机战\"\n },\n {\n \"id\": \"37\",\n \"name\": \"音乐\"\n },\n {\n \"id\": \"40\",\n \"name\": \"体育\"\n },\n {\n \"id\": \"42\",\n \"name\": \"黑道\"\n },\n {\n \"id\": \"39\",\n \"name\": \"雜誌\"\n }\n];\ntitle = '✣ ✣ 榜 单 ✣ ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nOption = `{{get('option','0')}}`;\nOption1 = `{{get('option1','0')}}`;\nOption2 = `{{get('option2','0')}}`;\nOption3 = `{{get('option3','0')}}`;\nOption4 = `{{get('option4','0')}}`;\nStatus = `{{get('status',Get('q'))}}`;\nfor (i in type) {\n OrderBy = `{{get('orderBy',${i})}}`;\n url = `{{Get('url')}}\/api\/query,${Option}0${Option1}{{30*(page-1)}}${Option2}${OrderBy}${Option3}${Status}${Option4}`;\n exploreUrl.push(explore(type[i], url, 1, 0.25, false));\n}\ntitle = '✣ ✣ 标 签 ✣ ✣';\nexploreUrl.push(explore(title, '', 1, 1, false));\nfor (j in allCategory) {\n OrderBy = `{{get('orderBy',Get('p'))}}`;\n url = `{{Get('url')}}\/api\/query,${Option}${allCategory[j].id}${Option1}{{30*(page-1)}}${Option2}${OrderBy}${Option3}${Status}${Option4}`;\n exploreUrl.push(explore(allCategory[j].name, url, 1, 0.2, false));\n}\nBID = (allCategory.length % 4) < 1 ? 0 : (4 - (allCategory.length % 4));\nfor (i = 0; i < BID; i++) {\n exploreUrl.push(explore('', '', 1, 0.2, false)); \n}\n\/\/exploreUrl.splice(60, 0, explore('', '', 1, 0.2, false));\nvar exploreUrlStr = '[' + exploreUrl.join(\",\") + ']';\nexploreUrlStr;\n<\/js>", "header": "<js>\nvar Proxy = Map('代理:').split(\",\");\nheaders={\n \"User-Agent\": \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/124.0.0.0 Safari\/537.36\",\n \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(Get('url') + \"headers\",JSON.stringify(headers));\nJSON.stringify(headers);\n<\/js>", "jsLib": "function get(tag,num) {\n var option = ['{\"body\":{\"operationName\":\"comicByCategory\",\"variables\":{\"categoryId\":\"'];\n var option1 = ['\",\"pagination\":{\"limit\":30,\"offset\":'];\n var option2 = [',\"orderBy\":\"'];\n var option3 = ['\",\"asc\":false,\"status\":\"'];\n var option4 = ['\"}},\"query\":\"query comicByCategory($categoryId: ID!, $pagination: Pagination!) {\\n comicByCategory(categoryId: $categoryId, pagination: $pagination) {\\n id\\n title\\n status\\n year\\n imageUrl\\n authors {\\n id\\n name\\n __typename\\n }\\n categories {\\n id\\n name\\n __typename\\n }\\n dateUpdated\\n monthViews\\n views\\n favoriteCount\\n lastBookUpdate\\n lastChapterUpdate\\n __typename\\n }\\n}\"},\"headers\":{\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}'];\n var hoption1 = ['{\"body\":{\"operationName\":\"comicByIds\",\"variables\":{\"comicIds\":'];\n var hoption2 = ['},\"query\":\"query comicByIds($comicIds: [ID]!) {\\n comicByIds(comicIds: $comicIds) {\\n id\\n title\\n status\\n year\\n imageUrl\\n authors {\\n id\\n name\\n __typename\\n }\\n categories {\\n id\\n name\\n __typename\\n }\\n dateUpdated\\n monthViews\\n views\\n favoriteCount\\n lastBookUpdate\\n lastChapterUpdate\\n __typename\\n }\\n}\"},\"headers\":{\"authorization\":\"'];\n var hoption3 = ['\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}'];\n orderBy = [\n 'DATE_UPDATED',\n 'VIEWS',\n 'FAVORITE_COUNT'\n ];\n status = [\n '',\n 'ONGOING',\n 'END'\n ];\n orderBy1 = [\n 'FAVORITE_ADDED',\n 'COMIC_DATE_UPDATED'\n ];\n var e = eval(tag + '[' + num + ']');\n return e;\n}\nfunction Get(e) {\n const { java, source, cookie } = this;\n var get = JSON.parse(source.getVariable());\n return get[e];\n}\nfunction Put(data) {\n const { java, source, cookie } = this;\n var get = JSON.parse(source.getVariable());\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 } = 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 secondsToHours(seconds) {\n var hours = Math.floor(seconds \/ 3600);\n var remainingSeconds = seconds % 3600;\n var minutes = Math.floor(remainingSeconds \/ 60);\n var remainingSeconds = remainingSeconds % 60;\n return hours + \" 小时 \" + minutes + \" 分钟 \" + remainingSeconds + \" 秒\";\n}", "lastUpdateTime": 1716488023766, "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: \"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: \"o(0)\" },\n { name: \" 最近更新 \", type: \"button\", action: \"o(1)\" },\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\n {\n name: \" 💡 源 站 打 印 💡 \",\n type: \"button\",\n action: \"test()\"\n }\n]", "loginUrl": "var fburl = '';\nvar LX = '10';\noriginal = {\n 'ci0': 0,\n 'ci1': 0,\n 'ci2': 0,\n 'ci3': 0,\n 'p': 0,\n 'o': 0,\n 'q': 0,\n 'search_TC': false,\n 'TC_to_SC': true,\n 'settle': false,\n 'url': 'https:\/\/komiic.com',\n 'urls': [\n 'https:\/\/komiic.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(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]);\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 html = java.ajax(fburl);\n J = org.jsoup.Jsoup.parse(html);\n u = J.select('.jump');\n for (i = 0; i < 6; i++) {\n host = 'https:\/\/' + String(u.text().split(' ')[i]);\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' + '⏲️漫画进度:' + type1($$$.q)) + '\\n┋┋' + ('\\n' + '📚收藏排序:' + type3($$$.o)) + '\\n┋┋' + ('\\n' + '📚标签排序:' + type2($$$.p)) + '\\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}\nw = ['全部','连载','完结'];\nfunction type1(e) {\n if (e == undefined) {\n e = 0;\n }\n return w[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) + '已经切换到[' + type1(e) + ']进度');\n $$$.q = e;\n return put($$$);\n}\ny = ['加入','更新'];\nfunction type3(e) {\n if (e == undefined) {\n e = 1;\n }\n return y[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) + '已经切换到[' + type3(e) + ']排序');\n $$$.o = e;\n return put($$$);\n}\nz = ['更新','爱心','热门'];\nfunction type2(e) {\n if (e == undefined) {\n e = 1;\n }\n return z[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) + '已经切换到[' + type2(e) + ']排序');\n $$$.p = 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 imglist = [];\nfunction Login_1() {\n var requestBody1 = '{\"operationName\":\"getImageLimit\",\"variables\":{},\"query\":\"query getImageLimit {\\\\n getImageLimit {\\\\n limit\\\\n usage\\\\n resetInSeconds\\\\n __typename\\\\n }\\\\n}\"}';\n var headers1 = '{\"Host\":\"' + Get('url').replace(\/^(https?:)?(\\\/\\\/)?([^\\\/]+).*\/, \"$3\") + '\",\"authorization\":\"' + cache.get(Get('url') + \"authorization\") + '\",\"Content-Type\":\"application\/json\"}';\n var option1 = {\n \"method\": \"POST\",\n \"body\": String(requestBody1),\n \"headers\": String(headers1)\n };\n Response1 = java.ajax(Get('url') + '\/api\/query,' + JSON.stringify(option1));\n if (JSON.parse(Response1).data) {\n var json1 = JSON.parse(Response1).data.getImageLimit;\n return [json1.limit,json1.usage,json1.resetInSeconds];\n } else {\n return [];\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 let L = Login_1();\n login(String(cache.get(Get('url') + \"Account_1\")).length > 0 && L.length > 0 ? (Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅┅━┅━┅━┅━┅┓\\n┋┋' + '\\n已退出账号:' + cache.get(Get('url') + \"Account_1\") + '\\n┋┋' + '\\n圖片讀取\/上限:' + L[1] + '\/' + L[0] + '\\n┋┋' + '\\n重置时间:' + secondsToHours(L[2]) + '後重置' + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅━┅━┅┛'))) : ('【登录提示】' + '\\n\\n请输入账号和密码'));\n cache.put(Get('url') + \"Account_1\", '');\n cache.put(Get('url') + \"authorization\", '');\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 if (Account.includes(\",\") && LX == '10') {\n var Accounts = Account.split(\",\");\n if (Accounts.length > LX) {\n login('【登录提示】' + '\\n\\n♣️账号数超过限制♣️\\n\\n轮询账号上限为' + LX + '个' + '\\n\\n请删除多余账号,适度使用');\n return;\n }\n for (i = 0; i < Accounts.length; i++) {\n var Account = Accounts[i].trim();\n var requestBody = '{\"email\":\"' + Account + '\",\"password\":\"' + Password + '\"}';\n var headers = '{\"Host\":\"' + Get('url').replace(\/^(https?:)?(\\\/\\\/)?([^\\\/]+).*\/, \"$3\") + '\",\"Content-Type\":\"application\/json\"}';\n var option = {\n \"method\": \"POST\",\n \"body\": String(requestBody),\n \"headers\": String(headers)\n };\n Response = java.ajax(Get('url') + '\/auth\/login,' + JSON.stringify(option));\n if (JSON.parse(Response).token) {\n cache.put(Get('url') + \"Account_1\",Account);\n cache.put(Get('url') + \"authorization\",\"Bearer \" + JSON.parse(Response).token);\n ImageLimit();\n let L = Login_1();\n if (L[0] - L[1] >= img_size) {\n login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅┅━┅━┅━┅━┅┓\\n┋┋' + '\\n' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n圖片讀取\/上限:' + L[1] + '\/' + L[0] + '\\n┋┋' + '\\n重置时间:' + secondsToHours(L[2]) + '後重置' + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅━┅━┅┛')));\n break;\n } else {\n login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅┅━┅━┅━┅━┅┓\\n┋┋' + '\\n' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n圖片讀取\/上限:' + L[1] + '\/' + L[0] + '\\n┋┋' + '\\n重置时间:' + secondsToHours(L[2]) + '後重置' + '\\n┋┋' + '\\n剩余圖片讀取数小于' + img_size + '\\n┋┋' + '\\n自动登录下一个账号' + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅━┅━┅┛')));\n if (i == Accounts.length - 1) {\n login('【登录提示】' + '\\n\\n♣️轮询结束♣️\\n\\n所有账号剩余图片读取数都小于' + img_size + '\\n\\n请添加新的账号,或等待重置后再试');\n }\n }\n } else {\n cache.put(Get('url') + \"Account_1\",'');\n login('【登录提示】' + '\\n\\n♣️登录失败♣️\\n\\n请检查账号:'+ Account);\n }\n }\n } else {\n var requestBody = '{\"email\":\"' + Account + '\",\"password\":\"' + Password + '\"}';\n var headers = '{\"Host\":\"' + Get('url').replace(\/^(https?:)?(\\\/\\\/)?([^\\\/]+).*\/, \"$3\") + '\",\"Content-Type\":\"application\/json\"}';\n var option = {\n \"method\": \"POST\",\n \"body\": String(requestBody),\n \"headers\": String(headers)\n };\n Response = java.ajax(Get('url') + '\/auth\/login,' + JSON.stringify(option));\n if (JSON.parse(Response).token) {\n cache.put(Get('url') + \"Account_1\",Account);\n cache.put(Get('url') + \"authorization\",\"Bearer \" + JSON.parse(Response).token);\n let L = Login_1();\n login(Put(JSON.stringify('【登录提示】\\n\\n┏┅━┅━┅━┅━┅┅━┅━┅━┅━┅┓\\n┋┋' + '\\n' + Account + '\\n┋┋' + '\\n❤️登录成功❤️\\n┋┋' + '\\n圖片讀取\/上限:' + L[1] + '\/' + L[0] + '\\n┋┋' + '\\n重置时间:' + secondsToHours(L[2]) + '後重置' + '\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅━┅━┅┛')));\n } else {\n cache.put(Get('url') + \"Account_1\",'');\n login('【登录提示】' + '\\n\\n♣️登录失败♣️\\n\\n请检查账号和密码');\n }\n }\n }\n}\nfunction ImageLimit() {\n function Authorization() {\n var requestBody = '{\"operationName\":\"getImageLimit\",\"variables\":{},\"query\":\"query getImageLimit {\\\\n getImageLimit {\\\\n limit\\\\n usage\\\\n resetInSeconds\\\\n __typename\\\\n }\\\\n}\"}';\n var headers = '{\"Host\":\"' + Get('url').replace(\/^(https?:)?(\\\/\\\/)?([^\\\/]+).*\/, \"$3\") + '\",\"authorization\":\"' + cache.get(Get('url') + \"authorization\") + '\",\"Content-Type\":\"application\/json\"}';\n var option = {\n \"method\": \"POST\",\n \"body\": String(requestBody),\n \"headers\": String(headers)\n };\n Response = java.ajax(Get('url') + '\/api\/query,' + JSON.stringify(option));\n }\n Authorization();\n if (JSON.parse(Response).data) {\n json = JSON.parse(Response).data.getImageLimit;\n img_size = imglist.length;\n } else {\n if ((typeof result !== 'undefined' ? (result[\"账号:\"] ? result[\"账号:\"] : Map('账号:')) : Map('账号:')) == '') {\n cache.put(Get('url') + \"authorization\",\"\");\n return 'undefined';\n }\n Login();\n Authorization();\n json = JSON.parse(Response).data.getImageLimit;\n img_size = imglist.length;\n }\n}", "respondTime": 20149, "ruleBookInfo": { "author": "author", "canReName": "reName", "coverUrl": "cover", "downloadUrls": "durl", "init": "<js>\neval(String(source.loginUrl));\nvar Headers = JSON.parse(cache.get(Get('url') + \"headers\").replace(Get('url'), baseUrl));\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nif (String(book['author']) !== \"xiaohan231\") {\n var J = org.jsoup.Jsoup.parse(result);\n var list = JSON.parse(result).data.comicById;\n var $2 = element => String(java.getElements(element).text());\n var $3 = element => String(J.select(element).attr('src'));\n url = '';\n var authors = [];\n var authorElements = list.authors;\n for (var j in authorElements) {\n authors.push(String(authorElements[j].name));\n }\n author = authors.join('\/').replace(\/\\s\/g, '');\n var kinds = [];\n var kindElements = list.categories;\n for (var j in kindElements) {\n kinds.push(String(kindElements[j].name));\n }\n s = '✦ ' + Num(list.views) + ',' + '♥ ' + Num(list.favoriteCount);\n k = list.status.replace(\/END\/g, '完结').replace(\/ONGOING\/g, '连载') + ',' + list.year + ',' + kinds.join(',').replace(\/\\s\/g, '');\n t = list.dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '');\n java.put(\"date\",t);\n l = '第' + ((list.lastBookUpdate ? list.lastBookUpdate + '卷' : '') || (list.lastChapterUpdate ? list.lastChapterUpdate + '话' : ''));\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('q') == 0 ? '默认' : '自选') + '〗' + w[Get('q')]) + ('\\n📚收藏排序:〖' + (Get('o') == 0 ? '默认' : '自选') + '〗' + y[Get('o')]) + ('\\n📚标签排序:〖' + (Get('p') == 0 ? '默认' : '自选') + '〗' + z[Get('p')]) + ('\\n🔍繁体搜索:' + (Get('search_TC') == true ? '〖自选〗开启' : '〖默认〗关闭')) + ('\\n📑简繁转换:' + (Get('TC_to_SC') == true ? '〖默认〗开启' : '〖自选〗关闭')) + ('\\n🗃目录整理:' + (Get('settle') == true ? '〖自选〗开启' : '〖默认〗关闭'));\n changeLog = '\\nㅤ\\nㅤ\\n' + Setting + '\\nㅤ\\n';\n var body = '{\"operationName\":\"chapterByComicId\",\"variables\":{\"comicId\":\"' + list.id + '\"},\"query\":\"query chapterByComicId($comicId: ID!) {\\n chaptersByComicId(comicId: $comicId) {\\n id\\n serial\\n type\\n dateCreated\\n dateUpdated\\n size\\n __typename\\n }\\n}\"}';\n if (!cache.get(Get('url') + \"authorization\") || String(cache.get(Get('url') + \"authorization\")).length == 0 || ImageLimit() == 'undefined') {\n var intro1 = '当前帐号:未登录';\n } else {\n ImageLimit();\n Account = (cache.get(Get('url') + \"Account_1\") && String(cache.get(Get('url') + \"Account_1\")).length > 0) ? cache.get(Get('url') + \"Account_1\") : Map('账号:');\n var intro1 = '当前帐号:' + Account + '\\nㅤ\\n圖片讀取\/上限:' + json.usage + '\/' + json.limit + (json.limit <= json.usage ? '(已达限额)' : '') + '\\nㅤ\\n重置时间:' + secondsToHours(json.resetInSeconds) + '後重置';\n var SC = cache.get(book.originName + Account + list.id) ? cache.get(book.originName + Account + list.id) : '';\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 option = '{\"body\":{\"operationName\":\"addFavorite\",\"variables\":{\"comicId\":\"' + list.id + '\"},\"query\":\"mutation addFavorite($comicId: ID!) {\\n addFavorite(comicId: $comicId) {\\n id\\n comicId\\n dateAdded\\n lastAccess\\n bookReadProgress\\n chapterReadProgress\\n __typename\\n }\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n let url = Get('url') + '\/api\/query,' + option;\n java.ajax(url);\n cache.put(book.originName + Account + list.id,'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 option = '{\"body\":{\"operationName\":\"removeFavorite\",\"variables\":{\"comicId\":\"' + list.id + '\"},\"query\":\"mutation removeFavorite($comicId: ID!) {\\n removeFavorite(comicId: $comicId)\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n let url = Get('url') + '\/api\/query,' + option;\n java.ajax(url);\n cache.put(book.originName + Account + list.id,'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': l + '〔' + t + '〕',\n 'intro': (t != '' ? ('更新时间:' + t + '\\nㅤ\\n') : '') + intro1 + changeLog,\n 'cover': list.imageUrl,\n 'url': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}',\n 'durl': '',\n 'reName': true\n });\n} else {\n (function Book() {\n apiBaseUrl = cache.get(`cache_api_${Get('url')}`);\n json = java.ajax(apiBaseUrl);\n Title = JSON.parse(json)['title'];\n Intro = 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 eval(String(source.loginUrl));\n var img_size = '0';\n imglist=JSON.parse(result).data.imagesByChapterId;\n if (cache.get(Get('url') + \"authorization\") && ImageLimit() !== 'undefined') {\n ImageLimit();\n if (json.limit - json.usage < img_size && Map('账号:').includes(\",\")) {\n Login();\n }\n if (json.limit - json.usage < 50 && !Map('账号:').includes(\",\")) {\n Login();\n }\n }\n comicId = baseUrl.substring(baseUrl.indexOf('comic\/') + 6, baseUrl.lastIndexOf('\/chapter'));\n chapterId = baseUrl.substring(baseUrl.indexOf('chapter\/') + 8, baseUrl.lastIndexOf('\/images'));\n option = '{\"body\":{\"operationName\":\"addReadComicHistory\",\"variables\":{\"comicId\":\"' + comicId + '\",\"chapterId\":\"' + chapterId + '\",\"page\":1},\"query\":\"mutation addReadComicHistory($comicId: ID!, $chapterId: ID!, $page: Int!) {\\n addReadComicHistory(comicId: $comicId, chapterId: $chapterId, page: $page) {\\n id\\n comicId\\n chapters {\\n id\\n chapterId\\n page\\n __typename\\n }\\n startDate\\n lastDate\\n chapterType\\n __typename\\n }\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n url = Get('url') + '\/api\/query,' + option;\n java.ajax(url);\n var result='';\n for(i in imglist){\n result +='<img src=\"'+Get('url') + '\/api\/image\/' +imglist[i].kid + ',{\"headers\":{\"authorization\":\"' + cache.get(Get('url') + \"authorization\") + '\",\"Referer\":\"' + Get('url') + '\/comic\/' + comicId + '\/chapter\/' + chapterId + '\/images\/all?page=1\"}}\">\\n'\n }\n} else {\n '<br><img src=\"https:\/\/qyyuapi.com\/img\/' + String(title).replace(\/〔.*$\/, \"\") + '.jpg\">';\n}\n<\/js>", "imageStyle": "FULL", "nextContentUrl": "", "replaceRegex": "" }, "ruleExplore": { "author": "author", "bookList": "<js>\nvar _0x2844=['\\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 _0x271a=function(_0x28447c,_0x271a07){_0x28447c=_0x28447c-0x0;var _0x3fa6e2=_0x2844[_0x28447c];if(_0x271a['JnZkTY']===undefined){(function(){var _0x256bf8=function(){var _0x41a19b;try{_0x41a19b=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');')();}catch(_0x1834f8){_0x41a19b=window;}return _0x41a19b;};var _0x449a97=_0x256bf8();var _0x5cf63b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x449a97['atob']||(_0x449a97['atob']=function(_0x5e93b7){var _0x12aa6c=String(_0x5e93b7)['replace'](\/=+$\/,'');var _0x53c98d='';for(var _0x5c8e3c=0x0,_0x385c1e,_0x472ac7,_0x5cd6b6=0x0;_0x472ac7=_0x12aa6c['charAt'](_0x5cd6b6++);~_0x472ac7&&(_0x385c1e=_0x5c8e3c%0x4?_0x385c1e*0x40+_0x472ac7:_0x472ac7,_0x5c8e3c++%0x4)?_0x53c98d+=String['fromCharCode'](0xff&_0x385c1e>>(-0x2*_0x5c8e3c&0x6)):0x0){_0x472ac7=_0x5cf63b['indexOf'](_0x472ac7);}return _0x53c98d;});}());_0x271a['EMYZMi']=function(_0x5efd9a){var _0x466d2a=atob(_0x5efd9a);var _0xeaf427=[];for(var _0x54cfbf=0x0,_0x54f1be=_0x466d2a['length'];_0x54cfbf<_0x54f1be;_0x54cfbf++){_0xeaf427+='%'+('00'+_0x466d2a['charCodeAt'](_0x54cfbf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xeaf427);};_0x271a['UUPFFl']={};_0x271a['JnZkTY']=!![];}var _0x55573a=_0x271a['UUPFFl'][_0x28447c];if(_0x55573a===undefined){_0x3fa6e2=_0x271a['EMYZMi'](_0x3fa6e2);_0x271a['UUPFFl'][_0x28447c]=_0x3fa6e2;}else{_0x3fa6e2=_0x55573a;}return _0x3fa6e2;};eval(String(java[_0x271a('\\x30\\x78\\x30')](source[_0x271a('\\x30\\x78\\x31')],_0x271a('\\x30\\x78\\x32'),_0x271a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar json = [];\nvar Headers = JSON.parse(cache.get(Get('url') + \"headers\").replace(Get('url'), baseUrl));\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nif (User == true) {\n if (baseUrl.includes('@')) {\n eval(String(source.loginUrl));\n ImageLimit();\n }\n var comicIds = [];\n if (baseUrl.includes('@a')) {\n var page = baseUrl.replace(\/.*@a\/, '')\n option = '{\"body\":{\"operationName\":\"recommendComicIds\",\"variables\":{\"pagination\":{\"limit\":30,\"offset\":' + 30*(page-1) + ',\"orderBy\":\"DATE_UPDATED\",\"asc\":true},\"category\":\"\"},\"query\":\"query recommendComicIds($category: String, $pagination: Pagination!) {\\n recommendComicIds(category: $category, pagination: $pagination)\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.recommendComicIds;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i]));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n json = [];\n } else {\n var list = [];\n }\n }\n if (baseUrl.includes('@b')) {\n var page = baseUrl.replace(\/.*@b\/, '')\n option = '{\"body\":{\"operationName\":\"readComicHistory\",\"variables\":{\"pagination\":{\"limit\":30,\"offset\":' + 30*(page-1) + ',\"orderBy\":\"DATE_UPDATED\",\"asc\":true}},\"query\":\"query readComicHistory($pagination: Pagination!) {\\n readComicHistory(pagination: $pagination) {\\n id\\n comicId\\n chapters {\\n id\\n chapterId\\n page\\n __typename\\n }\\n startDate\\n lastDate\\n chapterType\\n __typename\\n }\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.readComicHistory;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n json = [];\n } else {\n var list = [];\n }\n }\n option1 = '{\"body\":{\"operationName\":\"favoritesQuery\",\"variables\":{\"pagination\":{\"limit\":30,\"offset\":';\n option2 = ',\"orderBy\":\"';\n option3 = '\",\"status\":\"';\n option4 = '\",\"asc\":true,\"readProgress\":\"';\n option5 = '\"}},\"query\":\"query favoritesQuery($pagination: Pagination!) {\\n getLatestUpdatedDateInFavorite\\n favoritesV2(pagination: $pagination) {\\n id\\n comicId\\n dateAdded\\n lastAccess\\n bookReadProgress\\n chapterReadProgress\\n __typename\\n }\\n}\"},\"headers\":{\"authorization\":\"' + cache.get(Get('url') + 'authorization') + '\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}';\n if (baseUrl.includes('@c')) {\n var page = baseUrl.replace(\/.*@c\/, '')\n option = option1 + 30*(page-1) + option2 + 'FAVORITE_ADDED' + option3 + get('status',Get('q')) + option4 + 'ALL' + option5;\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.favoritesV2;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n } else {\n var list = [];\n }\n }\n if (baseUrl.includes('@d')) {\n var page = baseUrl.replace(\/.*@d\/, '')\n option = option1 + 30*(page-1) + option2 + 'COMIC_DATE_UPDATED' + option3 + get('status',Get('q')) + option4 + 'ALL' + option5;\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.favoritesV2;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n } else {\n var list = [];\n }\n }\n if (baseUrl.includes('@e')) {\n var page = baseUrl.replace(\/.*@e\/, '')\n option = option1 + 30*(page-1) + option2 + get('orderBy1',Get('o')) + option3 + get('status',Get('q')) + option4 + 'STARTED' + option5;\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.favoritesV2;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n } else {\n var list = [];\n }\n }\n if (baseUrl.includes('@f')) {\n var page = baseUrl.replace(\/.*@f\/, '')\n option = option1 + 30*(page-1) + option2 + get('orderBy1',Get('o')) + option3 + get('status',Get('q')) + option4 + 'UNREAD' + option5;\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.favoritesV2;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n } else {\n var list = [];\n }\n }\n if (baseUrl.includes('@g')) {\n var page = baseUrl.replace(\/.*@g\/, '')\n option = option1 + 30*(page-1) + option2 + get('orderBy1',Get('o')) + option3 + get('status',Get('q')) + option4 + 'COMPLETED' + option5;\n url = Get('url') + '\/api\/query,' + option;\n result = java.ajax(url);\n json = JSON.parse(result).data.favoritesV2;\n if (json.length > 0) {\n for (var i in json) {\n comicIds.push(String(json[i].comicId));\n }\n var strcomicIds = '[\"' + comicIds.join('\",\"') + '\"]';\n let url1 = Get('url') + '\/api\/query,' + get('hoption1','0') + strcomicIds + get('hoption2','0') + cache.get(Get('url') + 'authorization') + get('hoption3','0');\n result = java.ajax(url1);\n var list = JSON.parse(result).data.comicByIds;\n } else {\n var list = [];\n }\n }\n if (!baseUrl.includes('@')) {\n var list = JSON.parse(result).data.comicByCategory;\n }\n for (i = 0; i < list.length; i++) {\n name = list[i].title;\n var authors = [];\n var authorElements = list[i].authors;\n for (var j in authorElements) {\n authors.push(String(authorElements[j].name));\n }\n author = authors.join('\/').replace(\/\\s\/g, '');\n var read = json.length == 0 ? '' : json[i].chapterReadProgress.replace(\/UNREAD\/, '未看').replace(\/STARTED\/, '未看完').replace(\/COMPLETED\/, '已看完');\n var kinds = [];\n var kindElements = list[i].categories;\n for (var j in kindElements) {\n kinds.push(String(kindElements[j].name));\n }\n kind = '✦ ' + Num(list[i].views) + ',' + '♥ ' + Num(list[i].favoriteCount) + ',' + list[i].status.replace(\/END\/g, '完结').replace(\/ONGOING\/g, '连载') + ',' + list[i].year + ',' + kinds.join(',').replace(\/\\s\/g, '');\n latest = '第' + ((list[i].lastBookUpdate ? list[i].lastBookUpdate + '卷' : '') || (list[i].lastChapterUpdate ? list[i].lastChapterUpdate + '话' : '')) + '〔' + list[i].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '') + '〕';\n var body = '{\"operationName\":\"comicById\",\"variables\":{\"comicId\":\"' + list[i].id + '\"},\"query\":\"query comicById($comicId: ID!) {\\n comicById(comicId: $comicId) {\\n id\\n title\\n status\\n year\\n imageUrl\\n authors {\\n id\\n name\\n __typename\\n }\\n categories {\\n id\\n name\\n __typename\\n }\\n dateCreated\\n dateUpdated\\n views\\n favoriteCount\\n lastBookUpdate\\n lastChapterUpdate\\n __typename\\n }\\n}\"}';\n data.push({\n 'name': name,\n 'author': author,\n 'kind': read + ',' + kind,\n 'word': '',\n 'latest': latest,\n 'intro': '',\n 'cover': list[i].imageUrl,\n 'url': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}'\n });\n }\n var next = '';\n if (!list[0]) {\n Data();\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" }, "ruleReview": {}, "ruleSearch": { "author": "author", "bookList": "<js>\nvar _0x2844=['\\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 _0x271a=function(_0x28447c,_0x271a07){_0x28447c=_0x28447c-0x0;var _0x3fa6e2=_0x2844[_0x28447c];if(_0x271a['JnZkTY']===undefined){(function(){var _0x256bf8=function(){var _0x41a19b;try{_0x41a19b=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');')();}catch(_0x1834f8){_0x41a19b=window;}return _0x41a19b;};var _0x449a97=_0x256bf8();var _0x5cf63b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x449a97['atob']||(_0x449a97['atob']=function(_0x5e93b7){var _0x12aa6c=String(_0x5e93b7)['replace'](\/=+$\/,'');var _0x53c98d='';for(var _0x5c8e3c=0x0,_0x385c1e,_0x472ac7,_0x5cd6b6=0x0;_0x472ac7=_0x12aa6c['charAt'](_0x5cd6b6++);~_0x472ac7&&(_0x385c1e=_0x5c8e3c%0x4?_0x385c1e*0x40+_0x472ac7:_0x472ac7,_0x5c8e3c++%0x4)?_0x53c98d+=String['fromCharCode'](0xff&_0x385c1e>>(-0x2*_0x5c8e3c&0x6)):0x0){_0x472ac7=_0x5cf63b['indexOf'](_0x472ac7);}return _0x53c98d;});}());_0x271a['EMYZMi']=function(_0x5efd9a){var _0x466d2a=atob(_0x5efd9a);var _0xeaf427=[];for(var _0x54cfbf=0x0,_0x54f1be=_0x466d2a['length'];_0x54cfbf<_0x54f1be;_0x54cfbf++){_0xeaf427+='%'+('00'+_0x466d2a['charCodeAt'](_0x54cfbf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xeaf427);};_0x271a['UUPFFl']={};_0x271a['JnZkTY']=!![];}var _0x55573a=_0x271a['UUPFFl'][_0x28447c];if(_0x55573a===undefined){_0x3fa6e2=_0x271a['EMYZMi'](_0x3fa6e2);_0x271a['UUPFFl'][_0x28447c]=_0x3fa6e2;}else{_0x3fa6e2=_0x55573a;}return _0x3fa6e2;};eval(String(java[_0x271a('\\x30\\x78\\x30')](source[_0x271a('\\x30\\x78\\x31')],_0x271a('\\x30\\x78\\x32'),_0x271a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar Headers = JSON.parse(cache.get(Get('url') + \"headers\").replace(Get('url'), baseUrl));\nvar Option = {\n \"method\": \"GET\",\n \"headers\": Headers\n};\nif (User == true) {\n var list = JSON.parse(result).data.searchComicsAndAuthors.comics;\n for (i = 0; i < list.length; i++) {\n name = list[i].title;\n var authors = [];\n var authorElements = list[i].authors;\n for (var j in authorElements) {\n authors.push(String(authorElements[j].name));\n }\n author = authors.join('\/').replace(\/\\s\/g, '');\n var kinds = [];\n var kindElements = list[i].categories;\n for (var j in kindElements) {\n kinds.push(String(kindElements[j].name));\n }\n kind = '✦ ' + Num(list[i].views) + ',' + '♥ ' + Num(list[i].favoriteCount) + ',' + list[i].status.replace(\/END\/g, '完结').replace(\/ONGOING\/g, '连载') + ',' + list[i].year + ',' + kinds.join(',').replace(\/\\s\/g, '');\n latest = '第' + ((list[i].lastBookUpdate ? list[i].lastBookUpdate + '卷' : '') || (list[i].lastChapterUpdate ? list[i].lastChapterUpdate + '话' : '')) + '〔' + list[i].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '') + '〕';\n var body = '{\"operationName\":\"comicById\",\"variables\":{\"comicId\":\"' + list[i].id + '\"},\"query\":\"query comicById($comicId: ID!) {\\n comicById(comicId: $comicId) {\\n id\\n title\\n status\\n year\\n imageUrl\\n authors {\\n id\\n name\\n __typename\\n }\\n categories {\\n id\\n name\\n __typename\\n }\\n dateCreated\\n dateUpdated\\n views\\n favoriteCount\\n lastBookUpdate\\n lastChapterUpdate\\n __typename\\n }\\n}\"}';\n data.push({\n 'name': name,\n 'author': author,\n 'kind': kind,\n 'word': '',\n 'latest': latest,\n 'intro': '',\n 'cover': list[i].imageUrl,\n 'url': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}'\n });\n }\n Data();\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 _0x2844=['\\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 _0x271a=function(_0x28447c,_0x271a07){_0x28447c=_0x28447c-0x0;var _0x3fa6e2=_0x2844[_0x28447c];if(_0x271a['JnZkTY']===undefined){(function(){var _0x256bf8=function(){var _0x41a19b;try{_0x41a19b=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');')();}catch(_0x1834f8){_0x41a19b=window;}return _0x41a19b;};var _0x449a97=_0x256bf8();var _0x5cf63b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x449a97['atob']||(_0x449a97['atob']=function(_0x5e93b7){var _0x12aa6c=String(_0x5e93b7)['replace'](\/=+$\/,'');var _0x53c98d='';for(var _0x5c8e3c=0x0,_0x385c1e,_0x472ac7,_0x5cd6b6=0x0;_0x472ac7=_0x12aa6c['charAt'](_0x5cd6b6++);~_0x472ac7&&(_0x385c1e=_0x5c8e3c%0x4?_0x385c1e*0x40+_0x472ac7:_0x472ac7,_0x5c8e3c++%0x4)?_0x53c98d+=String['fromCharCode'](0xff&_0x385c1e>>(-0x2*_0x5c8e3c&0x6)):0x0){_0x472ac7=_0x5cf63b['indexOf'](_0x472ac7);}return _0x53c98d;});}());_0x271a['EMYZMi']=function(_0x5efd9a){var _0x466d2a=atob(_0x5efd9a);var _0xeaf427=[];for(var _0x54cfbf=0x0,_0x54f1be=_0x466d2a['length'];_0x54cfbf<_0x54f1be;_0x54cfbf++){_0xeaf427+='%'+('00'+_0x466d2a['charCodeAt'](_0x54cfbf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xeaf427);};_0x271a['UUPFFl']={};_0x271a['JnZkTY']=!![];}var _0x55573a=_0x271a['UUPFFl'][_0x28447c];if(_0x55573a===undefined){_0x3fa6e2=_0x271a['EMYZMi'](_0x3fa6e2);_0x271a['UUPFFl'][_0x28447c]=_0x3fa6e2;}else{_0x3fa6e2=_0x55573a;}return _0x3fa6e2;};eval(String(java[_0x271a('\\x30\\x78\\x30')](source[_0x271a('\\x30\\x78\\x31')],_0x271a('\\x30\\x78\\x32'),_0x271a('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nvar Intro = '';\nuser_Check();\nvar data = [];\nvar data1 = [];\nvar J = [];\nvar Headers = JSON.parse(cache.get(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).data.chaptersByComicId;\n comicId = baseUrl.substring(baseUrl.indexOf('comicId\":') + 10, baseUrl.lastIndexOf('\"query\"') - 3);\n date = java.get(\"date\");\n date1 = list[list.length - 1].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '');\n date2 = '';\n for (i in list) {\n date3 = list[i].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '');\n title = String('第' + list[i].serial + (list[i].type == \"book\" ? '卷 (' : '話 (') + list[i].size + 'p)');\n order = title.match(\/(\\d+)\/);\n title = Get('settle') == true ? String(title).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 var body = '{\"operationName\":\"imagesByChapterId\",\"variables\":{\"chapterId\":\"' + list[i].id + '\"},\"query\":\"query imagesByChapterId($chapterId: ID!) {\\n imagesByChapterId(chapterId: $chapterId) {\\n id\\n kid\\n height\\n width\\n __typename\\n }\\n}\"}';\n if (list[i].type == \"book\") {\n if (data1.length >= 1) {\n data1[data1.length - 1].title = data1[data1.length - 1].title.replace(\/〔.*\/g, '');\n }\n data1.push({\n 'title': title + '〔' + date3 + '〕',\n 'link': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"authorization\":\"' + cache.get(Get('url') + \"authorization\") + '\",\"Referer\":\"' + Get('url') + '\/comic\/' + comicId + '\/chapter\/' + list[i].id + '\/images\/all?page=1\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}',\n 'time': list[i].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '')\n });\n } else {\n data.push({\n 'title': (i == list.length - 1 || date.includes(date3) || date1.includes(date3) || date2.includes(date3)) ? title + '〔' + date3 + '〕' : title,\n 'link': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"authorization\":\"' + cache.get(Get('url') + \"authorization\") + '\",\"Referer\":\"' + Get('url') + '\/comic\/' + comicId + '\/chapter\/' + list[i].id + '\/images\/all?page=1\",\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}',\n 'time': list[i].dateUpdated.replace(\/T\/g, ' ').replace(\/Z\/g, '')\n });\n }\n }\n J.push({'title': '分卷阅读', 'vol': 'true'});\n data1 = (data.length >= 1 && data1.length >= 1) ? J.concat(data1) : data1;\n data = data.concat(data1);\n data = JSON.stringify(data);\n} else {\n data = Data1();\n}\nPut(data);\n<\/js>", "chapterName": "title", "chapterUrl": "link", "isVolume": "vol", "preUpdateJs": "java.refreshTocUrl()", "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 var body = '{\"operationName\":\"searchComicAndAuthorQuery\",\"variables\":{\"keyword\":\"' + e + '\"},\"query\":\"query searchComicAndAuthorQuery($keyword: String!) {\\n searchComicsAndAuthors(keyword: $keyword) {\\n comics {\\n id\\n title\\n status\\n year\\n imageUrl\\n authors {\\n id\\n name\\n __typename\\n }\\n categories {\\n id\\n name\\n __typename\\n }\\n dateUpdated\\n monthViews\\n views\\n favoriteCount\\n lastBookUpdate\\n lastChapterUpdate\\n __typename\\n }\\n authors {\\n id\\n name\\n chName\\n enName\\n wikiLink\\n comicCount\\n views\\n __typename\\n }\\n __typename\\n }\\n}\"}';\n return Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"Content-Type\":\"application\/json\"},\"method\":\"POST\"}';\n}(key));\n<\/js>", "variableComment": "JspHXCgzmq549cSvxZRk3VTWZ\/6k3kzeFeZYuGh1E57uQPm6gkVOfbKqM5kCCPowDXJkiSRSa3npJPxd9vxKh3cMNvD1zWkrw4ju5caIY4nxOyT73azNVhhjJZjyz\/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+K8MG7P3hOCBKiv2Mv6aRZ9P99SMeyJs4iUruBi7CHP7JgNwZn6zqCwVZac8zHWo0\/Kg4d8ov+HQhmbBUWf7hibTiKQ6S\/1f5IdAdTfgRA7uxE9BaC5gGIEqK\/Yy\/ppFn0\/31Ix7Im0DHw1Y0GWZ0x3+y2cMMIxLcoK2SzU0g6F2bfnNgtZnI+KEB\/rwKm\/EVJOQxkSOejKyoniLkosHFLimtHpR0eV+FHhcXuWQ\/t\/fs\/Z5nm8kNCGcXF0aDIJ1ELRBWErbVe5\/OdvivGX9o1GwPMvrg1yhLBkh4FahZl\/rk6\/GRap9lScFhZrjifEbTg9Okz13KcSl+Dk+7QxXJQU18IGUPwqlXJlPiAK+3rXVGn6kurMYhqMkz1aE7RCpzRvgTPqtc8BpoKQy8FJnB\/2PBzhgp2d5s+7afQyF\/\/xJrRn5cstKsnALr7fu3R+xLBHYxNglpsdNDhZ+txeiPlA04bYhnGe23afUD0CGhVGKVY+r1M3RyEnY3KhbfwMfT4m20i3piotGE3t2rx1JHCe\/qX+gjmmIUFWzCRS04Tt73caDyre0HCCN2pqS6ZBS2icFhNeUihcw0FbXw9fGHwSA68AOfa6\/lurfPZdRDoKqsgFxUiqp76j9hbCleRE6neIzfKzAXW8BtgB3ZZXaStAkO55LeK4cc8EcCG+0h1YQAwbUA\/oYXPNrhgCwrC48H2VCwIpU9ch6YlYI6I6RNUQRkH4SMasdyIQfxpwc9Nv\/TnVir+cpO+M7RMH7wrvVfD0mtxrTiNtux5d9ACVYe0LYW+\/G8mO45EUVKGEYAOmBhfTjW5YMJOzcqkqmTxP0lcD4\/ZmgMZSFen3PRMNtCZJDYMqxwql3I8+hp4gt+kVCo0EOM0KgQ23jItkz0J+23QxJ1oY++Jkm6Y1OaBTVgm28zKddWjl2qyHMOWIglHNpW1SxiV9I7Fcg7GrKHBiH\/aZ5lClGqo1hsiXS75Rhv2AleDujtaf5lNcB+YsAZ33T65C1H4oO10esqFiWtFGkGUZKbJcuUGqD2eWT7FTm\/Ud8\/xfX4tC9upPYq4MnsvhELpvu\/NTYIMETldTVFx46981Jo42hjZEEy2Ds11+sryxkgOBfivl+A\/7aQbrh\/+7KpoDZyzuVvlLUfZ1aHOaXsdPUeEJeFitPGca4naQuMZo570DEigh5R26PyWyKxQceAiPti0Gp4Xbcg1fmFTbCek1631x63h8snLkoEH2wLbmLH0BVB4JXc1gJniYNcVuznqAWTJfQs5MPSa59+nyQuSED4otTFXxfbkw4kPfNa5hQ92MqnA9nOluT3uzKTh+mEIkl1MzErD5Nd+JEHSpGGAUKQdeyFAm8hZGZJRmpVUPKgMUqRjs+TykKCsDFpEoB7GE5Id4wGw3jC++5vV1Nh+KTCJiXdn+SFn6uhqLOnH9r+V9GaEv21qZngu4e\/AT5BIuTPLpw6iDROnaOPTNKOaCiV5GJaZ\/Fz8OqWd2n3Ce3fPTev9ojgUZDn3lDyehz\/Ed+p3KMxmbbvGgbWgAs4uudaIDbPO\/McFZ1tGwIXFBvWRtRIKwuL3yjp6mS0BFTKhPd85xcv\/XIs2mYKFPVDSQQts7\/pF56lFWcjRG+OWo1jw5LuCn+eLIU6O7HqNQvBqUu8YSpsocWR\/PVB\/HYDvwMbbNx52XThNPjeJuAO9\/XglQaioEspXr3DV8Cf2w7R1fS3csZz9ljyY5kpHxd5E8OJck1xeCQHuw3jA4aRZMXZA1KALUvyuZG+G7OHQKXLCctK87O8gWp4RrBHRPtVywsPCpwRXOrQfBAnlwB3L7TfY84XHxkKGkpbTcIzy+hK950IyUXKNhtvJN2OKYfZ+XL\/kHJR+n4HSjNP7BfpUPFED\/0+QHsHixtJdMH6jiFT8lGpIF5ffqnsQ8D\/QZ1RK9Ti0a17NQ==", "weight": 0 }