[{"bookSourceComment":"直连 69shuba.com 网页源 \n\n*二改请标明原作者\n\/\/ 2026\/07\/03\/ By sjshb57 首次发布\n\/\/ 2026\/07\/05\/ By sjshb57 新增功能\n\/\/ 发现页补全栏目＆优化书籍详情简介排版\n\/\/ 2026\/07\/26\/ By sjshb57\n\/\/ 重写过盾流程，修复搜索结果为空的问题\n\n【搜索需过人机验证 Cloudflare Turnstile】\n· 搜索时若命中验证，会自动弹浏览器让你完成验证，完成后直接取网页结果，无需再搜一次。\n· 已完成验证后 Cookie 会复用一段时间，不会每次发起请求都要验证一次。\n· 无需手动改 UA，本源不受阅读全局 UA 设置影响。","bookSourceGroup":"🌙 小说","bookSourceName":"🌙 69书吧","bookSourceType":0,"bookSourceUrl":"https:\/\/www.69shuba.com","bookUrlPattern":"https?:\/\/www\\.69shuba\\.com\/book\/\\d+\\.htm","customButton":false,"customOrder":5,"enabled":true,"enabledCookieJar":true,"enabledExplore":true,"eventListener":false,"exploreUrl":"[{\n        \"title\": \"【男生小说】\",\n        \"url\": \"\/novels\/male\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.33\n        }\n    },\n    {\n        \"title\": \"【女生小说】\",\n        \"url\": \"\/novels\/female\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.33\n        }\n    },\n    {\n        \"title\": \"人气\",\n        \"url\": \"\/novels\/monthvisit_0_0_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"推荐\",\n        \"url\": \"\/novels\/allvote_0_0_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"完本\",\n        \"url\": \"\/novels\/monthvisit_0_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"──── 连载 · 选分类 ────\",\n        \"url\": \"\/novels\/monthvisit_0_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    },\n    {\n        \"title\": \"玄幻魔法\",\n        \"url\": \"\/novels\/monthvisit_1_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"修真武侠\",\n        \"url\": \"\/novels\/monthvisit_2_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"言情小说\",\n        \"url\": \"\/novels\/monthvisit_3_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"历史军事\",\n        \"url\": \"\/novels\/monthvisit_4_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"游戏竞技\",\n        \"url\": \"\/novels\/monthvisit_5_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"科幻空间\",\n        \"url\": \"\/novels\/monthvisit_6_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"悬疑惊悚\",\n        \"url\": \"\/novels\/monthvisit_7_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"同人小说\",\n        \"url\": \"\/novels\/monthvisit_8_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"都市小说\",\n        \"url\": \"\/novels\/monthvisit_9_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"官场职场\",\n        \"url\": \"\/novels\/monthvisit_10_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"穿越时空\",\n        \"url\": \"\/novels\/monthvisit_11_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"青春校园\",\n        \"url\": \"\/novels\/monthvisit_12_2_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"──── 全本 · 选分类 ────\",\n        \"url\": \"\/novels\/monthvisit_0_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    },\n    {\n        \"title\": \"玄幻魔法\",\n        \"url\": \"\/novels\/monthvisit_1_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"修真武侠\",\n        \"url\": \"\/novels\/monthvisit_2_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"言情小说\",\n        \"url\": \"\/novels\/monthvisit_3_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"历史军事\",\n        \"url\": \"\/novels\/monthvisit_4_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"游戏竞技\",\n        \"url\": \"\/novels\/monthvisit_5_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"科幻空间\",\n        \"url\": \"\/novels\/monthvisit_6_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"悬疑惊悚\",\n        \"url\": \"\/novels\/monthvisit_7_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"同人小说\",\n        \"url\": \"\/novels\/monthvisit_8_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"都市小说\",\n        \"url\": \"\/novels\/monthvisit_9_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"官场职场\",\n        \"url\": \"\/novels\/monthvisit_10_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"穿越时空\",\n        \"url\": \"\/novels\/monthvisit_11_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    },\n    {\n        \"title\": \"青春校园\",\n        \"url\": \"\/novels\/monthvisit_12_1_{{page}}.htm\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }\n]","header":"<js>\n(function() {\n    var u = \"\";\n    try {\n        u = String(java.getWebViewUA() || \"\");\n    } catch (e) {\n        u = \"\";\n    }\n    if (u.indexOf(\"Mozilla\") !== 0) {\n        u = \"Mozilla\/5.0 (Linux; Android 13; SM-S901U) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/125.0.6422.165 Mobile Safari\/537.36\";\n    }\n    return JSON.stringify({\n        \"User-Agent\": u,\n        \"Referer\": \"https:\/\/www.69shuba.com\/\",\n        \"Accept-Language\": \"zh-CN,zh;q=0.9\",\n        \"Upgrade-Insecure-Requests\": \"1\"\n    });\n})()\n<\/js>","lastUpdateTime":"1785061489559","loginUrl":"login.php?jumpurl=https:\/\/www.69shuba.com\/","respondTime":180000,"ruleBookInfo":{"author":"[property$=author]@content","coverUrl":"[property$=image]@content","intro":"<js>\n(function() {\n    var g = function(r) {\n        try {\n            return String(java.getString(r) || \"\").trim();\n        } catch (e) {\n            return \"\";\n        }\n    };\n    var html = String(result);\n    var name = g(\"[property$=book_name]@content\");\n    var author = g(\"[property$=author]@content\");\n    var cat = g(\"[property$=category]@content\");\n    var update = g(\"[property$=update_time]@content\");\n    var last = g(\"[property$=latest_chapter_name]@content\");\n    var words = g(\"class.booknav2@tag.p.2@text\").replace(\/\\s*\\|\\s*\/g, \" \\u00b7 \");\n    var mt = html.match(\/tags:\\s*\\x27([^\\x27]*)\\x27\/);\n    var tags = mt ? mt[1].replace(\/\\|+\/g, \" \\u00b7 \").replace(\/(^\\s*\\u00b7\\s*|\\s*\\u00b7\\s*$)\/g, \"\").trim() : \"\";\n    var desc = g(\"class.navtxt@tag.p.0@textNodes\")\n        .replace(\/^[\\s\\u3000]+\/, \"\")\n        .replace(\/[\\r\\n]+\/g, \"\\n\")\n        .replace(\/\\n\/g, \"\\n\\u3000\\u3000\");\n\n    var L = [];\n    var add = function(icon, label, val) {\n        if (val && String(val).trim()) {\n            L.push(\"\\u3000\\u3000\" + icon + \" \" + label + \"\\uff1a\" + val);\n        }\n    };\n    add(\"\\ud83d\\udcd5\", \"\\u4e66\\u540d\", name);\n    add(\"\\ud83d\\udc64\", \"\\u4f5c\\u8005\", author);\n    add(\"\\ud83c\\udff7\\ufe0f\", \"\\u5206\\u7c7b\", cat);\n    add(\"\\ud83d\\udcca\", \"\\u5b57\\u6570\", words);\n    add(\"\\ud83d\\udd16\", \"\\u6807\\u7b7e\", tags);\n    add(\"\\ud83d\\udd50\", \"\\u66f4\\u65b0\", update);\n    add(\"\\ud83d\\udcd6\", \"\\u6700\\u65b0\", last);\n    if (desc) {\n        L.push(\"\\u3000\\u3000\\u200b\");\n        L.push(\"\\u3000\\u3000\\ud83d\\udcdc \\u7b80\\u4ecb\\uff1a\");\n        L.push(\"\\u3000\\u3000\" + desc);\n    }\n    L.push(\"\\u3000\\u3000\\u200b\");\n    L.push(\"\\u3000\\u3000\\ud83d\\udccd \\u4e66\\u7c4d\\u72b6\\u6001\\uff1a\\u6b63\\u5e38\");\n    return L.join(\"\\n\");\n})()\n<\/js>","kind":"[property~=category|status|update_time]@content","lastChapter":"[property$=latest_chapter_name]@content","name":"[property$=book_name]@content","tocUrl":"class.more-btn@href||class.addbtn@tag.a.0@href","wordCount":"class.booknav2@tag.p.2@text##\\s*\\|.*$##"},"ruleContent":{"content":"class.txtnav@textNodes","replaceRegex":"##\\s*[（(]?本章完[）)]?\\s*$|新.{0,2}书吧|吧书.{0,2}新|请记住本书首发域名.*|www\\.69shuba\\.com|loadAdv\\([\\d, ]*\\);?"},"ruleExplore":{"author":"class.labelbox@tag.label.0@text","bookList":"id.article_list_content@tag.li","bookUrl":"tag.h3@tag.a@href","coverUrl":"tag.img@data-src","intro":"class.ellipsis_2@text","kind":"<js>\n(function () {\n    var u = String(baseUrl || \"\");\n    var st = String(java.getString(\"class.labelbox@tag.label!0@text\") || \"\").trim();\n    if (\/monthvisit_\\d+_[12]_\/.test(u)) st = \"\";\n    return st;\n})()\n<\/js>","lastChapter":"class.zxzj@tag.p@ownText","name":"tag.h3@tag.a@text"},"ruleSearch":{"author":"class.labelbox@tag.label.0@text","bookList":"<js>\n(function() {\n    var LR = \"class.newbox@tag.li\";\n    var API = \"https:\/\/www.69shuba.com\/modules\/article\/search.php\";\n\n    var isCF = function(h) {\n        return \/_cf_chl_opt|cf_chl_prog|cf-browser-verification|challenge-form|Just a moment|Checking your browser|\\\/verify\\.php\/i.test(String(h));\n    };\n    var isLimit = function(h) {\n        return \/间隔时间不得少于|間隔時間不得少於|两次搜索的间隔|兩次搜索的間隔\/.test(String(h));\n    };\n    var isShort = function(h) {\n        return \/搜索关键字请不要少于|搜索關鍵字請不要少於\/.test(String(h));\n    };\n    var parse = function(h) {\n        if (!h) return null;\n        java.setContent(h);\n        var l = java.getElements(LR);\n        return (l != null && l.size() > 0) ? l : null;\n    };\n\n    var html = String(result || \"\");\n    var list = parse(html);\n    if (list) return list;\n\n    if (isShort(html)) throw new Error(\"关键词太短, 中文至少两个字\");\n    if (isLimit(html)) throw new Error(\"站点限制搜索频率, 请隔几秒再搜\");\n    if (!isCF(html)) return null;\n\n    var key = java.get(\"69key\");\n    var vUrl = API + \"?searchkey=\" + java.encodeURI(key, \"gbk\") + \"&searchtype=all&page=1\";\n    var r = java.startBrowserAwait(vUrl, \"69书吧 · 人机验证\", false);\n    list = parse(r ? String(r.body() || \"\") : \"\");\n    if (list) return list;\n\n    var req = API + ',{\"method\":\"POST\",\"body\":\"searchkey=' + key + '&searchtype=all&page=1\",\"charset\":\"gbk\"}';\n    var h2 = String(java.ajax(req) || \"\");\n    if (isCF(h2)) throw new Error(\"Cloudflare 未放行, 请重新搜索一次\");\n    if (isLimit(h2)) throw new Error(\"站点限制搜索频率, 请隔几秒再搜\");\n    return parse(h2);\n})()\n<\/js>","bookUrl":"tag.h3@tag.a@href","checkKeyWord":"宿命之环","coverUrl":"tag.img@data-src","intro":"class.ellipsis_2@text","kind":"class.labelbox@tag.label!0@text","lastChapter":"class.zxzj@tag.p@ownText","name":"tag.h3@tag.a@text"},"ruleToc":{"chapterList":"-id.catalog@tag.li","chapterName":"tag.a@text","chapterUrl":"tag.a@href"},"searchUrl":"\/modules\/article\/search.php,{\"method\":\"POST\",\"body\":\"searchkey={{java.put('69key',key)}}&searchtype=all&page={{page}}\",\"charset\":\"gbk\"}","weight":0}]