顶级看书网
https://www.djks5.com
yezechuandl (3004)07/06 07:54
//2025.6.21 ◎夜泽川◎
{
"bookSourceComment": "\/\/2025.6.21 ◎夜泽川◎",
"bookSourceGroup": "网络,自制",
"bookSourceName": "顶级看书网",
"bookSourceType": 0,
"bookSourceUrl": "https:\/\/www.djks5.com",
"customOrder": 679,
"enabled": true,
"enabledCookieJar": true,
"enabledExplore": true,
"exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"\/list\/1\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"\/list\/2\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"\/list\/3\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史\",\"url\":\"\/list\/4\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"\/list\/5\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏\",\"url\":\"\/list\/6\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精品\",\"url\":\"\/list\/7\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他\",\"url\":\"\/list\/8\/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
"header": "{\"User-Agent\":\"Mozilla\/5.0 (Linux; Android 9) Mobile Safari\/537.36\"}",
"lastUpdateTime": "1751759657669",
"respondTime": 180000,
"ruleBookInfo": {
"author": "@get:{a}",
"coverUrl": "@get:{i}",
"init": "@put:{\"n\":\"[property$=book_name]@content\",\n\"a\":\"[property$=author]@content\",\n\"t\":\"[property~=category|status]@content\",\n\"l\":\"[property$=lastest_chapter_name]@content\",\n\"i\":\".imgbox img@src\",\n\"o\":\"[property$=description]@content\",\n\"g\":\"[property$=update_time]@content\"\n}",
"intro": "@get:{o}",
"kind": "@get:{t}",
"lastChapter": "@get:{l}◎@get:{g}",
"name": "@get:{n}"
},
"ruleContent": {
"content": "<js>\nif (baseUrl.startsWith('data')) {\n let decodedData = String(java.hexDecodeToString(src));\n let [ruleStr, initialUrl] = decodedData.split('|');\n let finalUrl = initialUrl;\n let initialCount = 0;\n const finalCount = 10;\n while (initialCount < finalCount) {\n initialCount++;\n let Content = java.ajax(source.key + finalUrl);\n let thUrl = java.getString(ruleStr, Content);\n finalUrl = thUrl;\n if (!thUrl.includes('_')) break;\n }\n result = java.ajax(source.key + finalUrl);\n java.setContent(result);\n}\nresult;\n<\/js>\n#content > :not(a)@html",
"nextContentUrl": "@js:\nlet url = java.getString('#next_url@href');\nurl = url.includes('_') ? source.key + url : '';"
},
"ruleExplore": {},
"ruleSearch": {
"author": ".s4@text",
"bookList": ".txt-list.0@li:not(.qu-2lmu-qd5o-lvij)",
"bookUrl": "a.0@href",
"kind": ".s1@text&&.s5@text##\\[|\\]",
"lastChapter": ".s3@text",
"name": ".s2@text"
},
"ruleToc": {
"chapterList": "<js>\nlet pages = Array.from(java.getStringList('option@value', null, true));\n\nvar chapters = java.ajaxAll(pages).flatMap(m => {\n let chapterLists = org.jsoup.Jsoup.parse(m.body()).select('.section-list');\n return Array.from(chapterLists.get(1).select('a'));\n});\n\nvar list = chapters.map((item, i) => {\n let url = String(item.attr('href'));\n if (!url) {\n let thUrl = i < chapters.length - 1 ? chapters[i+1].attr('href') : chapters[i-1].attr('href');\n let ruleStr = i < chapters.length - 1 ? \"#prev_url@href\" : \"#next_url@href\";\n if (String(thUrl)) url = \"data:;base64,\" + java.base64Encode(ruleStr + \"|\" + thUrl) + ',{\"type\": \"chapter\"}';\n }\n \/\/java.log(url)\n return { \n name: item.text(), \n Url: url\n };\n});\nlist;\n<\/js>",
"chapterName": "name",
"chapterUrl": "Url"
},
"searchUrl": "{{cookie.removeCookie(source.getKey())}}\/search\/,{\n \"body\": \"type=articlename&searchkey={{key}}\",\n \"method\": \"POST\"\n}",
"weight": 0
}