得奇小说网

https://www.deqixs.co

jianghubailei (2226)02/10 14:12

站长4天改了3次源码,
再改我放弃了,
跟不上他的节奏

By 2026年2月10日
二维码导入
{
    "bookSourceComment": "站长4天改了3次源码,\n再改我放弃了,\n跟不上他的节奏\n\nBy 2026年2月10日",
    "bookSourceGroup": "小说",
    "bookSourceName": "得奇小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https:\/\/www.deqixs.co",
    "customButton": false,
    "customOrder": 20,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nconst list = []\nconst push = (title, url, size) => list.push({\n  title,\n  url,\n  style: {\n  \t layout_flexGrow: 1,\n  \t layout_flexBasisPercent: size||0.29\n  }\n});\n\nconst cats = \"全部::0\\n玄幻小说::1\\n都市小说::2\\n仙侠小说::3\\n历史小说::4\\n科幻小说::5\\n诸天无限::6\\n悬疑小说::7\\n体育小说::8\\n游戏小说::9\\n综合其他::10\"\nconst ranks = \"总点击榜::allvisit\\n月点击榜::monthvisit\\n周点击榜::weekvisit\\n日点击榜::dayvisit\\n总推荐榜::allvote\\n月推荐榜::monthvote\\n周推荐榜::weekvote\\n日推荐榜::dayvote\\n总月票榜::allvipvote\\n本月票榜::monthvipvote\\n前月票榜::previpvote\\n周月票榜::weekvipvote\\n日月票榜::dayvipvote\\n总鲜花榜::allflower\\n月鲜花榜::monthflower\\n周鲜花榜::weekflower\\n日鲜花榜::dayflower\\n总鸡蛋榜::allegg\\n月鸡蛋榜::monthegg\\n周鸡蛋榜::weekegg\\n日鸡蛋榜::dayegg\\n总销售榜::allsale\\n月销售榜::monthsale\\n周销售榜::weeksale\\n日销售榜::daysale\\n月勤更榜::monthwords\\n周勤更榜::weekwords\\n日勤更榜::daywords\\n最近更新::lastupdate\\n最新入库::postdate\\n最新上架::signtime\\n收藏榜::goodnum\\n字数榜::words\\n编辑推荐::toptime\\n新书榜::newhot\"\n\npush(\"书库\",\"\",1)\ncats.split(\"\\n\").forEach(cat => {\n\t let [title, id] = cat.split(\"::\")\n\t push(title, `\/sort\/${id}\/{{page}}.html`)\n})\npush(\"排行 - 全本\",\"\",1)\nranks.split(\"\\n\").forEach(rank => {\n\t let [title, rk] = rank.split(\"::\")\n\t push(title, `\/modules\/article\/toplist.php?order=allvisit&fullflag=${rk}&page={{page}}`)\n})\n\nJSON.stringify(list)",
    "jsLib": "function towan(e) {\n    if(!e) return;\n    if (e < 1e4) {\n        return e + \"字\";\n    } else {\n        return (e \/ 1e4).toFixed(1) + \"万字\";\n    }\n}",
    "lastUpdateTime": "1770703930942",
    "respondTime": 180000,
    "ruleBookInfo": {
        "author": "[property$=author]@content",
        "coverUrl": "[property$=image]@content",
        "intro": "[property$=description]@content",
        "kind": "[property$=category]@content&&\n[property$=status]@content&&\n[property$=update_time]@content",
        "lastChapter": "[property$=latest_chapter_name]@content",
        "name": "[property$=book_name]@content",
        "wordCount": "<js>\nlet size = result.match(\/towan\\('\\d+'\\)\/)?.[0];\neval(size)\n<\/js>"
    },
    "ruleContent": {
        "content": "<js>\nfunction generateToken(key){\n\t let timestamp = Date.now(); \n  let nonce = Math.random().toString(36).substr(2, 8);\n  let rawStr = baseUrl + '_' + timestamp + '_' + nonce + '_' + SECRET_KEY; \n  let token = java.md5Encode(rawStr);\n  return {token, timestamp, nonce}\n}\n\nlet matches = result.match(\/\\n\\s*url:\\s*'(.*?)'\/);\nlet url = matches \n  ? matches[1] \n  : \"https:\/\/www.deqixs.co\/modules\/article\/ajax2.php\";\nlet key = result.match(\/SECRET_KEY:\\s*'([^']+)',\/)?.[1];\nlet tokenData;\nif(!key || key == \"hidden\"){\n  let token = result.match(\/var chapterToken\\s*=\\s*'([^']+)'\/)?.[1];\n  let timestamp = result.match(\/var timestamp\\s*=\\s*(\\d+);\/)?.[1];\n  let nonce = result.match(\/var nonce\\s*=\\s*'([^']+)'\/)?.[1];\n  if(token && timestamp && nonce){\n  tokenData = {token, timestamp, nonce}\n  }\n}else{\n  tokenData = generateToken(key)\n}\nlet [, aid, cid] = baseUrl.match(\/\\\/books\\\/(\\d+)\\\/(\\d+)\\.html\/);\nlet params = Object.assign({aid, cid}, tokenData);\nlet paramStr =\tObject.entries(params)\n    .map(x=>x.join(\"=\")).join(\"&\");\nlet headers = {\n\t  \"User-Agent\": \"Mozilla\/5.0 (Linux; Android 12; NOP-AN00 Build\/HUAWEINOP-AN01P) AppleWebKit\/537.36 (KHTML, like Gecko) Version\/4.0 Chrome\/114.0.5735.196 Mobile Safari\/537.36\",\n\t \"Referer\": baseUrl,\n\t \"Accept\":\t\"text\/plain, *\/*; q=0.01\",\n  \"X-Requested-With\": \"XMLHttpRequest\"\n}\nurl += \"?\"+paramStr+\",\"+JSON.stringify({\n\t headers\n})\n\njava.ajax(url)\n<\/js>\n$..content||$.message",
        "replaceRegex": "@js:\nconst FILTER_RULES = [\n  \/更新不易.+?看最新章节!\/g,\n  \/更新不易.+?看最新无错章节!\/g, \n  \/更新不易.+?最新小说章节!\/g,\n  \/速.?读.?谷\/g, \n  \/本章节未完.+?请订阅\/g,\n  '当&前@章#节$内%容^不&完*整!要~查!看-完_整|章;节)请(退&出%阅#读|模*式!',\n  \n]\n\nfor(let reg of FILTER_RULES){\n\t result = result.replace(reg, \"\")\n}\nresult;"
    },
    "ruleExplore": {},
    "ruleSearch": {
        "author": ".author.0@text##作者:",
        "bookList": ".bookbox",
        "bookUrl": ".bookname a@href",
        "coverUrl": ".bookname a@href@js:\nlet id = result.match(\/\\\/(\\d+)\\\/$\/)[1];\nlet sid = parseInt(id \/ 1000);\n`\/files\/article\/image\/${sid}\/${id}\/${id}s.jpg`",
        "intro": ".update@textNodes",
        "lastChapter": ".cat a@text",
        "name": ".bookname a@text",
        "wordCount": "\/\/script\/text()@js:\nif(result){\n\t eval(result)\n}"
    },
    "ruleToc": {
        "chapterList": "#list-chapterAll dd a",
        "chapterName": "text",
        "chapterUrl": "href",
        "nextTocUrl": ".next@href"
    },
    "searchUrl": "\/modules\/article\/search.php,{\n  \"body\": \"searchkey={{key}}&action=login\",\n  \"method\": \"POST\"\n}",
    "weight": 0
}
广告