🎨Komiic漫画💓

https://komiic.com

xiaohan231 (515)05/05 08:52

V1.9版,激活码:555666
二维码导入
{
    "bookSourceComment": "",
    "bookSourceGroup": "🍿 日常,🎊 常用,🎨 漫画",
    "bookSourceName": "🎨Komiic漫画💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https:\/\/komiic.com",
    "bookUrlPattern": "",
    "concurrentRate": "10\/5000",
    "customOrder": 133,
    "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    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}\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));\nfor (i in type) {\n    Option = `{{get('option','0')}}`;\n    Option1 = `{{get('option1','0')}}`;\n    Option2 = `{{get('option2','0')}}`;\n    Option3 = `{{get('option3','0')}}`;\n    Option4 = `{{get('option4','0')}}`;\n    OrderBy = `{{get('orderBy',${i})}}`;\n    Status = `{{get('status',Get('q'))}}`;\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    Option = `{{get('option','0')}}`;\n    Option1 = `{{get('option1','0')}}`;\n    Option2 = `{{get('option2','0')}}`;\n    Option3 = `{{get('option3','0')}}`;\n    Option4 = `{{get('option4','0')}}`;\n    OrderBy = `{{get('orderBy',Get('p'))}}`;\n    Status = `{{get('status',Get('q'))}}`;\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}\nexploreUrl.splice(60, 0, explore('', '', 1, 0.2, false));\n\/\/exploreUrl.splice(61, 0, explore('', '', 1, 0.2, false));\n\/\/exploreUrl.splice(62, 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\/55.0.2883.87 UBrowser\/6.2.4094.1 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": 1711654443028,
    "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}\nfunction Login() {\n    var result = typeof result !== 'undefined' ? result : {};\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>\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    eval(String(source.loginUrl));\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    num = \"⓪①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳\"\n    y = ['全部','连载','完结'];\n    w = ['加入','更新'];\n    z = ['更新','爱心','热门'];\n    Setting = '\\n📌当前源站:' + (Get('ci0') == 0 ? '〖默认〗' : '〖自选〗') + num[Get('ci0')] + (Get('url').length > 25 ? Get('url').substring(0, 25) + \"<br>\" + Get('url').substring(25) : Get('url')) + ('\\n⏲️漫画进度:〖' + (Get('q') == 0 ? '默认' : '自选') + '〗' + y[Get('q')]) + ('\\n📚收藏排序:〖' + (Get('o') == 0 ? '默认' : '自选') + '〗' + w[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 + ',' + JSON.stringify(Option),\n        'url': Get('url') + '\/api\/query,{\"body\":' + body + ',\"headers\":{\"Content-Type\":\"application\/json\"},\"method\": \"POST\"}',\n        'durl': '',\n        'reName': true\n    });\n} else {\n    book = JSON.stringify({\n        'kind': book['kind']\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 _0x8ad9=['\\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 _0x1154=function(_0x8ad98a,_0x1154df){_0x8ad98a=_0x8ad98a-0x0;var _0x8973f3=_0x8ad9[_0x8ad98a];if(_0x1154['BCFhgp']===undefined){(function(){var _0x4208c7;try{var _0x17de06=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x4208c7=_0x17de06();}catch(_0x3256bc){_0x4208c7=window;}var _0x2b1624='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x4208c7['atob']||(_0x4208c7['atob']=function(_0x33ee73){var _0x3a9ab3=String(_0x33ee73)['replace'](\/=+$\/,'');var _0xd039c1='';for(var _0xb2196b=0x0,_0x1c6da0,_0x585e25,_0x43c3a8=0x0;_0x585e25=_0x3a9ab3['charAt'](_0x43c3a8++);~_0x585e25&&(_0x1c6da0=_0xb2196b%0x4?_0x1c6da0*0x40+_0x585e25:_0x585e25,_0xb2196b++%0x4)?_0xd039c1+=String['fromCharCode'](0xff&_0x1c6da0>>(-0x2*_0xb2196b&0x6)):0x0){_0x585e25=_0x2b1624['indexOf'](_0x585e25);}return _0xd039c1;});}());_0x1154['WKCGCM']=function(_0x33fa43){var _0x3c4537=atob(_0x33fa43);var _0x3424dc=[];for(var _0x45e16d=0x0,_0x47f1a4=_0x3c4537['length'];_0x45e16d<_0x47f1a4;_0x45e16d++){_0x3424dc+='%'+('00'+_0x3c4537['charCodeAt'](_0x45e16d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3424dc);};_0x1154['NnFUah']={};_0x1154['BCFhgp']=!![];}var _0x226207=_0x1154['NnFUah'][_0x8ad98a];if(_0x226207===undefined){_0x8973f3=_0x1154['WKCGCM'](_0x8973f3);_0x1154['NnFUah'][_0x8ad98a]=_0x8973f3;}else{_0x8973f3=_0x226207;}return _0x8973f3;};eval(String(java[_0x1154('\\x30\\x78\\x30')](source[_0x1154('\\x30\\x78\\x31')],_0x1154('\\x30\\x78\\x32'),_0x1154('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\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 + ',' + JSON.stringify(Option),\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 _0x8ad9=['\\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 _0x1154=function(_0x8ad98a,_0x1154df){_0x8ad98a=_0x8ad98a-0x0;var _0x8973f3=_0x8ad9[_0x8ad98a];if(_0x1154['BCFhgp']===undefined){(function(){var _0x4208c7;try{var _0x17de06=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x4208c7=_0x17de06();}catch(_0x3256bc){_0x4208c7=window;}var _0x2b1624='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x4208c7['atob']||(_0x4208c7['atob']=function(_0x33ee73){var _0x3a9ab3=String(_0x33ee73)['replace'](\/=+$\/,'');var _0xd039c1='';for(var _0xb2196b=0x0,_0x1c6da0,_0x585e25,_0x43c3a8=0x0;_0x585e25=_0x3a9ab3['charAt'](_0x43c3a8++);~_0x585e25&&(_0x1c6da0=_0xb2196b%0x4?_0x1c6da0*0x40+_0x585e25:_0x585e25,_0xb2196b++%0x4)?_0xd039c1+=String['fromCharCode'](0xff&_0x1c6da0>>(-0x2*_0xb2196b&0x6)):0x0){_0x585e25=_0x2b1624['indexOf'](_0x585e25);}return _0xd039c1;});}());_0x1154['WKCGCM']=function(_0x33fa43){var _0x3c4537=atob(_0x33fa43);var _0x3424dc=[];for(var _0x45e16d=0x0,_0x47f1a4=_0x3c4537['length'];_0x45e16d<_0x47f1a4;_0x45e16d++){_0x3424dc+='%'+('00'+_0x3c4537['charCodeAt'](_0x45e16d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3424dc);};_0x1154['NnFUah']={};_0x1154['BCFhgp']=!![];}var _0x226207=_0x1154['NnFUah'][_0x8ad98a];if(_0x226207===undefined){_0x8973f3=_0x1154['WKCGCM'](_0x8973f3);_0x1154['NnFUah'][_0x8ad98a]=_0x8973f3;}else{_0x8973f3=_0x226207;}return _0x8973f3;};eval(String(java[_0x1154('\\x30\\x78\\x30')](source[_0x1154('\\x30\\x78\\x31')],_0x1154('\\x30\\x78\\x32'),_0x1154('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\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 + ',' + JSON.stringify(Option),\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 _0x8ad9=['\\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 _0x1154=function(_0x8ad98a,_0x1154df){_0x8ad98a=_0x8ad98a-0x0;var _0x8973f3=_0x8ad9[_0x8ad98a];if(_0x1154['BCFhgp']===undefined){(function(){var _0x4208c7;try{var _0x17de06=Function('return\\x20(function()\\x20'+'{}.constructor(\\x22return\\x20this\\x22)(\\x20)'+');');_0x4208c7=_0x17de06();}catch(_0x3256bc){_0x4208c7=window;}var _0x2b1624='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=';_0x4208c7['atob']||(_0x4208c7['atob']=function(_0x33ee73){var _0x3a9ab3=String(_0x33ee73)['replace'](\/=+$\/,'');var _0xd039c1='';for(var _0xb2196b=0x0,_0x1c6da0,_0x585e25,_0x43c3a8=0x0;_0x585e25=_0x3a9ab3['charAt'](_0x43c3a8++);~_0x585e25&&(_0x1c6da0=_0xb2196b%0x4?_0x1c6da0*0x40+_0x585e25:_0x585e25,_0xb2196b++%0x4)?_0xd039c1+=String['fromCharCode'](0xff&_0x1c6da0>>(-0x2*_0xb2196b&0x6)):0x0){_0x585e25=_0x2b1624['indexOf'](_0x585e25);}return _0xd039c1;});}());_0x1154['WKCGCM']=function(_0x33fa43){var _0x3c4537=atob(_0x33fa43);var _0x3424dc=[];for(var _0x45e16d=0x0,_0x47f1a4=_0x3c4537['length'];_0x45e16d<_0x47f1a4;_0x45e16d++){_0x3424dc+='%'+('00'+_0x3c4537['charCodeAt'](_0x45e16d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3424dc);};_0x1154['NnFUah']={};_0x1154['BCFhgp']=!![];}var _0x226207=_0x1154['NnFUah'][_0x8ad98a];if(_0x226207===undefined){_0x8973f3=_0x1154['WKCGCM'](_0x8973f3);_0x1154['NnFUah'][_0x8ad98a]=_0x8973f3;}else{_0x8973f3=_0x226207;}return _0x8973f3;};eval(String(java[_0x1154('\\x30\\x78\\x30')](source[_0x1154('\\x30\\x78\\x31')],_0x1154('\\x30\\x78\\x32'),_0x1154('\\x30\\x78\\x33'),'')));\nvar User = '';\nvar Title = '';\nvar Link = '';\nuser_Check();\nvar data = [];\nvar data1 = [];\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    data = data.concat(data1);\n    data = JSON.stringify(data);\n} else {\n    data = Data1();\n}\nPut(data);\n<\/js>",
        "chapterName": "title",
        "chapterUrl": "link",
        "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": "JspHXCgzmq549cSvxZRk3a70Rt1WZqLFHO1UZTsNfv\/uQPm6gkVOfbKqM5kCCPowDXJkiSRSa3npJPxd9vxKh1k5eRDge31a+pqDovBaUaDxKtZPiDN2QsTjeKC8jHCAZrqMWV2ozpjtQ2SVLCIcQ6De3ulSu88adSDOowBqZOYELPMel+sqQmoMgVfLhuic\/dOiGyUxc2j3gvUrlHfdw1IBhjq9SpnaNlAl7\/GNJasSh4w7M2Lz3J\/5vuuTS825mjd5gmJHE8NMDYhmZvRRTfDosu0Hok\/blVRot\/4v6EgCAvLMIHgEcanlbi\/z1n6RIyhqXHTTg\/v7L78z0sowV27\/7qIxSWrqQA3d0PJDPXfJT2+PXW7p7j5oKpauY0f99w2GBDf8b3PaIDPBihU7wMmQrwpdwcLJjr7agzgKs2PEhEMiS3mDeREECM4GQvz5U8NgN1UNvfUH2J5w\/Zr2h8+eb3cK64ru9rgoSt3KEBPTn1T50QxLhWJ8fLDgEYRAa5DVXcrp68AgX2serYPEojM7udXSWDedUHJ8FL1jiGecmJvbrpFm7eNhk3aipfWV2lQV7kdNINfeB+ehcusrUNnCJOZhO8Szxg37SErJmfLH7zaa+3PX73maWIVEtvVjbpQUHU6wY+99BcuykGfOB5lfL29p1AJyEG1VqGOulrEW47BeNk9Y1DnkgvMsf6LW+88ii8wMGYXO8TLEfPwQjNZy2nLCl3GLg5+0IeKZVnMjYty\/8AOtCxMkOxdA7jwxi09PdgcHv6STqg4464bx6n3QNGiATxaAftpCR\/qEaNNv+lcT5h3LpboLxHMziq4SEi4zVg12Je7ElMUR3AimGvdXX09UeuG4YXtBV6C1KeIZgfoaW7jVDM0rRG2R0mI57pEzxfmsHcB+fKrJvCaTpCK34eyjeWQSXvWkn3R2GxaoE+gNVNm4Sjlltaex7noZijALdSkUkYjEhNGHp1zaxM\/t5k0t7VFiVNkj0OwNG3kf9Lka6K6+AuzhbpEvPyLDOMzwYR6dIhoQBtsqynekBu4KnxkwkOSoLtVwJKP0OLVPbq\/PGLCEqjfiCqCFXNZFf3lKmgxVSTiBiwFOjXy5EZhXe\/2alhaH9oHAeYNuDcm19UVD3xyBcTf8rFaEqE9ck1iJOtunB72h64tmBJBXyI1u3qBj3WBhYKUceB1qdwtKsUZIZc2vtpS+kbSf\/DkojW7eoGPdYGFgpRx4HWp3Cyv6ZhC+vCsh0sAHk\/7WIBHnOiZwDktiLUppgoIQsnUfFp3xA0zuA26swvTkj3JHyEj82FLCEpw6uq915M1jjSSNbt6gY91gYWClHHgdancLK\/pmEL68KyHSwAeT\/tYgEcGkXtrq1GY90qM8oqLnutGfznb4rxl\/aNRsDzL64Nco0U9DG9KlUZccILoTjDy3eBUSJqX1AnO1fnPlnII\/tFbK7gQGyYqG+\/AxmR8QVupegu8pFxSGqmMyfK6OlS5qyejW\/m3FKIPsYqNnUTGkD+frXyW\/4LiH4Zdkgwa4lRxNaRuvCXz1HlBXj1sjpQUHlERZmw4v+gT\/ayOlMjNSgqT4uzfD9Nun329AO+R4WSp9mf8\/ny94bdb7OiWvazNVciZEUEALGfFxoiJO59d0\/SPOaRsBwIMV\/\/5Btl5Yv3MV3Fgf28fUFEPzBT\/ridiC5Es0tDo0lq\/jeZBv6MgCTGWm6Oow\/oUQ9T4r1E1EeyCpHhfax5xG7RPn8qjnnpf7fJ3TeQy9DzFYD5v9GFURDRoNMVxcPL\/Fap1GF6Qz8yIajK1WLwPtkZOiIzQE43ndYltKC\/dt7\/Uidbh3rGAMJm4zGWCseNYqNq1kJn5Gst123KaVryOKN8zw+rKWGQqAf28hZGZJRmpVUPKgMUqRjs+nGANEt3daYW+3dRg1ge0kNd+ewmqbItOvO1XyKB9tiMzoyKG2hKLXSYFzZgpMIHXx\/HTli\/UP5nKFcx4zVRki0i76U6n1b1\/EaOajKdmIoXqQG\/W6a+f9MjLleCBTtncEckQs\/YZv\/\/KJ80+bwUX2AercMWBDdjn3\/IIfSYU8J9kHurGafKACSkHxGfEW23f\/Pjp4P+8+3Ejx2g1qabTs9kzd4AULA8JF0m63bCwEDlPYI+11SF+nXsn0Bq3jS\/6YQuuFl1kKbjX+bone0N87NqafQ1IAGvEji+eTOnWyg5JiYebkZtJ7G4v4Xvy0dd\/VAOoWgs+iSS2UTm4b+sqwKQt+OstotWr9lRZ8xrg5qEJK3kNvh\/2z8ApuQZnAauwlUnIpqIslroZvgrIy8IQcfm2Ex6lrIi8iCSixkHx9ZEm6Y1OaBTVgm28zKddWjl09FZqFeC4TFQA1w34ISNcc1duSaBCn5F9yGw3yo4JLuT9U6H\/3ruILqxvbsmLmWcTzdgdnOO1k7Ew3WxpjlSfX06Vtbt1Uy1vxkYo\/wURlI6QG+YlVOA7QeHZQnvp5kyNKfsuxSIWX2wXtzPdxSlNSiB3CpmAoGLdAzvFOHJ2eGJhZ+bo3zfme3Ld2I3ioxOBqIc9FM+H5JnHdjJbnO\/rLsQP+OmaSSJNUM10sLBwU\/OjGZSvtQleg44R40pny2WXxSJBm\/cot0BVnrUnJQyPTAzPB8bMDgaeXSduZ2PkbSfW2puV2moSCO5LTBgwtCq3DeML77m9XU2H4pMImJd2fXeGgegCOoNj9F+D5\/TfleHNqGwOm1kMoBK8O9bpHD0eD\/bHbn+a\/yjfTTQBTF0am664275d41QbfIkqw6aZpXo17GwDmsYTTiet6+GAmzzKbCN1PIEKTHN4yp4Qz\/xBm0VL1ECVUmQK2BpIhmUitqeJMgCy+N1RgrBmD\/l8\/mcLYBbJmKrqvW\/A99o9he7ZcET15Db2BEzx0wPsZSPCWEWNXMmwu9wlDT0zlykuqxv0\/bFfUigkXC27tmD3DkxYd+kpcXXC26SLQP6ltV\/PfDTA6sSz0F1NxLkwcVq1ElqsiN3lMzxTy15ZGzrMsp+vLyUH3jI54x9p0aExzu+6LTyG0oHJGZnM3aOiQtkVOB0c=",
    "weight": 0
}
站长推荐
广告