[
  {
    "bookSourceComment": "coolapk@芜恙;wordCount",
    "bookSourceGroup": "免费",
    "bookSourceName": "八一中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zwduxs.com#grid tr!0#芜恙",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 1,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "jsLib": "",
    "lastUpdateTime": 1784360103428,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 180000,
    "searchUrl": "/modules/article/search.php,{\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}\"\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "250101新增番茄来源\n250203新增七猫来源\n250204新增得间来源\n250204新增QQ来源(仅支持免费小说)\n250204新增熊猫看书\n250210更新日志：\n1.采用全新验证方式，之后未填写密钥，可以在阅读页登陆后刷新阅读页面即可！\n2.搜索默认改为全局搜索，目前仅支持番茄，七猫，QQ，得间，熊猫，后面的按钮是预设，后期会添加相关来源\n3.新增大灰狼书架功能，在登陆里面点击书架查看\n\n下个版本预计更新内容：\n1.预计发现页新增阅读记录和大灰狼书架栏目\n2.预计新增阅读记录，阅读过的书籍可在大灰狼书架-阅读历史中查看\n3.预计新增塔读小说，米读小说，小米阅读，猫眼看书，部分起点\n\n",
    "bookSourceGroup": "大灰狼聚合",
    "bookSourceName": "🍅大灰狼漫画5.0(vip独立版)",
    "bookSourceType": 2,
    "bookSourceUrl": "\u0016http://219.154.201.122:5006/#漫画/",
    "customButton": false,
    "customOrder": 2,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": false,
    "eventListener": false,
    "lastUpdateTime": 1751381391488,
    "loginUrl": "http://219.154.201.122:5006/login",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.book_detail.thumb_url",
      "init": "$.data",
      "intro": "&nbsp;&nbsp;🎴当前来源：{{$.source}}\n🎯最新章节：{{$.last_chapter_title}}\n⏳更新时间：{{$.last_chapter_update_time}}\n📚书籍简介：\n{{$.abstract}}",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name",
      "tocUrl": "/catalog?book_id={{$.book_id}}&source={{$.source}}&tab={{$.tab}}",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data.data",
      "bookUrl": "/detail?book_id={{$.book_id}}&source={{$.source}}",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "$.category",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "/detail?book_id={{$.book_id}}&source={{$.source}}&tab={{$.tab}}",
      "checkKeyWord": "我的",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "<js>\nfunction fq_last() {\n\tlet url = `https://api5-normal-sinfonlineb.fqnovel.com/reading/bookapi/multi-detail/v/?aid=1967&iid=1&version_code=999&book_id={{$.book_id}}`;\n        let last =JSON.parse(java.ajax(url)).data[0]; \n        return last[\"last_chapter_title\"]+\" · \"+java.timeFormat(last[\"last_chapter_update_time\"]*1000);\n\t\n\t}\n\n\t\nfunction qm_last() {\n\tlet headers={'app-version':'51110','platform':'android','reg':'0','AUTHORIZATION':'','application-id':'com.****.reader','net-env':'1','channel':'unknown','qm-params':''}\n\tsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':{{$.book_id}}, 'imei_ip':'2937357107','teeny_mode':0}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key));\nheaderSign=String(java.md5Encode(Object.keys(headers).sort().reduce((pre,n)=>pre+n+'='+headers[n],'')+sign_key))\nparams['sign']=paramSign;\nheaders['sign']=headerSign;\nlet url = \"https://api-bc.wtzw.com/api/v4/book/detail?\"+urlEncode(params);\noption = {'headers':headers};\nlet last =JSON.parse(java.ajax(url+','+JSON.stringify(option)))[\"data\"][\"book\"];\nlet last2 =  `${last[\"latest_chapter_title\"]} · ${java.timeFormat(last['update_time']*1000)} `\n\treturn last2\n\t}\n\t//如果要显示最新章节，请去除注释，去除会影响搜索速度\n//if ('{{$.source}}'=='番茄'){\n//\t'番茄:'+fq_last();\n//\t} else if ('{{$.source}}'=='七猫'){\n//\t'七猫:'+qm_last();\n//\t} else {\n\t'{{$.source}} {{$.last_chapter_title}}'\n//\t\t}\n\n</js>",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet device;\ntry {\n    device = java.androidId();\n} catch (e) {\n    try{\ndevice = java.deviceID();\n}catch (e) {device = '';\n}\n}\n`/content?item_id={{$.item_id}}&source={{$.source}}&device=${device}&tab={{$.tab}}&version=4.6.29`;\n</js>\n",
      "updateTime": "$.volume_name"
    },
    "searchUrl": "/search?title={{key}}&tab=漫画&source=全部",
    "weight": 0
  },
  {
    "bookSourceComment": "禁忌书屋精华区独立书源",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞禁忌书屋 精华区",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.cool18.com/bbs4",
    "customButton": false,
    "customOrder": 3,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"⭐精华区\",\"url\":\"https://www.cool18.com/bbs4/index.php?app=forum&act=gold&p={{page}}\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "[]",
    "lastUpdateTime": 1784704089197,
    "respondTime": 180000,
    "ruleContent": {
      "content": "<js>\nvar document = org.jsoup.Jsoup.parse(result);\nvar preElements = document.select('div#content-section.content-section > pre');\nif (preElements.isEmpty()) {\n    result = '未找到 div#content-section.content-section > pre 元素';\n} else {\n    var preElement = preElements.first();\n    preElement.select('b font[size=4]').remove();\n    var innerHtml = preElement.html();\n    function convertHtmlToPlainTextWithLineBreaks(html) {\n        var text = html;\n        text = text.replaceAll(\"&nbsp;\", \" \");\n        text = text.replaceAll(\"(?i)<p[^>]*><\\\\/p>\", \"\\n\");\n        text = text.replaceAll(\"(?i)<p[^>]*>(.*?)<\\\\/p>\", \"\\n$1\\n\");\n        text = text.replaceAll(\"(?i)<br\\\\s*\\\\/?>\", \"\\n\");\n        text = text.replaceAll(\"<[^>]+>\", \"\");\n        text = text.replaceAll(\"\\\\n{3,}\", \"\\n\\n\");\n        return text.trim();\n    }\n    var plainText = convertHtmlToPlainTextWithLineBreaks(innerHtml);\n    result = plainText;\n}\n</js>"
    },
    "ruleSearch": {
      "author": "a@text##^(.*?)(?:作者[：|:](.*))?$##$2",
      "bookList": "ul.post-list > li.post-item",
      "bookUrl": "a@href",
      "name": "a@text##作者.*##"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar doc=org.jsoup.Jsoup.parse(result);\nvar links=doc.select('pre a[href*=\"threadview\"]');\nvar list=[];\nvar pdf=0;\nif(links.size()>0){\nvar firstNext=links.get(links.size()-1).text();\nvar nm=firstNext.match(/([0-9０-９]+)[-–—]/);\nif(nm)pdf=parseInt(nm[1].replace(/[０-９]/g,function(c){return String.fromCharCode(c.charCodeAt(0)-0xFEE0)}))-1;\n}\nvar m=result.match(/【[^】]+】/);\nvar title=m?m[0]:'第1章';\nvar cn=pdf>0?title+'（1-'+pdf+'）':title;\nvar selfA=doc.createElement('a');\nselfA.attr('href',baseUrl);\nselfA.text(cn);\nlist.push(selfA);\nfor(var i=links.size()-1;i>=0;i--){list.push(links.get(i))}\nresult=list\n</js>",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.cool18.com/bbs4/index.php?app=forum&act=gold",
    "weight": 0
  },
  {
    "bookSourceComment": "250101新增番茄来源\n250203新增七猫来源\n250204新增得间来源\n250204新增QQ来源(仅支持免费小说)\n250204新增熊猫看书\n250210更新日志：\n1.采用全新验证方式，之后未填写密钥，可以在阅读页登陆后刷新阅读页面即可！\n2.搜索默认改为全局搜索，目前仅支持番茄，七猫，QQ，得间，熊猫，后面的按钮是预设，后期会添加相关来源\n3.新增大灰狼书架功能，在登陆里面点击书架查看\n\n下个版本预计更新内容：\n1.预计发现页新增阅读记录和大灰狼书架栏目\n2.预计新增阅读记录，阅读过的书籍可在大灰狼书架-阅读历史中查看\n3.预计新增塔读小说，米读小说，小米阅读，猫眼看书，部分起点\n\n",
    "bookSourceGroup": "大灰狼聚合",
    "bookSourceName": "🍅大灰狼听书5.0(vip独立版)",
    "bookSourceType": 1,
    "bookSourceUrl": "http://219.154.201.122:5006/#听书/",
    "customButton": false,
    "customOrder": 4,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"推荐榜\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=10&gender=1&page={{page}}&is_ranking=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"完结榜\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=11&gender=1&page={{page}}&is_ranking=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"热搜榜\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=12&gender=1&page={{page}}&is_ranking=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"黑马榜\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=13&gender=1&page={{page}}&is_ranking=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"爆更榜\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=15&gender=1&page={{page}}&is_ranking=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=899&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=1&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"穿越\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=37&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"现代言情\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=3&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"古代言情\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=5&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总裁\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=29&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=7&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"重生\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=36&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"悬疑\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=10&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"灵异\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=100&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"系统\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=19&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"种田\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=23&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"甜宠\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=96&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"宠妻\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=30&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市生活\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=2&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"赘婿\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=25&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"先婚后爱\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=265&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"宫斗宅斗\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=246&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市日常\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=261&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"战神赘婿\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=27&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"神医\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=26&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"影视小说\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=45&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"传统玄幻\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=258&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"王妃\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=85&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"奇幻仙侠\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=259&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"萌宝\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=28&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=262&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"职场\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=127&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"嫡女\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=88&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市修真\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=124&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"幻想言情\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=32&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"神豪\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=20&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"空间\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=44&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=31&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻言情\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=248&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=257&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史古代\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=273&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻末世\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=8&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"年代\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=79&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"天才\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=90&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"女强\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=86&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"推理\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=61&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"腹黑\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=92&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"诸天万界\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=71&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"医术\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=247&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"星际\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=77&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"鉴宝\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=17&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"团宠\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=94&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"扮猪吃虎\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=93&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=16&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"现言脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=267&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市种田\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=263&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"无敌\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=384&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"盗墓\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=81&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"马甲\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=266&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"皇后\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=84&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"特种兵\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=375&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"大唐\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=73&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"公主\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=83&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"娱乐圈\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=43&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"青梅竹马\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=387&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"古言脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=253&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=272&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"末世\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=68&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"剑道\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=80&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"现言甜宠\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=395&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"游戏动漫\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=57&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"洪荒\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=66&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"快穿\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=24&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"明朝\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=126&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"外卖\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=75&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"校花\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=385&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"奶爸\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=42&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"校园\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=4&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"三国\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=67&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"直播\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=69&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"穿书\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=382&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"海岛\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=40&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"美食\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=78&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"反派\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=369&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"现言复仇\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=268&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"西游衍生\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=373&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"求生\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=379&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"民国\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=390&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"家庭\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=125&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"学霸\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=82&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"皇叔\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=87&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"宠物\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=74&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"无CP\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=392&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"女扮男装\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=388&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=372&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"病娇\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=380&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"精灵\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=89&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"虐文\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=95&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市青春\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=396&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"清穿\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=76&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=10&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"悬疑\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=2147483647&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"悬疑脑洞\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=539&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"灵异\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=100&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"推理\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=61&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=445&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"郭德纲\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=128&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"田连元\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=203&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"刘兰芳\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=202&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"小品\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=114&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"袁阔成\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=204&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"单田芳\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=201&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"评书\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=110&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"相声\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=111&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=12&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"魏晋南北朝\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=209&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"秦汉\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=208&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"世界史\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=214&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"唐宋\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=210&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"明清\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=211&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"近现代\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=213&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"中国史\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=212&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"战争史\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=206&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"名人传\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=207&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=2147483647&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=132&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"影视小说\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=45&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"战争\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=97&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"中国名著\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=98&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"外国名著\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=99&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"现实小说\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=400&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"当代文学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=399&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"古代文学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=398&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"诗歌散文\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=46&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=449&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"法律\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=142&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"心理\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=146&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"投资理财\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=143&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"职业职场\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=145&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"经管商业\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=238&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"沟通表达\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=144&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"励志成功\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=239&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"学习成长\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=2147483647&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=113&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"京剧\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=171&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"越剧\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=172&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"黄梅戏\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=173&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"评剧\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=174&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"豫剧\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=175&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"昆曲\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=176&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=48&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"美食烹饪\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=240&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"旅游\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=158&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"健康养生\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=159&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=450&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"婚姻\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=234&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"美文\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=230&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"夜话\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=232&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"女性\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=231&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"心理健康\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=233&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"情感故事\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=229&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=448&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"产后护理\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=226&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"儿童英语\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=222&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"孕期保健\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=227&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"亲子健康\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=228&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科普\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=223&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"国学历史\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=224&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"胎教早教\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=225&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"儿童文学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=220&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"全部\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=447&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"艺术\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=134&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"自然科学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=136&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"佛学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=115&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"社科\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=237&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"国学\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=116&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"散文戏剧\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=236&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"文化\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=118&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"名著解读\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=132&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"人文\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=2147483647&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"搞笑段子\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=119&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"二次元\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=39&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"娱乐\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=121&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"纪录\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=133&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"新闻\",\n    \"url\": \"/get_discover?source=番茄&tab=听书&type=446&gender=3&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1.0,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "lastUpdateTime": 1751381369374,
    "loginUi": "[ {\n        \"name\":  \"♥♥ 登录大灰狼账号♥♥\",\n        \"type\": \"button\",\n        \"action\":\"loginqt()\"\n      },{\n        \"name\": \"听书Ai音色填写序号\",\n        \"type\": \"text\"\n      }]",
    "loginUrl": "function login() {\n     \n    }\nfunction loginqt() {\n      java.startBrowserAwait('http://219.154.201.122:5006/login', '登录大灰狼小说书源');\n    }",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.book_detail.thumb_url",
      "init": "$.data",
      "intro": "&nbsp;&nbsp;🎴当前来源：{{$.source}}\n🎯最新章节：{{$.last_chapter_title}}\n⏳更新时间：{{$.last_chapter_update_time}}\n📚书籍简介：\n{{$.abstract}}\n\n🔊当前音色：{{String(source.getLoginInfoMap()['听书Ai音色填写序号']) || \"0\"}}\n{{$.book_tts}}",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name",
      "tocUrl": "/catalog?book_id={{$.book_id}}&source={{$.source}}&tab={{$.tab}}",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "/detail?book_id={{$.book_id}}&source={{$.source}}&tab=听书",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "$.category",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "/detail?book_id={{$.book_id}}&source={{$.source}}&tab={{$.tab}}",
      "checkKeyWord": "我的",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "<js>\nfunction fq_last() {\n\tlet url = `https://api5-normal-sinfonlineb.fqnovel.com/reading/bookapi/multi-detail/v/?aid=1967&iid=1&version_code=999&book_id={{$.book_id}}`;\n        let last =JSON.parse(java.ajax(url)).data[0]; \n        return last[\"last_chapter_title\"]+\" · \"+java.timeFormat(last[\"last_chapter_update_time\"]*1000);\n\t\n\t}\n\n\t\nfunction qm_last() {\n\tlet headers={'app-version':'51110','platform':'android','reg':'0','AUTHORIZATION':'','application-id':'com.****.reader','net-env':'1','channel':'unknown','qm-params':''}\n\tsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':{{$.book_id}}, 'imei_ip':'2937357107','teeny_mode':0}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key));\nheaderSign=String(java.md5Encode(Object.keys(headers).sort().reduce((pre,n)=>pre+n+'='+headers[n],'')+sign_key))\nparams['sign']=paramSign;\nheaders['sign']=headerSign;\nlet url = \"https://api-bc.wtzw.com/api/v4/book/detail?\"+urlEncode(params);\noption = {'headers':headers};\nlet last =JSON.parse(java.ajax(url+','+JSON.stringify(option)))[\"data\"][\"book\"];\nlet last2 =  `${last[\"latest_chapter_title\"]} · ${java.timeFormat(last['update_time']*1000)} `\n\treturn last2\n\t}\n\t//如果要显示最新章节，请去除注释，去除会影响搜索速度\n//if ('{{$.source}}'=='番茄'){\n//\t'番茄:'+fq_last();\n//\t} else if ('{{$.source}}'=='七猫'){\n//\t'七猫:'+qm_last();\n//\t} else {\n\t'{{$.source}} {{$.last_chapter_title}}'\n//\t\t}\n\n</js>",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet device;\ntry {\n    device = java.androidId();\n} catch (e) {\n    try{\ndevice = java.deviceID();\n}catch (e) {device = '';\n}\n}\nlet tone_id = '默认音色';\ntry {\n\ttone_id = source.getLoginInfoMap()['听书Ai音色填写序号'] || '默认音色';\n\t} catch {\n\t\ttone_id = '默认音色';\n\t\t}\n`/content?item_id={{$.item_id}}&source={{$.source}}&device=${device}&tab={{$.tab}}&tone_id=${tone_id}&version=4.6.29`;\n</js>\n",
      "updateTime": "$.volume_name"
    },
    "searchUrl": "/search?title={{key}}&tab=听书&source=全部",
    "weight": 0
  },
  {
    "bookSourceComment": "沱书·文存 - 完整版，支持搜索、详情、目录、正文",
    "bookSourceGroup": "免费",
    "bookSourceName": "沱书·文存",
    "bookSourceType": 0,
    "bookSourceUrl": "https://tuoverse.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 5,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": false,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1784476763414,
    "loginUrl": "",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "@css:.detail-author a@text",
      "coverUrl": "",
      "intro": "@css:.description-content@text",
      "kind": "@css:.category-tag@text",
      "lastChapter": "@css:.latest-link@text",
      "name": "@css:.detail-title@text",
      "tocUrl": "",
      "wordCount": "@css:.detail-meta@text"
    },
    "ruleContent": {
      "content": "@css:.chapter-text p@textNodes",
      "nextContentUrl": "",
      "webJs": ""
    },
    "ruleSearch": {
      "author": "@css:.author-name@text",
      "bookList": "@css:.novel-card",
      "bookUrl": "@css:.novel-title a@href",
      "coverUrl": "",
      "intro": "@css:.novel-description@text",
      "kind": "@css:.category-tag@text",
      "lastChapter": "@css:.latest-link@text",
      "name": "@css:.novel-title a@text",
      "wordCount": "@css:.word-count@text"
    },
    "ruleToc": {
      "chapterList": "@css:.page-list__cell",
      "chapterName": "@css:.page-list__chapter-title@text",
      "chapterUrl": "href",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search/?q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "更新日志请点击登录，更新书源中查看\n\n基础使用教程：\n1、搜索：\n    1)基础搜索：在发现页长按该书源，点击搜索，直接搜，搜索范围(全部来源小说)\n    2)进阶搜索：在登陆-书源设置中选择指定模式/来源，可搜索指定模式/来源内容\n    3)快捷搜索：使用特殊关键词(x,t,m,d,@)搜索\n         x:书名@来源  如(x:十日终焉@番茄)\n         t:书名@来源  如(t:十日终焉@番茄)\n         m:书名@来源  如(m:十日终焉@番茄)\n         d:书名@来源  如(d:十日终焉@番茄)\n         其中：x表示小说(可省略)，t表示听书，m表示漫画，d表示短剧\n         冒号支持中文英文\n         \n2、发现页：\n    在书源设置中选择指定模式或者单个来源，然后刷新发现页即可\n    \n3、更多使用方式长按发现页书源选择登录一目了然\n4、用户后台有视频教程\n         ",
    "bookSourceGroup": "大灰狼聚合",
    "bookSourceName": "🍅大灰狼聚合5.5.22(vip完全版)",
    "bookSourceType": 0,
    "bookSourceUrl": "大灰狼融合VIP5.0",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z0-9-]+(?::\\d+)?\\/detail.*",
    "customButton": false,
    "customOrder": 7,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar open_argument = source.getVariable();\nif (!open_argument || open_argument == '') {\n    var initData = {\n        tab: \"小说\",\n        tone_id: \"默认音色\",\n        server: host[0],\n        sources: \"番茄\",\n        source_type: \"男频\",\n        find_source: \"番茄\",\n        find_tab: \"小说\",\n        fqpara: \"on\"\n    };\n    source.setVariable(JSON.stringify(initData));\n    open_argument = source.getVariable();\n}\nvar base_url = getArguments(open_argument, 'server') || host[0];\nvar ms = getArguments(open_argument, 'tone_id') || '';\nvar source_type = getArguments(open_argument, 'source_type') || '男频';\nvar tab = getArguments(open_argument, 'find_tab') || getArguments(open_argument, 'tab') || '小说';\nvar sources =  getArguments(open_argument, 'sources') || '番茄';\nvar fxyjr = getArguments(open_argument, 'fxyjr');\n\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n\n    return isModified;\n}\n\nvar islyc = checkEnv();\nlet device_type = '安卓';\ntry {\n\t  try {\n\t  java.qread();\n\t  device_type =\"轻阅读\";\n\t  } catch {\n\t  \tjava.deviceID();\n    device_type = \"苹果\";\n\t  \t}\n    \n} catch (e) {\n    try {\n        java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device_type = \"安卓\";\n    }\n}\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr != \"on\"){\n\tsources = getArguments(open_argument, 'find_source') || sources;\n\tsetArguments('find_source', sources);\n\t}\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\n\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (!fqcookie && (sources == '番茄' || sources == '全部')) {\n    java.toast('您还未登陆番茄账号，无法同步数据哦！');\n} else {\n    fqssionid = getSessionId(fqcookie)\n}\nvar fqsjurl = base_url + \"/bookshelf?page={{page}}&ssionid=\" + fqssionid;\nvar fqtjurl = base_url + \"/fqrecommend?page={{page}}&ssionid=\" + fqssionid;\nvar fqlsurl = base_url + \"/fqhistory?page={{page}}&ssionid=\" + fqssionid;\n\nvar groupDatas = [];\nvar infoData = [ ];\nif (sources == '番茄' || sources == '全部') {\ninfoData = [{\n        \"title\": \"登录番茄\",\n        \"url\": '{\\{java.startBrowser(\"https://fanqienovel.com/\",\"番茄登录\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.45\n        }\n    }];\n}\n\nvar hasValidCookie = fqcookie.length > 0;\n\nif (hasValidCookie && (sources == '番茄' || sources == '全部')) {\n    function groupQuery() {\n        try {\n            var url = base_url + \"/group_name?ssionid=\" + fqssionid;\n            var res = java.ajax(url);\n            var response = JSON.parse(res);\n\n            if (!(response && response.data)) {}\n\n            response.data.forEach(function(group) {\n                var keys = Object.keys(group);\n                if (keys.length > 0) {\n                    var key = keys[0];\n                    var value = group[key];\n                    if (value && value.length) {\n                        var option = {\n                            \"method\": \"POST\",\n                            \"body\": {\n                                \"book_ids\": value,\n                                \"page\": \"{{page}}\"\n                            }\n                        };\n                        groupDatas.push({\n                            title: key,\n                            url: base_url + \"/bookshelf,\" + JSON.stringify(option),\n                            style: {\n                                layout_flexGrow: 1,\n                                layout_flexBasisPercent: 0.45\n                            }\n                        });\n                    }\n                }\n            });\n\n            if (groupDatas.length % 2 !== 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.45\n                    }\n                });\n            }\n        } catch (e) {\n            java.longToast(\"番茄登录过期，已隐藏番茄书架\" + fqssionid);\n        }\n    }\n\n    try {\n        java.longToast(\"正在加载分组数据...\");\n        var userUrl = base_url + \"/fquser?ssionid=\" + fqssionid;\n        var userRes = java.ajax(userUrl);\n        var userData = JSON.parse(userRes);\n\n        var userName = (userData && userData.data && userData.data.name) ? userData.data.name : '未知用户';\n        if (!userName.includes('未知用户')) {\n            infoData = [{\n                title: \"番茄个人中心\",\n                url: fqsjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"个性推荐(番茄)\",\n                url: fqtjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"历史阅读(番茄)\",\n                url: fqlsurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }];\n        }\n        groupQuery();\n    } catch (e) {\n        java.longToast(\"番茄登录过期，已隐藏番茄书架\");\n    }\n}\n\nvar style_list = [];\ntry {\n    var durl = `${base_url}/discovestyle?source=${sources}&source_type=${source_type}&tab=${tab}`;\n    var res = java.ajax(durl);\n    var result = JSON.parse(res);\n    style_list = result.data || [];\n    if (result.msg) {\n        java.toast(result.msg);\n    }\n} catch (e) {\n    java.toast(\"发现样式获取失败\");\n}\nlet qtcookie = cookie.getCookie(base_url);\n//let qtcookie = \"\"\nlet qtop = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\n\n\n\nqtop = JSON.stringify(qtop);\nlet qtsjurl = base_url + '/get_book_shelf,' + qtop;\n\nlet qtsj = [];\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr !=\"on\") {\n    try {\n        qtsj.push(createFilter(\n            \"线路\",\n            host,\n            base_url,\n            \"server\",\n            1\n        ));\n        qtsj.push(createFilter(\n            \"模式\",\n            [\"小说\", \"听书\", \"短剧\", \"漫画\"],\n            tab,\n            \"find_tab\",\n            0.33\n        ));\n        qtsj.push(createFilter(\n            \"频道\",\n            [\"男频\", \"女频\"],\n            source_type,\n            \"source_type\",\n            0.33\n        ));\n        let source_list = ['番茄', '七猫', '书旗', '塔读', '江湖', '小米', '米读', 'QQ阅读', '酷我小说','幻梦轻小说', '西瓜小说', '69书吧', '顶点', '爱下电子书', '伪69', '超会专属小说', '3A小说', '阅友小说', '笔趣阁22', '追更人', '久久小说', '52书库', '腐小说', '完本小说', '盐选文库', '有度中文', '三零读书', '鹿鹿', '星空小说', '365小说', '冷冷文学', '万相书城', '独步小说', '福书网', '速读谷', '全本同人'];\n        if (tab == '听书') {\n            source_list = ['番茄', '七猫', '喜马拉雅', '酷我'];\n        }\n        if (tab == '漫画') {\n            source_list = ['全免漫画', '番茄', '包子漫画', '漫画屋', '漫画网', '漫客栈', '漫画屋'];\n        }\n        if (tab == '短剧') {\n            source_list = ['番茄', '七猫', '河马短剧', '旺旺短剧', '极速影视'];\n        }\n        qtsj.push(createFilter(\n            \"平台\",\n            source_list,\n            sources,\n            \"find_source\",\n            1\n        ));\n       const excludeTitles = ['点击登录可切换来源', '切换后长按刷新即可'];\n       style_list = style_list.filter(item => !excludeTitles.includes(item.title));\n    } catch {}\n} else {\n\tif (device_type == '安卓'){\n\tqtsj.push({\n        \"title\": \"下载阅读Sigma最新测试版\",\n        \"url\": '{\\{java.longToast(\"本书源推荐使用最新版洛娅橙改版阅读Σ\\\\n请安装后重新导入书源\");java.startBrowser(\"https://legado.langge.cf\",\"下载阅读Sigma最新测试版\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    })}\n\t}\n\nif (qtcookie) {\nqtsj.push({\n    title: \"大灰狼个人中心\",\n    url: qtsjurl,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n} else {\nqtsj.push({\n    title: \"登录大灰狼书源\",\n    url: `{\\{java.startBrowser(\"${base_url}/login\",\"登录书源\");}}`,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n}\n\n\nvar finalData = infoData.concat(groupDatas, style_list);\nfinalData = qtsj.concat(finalData);\nJSON.stringify(finalData);\n</js>",
    "header": "{ \"User-Agent\":\"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Mobile Safari/537.36 Edg/138.0.0.0\" }",
    "jsLib": "var host = [\n    'http://219.154.201.122:5006',\n    'https://api.langge.cf',\n    'https://v2.czyl.cf',\n    'https://20.langge.tk',\n    'https://v4.czyl.cf',   \n    'https://v5.czyl.cf',\n    'https://v7.czyl.cf',\n    'https://v8.czyl.cf',\n    'https://v9.czyl.cf',\n    'https://v10.czyl.cf'\n];\n\nfunction getArguments(open_argument, key) {\n    try {\n        open_argument = JSON.parse(open_argument);\n    } catch (e) {\n        open_argument = {\n            tab: \"小说\",\n            tone_id: \"默认音色\",\n            server: host[0],\n            sources: \"全部\",\n            source_type: \"男频\",\n        };\n    }\n    if (key) {\n        return open_argument[key];\n    } else {\n        return open_argument;\n    }\n}\n\nfunction setArguments(key, value) {\n    const {\n        source\n    } = this;\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\nfunction decrypt(Text) {\n    return Text;\n}\n\nfunction paraForAndroid(content, sources, ydv) {\n    let {\n        java,\n        cache,\n        source\n    } = this;\n    let plcolor = getArguments(source.getVariable(), \"plcolor\");\n    if (!plcolor) {\n        plcolor = \"#A9A9A9\";\n    }\n    let tccolor = getArguments(source.getVariable(), \"tccolor\");\n    if (!tccolor) {\n        tccolor = \"#ffffff\";\n    }\n\n    const createSvg = this.createSvg.bind(this);\n\n    return content.replace(/<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        (match, text, url, count) => {\n            if (url && count) {\n                const click = 0;\n                cache.putMemory(url, click);\n                const encodedUrl = url;\n                return `<p>${text}<img src=\"${createSvg(count, plcolor,tccolor,encodedUrl,sources,ydv)}\"></p>`;\n            } else {\n                return `<p>${text}</p>`;\n            }\n        }\n    );\n}\n\n\nfunction showCmt(url, sources, ydv) {\n    let {\n        java,\n        cache\n    } = this;\n    const currentTime = Date.now();\n    const click = cache.getFromMemory(url);\n    let isqread = false;\n    try {\n        java.qread();\n        isqread = true;\n    } catch (e) {}\n    if (click < 1 && !isqread && !ydv) {\n        cache.putMemory(url, click + 1);\n        return;\n    } else {\n        if (isqread) {\n            java.startBrowserDp(url, sources + '段评');\n        } else if (ydv) {\n            let paradata = new Date().toLocaleDateString();\n            let htmlContent = cache.get(paradata);\n            if (!htmlContent || String(htmlContent).indexOf(\"评论\") == -1) {\n                java.longToast(`\\n${paradata} 初始化段评页面,请稍等~`);\n                try {\n                    htmlContent = java.ajax(url);\n                } catch {\n                    htmlContent = paraHtml(url);\n                }\n                \n                cache.put(paradata, htmlContent);\n                java.longToast(`\\n${paradata} 初始化段评页面成功~`);\n            }\n            java.showBrowser(\n                url,\n                htmlContent,\n                `window.java=java;`,\n                JSON.stringify({\n                    \"expandedCornersRadius\": 20,\n                    \"dismissOnTouchOutside\": true,\n                    \"isDraggable\": true,\n                    \"shouldDimBackground\": true,\n                    \"backgroundDimAmount\": 0.5,\n                    \"hardwareAccelerated\": true,\n                    \"isNestedScrollingEnabled\": true,\n                    \"isGestureInsetBottomIgnored\": true,\n                    \"setFitToContents\": true,\n                    \"isHideable\": true,\n                    \"heightPercentage\": 0.8\n                })\n            );\n        } else {\n            java.startBrowser(url, sources + '段评');\n        }\n    }\n}\n\n\n\nfunction createSvg(number, color, tccolor, encodedUrl, sources, ydv) {\n    var displayText = number > 99 ? \"99+\" : number.toString();\n    var loginInfoMap = {};\n\n    if (this.source && typeof this.source.getLoginInfoMap == 'function') {\n        loginInfoMap = this.source.getLoginInfoMap() || {};\n    }\n\n    var bubbleStyle = String(getArguments(this.source.getVariable(), \"pstyle\") || loginInfoMap['段评气泡样式(0-4)'] || '0');\n    var svg;\n    if (bubbleStyle == '0') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '1') {\n        svg = `<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\">\n<g transform=\"rotate(90 512 512) scale(1 1.2)\">\n<path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"${color}\" p-id=\"1530\"></path> \n</g>\n      <text x=\"460\" y=\"650\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"${color}\">${displayText}</text>\n    </svg>\n`;\n    } else if (bubbleStyle == '2') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"6 10 88 76\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M12,12 L88,12 Q92,12 92,16 L92,68 Q92,72 88,72 L28,72 L12,84 L12,72 Q8,72 8,68 L8,16 Q8,12 12,12 Z\" stroke=\"currentColor\" stroke-width=\"4\" stroke-linejoin=\"round\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 2.5px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"50\" y=\"60\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" font-size=\"45\" fill=\"currentColor\" font-weight=\"500\" alignment-baseline=\"auto\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '3') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <rect x=\"0.5\" y=\"0.5\" width=\"24\" height=\"16\" rx=\"2.5\" ry=\"2.5\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></rect>\n                        <text x=\"12.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '4') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                            <path stroke=\"currentColor\" stroke-width=\"1.00\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-miterlimit=\"4.00\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\" d=\"M 7.5 0.5 L 16.5 0.5 A 7 7 0 0 1 23.5 7.5 L 23.5 7.5 A 7 7 0 0 1 16.5 14.5 L 8.5 14.5 L 5.192 16.5 L 5.5 14.5 A 7 7 30 0 1 0.5 7.5 L 0.5 7.5 A 7 7 0 0 1 7.5 0.5 Z\"/>\n                            <text fill=\"${color}\" font-family=\"Arial, sans-serif\" font-size=\"10\" font-weight=\"500\" text-anchor=\"middle\" dy=\"0.35em\" x=\"12.00\" y=\"7.50\">${displayText}</text>\n                            </svg>`;\n    } else if (bubbleStyle == '5') {\n        displayText = number > 99 ? \"99\" : number.toString();\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <circle cx=\"12.5\" cy=\"8.5\" r=\"8\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></circle>\n                        <text x=\"13\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n            </svg>`;\n    }\n    var jc = 'js';\n    if (ydv) {\n        jc = 'click'\n    }\n    var encodedSvg = this.java.base64Encode(svg);\n\n    return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"' + jc + '\":\"showCmt(\\'' + encodedUrl + '\\', \\'' + sources + '\\', ' + ydv + ')\",\"style\":\"text\"}';\n}\n\n\nfunction cleanHTML(html) {\n    let result = html\n        .replace(/<header[^>]*>[\\s\\S]*?<\\/header>/gi, \"\")\n        .replace(/<div class=\"tt-title\"[^>]*>[\\s\\S]*?<\\/div>/gi, \"\")\n        .replace(/<(?!\\/?p\\b|\\/?img\\b)[^>]+>/gi, \"\");\n    result = result.replace(/<\\/?p[^>]*>/g, \"\\n\");\n    return result.replace(/\\n+/g, \"\\n\").trim();\n}\n\n\nfunction getBaseUrl(url) {\n    if (!url) {\n        return null;\n    }\n    url = String(url);\n    if (url.match(/https?:\\/\\//i)) {\n        var index = url.indexOf(\"/\", 9);\n        return index == -1 ? url : url.substring(0, index);\n    }\n    return null;\n}\n\nfunction isIPv4Address(ip) {\n    ip = String(ip);\n    let parts = ip.split(\".\");\n    if (parts.length !== 4) return false;\n\n    for (let part of parts) {\n        if (!/^\\d+$/.test(part)) return false; // 必须是数字\n        if (part.length > 1 && part[0] === \"0\") return false; // 禁止前导零\n        let num = parseInt(part, 10);\n        if (num < 0 || num > 255) return false; // 范围检查\n    }\n    return true;\n}\n\nfunction isIPv6Address(ip) {\n    ip = String(ip);\n    // 处理双冒号（最多出现一次）\n    if (ip.includes(\":::\")) return false;\n    let doubleColonCount = (ip.match(/::/g) || []).length;\n    if (doubleColonCount > 1) return false;\n\n    // 分割成组\n    let groups = ip.split(\":\");\n    let validGroupCount = 8;\n    let actualGroupCount = groups.filter((g) => g !== \"\").length;\n\n    // 验证组数\n    if (doubleColonCount === 1) {\n        if (actualGroupCount > validGroupCount - 1) return false;\n    } else {\n        if (groups.length !== validGroupCount) return false;\n    }\n\n    // 验证每组内容\n    for (let group of groups) {\n        if (group === \"\") continue; // 跳过空组（双冒号部分）\n        if (!/^[0-9a-fA-F]{1,4}$/.test(group)) return false; // 1-4位十六进制\n    }\n    return true;\n}\n\nfunction isIPAddress(input) {\n    return isIPv4Address(input) || isIPv6Address(input);\n}\n\nfunction getSessionId(cookieString) {\n    const match = cookieString.match(/sessionid=([^;]+)/);\n    return match ? match[1] : null;\n}\n\nfunction getKey(key) {\n    let parts = key.split(\";\");\n    for (let part of parts) {\n        if (part.includes(\"qttoken\")) {\n            return part.split(\"=\")[1];\n        }\n    }\n    return \"\";\n}\n\nfunction getFanqieCookie() {\n    const {\n        cookie\n    } = this;\n    try {\n        return String(cookie.getCookie('fanqienovel.com') || java.getCookie('fanqienovel.com') || '');\n    } catch (e) {\n        return '';\n    }\n}\n\n\nfunction paraForiOS(html, sources) {\n    return html.replace(\n        /<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        function(match, text, url, count) {\n            if (url && count) {\n                const encodedUrl = url.replace(/&/g, '&amp;');\n                return `<div rs-native>${text}<comment count=\"${count}\" onPress=\"java.showReadingBrowser('${encodedUrl}','${sources}段评')\"></div>`;\n            } else {\n                return `<div rs-native>${text}</div>`;\n            }\n        }\n    );\n}\n\nfunction removeAllImgTags(htmlString) {\n    const imgTagRegex = /<img\\b[^>]*>|<\\/img>|<img\\b[^>]*\\/>/gi;\n    return htmlString.replace(imgTagRegex, '');\n}\n\n\n\nfunction paraHtml(url) {\n    let burl = url.split('?');\n    let baser_url = burl[0].replace(\"/get_para_review\", \"\");\n    url = burl[1];\n    return `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no\">\n    <link rel=\"shortcut icon\" href=\"${baser_url}/static/favicon.ico\" type=\"image/x-icon\">\n    <link rel=\"stylesheet\" href=\"${baser_url}/static/css/all.min.css\">\n    <title>段落评论</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            -webkit-tap-highlight-color: transparent;\n        }\n\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei\", sans-serif;\n            background: #f5f5f5;\n            color: #333;\n            line-height: 1.5;\n            min-height: 100vh;\n            padding-bottom: 70px;\n        }\n\n        /* 顶部栏 */\n        .header {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            z-index: 100;\n            background: #fff;\n            padding: 12px 16px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            border-bottom: 1px solid #eee;\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n\n        .header-left {\n            display: flex;\n            align-items: center;\n            gap: 12px;\n        }\n\n        .header-back {\n            font-size: 20px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .header-title {\n            font-size: 16px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        /* 排序按钮 */\n        .sort-buttons {\n            display: flex;\n            gap: 8px;\n        }\n\n        .sort-btn {\n            padding: 6px 14px;\n            font-size: 13px;\n            border-radius: 16px;\n            cursor: pointer;\n            background: #f5f5f5;\n            color: #666;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n        }\n\n        .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .sort-btn:hover:not(.active) {\n            background: #eee;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 6px 5px;\n            font-size: 13px;\n            border-radius: 0;\n            cursor: pointer;\n            background: transparent;\n            color: #07c160;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n            white-space: nowrap;\n            flex-shrink: 0;\n            box-shadow: none;\n        }\n\n        .comment-btn:hover {\n            color: #05a850;\n            transform: none;\n            box-shadow: none;\n        }\n\n        .comment-btn:active {\n            transform: none;\n            box-shadow: none;\n        }\n\n        /* 确保头部布局不会变形 */\n        .header {\n            flex-wrap: wrap;\n        }\n\n        .header-left {\n            flex-shrink: 1;\n            overflow: hidden;\n            min-width: 0;\n        }\n\n        .header-title {\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            max-width: 180px;\n        }\n\n        .sort-buttons {\n            flex-shrink: 1;\n            min-width: 0;\n        }\n\n        /* 排序按钮 */\n        .sort-btn {\n            padding: 5px 10px;\n            font-size: 12px;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 5px 8px;\n            font-size: 12px;\n        }\n\n        /* 响应式调整 */\n        @media (max-width: 480px) {\n            .header {\n                padding: 10px 12px;\n            }\n\n            .header-left {\n                gap: 8px;\n            }\n\n            .header-title {\n                font-size: 14px;\n                max-width: 150px;\n            }\n\n            .sort-buttons {\n                gap: 6px;\n            }\n\n            .sort-btn {\n                padding: 4px 10px;\n                font-size: 11px;\n            }\n\n            .comment-btn {\n                padding: 4px 6px;\n                font-size: 11px;\n            }\n\n            .theme-toggle {\n                width: 32px;\n                height: 32px;\n                margin-left: 8px;\n            }\n        }\n\n        /* 主容器 */\n        .main-container {\n            padding: 60px 0 0;\n        }\n\n        /* 段落引用 */\n        .paragraph-quote {\n            background: #fff;\n            padding: 16px;\n            margin: 12px;\n            border-radius: 8px;\n            border-left: 3px solid #07c160;\n            font-size: 14px;\n            color: #666;\n            line-height: 1.7;\n        }\n\n        /* 热门评论区域 */\n        .hot-section {\n            margin: 12px;\n        }\n\n        .section-header {\n            display: flex;\n            align-items: center;\n            padding: 8px 0;\n            margin-bottom: 8px;\n        }\n\n        .section-header i {\n            color: #ff6b6b;\n            margin-right: 8px;\n            font-size: 16px;\n        }\n\n        .section-title {\n            font-size: 15px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        .section-count {\n            color: #999;\n            font-size: 13px;\n            margin-left: 8px;\n            font-weight: normal;\n        }\n\n        /* 评论列表 */\n        .comment-list {\n            background: #fff;\n            border-radius: 8px;\n            overflow: hidden;\n        }\n\n        /* 评论卡片 */\n        .comment-item {\n            padding: 16px;\n            border-bottom: 1px solid #f0f0f0;\n        }\n\n        .comment-item:last-child {\n            border-bottom: none;\n        }\n\n        .comment-main {\n            display: flex;\n            gap: 12px;\n        }\n\n        .comment-avatar {\n            flex-shrink: 0;\n        }\n\n        .comment-avatar img {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .comment-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .comment-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 6px;\n        }\n\n        .comment-username {\n            font-size: 14px;\n            font-weight: 500;\n            color: #333;\n            margin-right: 8px;\n        }\n\n        .comment-tag {\n            font-size: 10px;\n            padding: 2px 6px;\n            border-radius: 4px;\n            margin-right: 6px;\n            font-weight: 500;\n        }\n\n        .tag-author {\n            background: linear-gradient(135deg, #ff6b6b, #ff8787);\n            color: #fff;\n        }\n\n        .tag-vip {\n            background: linear-gradient(135deg, #ffa726, #ffcc02);\n            color: #7c5200;\n        }\n\n        .tag-custom {\n            background: linear-gradient(135deg, #4fc3f7, #29b6f6);\n            color: #fff;\n        }\n\n        .comment-content {\n            font-size: 15px;\n            color: #333;\n            line-height: 1.6;\n            word-break: break-word;\n            margin-bottom: 10px;\n        }\n\n        .comment-content .bq {\n            width: 20px;\n            height: 20px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .comment-image {\n            max-width: 200px;\n            max-height: 200px;\n            border-radius: 8px;\n            margin-bottom: 10px;\n            cursor: pointer;\n        }\n\n        .comment-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .comment-meta {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .comment-time {\n            font-size: 12px;\n            color: #999;\n        }\n\n        .comment-reply-btn {\n            font-size: 12px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px 8px;\n            border-radius: 4px;\n            transition: background 0.2s;\n        }\n\n        .comment-reply-btn:hover {\n            background: #f5f5f5;\n        }\n\n        .comment-likes {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        .comment-likes i {\n            font-size: 14px;\n        }\n\n        /* 展开回复 */\n        .expand-replies {\n            display: flex;\n            align-items: center;\n            margin-top: 12px;\n            padding-left: 52px;\n            color: #576b95;\n            font-size: 13px;\n            cursor: pointer;\n        }\n\n        .expand-replies::before {\n            content: '';\n            width: 20px;\n            height: 1px;\n            background: #ddd;\n            margin-right: 8px;\n        }\n\n        .expand-replies i {\n            margin-left: 4px;\n            font-size: 10px;\n            transition: transform 0.3s;\n        }\n\n        .expand-replies.expanded i {\n            transform: rotate(180deg);\n        }\n\n        /* 回复列表 */\n        .reply-list {\n            margin-top: 12px;\n            padding-left: 52px;\n            display: none;\n        }\n\n        .reply-list.show {\n            display: block;\n        }\n\n        .reply-item {\n            padding: 12px 0;\n            border-bottom: 1px solid #f5f5f5;\n        }\n\n        .reply-item:last-child {\n            border-bottom: none;\n        }\n\n        .reply-main {\n            display: flex;\n            gap: 10px;\n        }\n\n        .reply-avatar img {\n            width: 28px;\n            height: 28px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .reply-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .reply-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 4px;\n        }\n\n        .reply-username {\n            font-size: 13px;\n            font-weight: 500;\n            color: #333;\n        }\n\n        .reply-to {\n            font-size: 13px;\n            color: #999;\n            margin: 0 4px;\n        }\n\n        .reply-to-username {\n            font-size: 13px;\n            color: #576b95;\n        }\n\n        .reply-content {\n            font-size: 14px;\n            color: #333;\n            line-height: 1.5;\n            margin-bottom: 6px;\n        }\n\n        .reply-content .bq {\n            width: 18px;\n            height: 18px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .reply-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .reply-time {\n            font-size: 11px;\n            color: #999;\n        }\n\n        .reply-likes {\n            display: flex;\n            align-items: center;\n            gap: 3px;\n            color: #999;\n            font-size: 12px;\n        }\n\n        /* 默认头像 */\n        .default-avatar {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: #fff;\n            font-size: 18px;\n        }\n\n        .default-avatar.small {\n            width: 28px;\n            height: 28px;\n            font-size: 12px;\n        }\n\n        /* 底部输入栏 */\n        .bottom-bar {\n            position: fixed;\n            bottom: 0;\n            \n            left: 0;\n            right: 0;\n            background: #fff;\n            padding: 10px 16px;\n            padding-bottom: 20px;\n            display: flex;\n            align-items: center;\n            gap: 12px;\n            border-top: 1px solid #eee;\n            z-index: 100;\n        }\n\n        .input-wrapper {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            background: #f5f5f5;\n            border-radius: 20px;\n            padding: 8px 16px;\n            cursor: pointer;\n        }\n\n        .input-wrapper span {\n            color: #999;\n            font-size: 14px;\n        }\n\n        .bottom-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .bottom-action-btn {\n            font-size: 22px;\n            color: #666;\n            cursor: pointer;\n            transition: color 0.2s;\n        }\n\n        .bottom-action-btn:hover {\n            color: #333;\n        }\n\n        /* 加载状态 */\n        .loading {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 60px 20px;\n            color: #999;\n        }\n\n        .loading-spinner {\n            width: 32px;\n            height: 32px;\n            border: 3px solid #f0f0f0;\n            border-top-color: #07c160;\n            border-radius: 50%;\n            animation: spin 0.8s linear infinite;\n            margin-bottom: 12px;\n        }\n\n        @keyframes spin {\n            to { transform: rotate(360deg); }\n        }\n\n        /* 空状态 */\n        .empty {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 80px 20px;\n            color: #999;\n        }\n\n        .empty i {\n            font-size: 48px;\n            margin-bottom: 16px;\n            opacity: 0.3;\n        }\n\n        .empty-title {\n            font-size: 15px;\n            color: #666;\n            margin-bottom: 8px;\n        }\n\n        .empty-desc {\n            font-size: 13px;\n            color: #999;\n        }\n\n        /* 没有更多 */\n        .no-more {\n            text-align: center;\n            padding: 20px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        /* 评论弹窗 */\n        .modal-overlay {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.5);\n            z-index: 200;\n            display: none;\n            align-items: flex-start;\n            justify-content: center;\n            overflow: hidden;\n            padding-top: 180px;\n        }\n\n        .modal-overlay.show {\n            display: flex;\n        }\n\n        .modal-content {\n            background: #fff;\n            width: 90%;\n            max-width: 500px;\n            border-radius: 16px;\n            padding: 20px;\n            animation: slideDown 0.3s ease;\n            transition: transform 0.3s ease;\n            max-height: 80vh;\n            box-shadow: 0 10px 40px rgba(0,0,0,0.2);\n        }\n\n        @keyframes slideDown {\n            from {\n                transform: translateY(-100%);\n            }\n            to {\n                transform: translateY(0);\n            }\n        }\n\n        .modal-header {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            margin-bottom: 16px;\n        }\n\n        .modal-title {\n            font-size: 16px;\n            font-weight: 600;\n        }\n\n        .modal-close {\n            font-size: 24px;\n            color: #999;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .modal-textarea-wrapper {\n            position: relative;\n            margin-bottom: 12px;\n        }\n\n        .modal-textarea {\n            width: 100%;\n            min-height: 120px;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            padding: 12px;\n            padding-bottom: 40px;\n            font-size: 15px;\n            resize: none;\n            outline: none;\n        }\n\n        .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .emoji-toggle-btn {\n            position: absolute;\n            bottom: 10px;\n            right: 10px;\n            font-size: 22px;\n            color: #999;\n            cursor: pointer;\n            background: none;\n            border: none;\n            padding: 4px;\n            transition: color 0.2s;\n        }\n\n        .emoji-toggle-btn:hover {\n            color: #07c160;\n        }\n\n        /* 表情面板 */\n        .emoji-panel {\n            position: absolute;\n            bottom: 45px;\n            right: 0;\n            background: #fff;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            box-shadow: 0 4px 20px rgba(0,0,0,0.15);\n            padding: 12px;\n            width: 320px;\n            max-height: 280px;\n            overflow-y: auto;\n            z-index: 10;\n            display: none;\n        }\n\n        .emoji-panel.show {\n            display: block;\n        }\n\n        .emoji-grid {\n            display: grid;\n            grid-template-columns: repeat(6, 1fr);\n            gap: 6px;\n        }\n\n        .emoji-btn {\n            padding: 8px;\n            border: none;\n            background: transparent;\n            cursor: pointer;\n            border-radius: 6px;\n            transition: background 0.2s;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            aspect-ratio: 1;\n        }\n\n        .emoji-btn:hover {\n            background: #f0f0f0;\n        }\n\n        .emoji-btn img {\n            width: 24px;\n            height: 24px;\n        }\n\n        .modal-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .char-count {\n            font-size: 13px;\n            color: #999;\n        }\n\n        .char-count.over {\n            color: #ff4d4f;\n        }\n\n        .submit-btn {\n            background: #07c160;\n            color: #fff;\n            border: none;\n            padding: 8px 24px;\n            border-radius: 20px;\n            font-size: 14px;\n            font-weight: 500;\n            cursor: pointer;\n        }\n\n        .submit-btn:disabled {\n            background: #ccc;\n            cursor: not-allowed;\n        }\n\n        /* 图片预览 */\n        .image-preview {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.9);\n            z-index: 300;\n            display: none;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .image-preview.show {\n            display: flex;\n        }\n\n        .image-preview img {\n            max-width: 90%;\n            max-height: 90%;\n            border-radius: 8px;\n        }\n\n        .image-preview-close {\n            position: absolute;\n            top: 20px;\n            right: 20px;\n            font-size: 32px;\n            color: #fff;\n            cursor: pointer;\n        }\n\n        /* Toast */\n        .toast {\n            position: fixed;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            background: rgba(0, 0, 0, 0.75);\n            color: #fff;\n            padding: 12px 24px;\n            border-radius: 8px;\n            font-size: 14px;\n            z-index: 400;\n            display: none;\n        }\n\n        .toast.show {\n            display: block;\n        }\n\n        /* 隐藏 */\n        .hidden {\n            display: none !important;\n        }\n\n        /* 深色模式 */\n        html.dark, body.dark {\n            background: #1a1a1a;\n            color: #e0e0e0;\n        }\n\n        /* 确保在深色模式下整个页面都是深色背景 */\n        .dark {\n            background: #1a1a1a;\n        }\n\n        .dark .header {\n            background: #2d2d2d;\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .header-title {\n            color: #e0e0e0;\n        }\n\n        .dark .header-back {\n            color: #999;\n        }\n\n        .dark .sort-btn {\n            background: #3d3d3d;\n            color: #999;\n        }\n\n        .dark .sort-btn:hover:not(.active) {\n            background: #4d4d4d;\n        }\n\n        .dark .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .dark .comment-btn {\n            background: transparent;\n            color: #07c160;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:hover {\n            background: transparent;\n            color: #05a850;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:active {\n            background: transparent;\n            box-shadow: none;\n        }\n\n        .dark .paragraph-quote {\n            background: #2d2d2d;\n            color: #aaa;\n        }\n\n        .dark .comment-list {\n            background: #2d2d2d;\n        }\n\n        .dark .comment-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .comment-username {\n            color: #e0e0e0;\n        }\n\n        .dark .comment-content {\n            color: #ccc;\n        }\n\n        .dark .comment-time {\n            color: #777;\n        }\n\n        .dark .comment-likes {\n            color: #777;\n        }\n\n        .dark .expand-replies {\n            color: #5b9bd5;\n        }\n\n        .dark .expand-replies::before {\n            background: #4d4d4d;\n        }\n\n        .dark .reply-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .reply-username {\n            color: #e0e0e0;\n        }\n\n        .dark .reply-content {\n            color: #bbb;\n        }\n\n        .dark .reply-to-username {\n            color: #5b9bd5;\n        }\n\n        .dark .reply-time,\n        .dark .reply-likes {\n            color: #666;\n        }\n\n        .dark .bottom-bar {\n            background: #2d2d2d;\n            border-top-color: #3d3d3d;\n        }\n\n        .dark .input-wrapper {\n            background: #3d3d3d;\n        }\n\n        .dark .input-wrapper span {\n            color: #777;\n        }\n\n        .dark .bottom-action-btn {\n            color: #999;\n        }\n\n        .dark .modal-content {\n            background: #2d2d2d;\n        }\n\n        .dark .modal-title {\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea {\n            background: #3d3d3d;\n            border-color: #4d4d4d;\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .dark .emoji-panel {\n            background: #2d2d2d;\n            border-color: #4d4d4d;\n        }\n\n        .dark .emoji-btn:hover {\n            background: #3d3d3d;\n        }\n\n        .dark .section-title {\n            color: #e0e0e0;\n        }\n\n        .dark .loading {\n            color: #777;\n        }\n\n        .dark .loading-spinner {\n            border-color: #3d3d3d;\n            border-top-color: #07c160;\n        }\n\n        .dark .empty {\n            color: #666;\n        }\n\n        .dark .empty-title {\n            color: #999;\n        }\n\n        .dark .no-more {\n            color: #666;\n        }\n\n        .dark .default-avatar {\n            background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);\n        }\n\n        /* 深色模式切换按钮 */\n        .theme-toggle {\n            width: 36px;\n            height: 36px;\n            border-radius: 50%;\n            border: none;\n            background: #f5f5f5;\n            color: #666;\n            font-size: 16px;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.2s;\n            margin-left: 12px;\n        }\n\n        .theme-toggle:hover {\n            background: #eee;\n        }\n\n        .dark .theme-toggle {\n            background: #3d3d3d;\n            color: #ffc107;\n        }\n\n        .dark .theme-toggle:hover {\n            background: #4d4d4d;\n        }\n\n        /* ==================== PC端响应式优化 ==================== */\n        @media (min-width: 768px) {\n            body {\n                background: #e8e8e8;\n            }\n\n            .dark body,\n            body.dark {\n                background: #121212;\n            }\n\n            .header {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 0 0 12px 12px;\n                box-shadow: 0 2px 12px rgba(0,0,0,0.08);\n            }\n\n            .main-container {\n                max-width: 800px;\n                margin: 0 auto;\n                padding-top: 72px;\n                background: transparent;\n            }\n\n            .paragraph-quote {\n                margin: 16px 0;\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .hot-section {\n                margin: 16px 0;\n            }\n\n            .comment-list {\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .comment-item {\n                padding: 20px 24px;\n            }\n\n            .comment-item:hover {\n                background: #fafafa;\n            }\n\n            .dark .comment-item:hover {\n                background: #363636;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 48px;\n                height: 48px;\n                font-size: 20px;\n            }\n\n            .comment-main {\n                gap: 16px;\n            }\n\n            .comment-username {\n                font-size: 15px;\n            }\n\n            .comment-content {\n                font-size: 15px;\n                line-height: 1.7;\n            }\n\n            .comment-image {\n                max-width: 300px;\n                max-height: 300px;\n            }\n\n            .expand-replies {\n                padding-left: 64px;\n            }\n\n            .reply-list {\n                padding-left: 64px;\n            }\n\n            .reply-avatar img,\n            .default-avatar.small {\n                width: 32px;\n                height: 32px;\n                font-size: 14px;\n            }\n\n            .reply-main {\n                gap: 12px;\n            }\n\n            .reply-username {\n                font-size: 14px;\n            }\n\n            .reply-content {\n                font-size: 14px;\n                line-height: 1.6;\n            }\n\n            .bottom-bar {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 12px 12px 0 0;\n                box-shadow: 0 -2px 12px rgba(0,0,0,0.08);\n            }\n\n            .modal-content {\n                max-width: 600px;\n                margin: 0 auto;\n                border-radius: 16px;\n                margin-bottom: 20px;\n            }\n\n            /* 更多评论区域 */\n            #moreSection {\n                margin: 16px 0;\n            }\n\n            /* 加载状态 */\n            .loading,\n            .empty {\n                background: #fff;\n                border-radius: 12px;\n                margin: 16px 0;\n            }\n\n            .dark .loading,\n            .dark .empty {\n                background: #2d2d2d;\n            }\n\n            .no-more {\n                padding: 30px;\n            }\n\n            /* 列表容器 */\n            .main-container > div[style*=\"margin: 0 12px\"] {\n                margin: 0 !important;\n            }\n        }\n\n        /* 更大屏幕 */\n        @media (min-width: 1200px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 900px;\n            }\n\n            .comment-item {\n                padding: 24px 32px;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 52px;\n                height: 52px;\n            }\n\n            .expand-replies,\n            .reply-list {\n                padding-left: 68px;\n            }\n        }\n\n        /* 超宽屏幕双栏布局（可选） */\n        @media (min-width: 1400px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 1000px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <!-- 顶部栏 -->\n    <div class=\"header\">\n        <div class=\"header-left\">\n            <span class=\"header-title\" id=\"headerTitle\">评论</span>\n        </div>\n        <div class=\"sort-buttons\" id=\"sortButtons\">\n            <button class=\"comment-btn\" id=\"commentBtn\" onclick=\"openCommentModal()\" style=\"display:none;\">\n                <i class=\"fas fa-pen\"></i> 去评论\n            </button>\n            <button class=\"sort-btn active\" id=\"sortByHot\" onclick=\"sortComments('hot')\">\n                <i class=\"fas fa-fire\"></i> 最热\n            </button>\n            <button class=\"sort-btn\" id=\"sortByTime\" onclick=\"sortComments('time')\">\n                <i class=\"fas fa-clock\"></i> 最新\n            </button>\n\n            <button class=\"theme-toggle\" id=\"themeToggle\" onclick=\"toggleTheme()\">\n                <i class=\"fas fa-moon\" id=\"themeIcon\"></i>\n            </button>\n        </div>\n    </div>\n\n    <!-- 主容器 -->\n    <div class=\"main-container\">\n        <!-- 段落内容 -->\n        <div class=\"paragraph-quote hidden\" id=\"paragraphQuote\"></div>\n\n        <!-- 热门评论区域（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"hotSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-fire\"></i>\n                <span class=\"section-title\">热门评论</span>\n                <span class=\"section-count\" id=\"hotCount\"></span>\n            </div>\n            <div class=\"comment-list\" id=\"hotCommentList\"></div>\n        </div>\n\n        <!-- 更多评论标题（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"moreSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-clock\" style=\"color: #07c160;\"></i>\n                <span class=\"section-title\">更多评论</span>\n                <span class=\"section-count\" id=\"moreCount\"></span>\n            </div>\n        </div>\n\n        <!-- 评论列表 -->\n        <div style=\"margin: 0 12px;\">\n            <div class=\"comment-list\" id=\"commentList\"></div>\n        </div>\n\n        <!-- 加载状态 -->\n        <div class=\"loading\" id=\"loading\">\n            <div class=\"loading-spinner\"></div>\n            <span>加载中...</span>\n        </div>\n\n        <!-- 空状态 -->\n        <div class=\"empty hidden\" id=\"empty\">\n            <i class=\"fas fa-comment-slash\"></i>\n            <div class=\"empty-title\">暂无评论</div>\n            <div class=\"empty-desc\">快来发表第一条评论吧</div>\n        </div>\n\n        <!-- 没有更多 -->\n        <div class=\"no-more hidden\" id=\"noMore\">— 没有更多评论了 —</div>\n    </div>\n\n    <!-- 底部输入栏（仅番茄显示） -->\n    <div class=\"bottom-bar hidden\" id=\"bottomBar\">\n        <div class=\"input-wrapper\" onclick=\"openCommentModal()\">\n            <span>趣评千万条，你也来...</span>\n        </div>\n        <div class=\"bottom-actions\">\n            <i class=\"far fa-smile bottom-action-btn\" onclick=\"openCommentModal()\"></i>\n        </div>\n    </div>\n\n    <!-- 评论弹窗 -->\n    <div class=\"modal-overlay\" id=\"commentModal\" onclick=\"closeCommentModal(event)\">\n        <div class=\"modal-content\" onclick=\"event.stopPropagation()\">\n            <div class=\"modal-header\">\n                <span class=\"modal-title\">发表评论</span>\n                <i class=\"fas fa-times modal-close\" onclick=\"closeCommentModal()\"></i>\n            </div>\n            <div class=\"modal-textarea-wrapper\">\n                <textarea class=\"modal-textarea\" id=\"commentTextarea\" placeholder=\"写下你的想法...\" maxlength=\"500\"></textarea>\n                <button type=\"button\" class=\"emoji-toggle-btn\" id=\"emojiToggleBtn\" onclick=\"toggleEmojiPanel(event)\">\n                    <i class=\"far fa-smile\"></i>\n                </button>\n                <div class=\"emoji-panel\" id=\"emojiPanel\">\n                    <div class=\"emoji-grid\" id=\"emojiGrid\"></div>\n                </div>\n            </div>\n            <div class=\"modal-footer\">\n                <span class=\"char-count\" id=\"charCount\">0/500</span>\n                <button class=\"submit-btn\" id=\"submitBtn\" onclick=\"submitComment()\">发表</button>\n            </div>\n        </div>\n    </div>\n\n    <!-- 图片预览 -->\n    <div class=\"image-preview\" id=\"imagePreview\" onclick=\"closeImagePreview()\">\n        <i class=\"fas fa-times image-preview-close\"></i>\n        <img id=\"previewImage\" src=\"\" alt=\"\">\n    </div>\n\n    <!-- Toast -->\n    <div class=\"toast\" id=\"toast\"></div>\n\n    <script>\n        // 配置\n        const urlParams = new URLSearchParams(\"${url}\");\n        const config = {\n            bookId: urlParams.get('book_id'),\n            itemId: urlParams.get('item_id'),\n            currentPara: urlParams.get('para'),\n            ssionid: urlParams.get('ssionid'),\n            source: urlParams.get('source') || '番茄',\n            cursor: '',\n            lastCursor: '', // 保存上一个cursor用于错误恢复\n            hasMore: false,\n            isLoading: false,\n            currentSort: 'hot',\n            comments: [],\n            hotComments: [],\n            allComments: [],\n            loadRetryCount: 0, // 加载重试次数\n            maxRetryCount: 3 // 最大重试次数\n        };\n\n        // 表情映射\n        const emojiMap = {\n            \"[微笑]\": \"${baser_url}/static/emoji/emoji_dr_1.png\",\n            \"[偷笑]\": \"${baser_url}/static/emoji/emoji_dr_2.png\",\n            \"[笑]\": \"${baser_url}/static/emoji/emoji_dr_3.png\",\n            \"[什么]\": \"${baser_url}/static/emoji/emoji_dr_4.png\",\n            \"[害羞]\": \"${baser_url}/static/emoji/emoji_dr_5.png\",\n            \"[爱慕]\": \"${baser_url}/static/emoji/emoji_dr_6.png\",\n            \"[飞吻]\": \"${baser_url}/static/emoji/emoji_dr_7.png\",\n            \"[奸笑]\": \"${baser_url}/static/emoji/emoji_dr_8.png\",\n            \"[尬笑]\": \"${baser_url}/static/emoji/emoji_dr_9.png\",\n            \"[思考]\": \"${baser_url}/static/emoji/emoji_dr_10.png\",\n            \"[撇嘴]\": \"${baser_url}/static/emoji/emoji_dr_11.png\",\n            \"[做鬼脸]\": \"${baser_url}/static/emoji/emoji_dr_12.png\",\n            \"[酷]\": \"${baser_url}/static/emoji/emoji_dr_13.png\",\n            \"[翻白眼]\": \"${baser_url}/static/emoji/emoji_dr_14.png\",\n            \"[惊呆]\": \"${baser_url}/static/emoji/emoji_dr_15.png\",\n            \"[震惊]\": \"${baser_url}/static/emoji/emoji_dr_16.png\",\n            \"[送心]\": \"${baser_url}/static/emoji/emoji_dr_17.png\",\n            \"[委屈]\": \"${baser_url}/static/emoji/emoji_dr_18.png\",\n            \"[快哭了]\": \"${baser_url}/static/emoji/emoji_dr_19.png\",\n            \"[笑哭]\": \"${baser_url}/static/emoji/emoji_dr_20.png\",\n            \"[哭]\": \"${baser_url}/static/emoji/emoji_dr_21.png\",\n            \"[大笑]\": \"${baser_url}/static/emoji/emoji_dr_22.png\",\n            \"[舔屏]\": \"${baser_url}/static/emoji/emoji_dr_23.png\",\n            \"[怒]\": \"${baser_url}/static/emoji/emoji_dr_24.png\",\n            \"[捂脸]\": \"${baser_url}/static/emoji/emoji_dr_25.png\",\n            \"[吐]\": \"${baser_url}/static/emoji/emoji_dr_26.png\",\n            \"[恐惧]\": \"${baser_url}/static/emoji/emoji_dr_27.png\",\n            \"[抓狂]\": \"${baser_url}/static/emoji/emoji_dr_28.png\",\n            \"[敬礼]\": \"${baser_url}/static/emoji/emoji_dr_29.png\",\n            \"[石化]\": \"${baser_url}/static/emoji/emoji_dr_30.png\",\n            \"[OK]\": \"${baser_url}/static/emoji/emoji_dr_31.png\",\n            \"[赞]\": \"${baser_url}/static/emoji/emoji_dr_32.png\",\n            \"[爱心]\": \"${baser_url}/static/emoji/emoji_dr_33.png\",\n            \"[伤心]\": \"${baser_url}/static/emoji/emoji_dr_34.png\",\n            \"[KISS]\": \"${baser_url}/static/emoji/emoji_dr_35.png\",\n            \"[懂了]\": \"${baser_url}/static/emoji/emoji_dr_36.png\",\n            \"[探究]\": \"${baser_url}/static/emoji/emoji_dr_37.png\",\n            \"[重拳出击]\": \"${baser_url}/static/emoji/emoji_dr_38.png\",\n            \"[吃瓜]\": \"${baser_url}/static/emoji/emoji_dr_39.png\",\n            \"[盯]\": \"${baser_url}/static/emoji/emoji_dr_40.png\",\n            \"[你细品]\": \"${baser_url}/static/emoji/emoji_dr_41.png\",\n            \"[赶稿中]\": \"${baser_url}/static/emoji/emoji_dr_42.png\",\n            \"[注意]\": \"${baser_url}/static/emoji/emoji_dr_43.png\",\n            \"[饱了]\": \"${baser_url}/static/emoji/emoji_dr_44.png\",\n            \"[码住]\": \"${baser_url}/static/emoji/emoji_dr_45.png\",\n            \"[学会了]\": \"${baser_url}/static/emoji/emoji_dr_46.png\",\n            \"[顶帖]\": \"${baser_url}/static/emoji/emoji_dr_47.png\",\n            \"[求爆更]\": \"${baser_url}/static/emoji/emoji_dr_48.png\",\n            \"[求关注]\": \"${baser_url}/static/emoji/emoji_dr_49.png\",\n            \"[我也强推]\": \"${baser_url}/static/emoji/emoji_dr_50.png\",\n            \"[雀食神作]\": \"${baser_url}/static/emoji/emoji_dr_51.png\",\n            \"[已种草]\": \"${baser_url}/static/emoji/emoji_dr_52.png\",\n            \"[书架加一]\": \"${baser_url}/static/emoji/emoji_dr_53.png\",\n            \"[歪头笑哭]\": \"${baser_url}/static/emoji/emoticon_emoji_wtxk.png\",\n            \"[神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[狗头]\": \"${baser_url}/static/emoji/emoticon_emoji_doge.png\",\n            \"[哈哈]\": \"${baser_url}/static/emoji/emoticon_emoji_hhh.png\",\n            \"[流泪]\": \"${baser_url}/static/emoji/emoticon_emoji_tears.png\",\n            \"[可爱]\": \"${baser_url}/static/emoji/emoticon_emoji_cute.png\",\n            \"[色]\": \"${baser_url}/static/emoji/emoticon_emoji_smimi.png\",\n            \"[调皮]\": \"${baser_url}/static/emoji/emoticon_emoji_tpi.png\",\n            \"[小七_神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[小七_狗头]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gt.png\",\n            \"[小七_鄙视]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_bs.png\",\n            \"[小七_高兴]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gx.png\",\n            \"[小七_黑人问号]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_hrwh.png\",\n            \"[小七_厉害]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_lh.png\",\n            \"[小七_流泪]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ll.png\",\n            \"[小七_OK]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ok.png\",\n            \"[小七_色]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_s.png\",\n            \"[小七_伤心]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sx.png\",\n            \"[小七_调皮]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_tq.png\",\n            \"[小七_委屈]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_wh.png\",\n            \"[小七_笑哭]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xk.png\",\n            \"[小七_笑嘻嘻]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\",\n            \"[小七_斜眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xyx.png\",\n            \"[小七_赞美]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_zm.png\",\n            \"[眯眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\"\n        };\n\n        // 初始化\n        document.addEventListener('DOMContentLoaded', () => {\n            initTheme();\n            initSortButtons();\n\n            // 隐藏底部输入栏，使用顶部评论按钮\n            document.body.style.paddingBottom = '20px';\n\n            document.getElementById('commentTextarea').addEventListener('input', updateCharCount);\n\n            initEmojiPanel(); // 初始化表情面板\n            initInfiniteScroll();\n            loadComments();\n        });\n\n        function initTheme() {\n            let readerSettings = localStorage.getItem('readerSettings');\n            let theme = localStorage.getItem('theme');\n            if (readerSettings) {\n                try {\n                    const parsed = JSON.parse(readerSettings);\n                    if (parsed.theme !== undefined) {\n                        theme = parsed.theme;\n                    }\n                } catch {}\n            }\n            \n            // 设置默认值为auto\n            if (!theme) {\n                theme = 'auto';\n                localStorage.setItem('theme', 'auto');\n            }\n            \n            updateTheme(theme);\n        }\n\n        function updateTheme(theme) {\n            const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n            let isDark;\n            \n            if (theme === 'auto') {\n                isDark = prefersDark;\n            } else {\n                isDark = theme === 'dark';\n            }\n            \n            if (isDark) {\n                document.documentElement.classList.add('dark');\n                document.body.classList.add('dark');\n            } else {\n                document.documentElement.classList.remove('dark');\n                document.body.classList.remove('dark');\n            }\n            \n            updateThemeIcon(theme);\n        }\n\n        function updateThemeIcon(theme) {\n            const icon = document.getElementById('themeIcon');\n            \n            if (theme === 'auto') {\n                icon.className = 'fas fa-adjust';\n            } else if (theme === 'dark') {\n                icon.className = 'fas fa-sun';\n            } else {\n                icon.className = 'fas fa-moon';\n            }\n        }\n\n        function toggleTheme() {\n            let currentTheme = localStorage.getItem('theme');\n            let newTheme;\n            \n            if (currentTheme === 'auto') {\n                // From auto to opposite of current system preference\n                const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n                newTheme = prefersDark ? 'light' : 'dark';\n            } else if (currentTheme === 'light') {\n                newTheme = 'dark';\n            } else {\n                newTheme = 'auto';\n            }\n            \n            localStorage.setItem('theme', newTheme);\n            updateTheme(newTheme);\n        }\n\n        // Listen for system theme changes in auto mode\n        window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', (e) => {\n            const currentTheme = localStorage.getItem('theme');\n            if (currentTheme === 'auto') {\n                updateTheme('auto');\n            }\n        });\n\n        function initInfiniteScroll() {\n            let scrollTimeout;\n            let lastScrollTime = 0;\n            \n            window.addEventListener('scroll', () => {\n                const now = Date.now();\n                if (now - lastScrollTime < 100) return; // 节流，100ms内不重复处理\n                lastScrollTime = now;\n                \n                clearTimeout(scrollTimeout);\n                scrollTimeout = setTimeout(() => {\n                    if (config.isLoading || !config.hasMore) return;\n                    \n                    const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n                    const windowHeight = window.innerHeight;\n                    const documentHeight = document.documentElement.scrollHeight;\n                    const distance = documentHeight - (scrollTop + windowHeight);\n\n                    // 增加触发距离，避免过早加载\n                    if (distance < 100 && distance > -50) {\n                        loadComments();\n                    }\n                }, 150); // 防抖，150ms后执行\n            }, { passive: true });\n        }\n\n        function initSortButtons() {\n            const sortByHot = document.getElementById('sortByHot');\n            if (config.source === '七猫') {\n                sortByHot.innerHTML = '<i class=\"fas fa-history\"></i> 最早';\n            }\n        }\n\n        function initEmojiPanel() {\n            const emojiGrid = document.getElementById('emojiGrid');\n            if (!emojiGrid) return;\n\n            Object.entries(emojiMap).forEach(([text, src]) => {\n                const btn = document.createElement('button');\n                btn.type = 'button';\n                btn.className = 'emoji-btn';\n                btn.innerHTML = \\`<img src=\"\\${src}\" alt=\"\\${text}\">\\`;\n                btn.onclick = (e) => {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    insertEmoji(text);\n                };\n                emojiGrid.appendChild(btn);\n            });\n        }\n\n        function toggleEmojiPanel(e) {\n            e.preventDefault();\n            e.stopPropagation();\n            document.getElementById('emojiPanel').classList.toggle('show');\n        }\n\n        function insertEmoji(text) {\n            const textarea = document.getElementById('commentTextarea');\n            const start = textarea.selectionStart;\n            const end = textarea.selectionEnd;\n            const textBefore = textarea.value.substring(0, start);\n            const textAfter = textarea.value.substring(end);\n            textarea.value = textBefore + text + textAfter;\n            textarea.focus();\n            textarea.selectionStart = textarea.selectionEnd = start + text.length;\n            updateCharCount();\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function sortComments(sortType) {\n            if (config.currentSort === sortType) return;\n            config.currentSort = sortType;\n\n            document.querySelectorAll('.sort-btn').forEach(btn => btn.classList.remove('active'));\n            if (sortType === 'time') {\n                document.getElementById('sortByTime').classList.add('active');\n            } else {\n                document.getElementById('sortByHot').classList.add('active');\n            }\n\n            let sortedComments = [...config.allComments];\n            \n            if (config.source === '七猫') {\n                if (sortType === 'hot') {\n                    sortedComments.reverse();\n                }\n            } else {\n                if (sortType === 'hot') {\n                    sortedComments.sort((a, b) => (b.like_count || 0) - (a.like_count || 0));\n                } else {\n                    sortedComments.sort((a, b) => (b.create_timestamp || 0) - (a.create_timestamp || 0));\n                }\n            }\n\n            config.comments = sortedComments;\n            renderComments(sortedComments, false);\n        }\n\n        async function loadComments(retryCount = 0) {\n            if (config.isLoading) return;\n            \n            // 预检查：如果已经确定没有更多数据，直接返回\n            if (!config.cursor && config.comments.length > 0) {\n                console.log('没有更多数据可加载（cursor为空）');\n                return;\n            }\n            \n            // 如果已经有大量数据但cursor为空，认为已经加载完毕\n            if (!config.cursor && config.comments.length > 20) {\n                console.log('数据量充足且cursor为空，停止加载');\n                config.hasMore = false;\n                return;\n            }\n            \n            config.isLoading = true;\n\n            const isFirstLoad = !config.cursor;\n            if (!isFirstLoad) {\n                document.getElementById('noMore').classList.add('hidden');\n                showLoadingMore(true);\n            }\n\n            try {\n                let url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&para=\\${config.currentPara}&source=\\${encodeURIComponent(config.source)}\\`;\n                \n                if (config.cursor) {\n                    url += \\`&cursor=\\${encodeURIComponent(config.cursor)}\\`;\n                }\n\n                // 添加超时控制\n                const controller = new AbortController();\n                const timeoutId = setTimeout(() => controller.abort(), 10000); // 10秒超时\n\n                const response = await fetch(url, {\n                    signal: controller.signal,\n                    headers: {\n                        'Accept': 'application/json',\n                        'Content-Type': 'application/json'\n                    }\n                });\n                \n                clearTimeout(timeoutId);\n                \n                if (!response.ok) {\n                    throw new Error(\\`HTTP \\${response.status}: \\${response.statusText}\\`);\n                }\n                \n                const result = await response.json();\n\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n\n                if (result.code === 0 && result.data) {\n                    const data = result.data;\n\n                    if (isFirstLoad) {\n                        // 修复：如果 total 为 0 但实际有评论，使用评论数组长度\n                        const commentCount = data.total || \n                            (data.comments?.length || 0) + (data.hot_comments?.length || 0);\n                        document.getElementById('headerTitle').textContent = commentCount > 0 \n                            ? \\`\\${commentCount}条评论\\` \n                            : '评论';\n                    }\n\n                    if (isFirstLoad && data.paragraph_content) {\n                        const paraEl = document.getElementById('paragraphQuote');\n                        paraEl.textContent = data.paragraph_content.length > 100 \n                            ? data.paragraph_content.substring(0, 100) + '...' \n                            : data.paragraph_content;\n                        paraEl.classList.remove('hidden');\n                    }\n\n                    if (isFirstLoad && data.hot_comments && data.hot_comments.length > 0) {\n                        config.hotComments = data.hot_comments;\n                        renderHotComments(data.hot_comments);\n                        document.getElementById('hotSection').classList.remove('hidden');\n                        document.getElementById('moreSection').classList.remove('hidden');\n                        document.getElementById('moreCount').textContent = \\`(\\${data.total || 0})\\`;\n                    }\n\n                    // 处理评论数据（包括空数据情况）\n                    const comments = data.comments || [];\n                    if (comments.length > 0) {\n                        if (isFirstLoad) {\n                            config.allComments = [...comments];\n                            config.comments = [...comments];\n                            renderComments(comments, false);\n                        } else {\n                            config.allComments = config.allComments.concat(comments);\n                            config.comments = config.comments.concat(comments);\n                            renderComments(comments, true);\n                        }\n                    }\n\n                    // 更严谨的状态判断\n                    const hasMoreFromServer = data.has_more;\n                    const nextCursor = data.next_cursor || '';\n                    \n                    // 如果服务器明确返回hasMore=false，或者没有下一页游标且当前页数据为空，则停止加载\n                    config.hasMore = hasMoreFromServer === true && nextCursor !== '' && comments.length > 0;\n                    \n                    // 特殊情况：如果服务器返回hasMore=true但没有数据，可能是后端bug，保守处理\n                    if (hasMoreFromServer === true && comments.length === 0) {\n                        console.warn('服务器返回hasMore=true但没有数据，停止加载以避免死循环');\n                        config.hasMore = false;\n                    }\n                    \n                    config.lastCursor = config.cursor; // 保存上一个cursor\n                    config.cursor = nextCursor;\n\n                    // 调试日志\n                    console.log(\\`加载完成: 当前页\\${comments.length}条, hasMore=\\${config.hasMore}, cursor='\\${config.cursor}'\\`);\n                    \n                    if (!config.hasMore && config.comments.length > 0) {\n                        document.getElementById('noMore').classList.remove('hidden');\n                        console.log('已到达最后一页，停止加载更多');\n                    }\n\n                    if (config.comments.length === 0 && config.hotComments.length === 0) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                } else {\n                    if (isFirstLoad) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                }\n            } catch (error) {\n                console.error('加载评论失败:', error);\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n                \n                // 更详细的错误处理\n                let errorMsg = '加载失败，请重试';\n                if (error.name === 'AbortError') {\n                    errorMsg = '请求超时，请检查网络后重试';\n                } else if (error.message.includes('HTTP')) {\n                    errorMsg = '服务器错误，请稍后重试';\n                } else if (error.message.includes('Failed to fetch')) {\n                    errorMsg = '网络连接失败，请检查网络';\n                }\n                \n                showToast(errorMsg);\n                \n                // 重置cursor，允许重试\n                if (!isFirstLoad) {\n                    config.cursor = config.lastCursor || '';\n                }\n                \n                // 自动重试机制\n                if (retryCount < config.maxRetryCount && !isFirstLoad) {\n                    const retryDelay = Math.min(1000 * Math.pow(2, retryCount), 5000); // 指数退避，最大5秒\n                    console.log(\\`加载失败，\\${retryDelay/1000}秒后重试(\\${retryCount + 1}/\\${config.maxRetryCount})\\`);\n                    \n                    setTimeout(() => {\n                        loadComments(retryCount + 1);\n                    }, retryDelay);\n                    \n                    // 显示重试提示\n                    showToast(\\`加载失败，\\${retryDelay/1000}秒后自动重试\\`);\n                    return; // 不重置isLoading，让重试逻辑处理\n                }\n            } finally {\n                config.isLoading = false;\n            }\n        }\n\n        function showLoadingMore(show) {\n            let loadingMore = document.getElementById('loadingMore');\n            if (!loadingMore) {\n                loadingMore = document.createElement('div');\n                loadingMore.id = 'loadingMore';\n                loadingMore.className = 'loading';\n                loadingMore.style.padding = '20px';\n                loadingMore.style.opacity = '0';\n                loadingMore.style.transition = 'opacity 0.3s ease';\n                loadingMore.innerHTML = '<div class=\"loading-spinner\" style=\"width:24px;height:24px;margin-bottom:8px;\"></div><span style=\"font-size:13px;\">加载更多...</span>';\n                document.querySelector('.main-container').appendChild(loadingMore);\n                \n                // 强制重排后添加动画\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            }\n            \n            if (show) {\n                loadingMore.style.display = 'flex';\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            } else {\n                loadingMore.style.opacity = '0';\n                setTimeout(() => {\n                    loadingMore.style.display = 'none';\n                }, 300);\n            }\n        }\n\n        function renderHotComments(comments) {\n            const container = document.getElementById('hotCommentList');\n            container.innerHTML = '';\n            document.getElementById('hotCount').textContent = \\`(\\${comments.length})\\`;\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'hot'));\n            });\n        }\n\n        function renderComments(comments, append = false) {\n            const container = document.getElementById('commentList');\n            if (!append) {\n                container.innerHTML = '';\n            }\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'normal'));\n            });\n        }\n\n        function createCommentElement(comment, type) {\n            const div = document.createElement('div');\n            div.className = 'comment-item';\n            div.dataset.commentId = comment.comment_id;\n\n            // 用户标签\n            let tagsHtml = '';\n            if (comment.user && comment.user.is_author) {\n                tagsHtml += '<span class=\"comment-tag tag-author\">作者</span>';\n            }\n            if (comment.user && comment.user.is_vip) {\n                tagsHtml += '<span class=\"comment-tag tag-vip\">VIP</span>';\n            }\n            if (comment.user && comment.user.tags) {\n                comment.user.tags.forEach(tag => {\n                    tagsHtml += \\`<span class=\"comment-tag tag-custom\">\\${tag}</span>\\`;\n                });\n            }\n\n            // 图片\n            let imageHtml = '';\n            if (comment.image_url) {\n                imageHtml = \\`<img class=\"comment-image\" src=\"\\${comment.image_url}\" onclick=\"openImagePreview('\\${comment.image_url}')\" alt=\"\" onerror=\"this.style.display='none'\">\\`;\n            }\n\n            // 展开回复逻辑\n            let expandHtml = '';\n            let replyListHtml = '';\n            \n            const inlineReplyCount = (comment.replies && comment.replies.length) || 0;\n            const serverReplyCount = comment.reply_count || 0;\n            \n            // 只有当有回复时才显示展开按钮\n            if (serverReplyCount > 0 || inlineReplyCount > 0) {\n                const uniqueId = \\`\\${type}-\\${comment.comment_id}\\`;\n                const totalReplies = Math.max(serverReplyCount, inlineReplyCount);\n                \n                // 七猫：始终从接口获取回复（内嵌回复只是预览）\n                if (config.source === '七猫') {\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                } else if (inlineReplyCount > 0) {\n                    // 番茄/塔读：有内嵌回复，默认收起，标记已加载\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\" data-loaded=\"true\">\\${renderRepliesHtml(comment.replies)}</div>\\`;\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                } else {\n                    // 没有内嵌回复，需要从接口加载\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                }\n            }\n\n            // 头像\n            const userName = comment.user?.user_name || '匿名用户';\n            const userAvatar = comment.user?.user_avatar || '';\n            const avatarHtml = userAvatar \n                ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                : \\`<div class=\"default-avatar\"><i class=\"fas fa-user\"></i></div>\\`;\n\n            div.innerHTML = \\`\n                <div class=\"comment-main\">\n                    <div class=\"comment-avatar\">\n                        \\${avatarHtml}\n                    </div>\n                    <div class=\"comment-body\">\n                        <div class=\"comment-header\">\n                            <span class=\"comment-username\">\\${userName}</span>\n                            \\${tagsHtml}\n                        </div>\n                        <div class=\"comment-content\">\\${convertEmoji(comment.content || '')}</div>\n                        \\${imageHtml}\n                        <div class=\"comment-footer\">\n                            <div class=\"comment-meta\">\n                                <span class=\"comment-time\">\\${comment.create_time || ''}</span>\n                                \\${config.source === '番茄' ? '<span class=\"comment-reply-btn\" style=\"display:none;\">回复</span>' : ''}\n                            </div>\n                            <div class=\"comment-likes\">\n                                <i class=\"far fa-heart\"></i>\n                                <span>\\${comment.like_count || 0}</span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                \\${expandHtml}\n                \\${replyListHtml}\n            \\`;\n\n            return div;\n        }\n\n        function renderRepliesHtml(replies) {\n            if (!replies || replies.length === 0) return '';\n\n            return replies.map(reply => {\n                let replyToHtml = '';\n                if (reply.reply_to_user && reply.reply_to_user.user_name) {\n                    replyToHtml = \\`\n                        <span class=\"reply-to\">回复</span>\n                        <span class=\"reply-to-username\">\\${reply.reply_to_user.user_name}</span>\n                    \\`;\n                }\n\n                let tagsHtml = '';\n                if (reply.user && reply.user.is_author) {\n                    tagsHtml += '<span class=\"comment-tag tag-author\" style=\"margin-left:6px;\">作者</span>';\n                }\n\n                const userName = reply.user?.user_name || '匿名';\n                const userAvatar = reply.user?.user_avatar || '';\n                const avatarHtml = userAvatar \n                    ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                    : \\`<div class=\"default-avatar small\"><i class=\"fas fa-user\"></i></div>\\`;\n\n                return \\`\n                    <div class=\"reply-item\">\n                        <div class=\"reply-main\">\n                            <div class=\"reply-avatar\">\n                                \\${avatarHtml}\n                            </div>\n                            <div class=\"reply-body\">\n                                <div class=\"reply-header\">\n                                    <span class=\"reply-username\">\\${userName}</span>\n                                    \\${tagsHtml}\n                                    \\${replyToHtml}\n                                </div>\n                                <div class=\"reply-content\">\\${convertEmoji(reply.content || '')}</div>\n                                <div class=\"reply-footer\">\n                                    <span class=\"reply-time\">\\${reply.create_time || ''}</span>\n                                    <div class=\"reply-likes\">\n                                        <i class=\"far fa-heart\"></i>\n                                        <span>\\${reply.like_count || 0}</span>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                \\`;\n            }).join('');\n        }\n\n        async function toggleReplies(uniqueId, commentId) {\n            const container = document.getElementById(\\`replies-\\${uniqueId}\\`);\n            const expandLink = document.querySelector(\\`[onclick*=\"toggleReplies('\\${uniqueId}'\"]\\`);\n            const isExpanded = container.classList.contains('show');\n\n            if (isExpanded) {\n                // 收起\n                container.classList.remove('show');\n                const replyCount = container.querySelectorAll('.reply-item').length;\n                expandLink.innerHTML = \\`展开\\${replyCount}条回复 <i class=\"fas fa-chevron-down\"></i>\\`;\n                expandLink.classList.remove('expanded');\n            } else {\n                // 展开\n                if (container.dataset.loaded === 'true') {\n                    // 已有数据，直接显示\n                    container.classList.add('show');\n                    expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                    expandLink.classList.add('expanded');\n                } else {\n                    // 需要加载\n                    expandLink.innerHTML = '加载中... <i class=\"fas fa-spinner fa-spin\"></i>';\n                    container.classList.add('show');\n\n                    try {\n                        const url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&comment_id=\\${commentId}&source=\\${encodeURIComponent(config.source)}\\`;\n                        const response = await fetch(url);\n                        const result = await response.json();\n\n                        if (result.code === 0 && result.data && result.data.replies && result.data.replies.length > 0) {\n                            container.innerHTML = renderRepliesHtml(result.data.replies);\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        } else {\n                            container.innerHTML = '<div style=\"padding:16px;color:#999;font-size:13px;text-align:center;\">暂无回复</div>';\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        }\n                    } catch (error) {\n                        console.error('加载回复失败:', error);\n                        container.innerHTML = '<div style=\"padding:16px;color:#ff4d4f;font-size:13px;text-align:center;\">加载失败，点击重试</div>';\n                        container.classList.remove('show');\n                        expandLink.innerHTML = '展开回复 <i class=\"fas fa-chevron-down\"></i>';\n                    }\n                }\n            }\n        }\n\n        function convertEmoji(text) {\n                    if (!text) return '';\n            Object.entries(emojiMap).forEach(([key, src]) => {\n                const regex = new RegExp(key.replace(/[.*+?^\\${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'), 'g');\n                text = text.replace(regex, \\`<img src=\"\\${src}\" class=\"bq\" alt=\"\\${key}\">\\`);\n            });\n            return text;\n        }\n\n        function openCommentModal() {\n            if (config.source !== '番茄') {\n                showToast('当前平台暂不支持评论');\n                return;\n            }\n            document.getElementById('commentModal').classList.add('show');\n            document.getElementById('commentTextarea').focus();\n        }\n\n        function closeCommentModal(event) {\n            if (event && event.target !== document.getElementById('commentModal')) return;\n            document.getElementById('commentModal').classList.remove('show');\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function updateCharCount() {\n            const textarea = document.getElementById('commentTextarea');\n            const charCount = document.getElementById('charCount');\n            const length = textarea.value.length;\n            charCount.textContent = \\`\\${length}/500\\`;\n            charCount.classList.toggle('over', length > 500);\n        }\n\n        async function submitComment() {\n            const content = document.getElementById('commentTextarea').value.trim();\n            if (!content) {\n                showToast('请输入评论内容');\n                return;\n            }\n            if (content.length > 500) {\n                showToast('评论内容不能超过500字');\n                return;\n            }\n\n            try {\n                const url = \\`${baser_url}/post_idea_review?ssionid=\\${config.ssionid}\\`;\n                const response = await fetch(url, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application/json' },\n                    body: JSON.stringify({\n                        text: content,\n                        book_id: config.bookId,\n                        item_id: config.itemId,\n                        para: config.currentPara,\n                        para_content: content\n                    })\n                });\n                const result = await response.json();\n\n                if (result.code === 0) {\n                    showToast('发表成功');\n                    closeCommentModal();\n                    document.getElementById('commentTextarea').value = '';\n                    updateCharCount();\n                    config.cursor = '';\n                    config.allComments = [];\n                    config.comments = [];\n                    config.hotComments = [];\n                    loadComments();\n                } else {\n                    showToast(result.msg || '发表失败');\n                }\n            } catch (error) {\n                console.error('发表评论失败:', error);\n                showToast('发表失败，请重试');\n            }\n        }\n\n        function openImagePreview(url) {\n            document.getElementById('previewImage').src = url;\n            document.getElementById('imagePreview').classList.add('show');\n        }\n\n        function closeImagePreview() {\n            document.getElementById('imagePreview').classList.remove('show');\n        }\n\n        function showToast(message) {\n            const toast = document.getElementById('toast');\n            toast.textContent = message;\n            toast.classList.add('show');\n            setTimeout(() => toast.classList.remove('show'), 2000);\n        }\n    </script>\n</body>\n</html>`\n}\n\n\n//按钮切换时改变源变量并刷新发现\nfunction show(m, t) {\n    const {\n        java,\n        source\n    } = this;\n    //源变量为空时刷新发现，重置源变量\n    source.getVariable()==''?java.refreshExplore():'';//\n    var data = JSON.parse(source.getVariable());\n    //java.log(data);\n    data[t] = m;\n    if (t==\"find_tab\"){\n    \tdata[\"find_source\"]=\"番茄\";\n    \t}\n    //java.longToast(JSON.stringify(data));\n    source.setVariable(JSON.stringify(data, null, 2));\n    java.refreshExplore();\n}\n\n/**\n * 创建筛选器配置\n * @param {string} title - 筛选器标题\n * @param {string[]} chars - 选项列表\n * @param {string} defaultVal - 默认值\n * @param {string} paramKey - URL参数名\n * @param {number} size - 布局占比（0-1之间，如0.33表示33%）\n * @returns {Object} 筛选器配置对象\n */\nfunction createFilter(title, chars, defaultVal, paramKey, size) {\n    return {\n        title: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        action: `show(infoMap['${title}'],'${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}",
    "lastUpdateTime": 1778819390466,
    "loginUi": "[{\n        \"name\": \"邮箱\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"密码\",\n        \"type\": \"password\"\n    }, {\n        \"name\": \"♥登录书源\",\n        \"type\": \"button\",\n        \"action\": \"login(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔐注册书源\",\n        \"type\": \"button\",\n        \"action\": \"register()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⛔️清空设置\",\n        \"type\": \"button\",\n        \"action\": \"reCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"✨设置检测\",\n        \"type\": \"button\",\n        \"action\": \"applyCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🔚 退出登录\",\n        \"type\": \"button\",\n        \"action\": \"logout()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"📡 发现页兼容\",\n        \"type\": \"button\",\n        \"action\": \"fxyjr()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🏝用户后台\",\n        \"type\": \"button\",\n        \"action\": \"loginqt()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🗑 清除设备\",\n        \"type\": \"button\",\n        \"action\": \"clearDevice()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🔮 检测登录\",\n        \"type\": \"button\",\n        \"action\": \"checkStatus()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"☕打赏享福利\",\n        \"type\": \"button\",\n        \"action\": \"vip()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"❇️ 更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"==下方配置为书源设置页面==\",\n        \"type\": \"button\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📑更少简介\",\n        \"type\": \"button\",\n        \"action\": \"set_info()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📝段评开关\",\n        \"type\": \"button\",\n        \"action\": \"paracomment('fqpara')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📚 同步书架\",\n        \"type\": \"button\",\n        \"action\": \"set_reading()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♋️ 男/女频道\",\n        \"type\": \"button\",\n        \"action\": \"set_source_type()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"💢 强制搜索全部\",\n        \"type\": \"button\",\n        \"action\": \"disabledSources()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🍅番茄登录\",\n        \"type\": \"button\",\n        \"action\": \"fq_login()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"➿️ 图片显示\",\n        \"type\": \"button\",\n        \"action\": \"closeImg()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📐 使用教程\",\n        \"type\": \"button\",\n        \"action\": \"jc()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🗂当前模式\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📖小说模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('小说')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔊听书模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('听书')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🏞漫画模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('漫画')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🖲短剧模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('短剧')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎚切换服务器\",\n        \"type\": \"button\",\n        \"action\": \"set_server()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♻️检测当前服务器\",\n        \"type\": \"button\",\n        \"action\": \"checkNet()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⚕️本地/服务器 \",\n        \"type\": \"button\",\n        \"action\": \"get_proxy()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📌永久发布页📌\",\n        \"type\": \"button\",\n        \"action\": \"api()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"↓↓下方可切换来源用于搜索/发现页↓↓\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"💖我来推荐\",\n        \"type\": \"button\",\n        \"action\": \"put_book()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"全部\",\n        \"type\": \"button\",\n        \"action\": \"set_source('全部')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('番茄')\",\n        'name': '番茄',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('69书吧')\",\n        'name': '69书吧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('七猫')\",\n        'name': '七猫',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('百度')\",\n        'name': '百度',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('起点')\",\n        'name': '起点(第三方)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得间')\",\n        'name': '得间',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('塔读')\",\n        'name': '塔读',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('书旗')\",\n        'name': '书旗',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('QQ')\",\n        'name': 'QQ',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('猫眼')\",\n        'name': '猫眼',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('搜书神器')\",\n        'name': '搜书神器',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得奇')\",\n        'name': '得奇',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('伪69')\",\n        'name': '伪69',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('爱下电子书')\",\n        'name': '爱下电子书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('小米')\",\n        'name': '小米',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('星星小说')\",\n        'name': '星星小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('笔趣阁22')\",\n        'name': '笔趣阁22',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('顶点')\",\n        'name': '顶点',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('幻梦轻小说')\",\n        'name': '幻梦轻小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('江湖')\",\n        'name': '江湖',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('歪瑞古德')\",\n        'name': '歪瑞古德漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('知乎')\",\n        'name': '知乎',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('vip')\",\n        'name': '下方为VIP专属书源(点击此处搜所有vip)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        'action': \"set_source('喜马拉雅')\",\n        'name': '喜马拉雅',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('svip')\",\n            'name': '下方为SVIP专属书源(点击此处搜所有svip)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 1\n            }\n        }, {\n            'action': \"set_source('超会专属短剧')\",\n            'name': '超会专属短剧',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('超会专属小说')\",\n            'name': '超会专属小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        'action': \"set_source('酷我')\",\n        'name': '酷我',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n            'action': \"set_source('台湾小说')\",\n            'name': '台湾小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('3A小说')\",\n            'name': '3A小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('包子漫画')\",\n            'name': '包子漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {       \t  \t\n            'action': \"set_source('QQ阅读')\",\n            'name': 'QQ(会员书籍免费)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('久久小说')\",\n            'name': '久久小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \t    'action': \"set_source('追更人')\",\n            'name': '追更人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画屋')\",\n            'name': '漫画屋',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画网')\",\n            'name': '漫画网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('52书库')\",\n            'name': '52书库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('腐小说')\",\n            'name': '腐小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('完本小说')\",\n            'name': '完本小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('盐选文库')\",\n            'name': '盐选文库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {    \t     \t\n            'action': \"set_source('有度中文')\",\n            'name': '有度中文',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('三零读书')\",\n            'name': '三零读书',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('鹿鹿')\",\n            'name': '鹿鹿',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('阅友小说')\",\n            'name': '阅友小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('星空小说')\",\n            'name': '星空小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全免漫画')\",\n            'name': '全免漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('365小说')\",\n            'name': '365小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('冷冷文学')\",\n            'name': '冷冷文学',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('万相书城')\",\n            'name': '万相书城',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('幻梦轻小说')\",\n            'name': '幻梦轻小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\t\n            'action': \"set_source('独步小说')\",\n            'name': '独步小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('福书网')\",\n            'name': '福书网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('速读谷')\",\n            'name': '速读谷',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全本同人')\",\n            'name': '全本同人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n             }\n        }, {\n        'action': \"set_source('漫客栈')\",\n        'name': '漫客栈',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('极速影视')\",\n        'name': '极速影视',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('旺旺短剧')\",\n        'name': '旺旺短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {     \n       \n             'action': \"set_source('毒舌影视')\",\n            'name': '毒舌影视',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \"name\": \"自定义搜索源(多个用英文,分割)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义服务器(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义评论颜色(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"段评气泡样式(0-4)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"手动填写番茄token(可不填)\",\n        \"type\": \"text\"\n    }\n]",
    "loginUrl": "// 当前书源版本号，切勿修改，否则影响更新的识别\nconst localVersion = '5.5.22';\n\nlet controlUrl = host[0];\n\nfunction login(flag) {\n    if (flag == undefined) {\n        result = JSON.parse(source.getLoginInfo())\n    } else {\n        java.longToast(\"\\n\\n💞正在登录中...\")\n        putLoginInfo(JSON.stringify(result))\n    }\n    let base_url = getArgument('server') || host[0]\n    let zdyserver = String(result['自定义服务器(可不填)']);\n    if (zdyserver.includes('http')) {\n        setArgument('server', zdyserver);\n        if (getKey(String(cookie.getCookie(base_url)))) {\n            let cookies = cookie.getCookie(base_url)\n            try {\n                cookie.removeCookie(base_url)\n            } catch (e) {}\n            cookie.setCookie(zdyserver, cookies)\n        }\n        java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n    }\n    let plcolor = String(getArgument('plcolor') || result['自定义评论颜色(可不填)'] || '#000000');\n    if (plcolor) {\n        setArgument('plcolor', plcolor);\n    } else {\n        setArgument('plcolor', '#000000');\n    }\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources) {\n        setArgument('sources', zdysources);\n    };\n    base_url = getArgument('server')\n    let register_email = String(result['邮箱'])\n    let password = String(result['密码'])\n    let key = String(result['密钥'] || '')\n\n    if ((register_email && password || key) && !String(getKey(String(cookie.getCookie(base_url))))) {\n        try {\n            cookie.removeCookie(base_url)\n        } catch (e) {}\n        let deviceKey = '';\n        try {\n            deviceKey = java.deviceID();\n        } catch (e) {\n            deviceKey = java.androidId();\n        };\n        let deviceId = deviceKey;\n        if (register_email && password) {\n            let options = JSON.stringify({\n                method: 'POST',\n                headers: {\n                    'Content-Type': 'application/json'\n                },\n                body: JSON.stringify({\n                    register_email: result['邮箱'],\n                    password: result['密码']\n                })\n            })\n            try {\n                let data = JSON.parse(java.ajax(`${base_url}/login_api,${options}`))\n                if (data.code == 0) {\n                    //java.toast(deviceId)\n                    java.toast(\"\\n\\n✅️登录成功\")\n                    cookie.setCookie(base_url, `qttoken=${data.key};deviceId=${deviceId}`);\n                    for (var _h = 0; _h < host.length; _h++) { try { cookie.setCookie(host[_h], `qttoken=${data.key};deviceId=${deviceId}`); } catch(_e){} }\n                    result['密钥'] = data.key\n                    setArgument('qttoken', data.key);\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    java.toast('\\n\\n💔' + data.msg || \"登录失败，请重试！\")\n                }\n            } catch (e) {\n                java.toast(\"\\n\\n💔登录失败，请重试！\\n\" + e.message)\n            }\n        } else {\n            cookie.setCookie(base_url, `qttoken=${key};deviceId=${deviceId}`)\n            let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n            try {\n                res = JSON.parse(res)\n                if (res.id != undefined) {\n                    setArgument('qttoken', key);\n                    java.toast('\\n\\n密钥登录成功')\n                    result['邮箱'] = res.email\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    throw new Error()\n                }\n            } catch (e) {\n                java.log(e)\n                java.toast(\"\\n\\n💔登录失败\")\n            }\n        }\n    } else if (flag && String(getKey(String(cookie.getCookie(base_url))))) {\n        java.toast(\"\\n\\n当前✅️已登录，请🚫退出登录后重新登录\");\n        //checkStatus();\n    } else if (flag) {\n        java.toast(\"\\n\\n⛔️请先填写邮箱和密码\");\n    }\n}\n\nfunction objectToCookieString(obj) {\n    if (!obj || typeof obj !== 'object') {\n        return '';\n    }\n    return Object.entries(obj)\n        .map(([key, value]) => {\n            const stringValue = String(value);\n            const encodedKey = encodeURIComponent(key);\n            const encodedValue = encodeURIComponent(stringValue);\n            return `${encodedKey}=${encodedValue}`;\n        })\n        .join('; ');\n}\n\nfunction control() {\n    controlUrla = getArgument('controlUrl');\n    if (controlUrla) {\n        controlUrla = findFirstAvailableHost([controlUrla]);\n    }\n    if (!controlUrla) {\n        controlUrla = findFirstAvailableHost(host) || controlUrl;\n    }\n    setArgument('controlUrl', controlUrla);\n    try {\n        let open_argument = source.getVariable();\n        open_argument = JSON.parse(open_argument);\n        let control_cookie = objectToCookieString(open_argument);\n        cookie.setCookie(controlUrla, control_cookie);\n    } catch {}\n    //java.toast(cookie.getCookie(controlUrla))\n    java.startBrowserAwait(controlUrla + '/control', '大灰狼小说设置');\n    applyCookieSettings();\n}\n\nfunction applyCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    var cookieStr = String(cookie.getCookie(controlUrla));\n\n    var cookieData = {};\n    if (cookieStr && cookieStr !== 'null' && cookieStr !== 'undefined' && cookieStr !== '') {\n        var pairs = cookieStr.split('; ');\n        for (var i = 0; i < pairs.length; i++) {\n            var pair = pairs[i];\n            var eqIndex = pair.indexOf('=');\n            if (eqIndex > -1) {\n                var key = pair.substring(0, eqIndex).trim();\n                var value = decodeURIComponent(pair.substring(eqIndex + 1).trim());\n                cookieData[key] = value;\n                setArgument(key, value);\n            }\n        }\n    }\n\n    var displayConfig = [{\n            key: 'server',\n            label: '服务器',\n            defaultValue: host[0]\n        },\n        {\n            key: 'proxy',\n            label: '访问模式',\n            defaultValue: '云端'\n        },\n        {\n            key: 'tab',\n            label: '阅读模式',\n            defaultValue: '小说'\n        },\n        {\n            key: 'source_type',\n            label: '阅读频道',\n            defaultValue: '男频'\n        },\n        {\n            key: 'sources',\n            label: '书源选择',\n            defaultValue: '全部'\n        },\n        {\n            key: 'fqpara',\n            label: '段评显示',\n            defaultValue: 'on'\n        },\n        {\n            key: 'disabled_sources',\n            label: '强制搜索',\n            defaultValue: '0'\n        },\n        {\n            key: 'reading',\n            label: '同步书架',\n            defaultValue: '0'\n        },\n        {\n            key: 'info',\n            label: '完整简介',\n            defaultValue: 'on'\n        }\n    ];\n\n    var valueMap = {\n        // 访问模式\n        '本地': '💻 本地',\n        '云端': '☁️ 云端',\n\n        // 开关状态\n        'on': '✅ 开启',\n        'off': '❌ 关闭',\n        '1': '✅ 开启',\n        '0': '❌ 关闭',\n\n        // 频道类型\n        '男频': '👨 男频',\n        '女频': '👩 女频',\n\n        // 内容类型\n        '小说': '📖 小说',\n        '听书': '🎧 听书',\n        '漫画': '🎨 漫画',\n        '短剧': '🎬 短剧',\n\n        // 来源类型\n        'vip': '💎 VIP专属',\n        'svip': '👑 SVIP专属',\n        '推荐': '⭐ 网友推荐',\n        '全部': '📚 全部'\n    };\n\n\n    var displayLines = [];\n\n    for (var i = 0; i < displayConfig.length; i++) {\n        var config = displayConfig[i];\n        var value = cookieData[config.key] || getArgument(config.key) || config.defaultValue;\r\n\n\n        if (!cookieData[config.key]) {\n            setArgument(config.key, config.defaultValue);\n        }\n\n        var displayValue = valueMap[value] || value;\n        if (config.key === 'sources' && displayValue.length > 25) {\n            displayValue = displayValue.substring(0, 25) + '...';\n        }\n\n        displayLines.push(config.label + ': ' + displayValue);\n    }\n\n    // 构建提示模板\n    var template = '✨ 当前配置\\n';\n    template += '━━━━━━━━━━━━━━━━\\n';\n    template += displayLines.join('\\n');\n    template += '\\n━━━━━━━━━━━━━━━━\\n';\n    template += '❤️当前应用的 *⚙️长按书源登录设置* 中的配置哦❤️'\n\n    // 显示提示\n    java.longToast(template);\n\n    return displayLines.length;\n}\n\n\nfunction reCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    cookie.removeCookie(controlUrla);\n    applyCookieSettings();\n\n}\n// 检测服务器\nfunction checkNet() {\n    let url = getArgument('server');\n    java.longToast(`\\n\\n♻️正在检测：${url}\\n请稍等~`);\n    let date1 = new Date().getTime();\n    let html = java.ajax(url + '/health');\n    let date2 = new Date().getTime();\n    let t = date2 - date1;\n    let res = {};\n    try {\n        res = JSON.parse(html);\n    } catch {}\n    let c = res.status != \"healthy\";\n    let code = 1;\n    let time = t / 1000 + 's';\n    let logTime = '【' + url + '】\\n┋┋\\n' + '解析时间：' + time;\n    if (c || t > 5000) {\n        java.longToast('\\n💔【访问失败提示】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️当前接口无法访问(可能被墙)♣️\\n┋┋\\n请切换其他接口/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t < 1000) {\n        java.longToast('\\n💖【网络环境优良】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低，推荐使用此接口❤️\\n┋┋\\n网络环境优良，请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        java.longToast('\\n💛【网络环境一般】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般，勉强可使用♦️\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        java.longToast('\\n💔【网络环境堪忧】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高，不建议使用♠\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    }\n}\n\n\nfunction findFirstAvailableHost(hosts) {\n    // 按顺序检测，找到第一个可用的就返回\n    for (var i = 0; i < hosts.length; i++) {\n        var host = hosts[i];\n\n        try {\n            java.longToast(\"🔍 正在检测: \" + host);\n\n            var start = new Date().getTime();\n            var response = java.ajax(host + \"/health\");\n            var end = new Date().getTime();\n            var time = end - start;\n\n            // 检查是否可用\n            if (String(response).indexOf(\"大灰狼\") !== -1 && time <= 5000) {\n                // 显示结果\n                var status = \"✅ 可用\";\n                if (time < 1000) {\n                    status = \"💚 优秀\";\n                } else if (time < 2000) {\n                    status = \"💛 一般\";\n                } else {\n                    status = \"🧡 较慢\";\n                }\n                java.longToast(status + \"\\n主机: \" + host + \"\\n延迟: \" + time + \"ms\");\n                return host; // 直接返回找到的主机\n            }\n        } catch (e) {\n            // 这个主机失败，继续下一个\n        }\n    }\n\n    // 所有主机都不可用\n    java.longToast(\"❌ 没有可用的主机\");\n    return null;\n}\n\nfunction isVips(res) {\n    let isVIP = '';\n    let vipEndTime = res.vip_end_time;\n    let formattedDate = '';\n\n    if (vipEndTime && vipEndTime !== 0) {\n        let date = new Date(vipEndTime * 1000);\n        formattedDate = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;\n        let currentTime = Math.floor(Date.now() / 1000);\n        let remainingDays = Math.ceil((vipEndTime - currentTime) / (24 * 60 * 60));\n        if (currentTime > vipEndTime) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (已过期)`;\n        } else if (remainingDays <= 7) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} 剩余${remainingDays}天`;\n        } else {\n            if (vipEndTime < 1912946812) {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"}(${formattedDate})`;\n            } else {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (永久)`;\n            }\n        }\n    } else {\n        isVIP = '您尚未开通VIP';\n    }\n    return isVIP;\n}\n\nfunction checkStatus() {\n    java.longToast('\\n\\n♻️检测中...');\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    try {\n        res = JSON.parse(res)\n        if (res.id != undefined) {\n            result['邮箱'] = res.email\n            putLoginInfo(JSON.stringify(result))\n            let devices\n            try {\n                devices = Object.keys(JSON.parse(res.device)).length;\n            } catch (e) {\n                devices = res.device ? 1 : 0;\n            }\n            let isVip = isVips(res);\n            tips = `\n┏┅┅┅┅┅┅┱┄┄┄┄┄┄┄┄┄┄┐\n　 🧢昵称 　　　　${res.nickname.padEnd(20,\"\\t\") || \"未设置\".padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　✉️邮箱　　　　${res.email.replace(/(.{3}).*?@/,\"$1***@\").padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🔑密钥　　　　${(`${res.user_key.substring(0,4)}***${res.user_key.slice(-4)}`).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📅注册时间　　${java.timeFormat(res.register_time*1000).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🗒️今日阅读　　${(java.timeFormat(new Date()).slice(0,10)==java.timeFormat(res.last_read_time * 1000).slice(0,10)?res.day_read_count:0).toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📚累计阅读　　${res.all_read_count.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🕓最后阅读　　${(res.last_read_time != 0?java.timeFormat(res.last_read_time * 1000):'未阅读').padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📱在线设备　　${devices.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　👑会员状态　　${isVip.padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🚫封禁状态　　${res.is_banned?'已封禁':'正常　'}　　　　　　　\n┗┅┅┅┅┅┅┹┄┄┄┄┄┄┄┄┄┄┘\n`\n            java.log(tips)\n            java.longToast(tips)\n        } else {\n            throw new Error(res.msg)\n        }\n    } catch (e) {\n        //java.log(e)\n        java.toast(\"\\n检测登录失败\\n\" + e.message)\n    }\n}\n\nfunction clearDevice() {\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/clear,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    res = JSON.parse(res);\n    java.toast(res.code == 0 ? \"\\n\\n📴设备清除成功\" : res.msg)\n    Packages.java.lang.Thread.sleep(500)\n    checkStatus()\n}\n// 保存登录UI信息\nfunction putLoginInfo(info) {\n    try {\n        let key = java.androidId()\n        let encodeStr = Packages.android.util.Base64.encodeToString(java.createSymmetricCrypto(\"AES\", key).encrypt(info), 2)\n        cache.put(`userInfo_${source.getKey()}`, encodeStr)\n        return true\n    } catch (e) {\n        java.log(e)\n        return source.putLoginInfo(info)\n    }\n}\n\n// 用户后台\nfunction loginqt() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/user', '大灰狼小说后台');\n    }\n}\n\n// 用户注册\nfunction register() {\n    let base_url = getArgument('server');\n    java.startBrowserAwait(getArgument('server') + '/register', '大灰狼小说注册');\n}\n\n//登录番茄\nfunction fq_login() {\n    try {\n        cookie.removeCookie(\"snssdk.com\");\n        cookie.removeCookie(\"fanqienovel.com\")\n    } catch (e) {}\n    try {\n        java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n    } catch (e) {\n        java.toast(e)\n    }\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user\n    try {\n        user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n            method: \"GET\",\n            headers: {\n                \"Cookie\": cookie_\n            }\n        }))).data.name\n    } catch (e) {\n        java.log(e)\n    }\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"\\n\\n欢迎 \" + user + \"\\n登录成功！\")\n    return true\n}\n\n//退出登录\nfunction logout() {\n    cookie.removeCookie(\"fanqienovel.com\");\n    cookie.removeCookie(\"snssdk.com\");\n    cookie.removeCookie(\"69shuba.com\");\n    /*\n    let servers = host\n    for (let server of servers) {\n    \ttry{removeCookie(server )} catch(e){cookie.removeCookie(server )}\n    }\n    */\n    try {\n        cookie.removeCookie(getArgument('server'))\n    } catch (e) {}\n    java.toast(\"退出登录成功\");\n}\n\n//获取参数\nfunction getArgument(key) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    return open_argument[key];\n}\n\n//设置参数\nfunction setArgument(key, value) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\n// 设置本地or云端访问\nfunction get_proxy() {\n    let proxy = getArgument('proxy');\n    if (proxy == '本地') {\n        setArgument('proxy', '云端');\n        java.longToast('\\n所有数据采用\\n\\n服务器网络访问\\n\\n如果发现用不了，请切换本地网络访问，如69书吧');\n    } else {\n        setArgument('proxy', '本地');\n        java.longToast('\\n所有数据采用\\n\\n本地网络访问\\n\\n如果发现用不了，请开启网络代理，如69书吧');\n    }\n}\n\n\nfunction closeImg() {\n    let close_img = getArgument('close_img');\n    if (close_img == 'on') {\n        setArgument('close_img', 'off');\n        java.longToast('\\n显示文中图片');\n    } else {\n        setArgument('close_img', 'on');\n        java.longToast('\\n不显示文中图片');\n    }\n}\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\nfunction fxyjr() {\n    let fxyjr = getArgument('fxyjr');\n    if (fxyjr != 'on') {\n        setArgument('fxyjr', 'on');\n        java.longToast('\\n显示旧版发现页');\n    } else {\n        setArgument('fxyjr', 'off');\n        java.longToast('\\n显示新版发现页');\n    }\n}\n\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\n//首页\n//首页\nfunction api() {\n    java.startBrowserAwait('http://svip.langge.cf', \"首页\");\n}\n\n//打赏\nfunction vip() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/coffee', '大灰狼小说会员开通');\n    }\n}\n\nvar server = getArgument('server');\n\n//设置搜索媒体\nfunction set_media(media) {\n    const mediaConfig = {\n        '喜马拉雅': ['听书'],\n        '番茄': '*',\n        '福利小说': ['小说'],\n        '如漫画': ['漫画'],\n        '包子漫画': ['漫画'],\n        '九妖漫画': ['漫画'],\n        '绅士漫画': ['漫画'],\n        '福利漫画': ['漫画'],\n        '好看漫画': ['漫画'],\n        '六月听书': ['听书'],\n        '海洋听书': ['听书'],\n        '酷我听书': ['听书'],\n        '七猫': ['小说', '听书', '短剧'],\n        '河马': ['短剧'],\n        '超会专属短剧': ['短剧'],\n        '歪瑞古德': ['漫画'],\n        '毒舌影视': ['短剧'],\n        '全部': '*', // 允许所有模式\n        '默认': ['小说']\n    };\n\n    const source = getArgument('sources');\n    const allowedModes = mediaConfig[source] || mediaConfig['默认'];\n    let targetMedia = mediaConfig['默认'][0];\n    let isAllowed = false;\n\n    if (allowedModes === '*' || allowedModes.includes(media)) {\n        targetMedia = media;\n        isAllowed = true;\n    } else if (Array.isArray(allowedModes)) {\n        targetMedia = allowedModes[0];\n    }\n\n    const message = isAllowed ?\n        `\\n\\n已切换至：${targetMedia}\\n请重新搜索书籍！` :\n        `\\n\\n目前${source}：不支持【${media}】模式！\\n已自动切换至：${targetMedia}`;\n\n    setArgument('tab', targetMedia);\n    java.toast(message);\n}\n\n//获取搜索媒体\nfunction get_media() {\n    let media = getArgument('tab');\n    let source = getArgument('sources');\n    if (media == '') {\n        media = '全部';\n    }\n    var tishi = '\\n\\n当前服务器：' + getArgument('server')\n    java.longToast(`\\n\\n当前使用源：${source}-${media}${tishi}`);\n}\n\n\n//设置服务器\nfunction set_server() {\n    putLoginInfo(JSON.stringify(result))\n    let zdyserver;\n    let base_url = getArgument('server')\n    try {\n        zdyserver = String(result['自定义服务器(可不填)']);\n        if (zdyserver.includes('http')) {\n            setArgument('server', zdyserver);\n            if (getKey(String(cookie.getCookie(base_url)))) {\n                let cookies = cookie.getCookie(base_url)\n                try {\n                    cookie.removeCookie(base_url)\n                } catch (e) {}\n                cookie.setCookie(zdyserver, cookies)\n            }\n            java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n        } else {\n            zdyserver = '';\n        }\n    } catch (error) {\n        zdyserver = '';\n    }\n    if (!zdyserver) {\n        const servers = host\n        const currentServer = getArgument('server') || '';\n        const currentIndex = servers.indexOf(currentServer);\n\n        const nextIndex = currentIndex >= 0 ? (currentIndex + 1) % servers.length : 0;\n        const nextServer = servers[nextIndex];\n\n        setArgument('server', nextServer);\n        if (getKey(String(cookie.getCookie(currentServer)))) {\n            let cookies = cookie.getCookie(currentServer)\n            try {\n                cookie.removeCookie(currentServer)\n            } catch (e) {}\n            cookie.setCookie(nextServer, cookies)\n        }\n        java.longToast(`\\n\\n服务器【${nextIndex+1}】：${nextServer}`);\n    }\n}\n\n//获取音色\nvar tone_id = getArgument('tone_id');\n\nfunction get_tone_id(arg) {\n    var datadist = {\n        \"0\": \"默认音色\",\n        \"-1\": \"阅读模式\",\n        \"-2\": \"漫画模式\",\n        \"51\": \"多人发音\",\n        \"1\": \"甜美少女\",\n        \"2\": \"清亮青叔\",\n        \"5\": \"开朗青年\",\n        \"6\": \"温柔淑女\",\n        \"4\": \"成熟大叔\",\n        \"74\": \"大叔升级\",\n        \"30\": \"优雅御姐\"\n    };\n    var tone_id = datadist[arg] || arg;\n    var tishi = '\\n\\n当前音色：' + tone_id;\n    java.toast(tishi);\n}\n\n\n//设置来源\nfunction set_source(sources) {\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources.length > 1 && zdysources != 'undefined') {\n        java.toast('\\n\\n请先清空自定义源再设置');\n    } else {\n        setArgument('sources', sources);\n        set_media('小说');\n        java.toast(`\\n\\n当前来源已切换为:\\n${sources}\\n\\n切换后请重新搜索`);\n    }\n}\n\n// 设置简介\nfunction set_info() {\n    var info = getArgument('info');\n    if (info == 'off') {\n        setArgument('info', 'on');\n        java.toast('\\n\\n已恢复详情页详细简介');\n    } else {\n        setArgument('info', 'off');\n        java.toast('\\n\\n已精简详情页简介');\n    }\n}\n\n// 番茄段评\nfunction paracomment() {\n    var fqpara = getArgument('fqpara');\n    if (fqpara != 'on') {\n        setArgument('fqpara', 'on');\n        java.longToast(\"\\n\\n段评已开启\\n\\n长按刷新段后面的图片即可\\n\\n如果图片不显示，刷新无反应\\n请更新测试版阅读app\");\n    } else {\n        setArgument('fqpara', 'off');\n        java.longToast('\\n\\n段评已关闭');\n    }\n}\n\n// 强制搜索被禁用的源\nfunction disabledSources() {\n    var disabled_sources = getArgument('disabled_sources');\n    if (disabled_sources == '1') {\n        setArgument('disabled_sources', '0');\n        java.longToast('\\n\\n强制搜索禁用的源已关闭');\n    } else {\n        setArgument('disabled_sources', '1');\n        setArgument('sources', '全部');\n        java.longToast(\"\\n\\n强制搜索禁用的源已开启\\n\\n注意：开启后搜索时间会变长！\");\n    }\n}\n\n// 我要推荐\nfunction put_book() {\n    java.startBrowserAwait(getArgument('server') + '/put_book', '我来推荐');\n}\n\n\n// 使用教程\nfunction jc(){\n\t  let html = `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>使用教程</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n        }\n\n        body {\n            background-color: #f5f5f5;\n            padding: 20px;\n        }\n\n        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }\n\n        h1 {\n            text-align: center;\n            color: #333;\n            margin-bottom: 30px;\n            padding-bottom: 10px;\n            border-bottom: 2px solid #4CAF50;\n        }\n\n        .tutorial-card {\n            background-color: white;\n            border-radius: 8px;\n            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);\n            padding: 25px;\n            margin-bottom: 25px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .tutorial-card:hover {\n            transform: translateY(-5px);\n            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);\n        }\n\n        .card-title {\n            color: #4CAF50;\n            margin-bottom: 15px;\n            font-size: 1.4em;\n        }\n\n        .card-content {\n            line-height: 1.6;\n            color: #555;\n        }\n\n        .keyword-list {\n            background-color: #f9f9f9;\n            border-left: 4px solid #4CAF50;\n            padding: 15px;\n            margin-top: 15px;\n            border-radius: 0 4px 4px 0;\n            font-family: monospace;\n        }\n\n        .keyword-item {\n            margin-bottom: 8px;\n        }\n    </style>\n</head>\n<body>\n    <div class=\"container\">\n        <h1>使用教程</h1>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">搜索功能</h2>\n            <div class=\"card-content\">\n                <p><strong>1) 基础搜索：</strong>在发现页长按该书源，点击搜索，可直接搜索全部来源的小说。</p>\n                <p><strong>2) 进阶搜索：</strong>在“登陆-书源设置”中选择指定模式或来源，即可搜索指定内容。</p>\n                <p><strong>3) 快捷搜索：</strong>使用特殊关键词进行搜索。</p>\n                <div class=\"keyword-list\">\n                    <p class=\"keyword-item\">x:书名@来源 (例如: x:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">t:书名@来源 (例如: t:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">m:书名@来源 (例如: m:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">d:书名@来源 (例如: d:十日终焉@番茄)</p>\n                </div>\n                <p>其中，x表示小说（可省略），t表示听书，m表示漫画，d表示短剧。冒号支持中文和英文。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">发现页</h2>\n            <div class=\"card-content\">\n                <p>在书源设置中选择指定模式或者单个来源，然后刷新发现页即可。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">更多使用方式</h2>\n            <div class=\"card-content\">\n                <p>进入书源设置页面应该能一目了然。</p>\n            </div>\n        </div>\n    </div>\n</body>\n</html>`;\n\t  java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源教程');\n\t}\n\n// 书源更新\nfunction renderVersionPage() {\n    let yd = '';\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>书源更新</title>\n  <!-- Font Awesome 图标库 -->\n  <link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\" />\n  <style>\n    :root {\n      --primary-gradient: linear-gradient(135deg, #4e6ef2, #6b2dd8);\n      --latest-gradient: linear-gradient(135deg, #8e2de2 0%, #4a00e0 50%, #d4af37 100%);\n      --success-color: #28c76f;\n      --warning-color: #ff9f43;\n      --error-color: #ea5455;\n      --text-main: #1f2937;\n      --text-secondary: #6b7280;\n      --card-bg: #ffffff;\n      --border-color: #e5e7eb;\n      --light-bg: #f9fafb;\n      --shadow: 0 4px 12px rgba(78, 110, 242, 0.1);\n      --shadow-hover: 0 6px 18px rgba(78, 110, 242, 0.2);\n      --glow-shadow: 0 0 25px rgba(142, 45, 226, 0.5), 0 0 50px rgba(212, 175, 55, 0.3);\n      --modal-bg: rgba(31, 41, 55, 0.8);\n      --modal-content-bg: #ffffff;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n      font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n    }\n\n    body {\n      background: linear-gradient(135deg, #eef2ff, #f5f7ff);\n      color: var(--text-main);\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 16px;\n    }\n\n    /* 加载动画 */\n    .loading-wrapper {\n      text-align: center;\n      animation: fadeIn 0.3s ease;\n    }\n\n    .loading-spinner {\n      width: 50px;\n      height: 50px;\n      border: 4px solid rgba(78, 110, 242, 0.3);\n      border-top-color: #4e6ef2;\n      border-radius: 50%;\n      margin: 0 auto 20px;\n      animation: spin 1s linear infinite;\n    }\n\n    .loading-text {\n      color: var(--text-main);\n      font-size: 16px;\n      font-weight: 500;\n    }\n\n    @keyframes spin {\n      to { transform: rotate(360deg); }\n    }\n\n    @keyframes fadeIn {\n      from { opacity: 0; transform: translateY(20px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(30px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes pulse {\n      0%, 100% { opacity: 1; }\n      50% { opacity: 0.7; }\n    }\n\n    @keyframes gradientAnimation {\n      0% { background-position: 0% 50%; }\n      50% { background-position: 100% 50%; }\n      100% { background-position: 0% 50%; }\n    }\n\n    @keyframes breathe {\n      0%, 100% { \n        transform: scale(1);\n        box-shadow: var(--glow-shadow), var(--shadow);\n      }\n      50% { \n        transform: scale(1.02);\n        box-shadow: 0 0 30px rgba(142, 45, 226, 0.6), 0 0 60px rgba(212, 175, 55, 0.4), var(--shadow);\n      }\n    }\n\n    @keyframes shimmer {\n      0% {\n        background-position: -200% center;\n      }\n      100% {\n        background-position: 200% center;\n      }\n    }\n\n    /* 主容器 */\n    .container {\n      width: 100%;\n      max-width: 420px;\n      background: var(--card-bg);\n      border-radius: 24px;\n      overflow: hidden;\n      box-shadow: var(--shadow);\n      position: relative;\n      z-index: 1;\n      animation: slideIn 0.5s ease;\n      display: none;\n    }\n\n    /* 头部 */\n    .header {\n      background: var(--primary-gradient);\n      color: #ffffff;\n      padding: 24px 16px;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .header::before {\n      content: '';\n      position: absolute;\n      top: -30px;\n      left: -30px;\n      width: 80px;\n      height: 80px;\n      background: rgba(255, 255, 255, 0.15);\n      border-radius: 50%;\n    }\n\n    .header::after {\n      content: '';\n      position: absolute;\n      bottom: -60px;\n      right: -60px;\n      width: 150px;\n      height: 150px;\n      background: rgba(255, 255, 255, 0.1);\n      border-radius: 50%;\n    }\n\n    .header h1 {\n      font-size: 1.4rem;\n      font-weight: 700;\n      margin-bottom: 8px;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header p {\n      font-size: 0.9rem;\n      opacity: 0.9;\n      line-height: 1.4;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header-icon {\n      font-size: 48px;\n      margin-bottom: 10px;\n      display: inline-block;\n      animation: bounce 2s ease infinite;\n    }\n\n    @keyframes bounce {\n      0%, 100% { transform: translateY(0); }\n      50% { transform: translateY(-10px); }\n    }\n\n    /* 版本对比 */\n    .version-comparison {\n      display: flex;\n      flex-wrap: nowrap;\n      gap: 12px;\n      padding: 16px;\n      margin-top: 8px;\n      position: relative;\n      z-index: 10;\n    }\n\n    .version-card {\n      flex: 1;\n      min-width: 45%;\n      background: var(--card-bg);\n      border-radius: 16px;\n      padding: 28px 16px 16px;\n      box-shadow: var(--shadow);\n      text-align: center;\n      position: relative;\n      transition: transform 0.3s ease, box-shadow 0.3s ease;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n    }\n\n    .version-card:hover {\n      transform: translateY(-4px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .version-card.current-version {\n      background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 100%);\n      border: 1px solid rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version:hover {\n      box-shadow: 0 6px 20px rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version h3,\n    .version-card.current-version .version-number,\n    .version-card.current-version .version-date {\n      color: var(--text-main);\n    }\n\n    .version-card.latest-version {\n      background: var(--latest-gradient);\n      background-size: 300% 300%;\n      box-shadow: var(--glow-shadow), var(--shadow);\n      color: #fff;\n      z-index: 2;\n      animation: gradientAnimation 6s ease infinite, breathe 3s ease-in-out infinite;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .version-card.latest-version::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        90deg,\n        transparent,\n        rgba(255, 255, 255, 0.3),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: shimmer 3s infinite;\n    }\n\n    .version-card.latest-version h3,\n    .version-card.latest-version .version-number,\n    .version-card.latest-version .version-date {\n      color: #fff;\n      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n      position: relative;\n      z-index: 1;\n    }\n\n    .version-status {\n      position: absolute;\n      top: 6px;\n      right: 6px;\n      padding: 3px 7px;\n      font-size: 0.65rem;\n      font-weight: 600;\n      border-radius: 6px;\n      color: #fff;\n      line-height: 1.2;\n      white-space: nowrap;\n      z-index: 2;\n    }\n\n    .version-card.latest-version .version-status {\n      background: rgba(255, 255, 255, 0.25);\n      backdrop-filter: blur(5px);\n      border: 1px solid rgba(255, 255, 255, 0.3);\n      color: #fff;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    }\n\n    .status-outdated { background: var(--warning-color); }\n    .status-latest { background: var(--success-color); }\n    .status-invalid { background: var(--error-color); }\n\n    .version-card h3 {\n      font-size: 0.9rem;\n      color: var(--text-secondary);\n      margin-bottom: 8px;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n    }\n\n    .version-number {\n      font-size: 1.25rem;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 8px 0;\n      transition: all 0.3s ease;\n      font-family: 'Courier New', monospace;\n    }\n\n    .version-card.latest-version .version-number {\n      font-size: 1.4rem;\n      transform: scale(1.05);\n      text-shadow: \n        0 2px 4px rgba(0, 0, 0, 0.3),\n        0 0 10px rgba(212, 175, 55, 0.8),\n        0 0 20px rgba(212, 175, 55, 0.5);\n      animation: pulse-glow 2s ease-in-out infinite;\n    }\n\n    @keyframes pulse-glow {\n      0%, 100% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 10px rgba(212, 175, 55, 0.8),\n          0 0 20px rgba(212, 175, 55, 0.5);\n      }\n      50% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 15px rgba(212, 175, 55, 1),\n          0 0 30px rgba(212, 175, 55, 0.7);\n      }\n    }\n\n    .version-date {\n      font-size: 0.8rem;\n      color: var(--text-secondary);\n      margin-top: 4px;\n    }\n\n    /* 版本对比指示器 */\n    .version-indicator {\n      position: absolute;\n      left: 50%;\n      top: 50%;\n      transform: translate(-50%, -50%);\n      z-index: 5;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n      color: white;\n    }\n\n    .version-indicator.update-needed {\n      background: var(--error-color);\n      box-shadow: 0 2px 8px rgba(234, 84, 85, 0.4);\n      animation: pulse-indicator 1.5s infinite;\n    }\n\n    .version-indicator.is-latest {\n      background: var(--success-color);\n      box-shadow: 0 2px 8px rgba(40, 199, 111, 0.4);\n    }\n\n    @keyframes pulse-indicator {\n      0% { transform: translate(-50%, -50%) scale(1); }\n      50% { transform: translate(-50%, -50%) scale(1.1); }\n      100% { transform: translate(-50%, -50%) scale(1); }\n    }\n\n    /* 内容区 */\n    .content-container {\n      padding: 16px;\n    }\n\n    /* 状态提示 */\n    .status-alert {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      padding: 12px 16px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      font-weight: 500;\n      font-size: 14px;\n      animation: slideIn 0.5s ease 0.3s backwards;\n    }\n\n    .status-alert i {\n      font-size: 20px;\n    }\n\n    .status-alert.update-available {\n      background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);\n      color: #d63031;\n      box-shadow: 0 4px 15px rgba(253, 203, 110, 0.4);\n    }\n\n    .status-alert.up-to-date {\n      background: linear-gradient(135deg, #55efc4 0%, #00b894 100%);\n      color: white;\n      box-shadow: 0 4px 15px rgba(0, 184, 148, 0.4);\n    }\n\n    /* 更新容器 */\n    .update-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.4s backwards;\n    }\n\n    .update-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n    }\n\n    .update-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .update-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .update-tag {\n      background: rgba(78, 110, 242, 0.1);\n      color: #4e6ef2;\n      padding: 4px 8px;\n      border-radius: 8px;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .update-content {\n      padding: 16px;\n    }\n\n    .update-date {\n      font-weight: 600;\n      color: #4e6ef2;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      padding: 8px 0;\n      border-bottom: 1px dashed #e0e0e0;\n    }\n\n    .update-text {\n      margin: 8px 0;\n      position: relative;\n      padding-left: 16px;\n      line-height: 1.5;\n      color: var(--text-main);\n      font-size: 0.95rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .update-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      font-weight: bold;\n      color: #4e6ef2;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 历史日志 */\n    .history-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.5s backwards;\n    }\n\n    .history-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n      cursor: pointer;\n      user-select: none;\n    }\n\n    .history-header:hover {\n      opacity: 0.8;\n    }\n\n    .history-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .history-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .toggle-history {\n      background: none;\n      border: none;\n      color: var(--text-secondary);\n      cursor: pointer;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.85rem;\n      transition: color 0.2s ease;\n    }\n\n    .toggle-history:hover {\n      color: #4e6ef2;\n    }\n\n    .history-content {\n      padding: 0 16px;\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 0.4s ease, padding 0.4s ease;\n    }\n\n    .history-content.expanded {\n      max-height: 60vh;\n      overflow-y: auto;\n      padding: 16px;\n      scrollbar-width: thin;\n      scrollbar-color: #4e6ef2 #f0f0f0;\n    }\n\n    .history-content.expanded::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-track {\n      background: #f0f0f0;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb {\n      background: #4e6ef2;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb:hover {\n      background: #3a56d0;\n    }\n\n    .history-item {\n      margin-bottom: 16px;\n      padding-bottom: 16px;\n      border-bottom: 1px dashed var(--border-color);\n    }\n\n    .history-item:last-child {\n      border-bottom: none;\n      margin-bottom: 0;\n      padding-bottom: 0;\n    }\n\n    .history-date {\n      font-weight: 600;\n      color: var(--text-main);\n      margin-bottom: 8px;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.9rem;\n      background: rgba(78, 110, 242, 0.05);\n      padding: 6px 10px;\n      border-radius: 6px;\n    }\n\n    .history-text {\n      margin: 8px 0;\n      padding-left: 16px;\n      line-height: 1.4;\n      color: var(--text-secondary);\n      position: relative;\n      font-size: 0.9rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .history-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      color: #4e6ef2;\n      font-weight: bold;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 按钮组 */\n    .button-group {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-bottom: 16px;\n    }\n\n    .button {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      padding: 14px 28px;\n      text-align: center;\n      font-size: 1rem;\n      border: none;\n      border-radius: 12px;\n      text-decoration: none;\n      background: var(--primary-gradient);\n      color: white;\n      font-weight: 600;\n      transition: all 0.3s ease;\n      box-shadow: var(--shadow);\n      position: relative;\n      overflow: hidden;\n      cursor: pointer;\n    }\n\n    .button i {\n      font-size: 1rem;\n    }\n\n    .button::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: rgba(255, 255, 255, 0.1);\n      transform: rotate(30deg);\n      transition: all 0.6s ease;\n      pointer-events: none;\n    }\n\n    .button:hover {\n      transform: translateY(-3px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .button:hover::after {\n      transform: rotate(30deg) translate(20%, 20%);\n    }\n\n    .button:active {\n      transform: scale(0.95);\n    }\n\n    /* 错误状态 */\n    .error-state {\n      text-align: center;\n      padding: 40px 20px;\n      color: var(--text-main);\n    }\n\n    .error-icon {\n      font-size: 64px;\n      margin-bottom: 20px;\n      color: var(--error-color);\n    }\n\n    .error-text {\n      font-size: 16px;\n      line-height: 1.6;\n      margin-bottom: 20px;\n    }\n\n    .retry-button {\n      background: var(--primary-gradient);\n      color: white;\n      padding: 12px 30px;\n      border-radius: 12px;\n      border: none;\n      font-weight: 600;\n      cursor: pointer;\n      transition: all 0.3s ease;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n\n    .retry-button:hover {\n      transform: translateY(-2px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .retry-button:active {\n      transform: scale(0.95);\n    }\n\n    /* 装饰元素 */\n    .decoration {\n      position: absolute;\n      z-index: 0;\n      pointer-events: none;\n    }\n\n    .decoration.circle {\n      width: 120px;\n      height: 120px;\n      border-radius: 50%;\n      background: rgba(107, 45, 216, 0.05);\n      top: 10%;\n      left: 10%;\n    }\n\n    .decoration.square {\n      width: 80px;\n      height: 80px;\n      transform: rotate(45deg);\n      background: rgba(78, 110, 242, 0.05);\n      bottom: 10%;\n      right: 10%;\n    }\n\n    /* 响应式 */\n    @media (max-width: 768px) {\n      body {\n        padding: 12px;\n      }\n\n      .container {\n        max-width: 100%;\n        border-radius: 20px;\n      }\n\n      .header {\n        padding: 20px 15px;\n      }\n\n      .header h1 {\n        font-size: 1.3rem;\n      }\n\n      .header-icon {\n        font-size: 40px;\n      }\n\n      .version-comparison {\n        flex-direction: row;\n        flex-wrap: nowrap;\n        gap: 10px;\n        padding: 12px;\n        margin-top: 6px;\n        overflow-x: auto;\n      }\n\n      .version-card {\n        min-width: 45%;\n        padding: 26px 12px 12px;\n      }\n\n      /* 移动端减弱呼吸动效 */\n      .version-card.latest-version {\n        animation: gradientAnimation 6s ease infinite;\n      }\n\n      .version-status {\n        top: 5px;\n        right: 5px;\n        padding: 2px 5px;\n        font-size: 0.6rem;\n      }\n\n      .version-number {\n        font-size: 1.1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.2rem;\n      }\n\n      .update-header h2, .history-header h2 {\n        font-size: 0.9rem;\n      }\n\n      .button {\n        padding: 12px 24px;\n        font-size: 0.95rem;\n      }\n\n      .history-content.expanded {\n        max-height: 50vh;\n        -webkit-overflow-scrolling: touch;\n      }\n    }\n\n    @media (max-width: 380px) {\n      .header h1 {\n        font-size: 1.2rem;\n      }\n\n      .version-number {\n        font-size: 1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.1rem;\n      }\n\n      .button {\n        padding: 11px;\n        font-size: 0.9rem;\n      }\n    }\n  </style>\n</head>\n<body>\n  <div class=\"decoration circle\"></div>\n  <div class=\"decoration square\"></div>\n\n  <div id=\"loading\" class=\"loading-wrapper\">\n    <div class=\"loading-spinner\"></div>\n    <div class=\"loading-text\"><i class=\"fas fa-search\"></i> 正在检查更新...</div>\n  </div>\n\n  <div class=\"container\" id=\"container\">\n    <div class=\"header\">\n      <div class=\"header-icon\"><i class=\"fas fa-book\"></i></div>\n      <h1>大灰狼书源更新</h1>\n      <p>推荐使用阅读Sigma版本<br>正式版可能存在兼容性问题-<a href='https://legado.langge.cf'>下载</a></p>\n    </div>\n\n    <div class=\"version-comparison\">\n      <div class=\"version-card current-version\">\n        <div class=\"version-status status-outdated\" id=\"currentStatus\">待检查</div>\n        <h3><i class=\"fas fa-cube\"></i> 当前版本</h3>\n        <div class=\"version-number\" id=\"currentVersion\">-</div>\n        <div class=\"version-date\">您的当前版本</div>\n      </div>\n\n      <div class=\"version-indicator update-needed\" id=\"versionIndicator\" style=\"display: none;\">\n        <i class=\"fas fa-arrow-right\"></i>\n      </div>\n\n      <div class=\"version-card latest-version\">\n        <div class=\"version-status status-latest\" id=\"latestStatus\">最新版本</div>\n        <h3><i class=\"fas fa-star\"></i> 最新版本</h3>\n        <div class=\"version-number\" id=\"latestVersion\">-</div>\n        <div class=\"version-date\">可用最新版本</div>\n      </div>\n    </div>\n\n    <div class=\"content-container\">\n      <div class=\"status-alert\" id=\"statusAlert\" style=\"display: none;\"></div>\n\n      <div id=\"latestLogContainer\" style=\"display: none;\">\n        <div class=\"update-container\">\n          <div class=\"update-header\">\n            <h2><i class=\"fas fa-bolt\"></i> 最新更新</h2>\n            <div class=\"update-tag\">最新发布</div>\n          </div>\n          <div class=\"update-content\">\n            <div class=\"update-date\" id=\"latestLogDate\"></div>\n            <div class=\"update-text\" id=\"latestLogContent\"></div>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"button-group\" id=\"buttonGroup\" style=\"display: none;\"></div>\n\n      <div class=\"history-container\" id=\"logs\" style=\"display: none;\">\n        <div class=\"history-header\" onclick=\"toggleLogs()\">\n          <h2><i class=\"fas fa-history\"></i> 历史更新 <span id=\"historyCount\"></span></h2>\n          <button class=\"toggle-history\" id=\"toggleButton\">\n            <span id=\"toggleText\">展开历史</span>\n            <i class=\"fas fa-chevron-down\" id=\"toggleIcon\"></i>\n          </button>\n        </div>\n        <div class=\"history-content\" id=\"logList\"></div>\n      </div>\n    </div>\n  </div>\n\n  <script>\n  let logsCollapsed = true;\n\n  function toggleLogs() {\n    logsCollapsed = !logsCollapsed;\n    const logList = document.getElementById('logList');\n    const toggleText = document.getElementById('toggleText');\n    const toggleIcon = document.getElementById('toggleIcon');\n    \n    if (logsCollapsed) {\n      logList.classList.remove('expanded');\n      toggleText.textContent = '展开历史';\n      toggleIcon.className = 'fas fa-chevron-down';\n    } else {\n      logList.classList.add('expanded');\n      toggleText.textContent = '收起历史';\n      toggleIcon.className = 'fas fa-chevron-up';\n    }\n  }\n\n  (async function() {\n    const loading = document.getElementById('loading');\n    const container = document.getElementById('container');\n    const currentVersion = document.getElementById('currentVersion');\n    const latestVersion = document.getElementById('latestVersion');\n    const currentStatus = document.getElementById('currentStatus');\n    const latestStatus = document.getElementById('latestStatus');\n    const versionIndicator = document.getElementById('versionIndicator');\n    const statusAlert = document.getElementById('statusAlert');\n    const buttonGroup = document.getElementById('buttonGroup');\n    const latestLogContainer = document.getElementById('latestLogContainer');\n    const latestLogDate = document.getElementById('latestLogDate');\n    const latestLogContent = document.getElementById('latestLogContent');\n    const logsContainer = document.getElementById('logs');\n    const logList = document.getElementById('logList');\n    const historyCount = document.getElementById('historyCount');\n\n    const localVer = '${String(localVersion)}';\n\n    // 统一的服务器配置 - 方便维护\n    const serverConfig = {\n      main: {\n        name: '主线路',\n        icon: 'rocket',\n        baseUrl: 'https://sy.langge.cf',\n        downloadPath: '/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup1: {\n        name: '备用线路1',\n        icon: 'box',\n        baseUrl: 'https://api.langge.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup2: {\n        name: '备用线路2',\n        icon: 'satellite',\n        baseUrl: 'https://20.langge.tk',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup3: {\n        name: '备用线路3',\n        icon: 'link',\n        baseUrl: 'http://219.154.201.122:5006',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup4: {\n        name: '备用线路4',\n        icon: 'bolt',\n        baseUrl: 'https://v2.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup5: {\n        name: '备用线路5',\n        icon: 'globe',\n        baseUrl: 'https://v10.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup6: {\n        name: '备用线路6',\n        icon: 'broadcast-tower',\n        baseUrl: 'https://v4.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      }\n    };\n\n    // 版本比较函数\n    function compareVersions(vs) {\n      const normalize = (v) => {\n        return v.split('.').map(n => {\n          const num = parseInt(n, 10);\n          return isNaN(num) ? 0 : num;\n        });\n      };\n\n      const parts1 = normalize(localVer);\n      const parts2 = normalize(vs);\n      const maxLength = Math.max(parts1.length, parts2.length);\n      \n      for (let i = 0; i < maxLength; i++) {\n        const num1 = parts1[i] || 0;\n        const num2 = parts2[i] || 0;\n        if (num1 > num2) return 1;\n        if (num1 < num2) return -1;\n      }\n      return 0;\n    }\n\n    async function fetchVersionData() {\n      // 使用统一配置中除主线路外的备用线路进行版本检查\n      const serversToCheck = Object.values(serverConfig).filter(s => s.baseUrl.includes('czyl.cf') || s.baseUrl.includes('219.154'));\n      \n      for (const server of serversToCheck) {\n        try {\n          const response = await fetch(server.baseUrl + '/version', { timeout: 2000 });\n          if (response.ok) {\n            return await response.json();\n          }\n        } catch (e) {\n          console.warn(\\`接口失败：\\${server.baseUrl}\\`, e);\n        }\n      }\n      throw new Error('所有更新接口都请求失败');\n    }\n\n    function showError(message) {\n      loading.innerHTML = \\`\n        <div class=\"error-state\">\n          <div class=\"error-icon\"><i class=\"fas fa-exclamation-triangle\"></i></div>\n          <div class=\"error-text\">\\${message}</div>\n          <button class=\"retry-button\" onclick=\"location.reload()\"><i class=\"fas fa-redo\"></i> 重试</button>\n        </div>\n      \\`;\n    }\n\n    try {\n      const data = await fetchVersionData();\n      const cloudVersion = String(data.version3);\n      const updateLog = data.update_log || {};\n\n      // 显示版本信息\n      currentVersion.textContent = \\`v\\${localVer}\\`;\n      latestVersion.textContent = \\`v\\${cloudVersion}\\`;\n\n      // 处理日志\n      const logEntries = Object.entries(updateLog);\n      if (logEntries.length > 0) {\n        // 显示最新日志\n        const [latestDate, latestContent] = logEntries[0];\n        latestLogDate.innerHTML = \\`<i class=\"fas fa-calendar-alt\"></i> \\${latestDate}\\`;\n        latestLogContent.textContent = latestContent;\n        latestLogContainer.style.display = 'block';\n\n        // 显示历史日志\n        if (logEntries.length > 1) {\n          const historyLogs = logEntries.slice(1);\n          historyCount.textContent = \\`(\\${historyLogs.length}条)\\`;\n          logList.innerHTML = historyLogs.map(([date, content]) => \\`\n            <div class=\"history-item\">\n              <div class=\"history-date\">\n                <i class=\"fas fa-calendar-day\"></i>\n                <span>\\${date}</span>\n              </div>\n              <div class=\"history-text\">\\${content}</div>\n            </div>\n          \\`).join('');\n          logsContainer.style.display = 'block';\n        }\n      }\n\n      // 检查更新状态\n      const compareResult = compareVersions(cloudVersion);\n      \n      // 显示版本指示器\n      versionIndicator.style.display = 'flex';\n      \n      if (compareResult === -1) {\n        // 需要更新\n        currentStatus.textContent = '待更新';\n        currentStatus.className = 'version-status status-outdated';\n        versionIndicator.className = 'version-indicator update-needed';\n        versionIndicator.innerHTML = '<i class=\"fas fa-arrow-right\"></i>';\n\n        // 使用统一配置生成下载按钮\n        buttonGroup.innerHTML = Object.values(serverConfig).map(server => {\n          const fullUrl = server.baseUrl + server.downloadPath;\n          return \\`\n            <a href=\"yuedu://booksource/importonline?src=\\${encodeURIComponent(fullUrl)}\" class=\"button\">\n              <i class=\"fas fa-\\${server.icon}\"></i>\n              <span>\\${server.name}</span>\n            </a>\n          \\`;\n        }).join('');\n        buttonGroup.style.display = 'flex';\n      } else {\n        // 已是最新版本\n        currentStatus.textContent = '最新';\n        currentStatus.className = 'version-status status-latest';\n        versionIndicator.className = 'version-indicator is-latest';\n        versionIndicator.innerHTML = '<i class=\"fas fa-check\"></i>';\n        \n        statusAlert.className = 'status-alert up-to-date';\n        statusAlert.innerHTML = '<i class=\"fas fa-check-circle\"></i> <div>您已是最新版本</div>';\n        statusAlert.style.display = 'flex';\n      }\n\n      // 显示主容器，隐藏加载\n      loading.style.display = 'none';\n      container.style.display = 'block';\n\n    } catch (err) {\n      console.error('版本检查失败：', err);\n      showError('<i class=\"fas fa-exclamation-circle\"></i> 检查更新失败，请稍后重试<br><small>' + err.message + '</small>');\n    }\n  })();\n  </script>\n</body>\n</html>\n`;\n    java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源更新');\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "1",
      "coverUrl": "$.thumb_url",
      "init": "<js>\nif (String(baseUrl).startsWith(\"data:\")) {\n    let res = JSON.parse(java.hexDecodeToString(result));\n    let book_id = res.book_id;\n    let tab = res.tab;\n    let sources = res.sources;\n    let url = res.url;\n    let html = \"\";\n    let proxy = getArguments(source.getVariable(), \"proxy\");\n    if (url != \"\" && proxy == \"本地\") {\n        if (sources == '69书吧') {\n            let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n            let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };            \n             let op = JSON.stringify({\n                \"headers\": headers\n            });\n            html = java.ajax(`${url},${op}`);\n        } else {\n            html = java.ajax(url);\n        }\n        //java.log(html);\n        if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n            cookie.removeCookie('https://www.69shuba.com');\n            java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n            html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n             java.log(html);\n        }\n    }\n    let base_url = getArguments(source.getVariable(), \"server\");\n    let op = {\n        method: \"POST\",\n        body: {\n            html: html\n        }\n    };\n    op = JSON.stringify(op);\n    let varia = String(book.getVariable('custom'));\n    if (varia == 'null') {\n        varia = '';\n    }\n    varia = JSON.stringify({\n        'custom': varia\n    });\n    //varia = java.base64Encode(varia);\n    java.log(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n    try {\n        result = java.ajax(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n        JSON.parse(result);\n    } catch(_err) {\n        for (var _i = 0; _i < host.length; _i++) {\n            if (host[_i] === base_url) continue;\n            try {\n                result = java.ajax(`${host[_i]}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n                JSON.parse(result);\n                setArguments(\"server\", host[_i]);\n                java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n                break;\n            } catch(_e2) { continue; }\n        }\n    }\n}\nresult\n</js>$.data",
      "intro": "<js>\nlet {\n    book_id,\n    source: sources,\n    tab,\n    book_tts,\n    tags,\n    role,\n    last_chapter_title,\n    last_chapter_update_time,\n    word_number,\n    status,\n    score,\n    abstract,\n    copyright_info\n} = result;\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (proxy == \"本地\") {\n    proxy = \"本地网络\";\n} else {\n    proxy = \"服务器网络\";\n}\njava.put(\"book_detail\", JSON.stringify(result));\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet key3 = \"\";\ntry {\n    let cookieValue =\n        String(cookie.getCookie(base_url)) || String(java.getCookie(base_url));\n    key3 = getKey(cookieValue);\n} catch (e) {\n    key3 = \"\";\n}\n\nif (key3 == \"\") {\n    java.log(\"当前服务器未查询到登录状态，尝试查询其他服务器登录状态...\");\n    let cookieValue;\n    for (let h of host) {\n        try {\n            cookieValue = String(cookie.getCookie(h)) || String(java.getCookie(h));\n            key3 = getKey(cookieValue);\n        } catch (e) {\n            key3 = \"\";\n        }\n        if (key3) {\n            java.log(`已在${h}登录，退出查询，正在转移登录状态到当前服务${base_url}`);\n            //java.log(cookieValue)\n            cookie.removeCookie(h);\n            cookie.removeCookie(base_url);\n            cookie.setCookie(base_url, cookieValue);\n            break;\n        }\n    }\n}\n\nif (book.readConfig == null || book.readConfig.useReplaceRule == null) {\n    book.setUseReplaceRule(false);\n}\n\nlet nickname = '账号状态：⚠️ 未登录 | 点击右上角 🔖 登录';\ntry {\n    let opcx = {\n        method: \"GET\",\n        headers: {\n            cookie: 'qttoken=' + key3 + ';'\n        },\n    };\n    opcx = JSON.stringify(opcx);\n    let user_info = JSON.parse(java.ajax(base_url + '/get_avatar,' + opcx));\n    if (user_info.code == 0) {\n        if (user_info.nickname) {\n            nickname = '欢迎回来：' + user_info.nickname\n        } else {\n            nickname = '欢迎回来：' + user_info.email + \"(请前往用户后台设置用户名)\"\n        }\n    }\n} catch (e) {\n    if (key) {\n        nickname = '账号状态：已登录'\n    }\n};\n\nlet loginStatus = nickname;\n\nlet lightDivider = \"❇️───────❇️───────❇️\";\nlet heavyDivider = \"&lrm;\\n&lrm;\";\n\nlet isValid = (value) => String(value).length > 1;\nlet ctitle = book.durChapterTitle || '未开始';\nlet info = `\n    📡 当前服务：${base_url}\n    🔑 ${loginStatus}\n    🏷 数据来源：${sources}\n    🔄 当前模式：${tab}\n    ⚙️ 访问模式：${proxy}\n    📖 阅读至：${ctitle}\n`;\n\nif (tab == \"听书\") {\n    //let toneId = getArguments(source.getVariable(), \"tone_id\");\n    let toneId = String(book.getVariable('custom'));\n    if (toneId == '') {\n    \ttoneId= '4';\n    \t}\n    if (isValid(book_tts)) {\n        info += `${lightDivider}\n    🎵 音色配置：${toneId}\n    ✨ AI音色请点击右上角书籍变量填写相关值，真人听书请重新搜索选择带有主播的书籍\n    ${book_tts}\n`;\n    }\n}\n\nlet basicInfo = \"\";\nlet addBasicInfo = (value, prefix, icon) => {\n    if (isValid(value)) basicInfo += `    ${icon} ${prefix} ${value}\\n`;\n};\n\naddBasicInfo(tags, \"书籍分类：\", \"🌈\");\naddBasicInfo(role, \"书籍主角：\", \"👑\");\naddBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\naddBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\naddBasicInfo(word_number, \"书籍字数：\", \"📊\");\naddBasicInfo(status, \"书籍状态：\", \"🚩\");\naddBasicInfo(score, \"书籍评分：\", \"⭐\");\n\nif (basicInfo) info += `${lightDivider}\\n${basicInfo}`;\n\nif (isValid(abstract)) {\n    let indentedAbstract = abstract\n        .split(\"\\n\")\n        .map((line) => `    ${line}`)\n        .join(\"\\n\");\n    info += `${heavyDivider}\n    📖 书籍简介：\n${indentedAbstract}\n`;\n} else {\n    info += `${heavyDivider}`;\n}\n\nif (isValid(copyright_info)) {\n    info += `${lightDivider}\n    © ${copyright_info}\n`;\n} else {\n    info += `${lightDivider}`;\n}\n\ninfo += `\n${heavyDivider}\n    💠💠💠 数据更新于 ${new Date().toLocaleString()} 💠💠💠\n`;\nlet jjinfo = getArguments(source.getVariable(), \"info\");\n\nif (jjinfo != \"off\") {\n    info = String(info)\n        .split(\"\\n\")\n        .map((line) => line.replace(/^ {4}/, \"\"))\n        .join(\"\\n\");\n} else {\n    basicInfo = \"\";\n    addBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\n    addBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\n    addBasicInfo(word_number, \"书籍字数：\", \"📊\");\n    addBasicInfo(status, \"书籍状态：\", \"🚩\");\n    addBasicInfo(score, \"书籍评分：\", \"⭐\");\n    if (isValid(abstract)) {\n        let indentedAbstract = abstract\n            .split(\"\\n\")\n            .map((line) => `    ${line}`)\n            .join(\"\\n\");\n        basicInfo += `\n    \\n&lrm;\n    📖 书籍简介：\n${indentedAbstract}\n`;\n    } else {\n        basicInfo += `${heavyDivider}`;\n    }\n    info = `&lrm;\\n🏷 数据来源：${sources}\\n` + basicInfo;\n}\n</js>",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}} {{$.last_chapter_update_time}}",
      "name": "$.book_name",
      "tocUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || \"小说\";\nlet url = result.toc_url || \"\";\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (fqcookie) {\n    fqssionid = getSessionId(fqcookie);\n};\nsetArguments('fqssionid', fqssionid);\njava.put(\"tab\", tab);\njava.put(\"book_id\", book_id);\nlet qtcatalog = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcatalog = java.base64Encode(JSON.stringify(qtcatalog));\n`data:;base64,${qtcatalog},{\"type\":\"qingtian2\"}`;\n</js>",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "<js>\njava.log(result)\nresult = String(java.hexDecodeToString(result));\nlet res;\nif (result.match(/大灰狼融合/)) {\n    result = result.split(\"大灰狼融合4\");\n    res = {\n        item_id: result[0],\n        tab: result[1],\n        title: result[2],\n        sources: result[3],\n        url: \"\"\n    };\n} else {\n    res = JSON.parse(result);\n}\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n    \n    return isModified;\n}\n\nvar islyc = checkEnv();\ntry {\nif (islyc) {\n\tbook.imageStyle = 'FULL';\n\t} else {\n\t\tbook.imageStyle = 'TEXT';\n\t\t}\n} catch {}\nlet varia1 = String(book.getVariable('custom'));\nif (varia1 == 'null') {\n    varia1 = '';\n}\nlet varia = JSON.stringify({\n    'custom': varia1\n});\n//  varia = java.base64Encode(varia);\nlet book_id = res.book_id;\nlet item_id = res.item_id;\nlet tab = res.tab;\nlet title = res.title;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        java.log(url);\n        java.log(op);\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n    java.log('dddddddddddddddddddddddddddd')\n    java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧' && book.durChapterIndex === chapter.index) {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n        java.log('cscscscs')\n        java.log(html);\n    }\n};\nlet content = \"\";\nlet data;\n//let tone_id = getArguments(source.getVariable(), \"tone_id\");\nlet tone_id = varia1;\nif (tone_id == '') {\n    tone_id = '4';\n}\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet fqpara = getArguments(source.getVariable(), \"fqpara\");\nlet close_img = getArguments(source.getVariable(), \"close_img\");\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nlet qtcookie = cookie.getCookie(base_url);\ntry {\n\t   let device2 = String(cookie.getKey(base_url, \"device\"));\n\t   if (!device2){\n\t   \tdevice2 = device;\n\t   \t}\n    qtcookie = `qttoken=${String(cookie.getKey(base_url, \"qttoken\"))}; deviceId=${device2};`\n} catch (e) {java.log(e)}\n\nvar params = {\n    html: html,\n    item_id: item_id,\n    source: sources,\n    tab: tab,\n    tone_id: tone_id,\n    variable: varia,\n    version: '4.11.5.1'\n};\n\nvar content_url = '/content';\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara && tab == \"小说\") {\n    content_url = '/content?review=1';\n}\n\n//var signInfo = generateComplexSignature('POST', content_url, {}, APP_SECRET, params);\n\n\n//var signedParams = copyObject(params);\n//signedParams.timestamp = signInfo.timestamp;\n//signedParams.nonce = signInfo.nonce;\n//signedParams.sign = signInfo.sign;\n\n\nvar op = {\n    method: \"POST\",\n    body: JSON.stringify(params),\n    headers: {\n        cookie: qtcookie,\n        'Content-Type': 'application/json'\n    }\n};\n\nop = JSON.stringify(op);\njava.log(op);\njava.log(cookie.getCookie(base_url))\ntry {\n    data = java.ajax(base_url + content_url + `,${op}`);\n    JSON.parse(data);\n} catch(_err) {\n    for (var _i = 0; _i < host.length; _i++) {\n        if (host[_i] === base_url) continue;\n        try {\n            data = java.ajax(host[_i] + content_url + `,${op}`);\n            JSON.parse(data);\n            setArguments(\"server\", host[_i]);\n            try { var _oldCk = cookie.getCookie(base_url); if (_oldCk) cookie.setCookie(host[_i], _oldCk); } catch(_ce) {}\n            base_url = host[_i];\n            java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n            break;\n        } catch(_e2) { continue; }\n    }\n}\ntry {\n    data = JSON.parse(data);\n    if (data.msg) {\n        java.toast(data.msg);\n    }\n} catch (e) {}\ncontent = data.content\n\nif (close_img == 'on') {\n\tcontent = removeAllImgTags(content);\n\t}\n\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara == \"on\" && tab == \"小说\") {\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    content = content\n        .replace(/ident=\"/g, 'ident=\"' + base_url)\n        .replace(/book_id=/g, 'book_id=' + book_id + '&ssionid=' + fqssionid);\n    if (device_type == \"苹果\") {\n        content = paraForiOS(content, sources);\n    } else {\n        content = paraForAndroid(content, sources,islyc);\n    }\n}\ndata = JSON.stringify({\n    content: content,\n});\nif (device_type == \"安卓\" && (tab == \"短剧\" || tab == \"视频\" || sources.includes('毒舌影视') || sources.includes('NT动漫'))) {\n    data = {\n        content: `【右上角刷新】开启播放(下一集请切换下一章刷新)\\n播放直链：\\n${content}`,\n    };\n    data = JSON.stringify(data);\n    if (book.durChapterIndex === chapter.index) {\n        let video_url = `${base_url}/online_video?book_id=${book_id}&source=${sources}&tab=${tab}`;\n        if (sources.includes('毒舌影视') || sources.includes('NT动漫')) {\n            video_url = content;\n        };\n        java.startBrowser(video_url, title);\n        java.toast(\"正在加载视频...\");\n    }\n\n}\ndata;\n</js>$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.category}}\n{{$.score}}\n{{$.status}}\n{{$.source}}\n{{$.tags}}",
      "lastChapter": "{{$.last_chapter_title}} • {{$.last_update_time}}",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "checkKeyWord": "我的26岁女房客@番茄",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "<js>\nlet res = JSON.parse(java.hexDecodeToString(result));\nif (res.method) {\n    res = Object.fromEntries(\n        res.body\n        .replace(\"source\", \"sources\")\n        .split(\"&\")\n        .map((query) => query.split(\"=\"))\n    );\n    res.url = \"\";\n}\nlet book_id = res.book_id;\njava.put('book_id', book_id);\nlet tab = res.tab;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        html = java.ajax(`${url},${op}`);    \n    } else {\n        html = java.ajax(url);\n    }\n    //java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n           java.log(html);\n    }\n};\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet op = {\n    method: \"POST\",\n    body: {\n        html: html\n    }\n};\nop = JSON.stringify(op);\nlet varia = String(book.getVariable('custom'));\nif (varia == 'null') {\n    varia = '';\n}\nvaria = JSON.stringify({\n    'custom': varia\n});\n// varia = java.base64Encode(varia);\n//java.log(`${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\nlet data = java.ajax(\n    `${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`\n);\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nif (tab == \"小说\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n} else if (tab == \"听书\") {\n    if (device_type == \"安卓\") {\n        book.type = 32;\n    } else {\n        book.type = 1;\n    }\n} else if (tab == \"漫画\") {\n    if (device_type == \"安卓\") {\n        book.type = 64;\n    } else {\n        book.type = 2;\n    }\n} else if (tab == \"短剧\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 3;\n    }\n} else {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet reading = getArguments(source.getVariable(), \"reading\");\n\nif (book && book.order != 0 && reading == '1') {\n    try {\n        if (!data || !book.variable || !base_url || !qtcookie) {\n            java.log('缺少必要参数');\n        } else {\n            let parsedData;\n            try {\n                parsedData = JSON.parse(data);\n            } catch (e) {\n                java.log('解析data数据失败:' + e);\n            }\n            \n            if (parsedData && parsedData.data && Array.isArray(parsedData.data) && parsedData.data[book.durChapterIndex]) {\n                let ritem = parsedData.data[book.durChapterIndex];\n                let bookInfoObj;\n                try {\n                    bookInfoObj = JSON.parse(book.variable);\n                } catch (e) {\n                    java.log('解析book.variable失败:' + e);\n                }\n                \n                if (bookInfoObj) {\n                    let book_info;\n                    try {\n                        book_info = JSON.parse(bookInfoObj.book_detail || JSON.stringify(bookInfoObj));\n                    } catch (e) {\n                        java.log('解析book_detail失败:' + e);\n                    }\n                    \n                    if (book_info && typeof book_info === 'object') {\n                        let rurl = base_url + '/add_book_to_book_shelf,';\n                        book_info['read_status'] = 1;\n                        book_info['last_chapter_item_id'] = ritem.item_id || '';\n                        book_info['last_chapter_title'] = ritem.title || '';\n                        let rop = {\n                            method: \"POST\",\n                            headers: {\n                                cookie: qtcookie\n                            },\n                            body: book_info\n                        };\n                        let check_book_url = base_url + '/check_book_in_book_shelf,';\n                        let checkResponse;\n                        \n                        try {\n                            checkResponse = java.ajax(check_book_url + JSON.stringify(rop));\n                        } catch (e) {\n                            java.log('检查书籍请求失败:' + e);\n                        }\n                        \n                        if (checkResponse) {\n                            let check_data;\n                            try {\n                                check_data = JSON.parse(checkResponse).data;\n                            } catch (e) {\n                                java.log('解析检查响应失败:' + e);\n                            }\n                            try {\n                                if (check_data && check_data.id) {\n                                    book_info['id'] = check_data.id;\n                                    let uurl = base_url + '/update_book_shelf,';\n                                    java.ajax(uurl + JSON.stringify(rop));\n                                } else {\n                                    java.ajax(rurl + JSON.stringify(rop));\n                                }\n                            } catch (e) {\n                                java.log('书架操作失败:' + e);\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    } catch (error) {\n        java.log('书籍同步流程异常:' + error);\n        java.longToast('\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。');\n    }\n}\ndata;\n</js>$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet tab = result.tab;\nlet sources = result.source;\nlet title = result.title;\nlet item_id = result.item_id;\nlet book_id = java.get(\"book_id\");\nlet url = result.toc_url || \"\";\nlet qtcontent = {\n    book_id: book_id,\n    item_id: item_id,\n    title: title,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcontent = java.base64Encode(JSON.stringify(qtcontent));\nif (sources == '卷') {\n    content_url = item_id\n} else if ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\") && tab == \"小说\") {\n    var base_url = getArguments(source.getVariable(), \"server\") || \"\";\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    let sourcess = sources.replace('svip_', '');\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\",\"js\":\"book ? result : '${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&ssionid=${fqssionid}&source=${sourcess}'\"}`;\n} else {\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\"}`;\n}\n</js>",
      "updateTime": "$.first_pass_time"
    },
    "searchUrl": "<js>\nlet base_url = getArguments(source.getVariable(), 'server');\nlet media;\nlet sources = getArguments(source.getVariable(), 'sources') || getArguments(source.getVariable(), 'source');\nlet disabled_sources = getArguments(source.getVariable(), 'disabled_sources') || '0';\nif (String(key).startsWith(\"m:\") || String(key).startsWith(\"m：\")) {\n    media = \"漫画\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"t:\") || String(key).startsWith(\"t：\")) {\n    media = \"听书\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"d:\") || String(key).startsWith(\"d：\")) {\n    media = \"短剧\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"x:\") || String(key).startsWith(\"x：\")) {\n    media = \"小说\"\n    key = key.slice(2)\n} else {\n    media = getArguments(source.getVariable(), 'tab') || getArguments(source.getVariable(), 'media');\n}\nif (key.includes('@')) {\n    var parts = key.split('@');\n    key = parts[0];\n    sources = parts[1] || sources;\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet op = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\nop = JSON.stringify(op);\n`${base_url}/search?title=${key}&tab=${media}&source=${sources}&page={{page}}&disabled_sources=${disabled_sources},${op}`\n</js>",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "海豚书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.haitunsw.com",
    "customButton": false,
    "customOrder": 8,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/cate/0_{{page}}_0_0_0_0_0.html\n言情小说::/cate/1_{{page}}_0_0_0_0_0.html\n都市小说::/cate/2_{{page}}_0_0_0_0_0.html\n历史小说::/cate/3_{{page}}_0_0_0_0_0.html\n灵异小说::/cate/4_{{page}}_0_0_0_0_0.html\n推理小说::/cate/5_{{page}}_0_0_0_0_0.html\n武侠小说::/cate/6_{{page}}_0_0_0_0_0.html\n二次元::/cate/7_{{page}}_0_0_0_0_0.html\n玄幻奇幻::/cate/8_{{page}}_0_0_0_0_0.html\n虚拟网游::/cate/9_{{page}}_0_0_0_0_0.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1784982455492,
    "loginCheckJs": "var src = result.body();\nif (src.match(/Loading\\.\\.\\.|wafjs/)) {\n    cookie.removeCookie(source.bookSourceUrl);\n    var url = result.url();\n    java.startBrowserAwait(url, \"海豚书屋验证\");\n    java.connect(url);\n    result = java.connect(url);\n}\nresult;",
    "loginUrl": "https://m.haitunsw.com",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "http:@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content&&.sectionTwo-content p.0@html\",\nc:\"[property$=image]@content\",\nt:\"text.目录@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "@get:{t}"
    },
    "ruleContent": {
      "content": "@js:\nurl=\"https:\"+result.match(/initTxt\\(\"([^\"]+)\",\"[^\"]+\"\\)/)[1];\nr=String(java.ajax(url).match(/_txt_call\\(([\\s\\S]+\\})\\)/)[1]);\nvar r = eval('(' + r + ')');\n\t\t\t\tif(r.content!=null){\t\t\t\t\n      var e = r.replace;\n\t\t\t\tfor (var n in e) {\n\t\t\t\t\tvar i = new RegExp(e[n], \"ig\");\n\t\t\t\t\tr.content = r.content.replace(i, n)\n\t\t\t\t}\n\t\t\t\tresult=r.content\n\t\t\t\t\t}else{result=\"章节加载失败，或者内容正在手打中，请稍后访问~\"}"
    },
    "ruleExplore": {
      "author": "p.-1@text",
      "bookList": ".item-text",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "p.-1@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": "@js:\npath = '.search-card';\nc=java.getElement(path);\nif( !c.length ){\n  res = java.startBrowserAwait(baseUrl,'等待至跳转，然后重搜');\n  java.setContent(res.body());\n  c=java.getElement(path);\n}\nc",
      "bookUrl": "a.0@href",
      "intro": ".sc-content@text",
      "kind": "span.-1@text",
      "lastChapter": "span.-2@text",
      "name": "a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".chapter-list li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search/,{\n  \"body\": \"keyword={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "笔趣阁新站",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.kkbiquge.net",
    "customButton": false,
    "customOrder": 9,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::http://www.kkbiquge.net/class/xuanhuanmofa/{{page}}/\n仙侠修真::http://www.kkbiquge.net/class/xianxiaxiuzhen/{{page}}/\n都市言情::http://www.kkbiquge.net/class/dushuyanqing/{{page}}/\n历史军事::http://www.kkbiquge.net/class/lishijunshi/{{page}}/\n网游动漫::http://www.kkbiquge.net/class/wangyoudongman/{{page}}/\n科幻小说::http://www.kkbiquge.net/class/kehuanxiaoshuo/{{page}}/\n女生小说::http://www.kkbiquge.net/class/nvshengxiaoshuo/{{page}}/\n其他小说::http://www.kkbiquge.net/class/qitaxiaoshuo/{{page}}/\n总排行榜::http://www.kkbiquge.net/rank/allvisit/{{page}}/\n月排行榜::http://www.kkbiquge.net/rank/monthvisit/{{page}}/\n周排行榜::http://www.kkbiquge.net/rank/weekvisit/{{page}}/\n收藏榜::http://www.kkbiquge.net/rank/goodnum/{{page}}/\n全本小说::http://www.kkbiquge.net/quanben/class/{{page}}/",
    "header": "User-Agent: Mozilla/5.0 (Linux; Android 11) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.120 Mobile Safari/537.36",
    "lastUpdateTime": 1784180257492,
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "div#info a.0@text",
      "intro": "div#intro@text",
      "kind": "div#info@text##[\\s\\S]*类别：(\\S+)[\\s\\S]*##$1",
      "name": "h1@text",
      "wordCount": "div#info@text##[\\s\\S]*?(\\d+万字)[\\s\\S]*##$1"
    },
    "ruleContent": {
      "content": "#booktxt@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": ".btm a.0@text",
      "bookList": ".item",
      "bookUrl": "dt a@href",
      "coverUrl": ".image img@data-original",
      "intro": "dd@text",
      "name": "dt a@text",
      "wordCount": ".btm em.orange@text"
    },
    "ruleSearch": {
      "author": ".btm a.0@text",
      "bookList": ".item",
      "bookUrl": "dt a@href",
      "intro": "dd@text",
      "name": "dt a@text",
      "wordCount": ".btm em.orange@text"
    },
    "ruleToc": {
      "chapterList": "div#list a[rel=chapter]",
      "chapterName": "dd@text",
      "chapterUrl": "@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}http://www.kkbiquge.net/search2c.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "池鱼 2025.05.15\n\n本网站所有的小说都是免费的，目前已经有了PC端和wap端，APP端目前还有点问题需要调试\n\n如果想要查看插图的话可以去网页端，为了避免被刷昂贵的图床流量，所以阅读的书源没有适配插图\n\n更多详情内容，可以关注：www.huanmengacg.com\n\n网站QQ群：907189428",
    "bookSourceGroup": "轻小说",
    "bookSourceName": "幻梦轻小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.huanmengacg.com",
    "customButton": false,
    "customOrder": 10,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "@js: \nJSON.stringify({\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Mobile Safari/537.36\"\n})",
    "lastUpdateTime": 1785080045602,
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": ".book-metas.0@text##作者：",
      "coverUrl": "dt@img@src",
      "intro": ".book-summary@text",
      "kind": ".book-metas.1@text&&.book-metas.2@text&&.book-metas.3@text##(?:分类|状态|更新)：| [\\d：:]+\n<js>result.replace(/ /,\",\")</js>",
      "name": ".book-title@text",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "#BookText@p@text\n<js>\nresult.replace(/(<img src=\"[^\"]+\")[^>]+>/g,\"$1>\")\n</js>\n##本文来自 幻梦轻小说|最新最全的日本动漫轻小说 幻梦轻小说|更多轻小说与TXT下载，尽在幻梦轻小说网（www.huanmengacg.com）|\\(http://www.huanmengacg.com\\)|",
      "imageStyle": "FULL",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleSearch": {
      "author": ".book-module@text##··.*",
      "bookList": ".boxbd@.common-list",
      "bookUrl": "a@href",
      "checkKeyWord": "--https://www.huanmengacg.com/index.php/book_read_794_763.html",
      "coverUrl": "img@data-original",
      "intro": ".book-profile@text",
      "kind": ".book-module@text##.*··",
      "name": "dt@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/index.php/book/search?action=search&key={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "更新日志请点击登录，更新书源中查看\n\n基础使用教程：\n1、搜索：\n    1)基础搜索：在发现页长按该书源，点击搜索，直接搜，搜索范围(全部来源小说)\n    2)进阶搜索：在登陆-书源设置中选择指定模式/来源，可搜索指定模式/来源内容\n    3)快捷搜索：使用特殊关键词(x,t,m,d,@)搜索\n         x:书名@来源  如(x:十日终焉@番茄)\n         t:书名@来源  如(t:十日终焉@番茄)\n         m:书名@来源  如(m:十日终焉@番茄)\n         d:书名@来源  如(d:十日终焉@番茄)\n         其中：x表示小说(可省略)，t表示听书，m表示漫画，d表示短剧\n         冒号支持中文英文\n         \n2、发现页：\n    在书源设置中选择指定模式或者单个来源，然后刷新发现页即可\n    \n3、更多使用方式长按发现页书源选择登录一目了然\n4、用户后台有视频教程\n         ",
    "bookSourceGroup": "免费",
    "bookSourceName": "分享-精品书源",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.qidian.com/",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z0-9-]+(?::\\d+)?\\/detail.*",
    "customButton": false,
    "customOrder": 11,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar open_argument = source.getVariable();\nif (!open_argument || open_argument == '') {\n    var initData = {\n        tab: \"小说\",\n        tone_id: \"默认音色\",\n        server: host[0],\n        sources: \"番茄\",\n        source_type: \"男频\",\n        find_source: \"番茄\",\n        find_tab: \"小说\",\n        fqpara: \"on\"\n    };\n    source.setVariable(JSON.stringify(initData));\n    open_argument = source.getVariable();\n}\nvar base_url = getArguments(open_argument, 'server') || host[0];\nvar ms = getArguments(open_argument, 'tone_id') || '';\nvar source_type = getArguments(open_argument, 'source_type') || '男频';\nvar tab = getArguments(open_argument, 'find_tab') || getArguments(open_argument, 'tab') || '小说';\nvar sources =  getArguments(open_argument, 'sources') || '番茄';\nvar fxyjr = getArguments(open_argument, 'fxyjr');\n\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n\n    return isModified;\n}\n\nvar islyc = checkEnv();\nlet device_type = '安卓';\ntry {\n\t  try {\n\t  java.qread();\n\t  device_type =\"轻阅读\";\n\t  } catch {\n\t  \tjava.deviceID();\n    device_type = \"苹果\";\n\t  \t}\n    \n} catch (e) {\n    try {\n        java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device_type = \"安卓\";\n    }\n}\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr != \"on\"){\n\tsources = getArguments(open_argument, 'find_source') || sources;\n\tsetArguments('find_source', sources);\n\t}\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\n\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (!fqcookie && (sources == '番茄' || sources == '全部')) {\n    java.toast('您还未登陆番茄账号，无法同步数据哦！');\n} else {\n    fqssionid = getSessionId(fqcookie)\n}\nvar fqsjurl = base_url + \"/bookshelf?page={{page}}&ssionid=\" + fqssionid;\nvar fqtjurl = base_url + \"/fqrecommend?page={{page}}&ssionid=\" + fqssionid;\nvar fqlsurl = base_url + \"/fqhistory?page={{page}}&ssionid=\" + fqssionid;\n\nvar groupDatas = [];\nvar infoData = [ ];\nif (sources == '番茄' || sources == '全部') {\ninfoData = [{\n        \"title\": \"登录番茄\",\n        \"url\": '{\\{java.startBrowser(\"https://fanqienovel.com/\",\"番茄登录\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.45\n        }\n    }];\n}\n\nvar hasValidCookie = fqcookie.length > 0;\n\nif (hasValidCookie && (sources == '番茄' || sources == '全部')) {\n    function groupQuery() {\n        try {\n            var url = base_url + \"/group_name?ssionid=\" + fqssionid;\n            var res = java.ajax(url);\n            var response = JSON.parse(res);\n\n            if (!(response && response.data)) {}\n\n            response.data.forEach(function(group) {\n                var keys = Object.keys(group);\n                if (keys.length > 0) {\n                    var key = keys[0];\n                    var value = group[key];\n                    if (value && value.length) {\n                        var option = {\n                            \"method\": \"POST\",\n                            \"body\": {\n                                \"book_ids\": value,\n                                \"page\": \"{{page}}\"\n                            }\n                        };\n                        groupDatas.push({\n                            title: key,\n                            url: base_url + \"/bookshelf,\" + JSON.stringify(option),\n                            style: {\n                                layout_flexGrow: 1,\n                                layout_flexBasisPercent: 0.45\n                            }\n                        });\n                    }\n                }\n            });\n\n            if (groupDatas.length % 2 !== 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.45\n                    }\n                });\n            }\n        } catch (e) {\n            java.longToast(\"番茄登录过期，已隐藏番茄书架\" + fqssionid);\n        }\n    }\n\n    try {\n        java.longToast(\"正在加载分组数据...\");\n        var userUrl = base_url + \"/fquser?ssionid=\" + fqssionid;\n        var userRes = java.ajax(userUrl);\n        var userData = JSON.parse(userRes);\n\n        var userName = (userData && userData.data && userData.data.name) ? userData.data.name : '未知用户';\n        if (!userName.includes('未知用户')) {\n            infoData = [{\n                title: \"番茄个人中心\",\n                url: fqsjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"个性推荐(番茄)\",\n                url: fqtjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"历史阅读(番茄)\",\n                url: fqlsurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }];\n        }\n        groupQuery();\n    } catch (e) {\n        java.longToast(\"番茄登录过期，已隐藏番茄书架\");\n    }\n}\n\nvar style_list = [];\ntry {\n    var durl = `${base_url}/discovestyle?source=${sources}&source_type=${source_type}&tab=${tab}`;\n    var res = java.ajax(durl);\n    var result = JSON.parse(res);\n    style_list = result.data || [];\n    if (result.msg) {\n        java.toast(result.msg);\n    }\n} catch (e) {\n    java.toast(\"发现样式获取失败\");\n}\nlet qtcookie = cookie.getCookie(base_url);\n//let qtcookie = \"\"\nlet qtop = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\n\n\n\nqtop = JSON.stringify(qtop);\nlet qtsjurl = base_url + '/get_book_shelf,' + qtop;\n\nlet qtsj = [];\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr !=\"on\") {\n    try {\n        qtsj.push(createFilter(\n            \"线路\",\n            host,\n            base_url,\n            \"server\",\n            1\n        ));\n        qtsj.push(createFilter(\n            \"模式\",\n            [\"小说\", \"听书\", \"短剧\", \"漫画\"],\n            tab,\n            \"find_tab\",\n            0.33\n        ));\n        qtsj.push(createFilter(\n            \"频道\",\n            [\"男频\", \"女频\"],\n            source_type,\n            \"source_type\",\n            0.33\n        ));\n        let source_list = ['番茄', '七猫', '书旗', '塔读', '江湖', '小米', '米读', 'QQ阅读', '酷我小说','幻梦轻小说', '西瓜小说', '69书吧', '顶点', '爱下电子书', '伪69', '超会专属小说', '3A小说', '阅友小说', '笔趣阁22', '追更人', '久久小说', '52书库', '腐小说', '完本小说', '盐选文库', '有度中文', '三零读书', '鹿鹿', '星空小说', '365小说', '冷冷文学', '万相书城', '独步小说', '福书网', '速读谷', '全本同人'];\n        if (tab == '听书') {\n            source_list = ['番茄', '七猫', '喜马拉雅', '酷我'];\n        }\n        if (tab == '漫画') {\n            source_list = ['全免漫画', '番茄', '包子漫画', '漫画屋', '漫画网', '漫客栈', '漫画屋'];\n        }\n        if (tab == '短剧') {\n            source_list = ['番茄', '七猫', '河马短剧', '旺旺短剧', '极速影视'];\n        }\n        qtsj.push(createFilter(\n            \"平台\",\n            source_list,\n            sources,\n            \"find_source\",\n            1\n        ));\n       const excludeTitles = ['点击登录可切换来源', '切换后长按刷新即可'];\n       style_list = style_list.filter(item => !excludeTitles.includes(item.title));\n    } catch {}\n} else {\n\tif (device_type == '安卓'){\n\tqtsj.push({\n        \"title\": \"下载阅读Sigma最新测试版\",\n        \"url\": '{\\{java.longToast(\"本书源推荐使用最新版洛娅橙改版阅读Σ\\\\n请安装后重新导入书源\");java.startBrowser(\"https://legado.langge.cf\",\"下载阅读Sigma最新测试版\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    })}\n\t}\n\nif (qtcookie) {\nqtsj.push({\n    title: \"大灰狼个人中心\",\n    url: qtsjurl,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n} else {\nqtsj.push({\n    title: \"登录大灰狼书源\",\n    url: `{\\{java.startBrowser(\"${base_url}/login\",\"登录书源\");}}`,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n}\n\n\nvar finalData = infoData.concat(groupDatas, style_list);\nfinalData = qtsj.concat(finalData);\nJSON.stringify(finalData);\n</js>",
    "header": "{ \"User-Agent\":\"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Mobile Safari/537.36 Edg/138.0.0.0\" }",
    "jsLib": "var host = [\n    'http://219.154.201.122:5006',\n    'https://api.langge.cf',\n    'https://v2.czyl.cf',\n    'https://20.langge.tk',\n    'https://v4.czyl.cf',   \n    'https://v5.czyl.cf',\n    'https://v7.czyl.cf',\n    'https://v8.czyl.cf',\n    'https://v9.czyl.cf',\n    'https://v10.czyl.cf'\n];\n\nfunction getArguments(open_argument, key) {\n    try {\n        open_argument = JSON.parse(open_argument);\n    } catch (e) {\n        open_argument = {\n            tab: \"小说\",\n            tone_id: \"默认音色\",\n            server: host[0],\n            sources: \"全部\",\n            source_type: \"男频\",\n        };\n    }\n    if (key) {\n        return open_argument[key];\n    } else {\n        return open_argument;\n    }\n}\n\nfunction setArguments(key, value) {\n    const {\n        source\n    } = this;\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\nfunction decrypt(Text) {\n    return Text;\n}\n\nfunction paraForAndroid(content, sources, ydv) {\n    let {\n        java,\n        cache,\n        source\n    } = this;\n    let plcolor = getArguments(source.getVariable(), \"plcolor\");\n    if (!plcolor) {\n        plcolor = \"#A9A9A9\";\n    }\n    let tccolor = getArguments(source.getVariable(), \"tccolor\");\n    if (!tccolor) {\n        tccolor = \"#ffffff\";\n    }\n\n    const createSvg = this.createSvg.bind(this);\n\n    return content.replace(/<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        (match, text, url, count) => {\n            if (url && count) {\n                const click = 0;\n                cache.putMemory(url, click);\n                const encodedUrl = url;\n                return `<p>${text}<img src=\"${createSvg(count, plcolor,tccolor,encodedUrl,sources,ydv)}\"></p>`;\n            } else {\n                return `<p>${text}</p>`;\n            }\n        }\n    );\n}\n\n\nfunction showCmt(url, sources, ydv) {\n    let {\n        java,\n        cache\n    } = this;\n    const currentTime = Date.now();\n    const click = cache.getFromMemory(url);\n    let isqread = false;\n    try {\n        java.qread();\n        isqread = true;\n    } catch (e) {}\n    if (click < 1 && !isqread && !ydv) {\n        cache.putMemory(url, click + 1);\n        return;\n    } else {\n        if (isqread) {\n            java.startBrowserDp(url, sources + '段评');\n        } else if (ydv) {\n            let paradata = new Date().toLocaleDateString();\n            let htmlContent = cache.get(paradata);\n            if (!htmlContent || String(htmlContent).indexOf(\"评论\") == -1) {\n                java.longToast(`\\n${paradata} 初始化段评页面,请稍等~`);\n                try {\n                    htmlContent = java.ajax(url);\n                } catch {\n                    htmlContent = paraHtml(url);\n                }\n                \n                cache.put(paradata, htmlContent);\n                java.longToast(`\\n${paradata} 初始化段评页面成功~`);\n            }\n            java.showBrowser(\n                url,\n                htmlContent,\n                `window.java=java;`,\n                JSON.stringify({\n                    \"expandedCornersRadius\": 20,\n                    \"dismissOnTouchOutside\": true,\n                    \"isDraggable\": true,\n                    \"shouldDimBackground\": true,\n                    \"backgroundDimAmount\": 0.5,\n                    \"hardwareAccelerated\": true,\n                    \"isNestedScrollingEnabled\": true,\n                    \"isGestureInsetBottomIgnored\": true,\n                    \"setFitToContents\": true,\n                    \"isHideable\": true,\n                    \"heightPercentage\": 0.8\n                })\n            );\n        } else {\n            java.startBrowser(url, sources + '段评');\n        }\n    }\n}\n\n\n\nfunction createSvg(number, color, tccolor, encodedUrl, sources, ydv) {\n    var displayText = number > 99 ? \"99+\" : number.toString();\n    var loginInfoMap = {};\n\n    if (this.source && typeof this.source.getLoginInfoMap == 'function') {\n        loginInfoMap = this.source.getLoginInfoMap() || {};\n    }\n\n    var bubbleStyle = String(getArguments(this.source.getVariable(), \"pstyle\") || loginInfoMap['段评气泡样式(0-4)'] || '0');\n    var svg;\n    if (bubbleStyle == '0') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '1') {\n        svg = `<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\">\n<g transform=\"rotate(90 512 512) scale(1 1.2)\">\n<path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"${color}\" p-id=\"1530\"></path> \n</g>\n      <text x=\"460\" y=\"650\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"${color}\">${displayText}</text>\n    </svg>\n`;\n    } else if (bubbleStyle == '2') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"6 10 88 76\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M12,12 L88,12 Q92,12 92,16 L92,68 Q92,72 88,72 L28,72 L12,84 L12,72 Q8,72 8,68 L8,16 Q8,12 12,12 Z\" stroke=\"currentColor\" stroke-width=\"4\" stroke-linejoin=\"round\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 2.5px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"50\" y=\"60\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" font-size=\"45\" fill=\"currentColor\" font-weight=\"500\" alignment-baseline=\"auto\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '3') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <rect x=\"0.5\" y=\"0.5\" width=\"24\" height=\"16\" rx=\"2.5\" ry=\"2.5\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></rect>\n                        <text x=\"12.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '4') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                            <path stroke=\"currentColor\" stroke-width=\"1.00\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-miterlimit=\"4.00\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\" d=\"M 7.5 0.5 L 16.5 0.5 A 7 7 0 0 1 23.5 7.5 L 23.5 7.5 A 7 7 0 0 1 16.5 14.5 L 8.5 14.5 L 5.192 16.5 L 5.5 14.5 A 7 7 30 0 1 0.5 7.5 L 0.5 7.5 A 7 7 0 0 1 7.5 0.5 Z\"/>\n                            <text fill=\"${color}\" font-family=\"Arial, sans-serif\" font-size=\"10\" font-weight=\"500\" text-anchor=\"middle\" dy=\"0.35em\" x=\"12.00\" y=\"7.50\">${displayText}</text>\n                            </svg>`;\n    } else if (bubbleStyle == '5') {\n        displayText = number > 99 ? \"99\" : number.toString();\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <circle cx=\"12.5\" cy=\"8.5\" r=\"8\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></circle>\n                        <text x=\"13\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n            </svg>`;\n    }\n    var jc = 'js';\n    if (ydv) {\n        jc = 'click'\n    }\n    var encodedSvg = this.java.base64Encode(svg);\n\n    return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"' + jc + '\":\"showCmt(\\'' + encodedUrl + '\\', \\'' + sources + '\\', ' + ydv + ')\",\"style\":\"text\"}';\n}\n\n\nfunction cleanHTML(html) {\n    let result = html\n        .replace(/<header[^>]*>[\\s\\S]*?<\\/header>/gi, \"\")\n        .replace(/<div class=\"tt-title\"[^>]*>[\\s\\S]*?<\\/div>/gi, \"\")\n        .replace(/<(?!\\/?p\\b|\\/?img\\b)[^>]+>/gi, \"\");\n    result = result.replace(/<\\/?p[^>]*>/g, \"\\n\");\n    return result.replace(/\\n+/g, \"\\n\").trim();\n}\n\n\nfunction getBaseUrl(url) {\n    if (!url) {\n        return null;\n    }\n    url = String(url);\n    if (url.match(/https?:\\/\\//i)) {\n        var index = url.indexOf(\"/\", 9);\n        return index == -1 ? url : url.substring(0, index);\n    }\n    return null;\n}\n\nfunction isIPv4Address(ip) {\n    ip = String(ip);\n    let parts = ip.split(\".\");\n    if (parts.length !== 4) return false;\n\n    for (let part of parts) {\n        if (!/^\\d+$/.test(part)) return false; // 必须是数字\n        if (part.length > 1 && part[0] === \"0\") return false; // 禁止前导零\n        let num = parseInt(part, 10);\n        if (num < 0 || num > 255) return false; // 范围检查\n    }\n    return true;\n}\n\nfunction isIPv6Address(ip) {\n    ip = String(ip);\n    // 处理双冒号（最多出现一次）\n    if (ip.includes(\":::\")) return false;\n    let doubleColonCount = (ip.match(/::/g) || []).length;\n    if (doubleColonCount > 1) return false;\n\n    // 分割成组\n    let groups = ip.split(\":\");\n    let validGroupCount = 8;\n    let actualGroupCount = groups.filter((g) => g !== \"\").length;\n\n    // 验证组数\n    if (doubleColonCount === 1) {\n        if (actualGroupCount > validGroupCount - 1) return false;\n    } else {\n        if (groups.length !== validGroupCount) return false;\n    }\n\n    // 验证每组内容\n    for (let group of groups) {\n        if (group === \"\") continue; // 跳过空组（双冒号部分）\n        if (!/^[0-9a-fA-F]{1,4}$/.test(group)) return false; // 1-4位十六进制\n    }\n    return true;\n}\n\nfunction isIPAddress(input) {\n    return isIPv4Address(input) || isIPv6Address(input);\n}\n\nfunction getSessionId(cookieString) {\n    const match = cookieString.match(/sessionid=([^;]+)/);\n    return match ? match[1] : null;\n}\n\nfunction getKey(key) {\n    let parts = key.split(\";\");\n    for (let part of parts) {\n        if (part.includes(\"qttoken\")) {\n            return part.split(\"=\")[1];\n        }\n    }\n    return \"\";\n}\n\nfunction getFanqieCookie() {\n    const {\n        cookie\n    } = this;\n    try {\n        return String(cookie.getCookie('fanqienovel.com') || java.getCookie('fanqienovel.com') || '');\n    } catch (e) {\n        return '';\n    }\n}\n\n\nfunction paraForiOS(html, sources) {\n    return html.replace(\n        /<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        function(match, text, url, count) {\n            if (url && count) {\n                const encodedUrl = url.replace(/&/g, '&amp;');\n                return `<div rs-native>${text}<comment count=\"${count}\" onPress=\"java.showReadingBrowser('${encodedUrl}','${sources}段评')\"></div>`;\n            } else {\n                return `<div rs-native>${text}</div>`;\n            }\n        }\n    );\n}\n\nfunction removeAllImgTags(htmlString) {\n    const imgTagRegex = /<img\\b[^>]*>|<\\/img>|<img\\b[^>]*\\/>/gi;\n    return htmlString.replace(imgTagRegex, '');\n}\n\n\n\nfunction paraHtml(url) {\n    let burl = url.split('?');\n    let baser_url = burl[0].replace(\"/get_para_review\", \"\");\n    url = burl[1];\n    return `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no\">\n    <link rel=\"shortcut icon\" href=\"${baser_url}/static/favicon.ico\" type=\"image/x-icon\">\n    <link rel=\"stylesheet\" href=\"${baser_url}/static/css/all.min.css\">\n    <title>段落评论</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            -webkit-tap-highlight-color: transparent;\n        }\n\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei\", sans-serif;\n            background: #f5f5f5;\n            color: #333;\n            line-height: 1.5;\n            min-height: 100vh;\n            padding-bottom: 70px;\n        }\n\n        /* 顶部栏 */\n        .header {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            z-index: 100;\n            background: #fff;\n            padding: 12px 16px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            border-bottom: 1px solid #eee;\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n\n        .header-left {\n            display: flex;\n            align-items: center;\n            gap: 12px;\n        }\n\n        .header-back {\n            font-size: 20px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .header-title {\n            font-size: 16px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        /* 排序按钮 */\n        .sort-buttons {\n            display: flex;\n            gap: 8px;\n        }\n\n        .sort-btn {\n            padding: 6px 14px;\n            font-size: 13px;\n            border-radius: 16px;\n            cursor: pointer;\n            background: #f5f5f5;\n            color: #666;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n        }\n\n        .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .sort-btn:hover:not(.active) {\n            background: #eee;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 6px 5px;\n            font-size: 13px;\n            border-radius: 0;\n            cursor: pointer;\n            background: transparent;\n            color: #07c160;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n            white-space: nowrap;\n            flex-shrink: 0;\n            box-shadow: none;\n        }\n\n        .comment-btn:hover {\n            color: #05a850;\n            transform: none;\n            box-shadow: none;\n        }\n\n        .comment-btn:active {\n            transform: none;\n            box-shadow: none;\n        }\n\n        /* 确保头部布局不会变形 */\n        .header {\n            flex-wrap: wrap;\n        }\n\n        .header-left {\n            flex-shrink: 1;\n            overflow: hidden;\n            min-width: 0;\n        }\n\n        .header-title {\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            max-width: 180px;\n        }\n\n        .sort-buttons {\n            flex-shrink: 1;\n            min-width: 0;\n        }\n\n        /* 排序按钮 */\n        .sort-btn {\n            padding: 5px 10px;\n            font-size: 12px;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 5px 8px;\n            font-size: 12px;\n        }\n\n        /* 响应式调整 */\n        @media (max-width: 480px) {\n            .header {\n                padding: 10px 12px;\n            }\n\n            .header-left {\n                gap: 8px;\n            }\n\n            .header-title {\n                font-size: 14px;\n                max-width: 150px;\n            }\n\n            .sort-buttons {\n                gap: 6px;\n            }\n\n            .sort-btn {\n                padding: 4px 10px;\n                font-size: 11px;\n            }\n\n            .comment-btn {\n                padding: 4px 6px;\n                font-size: 11px;\n            }\n\n            .theme-toggle {\n                width: 32px;\n                height: 32px;\n                margin-left: 8px;\n            }\n        }\n\n        /* 主容器 */\n        .main-container {\n            padding: 60px 0 0;\n        }\n\n        /* 段落引用 */\n        .paragraph-quote {\n            background: #fff;\n            padding: 16px;\n            margin: 12px;\n            border-radius: 8px;\n            border-left: 3px solid #07c160;\n            font-size: 14px;\n            color: #666;\n            line-height: 1.7;\n        }\n\n        /* 热门评论区域 */\n        .hot-section {\n            margin: 12px;\n        }\n\n        .section-header {\n            display: flex;\n            align-items: center;\n            padding: 8px 0;\n            margin-bottom: 8px;\n        }\n\n        .section-header i {\n            color: #ff6b6b;\n            margin-right: 8px;\n            font-size: 16px;\n        }\n\n        .section-title {\n            font-size: 15px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        .section-count {\n            color: #999;\n            font-size: 13px;\n            margin-left: 8px;\n            font-weight: normal;\n        }\n\n        /* 评论列表 */\n        .comment-list {\n            background: #fff;\n            border-radius: 8px;\n            overflow: hidden;\n        }\n\n        /* 评论卡片 */\n        .comment-item {\n            padding: 16px;\n            border-bottom: 1px solid #f0f0f0;\n        }\n\n        .comment-item:last-child {\n            border-bottom: none;\n        }\n\n        .comment-main {\n            display: flex;\n            gap: 12px;\n        }\n\n        .comment-avatar {\n            flex-shrink: 0;\n        }\n\n        .comment-avatar img {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .comment-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .comment-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 6px;\n        }\n\n        .comment-username {\n            font-size: 14px;\n            font-weight: 500;\n            color: #333;\n            margin-right: 8px;\n        }\n\n        .comment-tag {\n            font-size: 10px;\n            padding: 2px 6px;\n            border-radius: 4px;\n            margin-right: 6px;\n            font-weight: 500;\n        }\n\n        .tag-author {\n            background: linear-gradient(135deg, #ff6b6b, #ff8787);\n            color: #fff;\n        }\n\n        .tag-vip {\n            background: linear-gradient(135deg, #ffa726, #ffcc02);\n            color: #7c5200;\n        }\n\n        .tag-custom {\n            background: linear-gradient(135deg, #4fc3f7, #29b6f6);\n            color: #fff;\n        }\n\n        .comment-content {\n            font-size: 15px;\n            color: #333;\n            line-height: 1.6;\n            word-break: break-word;\n            margin-bottom: 10px;\n        }\n\n        .comment-content .bq {\n            width: 20px;\n            height: 20px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .comment-image {\n            max-width: 200px;\n            max-height: 200px;\n            border-radius: 8px;\n            margin-bottom: 10px;\n            cursor: pointer;\n        }\n\n        .comment-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .comment-meta {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .comment-time {\n            font-size: 12px;\n            color: #999;\n        }\n\n        .comment-reply-btn {\n            font-size: 12px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px 8px;\n            border-radius: 4px;\n            transition: background 0.2s;\n        }\n\n        .comment-reply-btn:hover {\n            background: #f5f5f5;\n        }\n\n        .comment-likes {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        .comment-likes i {\n            font-size: 14px;\n        }\n\n        /* 展开回复 */\n        .expand-replies {\n            display: flex;\n            align-items: center;\n            margin-top: 12px;\n            padding-left: 52px;\n            color: #576b95;\n            font-size: 13px;\n            cursor: pointer;\n        }\n\n        .expand-replies::before {\n            content: '';\n            width: 20px;\n            height: 1px;\n            background: #ddd;\n            margin-right: 8px;\n        }\n\n        .expand-replies i {\n            margin-left: 4px;\n            font-size: 10px;\n            transition: transform 0.3s;\n        }\n\n        .expand-replies.expanded i {\n            transform: rotate(180deg);\n        }\n\n        /* 回复列表 */\n        .reply-list {\n            margin-top: 12px;\n            padding-left: 52px;\n            display: none;\n        }\n\n        .reply-list.show {\n            display: block;\n        }\n\n        .reply-item {\n            padding: 12px 0;\n            border-bottom: 1px solid #f5f5f5;\n        }\n\n        .reply-item:last-child {\n            border-bottom: none;\n        }\n\n        .reply-main {\n            display: flex;\n            gap: 10px;\n        }\n\n        .reply-avatar img {\n            width: 28px;\n            height: 28px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .reply-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .reply-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 4px;\n        }\n\n        .reply-username {\n            font-size: 13px;\n            font-weight: 500;\n            color: #333;\n        }\n\n        .reply-to {\n            font-size: 13px;\n            color: #999;\n            margin: 0 4px;\n        }\n\n        .reply-to-username {\n            font-size: 13px;\n            color: #576b95;\n        }\n\n        .reply-content {\n            font-size: 14px;\n            color: #333;\n            line-height: 1.5;\n            margin-bottom: 6px;\n        }\n\n        .reply-content .bq {\n            width: 18px;\n            height: 18px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .reply-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .reply-time {\n            font-size: 11px;\n            color: #999;\n        }\n\n        .reply-likes {\n            display: flex;\n            align-items: center;\n            gap: 3px;\n            color: #999;\n            font-size: 12px;\n        }\n\n        /* 默认头像 */\n        .default-avatar {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: #fff;\n            font-size: 18px;\n        }\n\n        .default-avatar.small {\n            width: 28px;\n            height: 28px;\n            font-size: 12px;\n        }\n\n        /* 底部输入栏 */\n        .bottom-bar {\n            position: fixed;\n            bottom: 0;\n            \n            left: 0;\n            right: 0;\n            background: #fff;\n            padding: 10px 16px;\n            padding-bottom: 20px;\n            display: flex;\n            align-items: center;\n            gap: 12px;\n            border-top: 1px solid #eee;\n            z-index: 100;\n        }\n\n        .input-wrapper {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            background: #f5f5f5;\n            border-radius: 20px;\n            padding: 8px 16px;\n            cursor: pointer;\n        }\n\n        .input-wrapper span {\n            color: #999;\n            font-size: 14px;\n        }\n\n        .bottom-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .bottom-action-btn {\n            font-size: 22px;\n            color: #666;\n            cursor: pointer;\n            transition: color 0.2s;\n        }\n\n        .bottom-action-btn:hover {\n            color: #333;\n        }\n\n        /* 加载状态 */\n        .loading {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 60px 20px;\n            color: #999;\n        }\n\n        .loading-spinner {\n            width: 32px;\n            height: 32px;\n            border: 3px solid #f0f0f0;\n            border-top-color: #07c160;\n            border-radius: 50%;\n            animation: spin 0.8s linear infinite;\n            margin-bottom: 12px;\n        }\n\n        @keyframes spin {\n            to { transform: rotate(360deg); }\n        }\n\n        /* 空状态 */\n        .empty {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 80px 20px;\n            color: #999;\n        }\n\n        .empty i {\n            font-size: 48px;\n            margin-bottom: 16px;\n            opacity: 0.3;\n        }\n\n        .empty-title {\n            font-size: 15px;\n            color: #666;\n            margin-bottom: 8px;\n        }\n\n        .empty-desc {\n            font-size: 13px;\n            color: #999;\n        }\n\n        /* 没有更多 */\n        .no-more {\n            text-align: center;\n            padding: 20px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        /* 评论弹窗 */\n        .modal-overlay {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.5);\n            z-index: 200;\n            display: none;\n            align-items: flex-start;\n            justify-content: center;\n            overflow: hidden;\n            padding-top: 180px;\n        }\n\n        .modal-overlay.show {\n            display: flex;\n        }\n\n        .modal-content {\n            background: #fff;\n            width: 90%;\n            max-width: 500px;\n            border-radius: 16px;\n            padding: 20px;\n            animation: slideDown 0.3s ease;\n            transition: transform 0.3s ease;\n            max-height: 80vh;\n            box-shadow: 0 10px 40px rgba(0,0,0,0.2);\n        }\n\n        @keyframes slideDown {\n            from {\n                transform: translateY(-100%);\n            }\n            to {\n                transform: translateY(0);\n            }\n        }\n\n        .modal-header {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            margin-bottom: 16px;\n        }\n\n        .modal-title {\n            font-size: 16px;\n            font-weight: 600;\n        }\n\n        .modal-close {\n            font-size: 24px;\n            color: #999;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .modal-textarea-wrapper {\n            position: relative;\n            margin-bottom: 12px;\n        }\n\n        .modal-textarea {\n            width: 100%;\n            min-height: 120px;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            padding: 12px;\n            padding-bottom: 40px;\n            font-size: 15px;\n            resize: none;\n            outline: none;\n        }\n\n        .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .emoji-toggle-btn {\n            position: absolute;\n            bottom: 10px;\n            right: 10px;\n            font-size: 22px;\n            color: #999;\n            cursor: pointer;\n            background: none;\n            border: none;\n            padding: 4px;\n            transition: color 0.2s;\n        }\n\n        .emoji-toggle-btn:hover {\n            color: #07c160;\n        }\n\n        /* 表情面板 */\n        .emoji-panel {\n            position: absolute;\n            bottom: 45px;\n            right: 0;\n            background: #fff;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            box-shadow: 0 4px 20px rgba(0,0,0,0.15);\n            padding: 12px;\n            width: 320px;\n            max-height: 280px;\n            overflow-y: auto;\n            z-index: 10;\n            display: none;\n        }\n\n        .emoji-panel.show {\n            display: block;\n        }\n\n        .emoji-grid {\n            display: grid;\n            grid-template-columns: repeat(6, 1fr);\n            gap: 6px;\n        }\n\n        .emoji-btn {\n            padding: 8px;\n            border: none;\n            background: transparent;\n            cursor: pointer;\n            border-radius: 6px;\n            transition: background 0.2s;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            aspect-ratio: 1;\n        }\n\n        .emoji-btn:hover {\n            background: #f0f0f0;\n        }\n\n        .emoji-btn img {\n            width: 24px;\n            height: 24px;\n        }\n\n        .modal-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .char-count {\n            font-size: 13px;\n            color: #999;\n        }\n\n        .char-count.over {\n            color: #ff4d4f;\n        }\n\n        .submit-btn {\n            background: #07c160;\n            color: #fff;\n            border: none;\n            padding: 8px 24px;\n            border-radius: 20px;\n            font-size: 14px;\n            font-weight: 500;\n            cursor: pointer;\n        }\n\n        .submit-btn:disabled {\n            background: #ccc;\n            cursor: not-allowed;\n        }\n\n        /* 图片预览 */\n        .image-preview {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.9);\n            z-index: 300;\n            display: none;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .image-preview.show {\n            display: flex;\n        }\n\n        .image-preview img {\n            max-width: 90%;\n            max-height: 90%;\n            border-radius: 8px;\n        }\n\n        .image-preview-close {\n            position: absolute;\n            top: 20px;\n            right: 20px;\n            font-size: 32px;\n            color: #fff;\n            cursor: pointer;\n        }\n\n        /* Toast */\n        .toast {\n            position: fixed;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            background: rgba(0, 0, 0, 0.75);\n            color: #fff;\n            padding: 12px 24px;\n            border-radius: 8px;\n            font-size: 14px;\n            z-index: 400;\n            display: none;\n        }\n\n        .toast.show {\n            display: block;\n        }\n\n        /* 隐藏 */\n        .hidden {\n            display: none !important;\n        }\n\n        /* 深色模式 */\n        html.dark, body.dark {\n            background: #1a1a1a;\n            color: #e0e0e0;\n        }\n\n        /* 确保在深色模式下整个页面都是深色背景 */\n        .dark {\n            background: #1a1a1a;\n        }\n\n        .dark .header {\n            background: #2d2d2d;\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .header-title {\n            color: #e0e0e0;\n        }\n\n        .dark .header-back {\n            color: #999;\n        }\n\n        .dark .sort-btn {\n            background: #3d3d3d;\n            color: #999;\n        }\n\n        .dark .sort-btn:hover:not(.active) {\n            background: #4d4d4d;\n        }\n\n        .dark .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .dark .comment-btn {\n            background: transparent;\n            color: #07c160;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:hover {\n            background: transparent;\n            color: #05a850;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:active {\n            background: transparent;\n            box-shadow: none;\n        }\n\n        .dark .paragraph-quote {\n            background: #2d2d2d;\n            color: #aaa;\n        }\n\n        .dark .comment-list {\n            background: #2d2d2d;\n        }\n\n        .dark .comment-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .comment-username {\n            color: #e0e0e0;\n        }\n\n        .dark .comment-content {\n            color: #ccc;\n        }\n\n        .dark .comment-time {\n            color: #777;\n        }\n\n        .dark .comment-likes {\n            color: #777;\n        }\n\n        .dark .expand-replies {\n            color: #5b9bd5;\n        }\n\n        .dark .expand-replies::before {\n            background: #4d4d4d;\n        }\n\n        .dark .reply-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .reply-username {\n            color: #e0e0e0;\n        }\n\n        .dark .reply-content {\n            color: #bbb;\n        }\n\n        .dark .reply-to-username {\n            color: #5b9bd5;\n        }\n\n        .dark .reply-time,\n        .dark .reply-likes {\n            color: #666;\n        }\n\n        .dark .bottom-bar {\n            background: #2d2d2d;\n            border-top-color: #3d3d3d;\n        }\n\n        .dark .input-wrapper {\n            background: #3d3d3d;\n        }\n\n        .dark .input-wrapper span {\n            color: #777;\n        }\n\n        .dark .bottom-action-btn {\n            color: #999;\n        }\n\n        .dark .modal-content {\n            background: #2d2d2d;\n        }\n\n        .dark .modal-title {\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea {\n            background: #3d3d3d;\n            border-color: #4d4d4d;\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .dark .emoji-panel {\n            background: #2d2d2d;\n            border-color: #4d4d4d;\n        }\n\n        .dark .emoji-btn:hover {\n            background: #3d3d3d;\n        }\n\n        .dark .section-title {\n            color: #e0e0e0;\n        }\n\n        .dark .loading {\n            color: #777;\n        }\n\n        .dark .loading-spinner {\n            border-color: #3d3d3d;\n            border-top-color: #07c160;\n        }\n\n        .dark .empty {\n            color: #666;\n        }\n\n        .dark .empty-title {\n            color: #999;\n        }\n\n        .dark .no-more {\n            color: #666;\n        }\n\n        .dark .default-avatar {\n            background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);\n        }\n\n        /* 深色模式切换按钮 */\n        .theme-toggle {\n            width: 36px;\n            height: 36px;\n            border-radius: 50%;\n            border: none;\n            background: #f5f5f5;\n            color: #666;\n            font-size: 16px;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.2s;\n            margin-left: 12px;\n        }\n\n        .theme-toggle:hover {\n            background: #eee;\n        }\n\n        .dark .theme-toggle {\n            background: #3d3d3d;\n            color: #ffc107;\n        }\n\n        .dark .theme-toggle:hover {\n            background: #4d4d4d;\n        }\n\n        /* ==================== PC端响应式优化 ==================== */\n        @media (min-width: 768px) {\n            body {\n                background: #e8e8e8;\n            }\n\n            .dark body,\n            body.dark {\n                background: #121212;\n            }\n\n            .header {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 0 0 12px 12px;\n                box-shadow: 0 2px 12px rgba(0,0,0,0.08);\n            }\n\n            .main-container {\n                max-width: 800px;\n                margin: 0 auto;\n                padding-top: 72px;\n                background: transparent;\n            }\n\n            .paragraph-quote {\n                margin: 16px 0;\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .hot-section {\n                margin: 16px 0;\n            }\n\n            .comment-list {\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .comment-item {\n                padding: 20px 24px;\n            }\n\n            .comment-item:hover {\n                background: #fafafa;\n            }\n\n            .dark .comment-item:hover {\n                background: #363636;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 48px;\n                height: 48px;\n                font-size: 20px;\n            }\n\n            .comment-main {\n                gap: 16px;\n            }\n\n            .comment-username {\n                font-size: 15px;\n            }\n\n            .comment-content {\n                font-size: 15px;\n                line-height: 1.7;\n            }\n\n            .comment-image {\n                max-width: 300px;\n                max-height: 300px;\n            }\n\n            .expand-replies {\n                padding-left: 64px;\n            }\n\n            .reply-list {\n                padding-left: 64px;\n            }\n\n            .reply-avatar img,\n            .default-avatar.small {\n                width: 32px;\n                height: 32px;\n                font-size: 14px;\n            }\n\n            .reply-main {\n                gap: 12px;\n            }\n\n            .reply-username {\n                font-size: 14px;\n            }\n\n            .reply-content {\n                font-size: 14px;\n                line-height: 1.6;\n            }\n\n            .bottom-bar {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 12px 12px 0 0;\n                box-shadow: 0 -2px 12px rgba(0,0,0,0.08);\n            }\n\n            .modal-content {\n                max-width: 600px;\n                margin: 0 auto;\n                border-radius: 16px;\n                margin-bottom: 20px;\n            }\n\n            /* 更多评论区域 */\n            #moreSection {\n                margin: 16px 0;\n            }\n\n            /* 加载状态 */\n            .loading,\n            .empty {\n                background: #fff;\n                border-radius: 12px;\n                margin: 16px 0;\n            }\n\n            .dark .loading,\n            .dark .empty {\n                background: #2d2d2d;\n            }\n\n            .no-more {\n                padding: 30px;\n            }\n\n            /* 列表容器 */\n            .main-container > div[style*=\"margin: 0 12px\"] {\n                margin: 0 !important;\n            }\n        }\n\n        /* 更大屏幕 */\n        @media (min-width: 1200px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 900px;\n            }\n\n            .comment-item {\n                padding: 24px 32px;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 52px;\n                height: 52px;\n            }\n\n            .expand-replies,\n            .reply-list {\n                padding-left: 68px;\n            }\n        }\n\n        /* 超宽屏幕双栏布局（可选） */\n        @media (min-width: 1400px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 1000px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <!-- 顶部栏 -->\n    <div class=\"header\">\n        <div class=\"header-left\">\n            <span class=\"header-title\" id=\"headerTitle\">评论</span>\n        </div>\n        <div class=\"sort-buttons\" id=\"sortButtons\">\n            <button class=\"comment-btn\" id=\"commentBtn\" onclick=\"openCommentModal()\" style=\"display:none;\">\n                <i class=\"fas fa-pen\"></i> 去评论\n            </button>\n            <button class=\"sort-btn active\" id=\"sortByHot\" onclick=\"sortComments('hot')\">\n                <i class=\"fas fa-fire\"></i> 最热\n            </button>\n            <button class=\"sort-btn\" id=\"sortByTime\" onclick=\"sortComments('time')\">\n                <i class=\"fas fa-clock\"></i> 最新\n            </button>\n\n            <button class=\"theme-toggle\" id=\"themeToggle\" onclick=\"toggleTheme()\">\n                <i class=\"fas fa-moon\" id=\"themeIcon\"></i>\n            </button>\n        </div>\n    </div>\n\n    <!-- 主容器 -->\n    <div class=\"main-container\">\n        <!-- 段落内容 -->\n        <div class=\"paragraph-quote hidden\" id=\"paragraphQuote\"></div>\n\n        <!-- 热门评论区域（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"hotSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-fire\"></i>\n                <span class=\"section-title\">热门评论</span>\n                <span class=\"section-count\" id=\"hotCount\"></span>\n            </div>\n            <div class=\"comment-list\" id=\"hotCommentList\"></div>\n        </div>\n\n        <!-- 更多评论标题（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"moreSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-clock\" style=\"color: #07c160;\"></i>\n                <span class=\"section-title\">更多评论</span>\n                <span class=\"section-count\" id=\"moreCount\"></span>\n            </div>\n        </div>\n\n        <!-- 评论列表 -->\n        <div style=\"margin: 0 12px;\">\n            <div class=\"comment-list\" id=\"commentList\"></div>\n        </div>\n\n        <!-- 加载状态 -->\n        <div class=\"loading\" id=\"loading\">\n            <div class=\"loading-spinner\"></div>\n            <span>加载中...</span>\n        </div>\n\n        <!-- 空状态 -->\n        <div class=\"empty hidden\" id=\"empty\">\n            <i class=\"fas fa-comment-slash\"></i>\n            <div class=\"empty-title\">暂无评论</div>\n            <div class=\"empty-desc\">快来发表第一条评论吧</div>\n        </div>\n\n        <!-- 没有更多 -->\n        <div class=\"no-more hidden\" id=\"noMore\">— 没有更多评论了 —</div>\n    </div>\n\n    <!-- 底部输入栏（仅番茄显示） -->\n    <div class=\"bottom-bar hidden\" id=\"bottomBar\">\n        <div class=\"input-wrapper\" onclick=\"openCommentModal()\">\n            <span>趣评千万条，你也来...</span>\n        </div>\n        <div class=\"bottom-actions\">\n            <i class=\"far fa-smile bottom-action-btn\" onclick=\"openCommentModal()\"></i>\n        </div>\n    </div>\n\n    <!-- 评论弹窗 -->\n    <div class=\"modal-overlay\" id=\"commentModal\" onclick=\"closeCommentModal(event)\">\n        <div class=\"modal-content\" onclick=\"event.stopPropagation()\">\n            <div class=\"modal-header\">\n                <span class=\"modal-title\">发表评论</span>\n                <i class=\"fas fa-times modal-close\" onclick=\"closeCommentModal()\"></i>\n            </div>\n            <div class=\"modal-textarea-wrapper\">\n                <textarea class=\"modal-textarea\" id=\"commentTextarea\" placeholder=\"写下你的想法...\" maxlength=\"500\"></textarea>\n                <button type=\"button\" class=\"emoji-toggle-btn\" id=\"emojiToggleBtn\" onclick=\"toggleEmojiPanel(event)\">\n                    <i class=\"far fa-smile\"></i>\n                </button>\n                <div class=\"emoji-panel\" id=\"emojiPanel\">\n                    <div class=\"emoji-grid\" id=\"emojiGrid\"></div>\n                </div>\n            </div>\n            <div class=\"modal-footer\">\n                <span class=\"char-count\" id=\"charCount\">0/500</span>\n                <button class=\"submit-btn\" id=\"submitBtn\" onclick=\"submitComment()\">发表</button>\n            </div>\n        </div>\n    </div>\n\n    <!-- 图片预览 -->\n    <div class=\"image-preview\" id=\"imagePreview\" onclick=\"closeImagePreview()\">\n        <i class=\"fas fa-times image-preview-close\"></i>\n        <img id=\"previewImage\" src=\"\" alt=\"\">\n    </div>\n\n    <!-- Toast -->\n    <div class=\"toast\" id=\"toast\"></div>\n\n    <script>\n        // 配置\n        const urlParams = new URLSearchParams(\"${url}\");\n        const config = {\n            bookId: urlParams.get('book_id'),\n            itemId: urlParams.get('item_id'),\n            currentPara: urlParams.get('para'),\n            ssionid: urlParams.get('ssionid'),\n            source: urlParams.get('source') || '番茄',\n            cursor: '',\n            lastCursor: '', // 保存上一个cursor用于错误恢复\n            hasMore: false,\n            isLoading: false,\n            currentSort: 'hot',\n            comments: [],\n            hotComments: [],\n            allComments: [],\n            loadRetryCount: 0, // 加载重试次数\n            maxRetryCount: 3 // 最大重试次数\n        };\n\n        // 表情映射\n        const emojiMap = {\n            \"[微笑]\": \"${baser_url}/static/emoji/emoji_dr_1.png\",\n            \"[偷笑]\": \"${baser_url}/static/emoji/emoji_dr_2.png\",\n            \"[笑]\": \"${baser_url}/static/emoji/emoji_dr_3.png\",\n            \"[什么]\": \"${baser_url}/static/emoji/emoji_dr_4.png\",\n            \"[害羞]\": \"${baser_url}/static/emoji/emoji_dr_5.png\",\n            \"[爱慕]\": \"${baser_url}/static/emoji/emoji_dr_6.png\",\n            \"[飞吻]\": \"${baser_url}/static/emoji/emoji_dr_7.png\",\n            \"[奸笑]\": \"${baser_url}/static/emoji/emoji_dr_8.png\",\n            \"[尬笑]\": \"${baser_url}/static/emoji/emoji_dr_9.png\",\n            \"[思考]\": \"${baser_url}/static/emoji/emoji_dr_10.png\",\n            \"[撇嘴]\": \"${baser_url}/static/emoji/emoji_dr_11.png\",\n            \"[做鬼脸]\": \"${baser_url}/static/emoji/emoji_dr_12.png\",\n            \"[酷]\": \"${baser_url}/static/emoji/emoji_dr_13.png\",\n            \"[翻白眼]\": \"${baser_url}/static/emoji/emoji_dr_14.png\",\n            \"[惊呆]\": \"${baser_url}/static/emoji/emoji_dr_15.png\",\n            \"[震惊]\": \"${baser_url}/static/emoji/emoji_dr_16.png\",\n            \"[送心]\": \"${baser_url}/static/emoji/emoji_dr_17.png\",\n            \"[委屈]\": \"${baser_url}/static/emoji/emoji_dr_18.png\",\n            \"[快哭了]\": \"${baser_url}/static/emoji/emoji_dr_19.png\",\n            \"[笑哭]\": \"${baser_url}/static/emoji/emoji_dr_20.png\",\n            \"[哭]\": \"${baser_url}/static/emoji/emoji_dr_21.png\",\n            \"[大笑]\": \"${baser_url}/static/emoji/emoji_dr_22.png\",\n            \"[舔屏]\": \"${baser_url}/static/emoji/emoji_dr_23.png\",\n            \"[怒]\": \"${baser_url}/static/emoji/emoji_dr_24.png\",\n            \"[捂脸]\": \"${baser_url}/static/emoji/emoji_dr_25.png\",\n            \"[吐]\": \"${baser_url}/static/emoji/emoji_dr_26.png\",\n            \"[恐惧]\": \"${baser_url}/static/emoji/emoji_dr_27.png\",\n            \"[抓狂]\": \"${baser_url}/static/emoji/emoji_dr_28.png\",\n            \"[敬礼]\": \"${baser_url}/static/emoji/emoji_dr_29.png\",\n            \"[石化]\": \"${baser_url}/static/emoji/emoji_dr_30.png\",\n            \"[OK]\": \"${baser_url}/static/emoji/emoji_dr_31.png\",\n            \"[赞]\": \"${baser_url}/static/emoji/emoji_dr_32.png\",\n            \"[爱心]\": \"${baser_url}/static/emoji/emoji_dr_33.png\",\n            \"[伤心]\": \"${baser_url}/static/emoji/emoji_dr_34.png\",\n            \"[KISS]\": \"${baser_url}/static/emoji/emoji_dr_35.png\",\n            \"[懂了]\": \"${baser_url}/static/emoji/emoji_dr_36.png\",\n            \"[探究]\": \"${baser_url}/static/emoji/emoji_dr_37.png\",\n            \"[重拳出击]\": \"${baser_url}/static/emoji/emoji_dr_38.png\",\n            \"[吃瓜]\": \"${baser_url}/static/emoji/emoji_dr_39.png\",\n            \"[盯]\": \"${baser_url}/static/emoji/emoji_dr_40.png\",\n            \"[你细品]\": \"${baser_url}/static/emoji/emoji_dr_41.png\",\n            \"[赶稿中]\": \"${baser_url}/static/emoji/emoji_dr_42.png\",\n            \"[注意]\": \"${baser_url}/static/emoji/emoji_dr_43.png\",\n            \"[饱了]\": \"${baser_url}/static/emoji/emoji_dr_44.png\",\n            \"[码住]\": \"${baser_url}/static/emoji/emoji_dr_45.png\",\n            \"[学会了]\": \"${baser_url}/static/emoji/emoji_dr_46.png\",\n            \"[顶帖]\": \"${baser_url}/static/emoji/emoji_dr_47.png\",\n            \"[求爆更]\": \"${baser_url}/static/emoji/emoji_dr_48.png\",\n            \"[求关注]\": \"${baser_url}/static/emoji/emoji_dr_49.png\",\n            \"[我也强推]\": \"${baser_url}/static/emoji/emoji_dr_50.png\",\n            \"[雀食神作]\": \"${baser_url}/static/emoji/emoji_dr_51.png\",\n            \"[已种草]\": \"${baser_url}/static/emoji/emoji_dr_52.png\",\n            \"[书架加一]\": \"${baser_url}/static/emoji/emoji_dr_53.png\",\n            \"[歪头笑哭]\": \"${baser_url}/static/emoji/emoticon_emoji_wtxk.png\",\n            \"[神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[狗头]\": \"${baser_url}/static/emoji/emoticon_emoji_doge.png\",\n            \"[哈哈]\": \"${baser_url}/static/emoji/emoticon_emoji_hhh.png\",\n            \"[流泪]\": \"${baser_url}/static/emoji/emoticon_emoji_tears.png\",\n            \"[可爱]\": \"${baser_url}/static/emoji/emoticon_emoji_cute.png\",\n            \"[色]\": \"${baser_url}/static/emoji/emoticon_emoji_smimi.png\",\n            \"[调皮]\": \"${baser_url}/static/emoji/emoticon_emoji_tpi.png\",\n            \"[小七_神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[小七_狗头]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gt.png\",\n            \"[小七_鄙视]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_bs.png\",\n            \"[小七_高兴]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gx.png\",\n            \"[小七_黑人问号]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_hrwh.png\",\n            \"[小七_厉害]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_lh.png\",\n            \"[小七_流泪]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ll.png\",\n            \"[小七_OK]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ok.png\",\n            \"[小七_色]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_s.png\",\n            \"[小七_伤心]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sx.png\",\n            \"[小七_调皮]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_tq.png\",\n            \"[小七_委屈]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_wh.png\",\n            \"[小七_笑哭]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xk.png\",\n            \"[小七_笑嘻嘻]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\",\n            \"[小七_斜眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xyx.png\",\n            \"[小七_赞美]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_zm.png\",\n            \"[眯眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\"\n        };\n\n        // 初始化\n        document.addEventListener('DOMContentLoaded', () => {\n            initTheme();\n            initSortButtons();\n\n            // 隐藏底部输入栏，使用顶部评论按钮\n            document.body.style.paddingBottom = '20px';\n\n            document.getElementById('commentTextarea').addEventListener('input', updateCharCount);\n\n            initEmojiPanel(); // 初始化表情面板\n            initInfiniteScroll();\n            loadComments();\n        });\n\n        function initTheme() {\n            let readerSettings = localStorage.getItem('readerSettings');\n            let theme = localStorage.getItem('theme');\n            if (readerSettings) {\n                try {\n                    const parsed = JSON.parse(readerSettings);\n                    if (parsed.theme !== undefined) {\n                        theme = parsed.theme;\n                    }\n                } catch {}\n            }\n            \n            // 设置默认值为auto\n            if (!theme) {\n                theme = 'auto';\n                localStorage.setItem('theme', 'auto');\n            }\n            \n            updateTheme(theme);\n        }\n\n        function updateTheme(theme) {\n            const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n            let isDark;\n            \n            if (theme === 'auto') {\n                isDark = prefersDark;\n            } else {\n                isDark = theme === 'dark';\n            }\n            \n            if (isDark) {\n                document.documentElement.classList.add('dark');\n                document.body.classList.add('dark');\n            } else {\n                document.documentElement.classList.remove('dark');\n                document.body.classList.remove('dark');\n            }\n            \n            updateThemeIcon(theme);\n        }\n\n        function updateThemeIcon(theme) {\n            const icon = document.getElementById('themeIcon');\n            \n            if (theme === 'auto') {\n                icon.className = 'fas fa-adjust';\n            } else if (theme === 'dark') {\n                icon.className = 'fas fa-sun';\n            } else {\n                icon.className = 'fas fa-moon';\n            }\n        }\n\n        function toggleTheme() {\n            let currentTheme = localStorage.getItem('theme');\n            let newTheme;\n            \n            if (currentTheme === 'auto') {\n                // From auto to opposite of current system preference\n                const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n                newTheme = prefersDark ? 'light' : 'dark';\n            } else if (currentTheme === 'light') {\n                newTheme = 'dark';\n            } else {\n                newTheme = 'auto';\n            }\n            \n            localStorage.setItem('theme', newTheme);\n            updateTheme(newTheme);\n        }\n\n        // Listen for system theme changes in auto mode\n        window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', (e) => {\n            const currentTheme = localStorage.getItem('theme');\n            if (currentTheme === 'auto') {\n                updateTheme('auto');\n            }\n        });\n\n        function initInfiniteScroll() {\n            let scrollTimeout;\n            let lastScrollTime = 0;\n            \n            window.addEventListener('scroll', () => {\n                const now = Date.now();\n                if (now - lastScrollTime < 100) return; // 节流，100ms内不重复处理\n                lastScrollTime = now;\n                \n                clearTimeout(scrollTimeout);\n                scrollTimeout = setTimeout(() => {\n                    if (config.isLoading || !config.hasMore) return;\n                    \n                    const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n                    const windowHeight = window.innerHeight;\n                    const documentHeight = document.documentElement.scrollHeight;\n                    const distance = documentHeight - (scrollTop + windowHeight);\n\n                    // 增加触发距离，避免过早加载\n                    if (distance < 100 && distance > -50) {\n                        loadComments();\n                    }\n                }, 150); // 防抖，150ms后执行\n            }, { passive: true });\n        }\n\n        function initSortButtons() {\n            const sortByHot = document.getElementById('sortByHot');\n            if (config.source === '七猫') {\n                sortByHot.innerHTML = '<i class=\"fas fa-history\"></i> 最早';\n            }\n        }\n\n        function initEmojiPanel() {\n            const emojiGrid = document.getElementById('emojiGrid');\n            if (!emojiGrid) return;\n\n            Object.entries(emojiMap).forEach(([text, src]) => {\n                const btn = document.createElement('button');\n                btn.type = 'button';\n                btn.className = 'emoji-btn';\n                btn.innerHTML = \\`<img src=\"\\${src}\" alt=\"\\${text}\">\\`;\n                btn.onclick = (e) => {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    insertEmoji(text);\n                };\n                emojiGrid.appendChild(btn);\n            });\n        }\n\n        function toggleEmojiPanel(e) {\n            e.preventDefault();\n            e.stopPropagation();\n            document.getElementById('emojiPanel').classList.toggle('show');\n        }\n\n        function insertEmoji(text) {\n            const textarea = document.getElementById('commentTextarea');\n            const start = textarea.selectionStart;\n            const end = textarea.selectionEnd;\n            const textBefore = textarea.value.substring(0, start);\n            const textAfter = textarea.value.substring(end);\n            textarea.value = textBefore + text + textAfter;\n            textarea.focus();\n            textarea.selectionStart = textarea.selectionEnd = start + text.length;\n            updateCharCount();\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function sortComments(sortType) {\n            if (config.currentSort === sortType) return;\n            config.currentSort = sortType;\n\n            document.querySelectorAll('.sort-btn').forEach(btn => btn.classList.remove('active'));\n            if (sortType === 'time') {\n                document.getElementById('sortByTime').classList.add('active');\n            } else {\n                document.getElementById('sortByHot').classList.add('active');\n            }\n\n            let sortedComments = [...config.allComments];\n            \n            if (config.source === '七猫') {\n                if (sortType === 'hot') {\n                    sortedComments.reverse();\n                }\n            } else {\n                if (sortType === 'hot') {\n                    sortedComments.sort((a, b) => (b.like_count || 0) - (a.like_count || 0));\n                } else {\n                    sortedComments.sort((a, b) => (b.create_timestamp || 0) - (a.create_timestamp || 0));\n                }\n            }\n\n            config.comments = sortedComments;\n            renderComments(sortedComments, false);\n        }\n\n        async function loadComments(retryCount = 0) {\n            if (config.isLoading) return;\n            \n            // 预检查：如果已经确定没有更多数据，直接返回\n            if (!config.cursor && config.comments.length > 0) {\n                console.log('没有更多数据可加载（cursor为空）');\n                return;\n            }\n            \n            // 如果已经有大量数据但cursor为空，认为已经加载完毕\n            if (!config.cursor && config.comments.length > 20) {\n                console.log('数据量充足且cursor为空，停止加载');\n                config.hasMore = false;\n                return;\n            }\n            \n            config.isLoading = true;\n\n            const isFirstLoad = !config.cursor;\n            if (!isFirstLoad) {\n                document.getElementById('noMore').classList.add('hidden');\n                showLoadingMore(true);\n            }\n\n            try {\n                let url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&para=\\${config.currentPara}&source=\\${encodeURIComponent(config.source)}\\`;\n                \n                if (config.cursor) {\n                    url += \\`&cursor=\\${encodeURIComponent(config.cursor)}\\`;\n                }\n\n                // 添加超时控制\n                const controller = new AbortController();\n                const timeoutId = setTimeout(() => controller.abort(), 10000); // 10秒超时\n\n                const response = await fetch(url, {\n                    signal: controller.signal,\n                    headers: {\n                        'Accept': 'application/json',\n                        'Content-Type': 'application/json'\n                    }\n                });\n                \n                clearTimeout(timeoutId);\n                \n                if (!response.ok) {\n                    throw new Error(\\`HTTP \\${response.status}: \\${response.statusText}\\`);\n                }\n                \n                const result = await response.json();\n\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n\n                if (result.code === 0 && result.data) {\n                    const data = result.data;\n\n                    if (isFirstLoad) {\n                        // 修复：如果 total 为 0 但实际有评论，使用评论数组长度\n                        const commentCount = data.total || \n                            (data.comments?.length || 0) + (data.hot_comments?.length || 0);\n                        document.getElementById('headerTitle').textContent = commentCount > 0 \n                            ? \\`\\${commentCount}条评论\\` \n                            : '评论';\n                    }\n\n                    if (isFirstLoad && data.paragraph_content) {\n                        const paraEl = document.getElementById('paragraphQuote');\n                        paraEl.textContent = data.paragraph_content.length > 100 \n                            ? data.paragraph_content.substring(0, 100) + '...' \n                            : data.paragraph_content;\n                        paraEl.classList.remove('hidden');\n                    }\n\n                    if (isFirstLoad && data.hot_comments && data.hot_comments.length > 0) {\n                        config.hotComments = data.hot_comments;\n                        renderHotComments(data.hot_comments);\n                        document.getElementById('hotSection').classList.remove('hidden');\n                        document.getElementById('moreSection').classList.remove('hidden');\n                        document.getElementById('moreCount').textContent = \\`(\\${data.total || 0})\\`;\n                    }\n\n                    // 处理评论数据（包括空数据情况）\n                    const comments = data.comments || [];\n                    if (comments.length > 0) {\n                        if (isFirstLoad) {\n                            config.allComments = [...comments];\n                            config.comments = [...comments];\n                            renderComments(comments, false);\n                        } else {\n                            config.allComments = config.allComments.concat(comments);\n                            config.comments = config.comments.concat(comments);\n                            renderComments(comments, true);\n                        }\n                    }\n\n                    // 更严谨的状态判断\n                    const hasMoreFromServer = data.has_more;\n                    const nextCursor = data.next_cursor || '';\n                    \n                    // 如果服务器明确返回hasMore=false，或者没有下一页游标且当前页数据为空，则停止加载\n                    config.hasMore = hasMoreFromServer === true && nextCursor !== '' && comments.length > 0;\n                    \n                    // 特殊情况：如果服务器返回hasMore=true但没有数据，可能是后端bug，保守处理\n                    if (hasMoreFromServer === true && comments.length === 0) {\n                        console.warn('服务器返回hasMore=true但没有数据，停止加载以避免死循环');\n                        config.hasMore = false;\n                    }\n                    \n                    config.lastCursor = config.cursor; // 保存上一个cursor\n                    config.cursor = nextCursor;\n\n                    // 调试日志\n                    console.log(\\`加载完成: 当前页\\${comments.length}条, hasMore=\\${config.hasMore}, cursor='\\${config.cursor}'\\`);\n                    \n                    if (!config.hasMore && config.comments.length > 0) {\n                        document.getElementById('noMore').classList.remove('hidden');\n                        console.log('已到达最后一页，停止加载更多');\n                    }\n\n                    if (config.comments.length === 0 && config.hotComments.length === 0) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                } else {\n                    if (isFirstLoad) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                }\n            } catch (error) {\n                console.error('加载评论失败:', error);\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n                \n                // 更详细的错误处理\n                let errorMsg = '加载失败，请重试';\n                if (error.name === 'AbortError') {\n                    errorMsg = '请求超时，请检查网络后重试';\n                } else if (error.message.includes('HTTP')) {\n                    errorMsg = '服务器错误，请稍后重试';\n                } else if (error.message.includes('Failed to fetch')) {\n                    errorMsg = '网络连接失败，请检查网络';\n                }\n                \n                showToast(errorMsg);\n                \n                // 重置cursor，允许重试\n                if (!isFirstLoad) {\n                    config.cursor = config.lastCursor || '';\n                }\n                \n                // 自动重试机制\n                if (retryCount < config.maxRetryCount && !isFirstLoad) {\n                    const retryDelay = Math.min(1000 * Math.pow(2, retryCount), 5000); // 指数退避，最大5秒\n                    console.log(\\`加载失败，\\${retryDelay/1000}秒后重试(\\${retryCount + 1}/\\${config.maxRetryCount})\\`);\n                    \n                    setTimeout(() => {\n                        loadComments(retryCount + 1);\n                    }, retryDelay);\n                    \n                    // 显示重试提示\n                    showToast(\\`加载失败，\\${retryDelay/1000}秒后自动重试\\`);\n                    return; // 不重置isLoading，让重试逻辑处理\n                }\n            } finally {\n                config.isLoading = false;\n            }\n        }\n\n        function showLoadingMore(show) {\n            let loadingMore = document.getElementById('loadingMore');\n            if (!loadingMore) {\n                loadingMore = document.createElement('div');\n                loadingMore.id = 'loadingMore';\n                loadingMore.className = 'loading';\n                loadingMore.style.padding = '20px';\n                loadingMore.style.opacity = '0';\n                loadingMore.style.transition = 'opacity 0.3s ease';\n                loadingMore.innerHTML = '<div class=\"loading-spinner\" style=\"width:24px;height:24px;margin-bottom:8px;\"></div><span style=\"font-size:13px;\">加载更多...</span>';\n                document.querySelector('.main-container').appendChild(loadingMore);\n                \n                // 强制重排后添加动画\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            }\n            \n            if (show) {\n                loadingMore.style.display = 'flex';\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            } else {\n                loadingMore.style.opacity = '0';\n                setTimeout(() => {\n                    loadingMore.style.display = 'none';\n                }, 300);\n            }\n        }\n\n        function renderHotComments(comments) {\n            const container = document.getElementById('hotCommentList');\n            container.innerHTML = '';\n            document.getElementById('hotCount').textContent = \\`(\\${comments.length})\\`;\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'hot'));\n            });\n        }\n\n        function renderComments(comments, append = false) {\n            const container = document.getElementById('commentList');\n            if (!append) {\n                container.innerHTML = '';\n            }\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'normal'));\n            });\n        }\n\n        function createCommentElement(comment, type) {\n            const div = document.createElement('div');\n            div.className = 'comment-item';\n            div.dataset.commentId = comment.comment_id;\n\n            // 用户标签\n            let tagsHtml = '';\n            if (comment.user && comment.user.is_author) {\n                tagsHtml += '<span class=\"comment-tag tag-author\">作者</span>';\n            }\n            if (comment.user && comment.user.is_vip) {\n                tagsHtml += '<span class=\"comment-tag tag-vip\">VIP</span>';\n            }\n            if (comment.user && comment.user.tags) {\n                comment.user.tags.forEach(tag => {\n                    tagsHtml += \\`<span class=\"comment-tag tag-custom\">\\${tag}</span>\\`;\n                });\n            }\n\n            // 图片\n            let imageHtml = '';\n            if (comment.image_url) {\n                imageHtml = \\`<img class=\"comment-image\" src=\"\\${comment.image_url}\" onclick=\"openImagePreview('\\${comment.image_url}')\" alt=\"\" onerror=\"this.style.display='none'\">\\`;\n            }\n\n            // 展开回复逻辑\n            let expandHtml = '';\n            let replyListHtml = '';\n            \n            const inlineReplyCount = (comment.replies && comment.replies.length) || 0;\n            const serverReplyCount = comment.reply_count || 0;\n            \n            // 只有当有回复时才显示展开按钮\n            if (serverReplyCount > 0 || inlineReplyCount > 0) {\n                const uniqueId = \\`\\${type}-\\${comment.comment_id}\\`;\n                const totalReplies = Math.max(serverReplyCount, inlineReplyCount);\n                \n                // 七猫：始终从接口获取回复（内嵌回复只是预览）\n                if (config.source === '七猫') {\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                } else if (inlineReplyCount > 0) {\n                    // 番茄/塔读：有内嵌回复，默认收起，标记已加载\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\" data-loaded=\"true\">\\${renderRepliesHtml(comment.replies)}</div>\\`;\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                } else {\n                    // 没有内嵌回复，需要从接口加载\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                }\n            }\n\n            // 头像\n            const userName = comment.user?.user_name || '匿名用户';\n            const userAvatar = comment.user?.user_avatar || '';\n            const avatarHtml = userAvatar \n                ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                : \\`<div class=\"default-avatar\"><i class=\"fas fa-user\"></i></div>\\`;\n\n            div.innerHTML = \\`\n                <div class=\"comment-main\">\n                    <div class=\"comment-avatar\">\n                        \\${avatarHtml}\n                    </div>\n                    <div class=\"comment-body\">\n                        <div class=\"comment-header\">\n                            <span class=\"comment-username\">\\${userName}</span>\n                            \\${tagsHtml}\n                        </div>\n                        <div class=\"comment-content\">\\${convertEmoji(comment.content || '')}</div>\n                        \\${imageHtml}\n                        <div class=\"comment-footer\">\n                            <div class=\"comment-meta\">\n                                <span class=\"comment-time\">\\${comment.create_time || ''}</span>\n                                \\${config.source === '番茄' ? '<span class=\"comment-reply-btn\" style=\"display:none;\">回复</span>' : ''}\n                            </div>\n                            <div class=\"comment-likes\">\n                                <i class=\"far fa-heart\"></i>\n                                <span>\\${comment.like_count || 0}</span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                \\${expandHtml}\n                \\${replyListHtml}\n            \\`;\n\n            return div;\n        }\n\n        function renderRepliesHtml(replies) {\n            if (!replies || replies.length === 0) return '';\n\n            return replies.map(reply => {\n                let replyToHtml = '';\n                if (reply.reply_to_user && reply.reply_to_user.user_name) {\n                    replyToHtml = \\`\n                        <span class=\"reply-to\">回复</span>\n                        <span class=\"reply-to-username\">\\${reply.reply_to_user.user_name}</span>\n                    \\`;\n                }\n\n                let tagsHtml = '';\n                if (reply.user && reply.user.is_author) {\n                    tagsHtml += '<span class=\"comment-tag tag-author\" style=\"margin-left:6px;\">作者</span>';\n                }\n\n                const userName = reply.user?.user_name || '匿名';\n                const userAvatar = reply.user?.user_avatar || '';\n                const avatarHtml = userAvatar \n                    ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                    : \\`<div class=\"default-avatar small\"><i class=\"fas fa-user\"></i></div>\\`;\n\n                return \\`\n                    <div class=\"reply-item\">\n                        <div class=\"reply-main\">\n                            <div class=\"reply-avatar\">\n                                \\${avatarHtml}\n                            </div>\n                            <div class=\"reply-body\">\n                                <div class=\"reply-header\">\n                                    <span class=\"reply-username\">\\${userName}</span>\n                                    \\${tagsHtml}\n                                    \\${replyToHtml}\n                                </div>\n                                <div class=\"reply-content\">\\${convertEmoji(reply.content || '')}</div>\n                                <div class=\"reply-footer\">\n                                    <span class=\"reply-time\">\\${reply.create_time || ''}</span>\n                                    <div class=\"reply-likes\">\n                                        <i class=\"far fa-heart\"></i>\n                                        <span>\\${reply.like_count || 0}</span>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                \\`;\n            }).join('');\n        }\n\n        async function toggleReplies(uniqueId, commentId) {\n            const container = document.getElementById(\\`replies-\\${uniqueId}\\`);\n            const expandLink = document.querySelector(\\`[onclick*=\"toggleReplies('\\${uniqueId}'\"]\\`);\n            const isExpanded = container.classList.contains('show');\n\n            if (isExpanded) {\n                // 收起\n                container.classList.remove('show');\n                const replyCount = container.querySelectorAll('.reply-item').length;\n                expandLink.innerHTML = \\`展开\\${replyCount}条回复 <i class=\"fas fa-chevron-down\"></i>\\`;\n                expandLink.classList.remove('expanded');\n            } else {\n                // 展开\n                if (container.dataset.loaded === 'true') {\n                    // 已有数据，直接显示\n                    container.classList.add('show');\n                    expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                    expandLink.classList.add('expanded');\n                } else {\n                    // 需要加载\n                    expandLink.innerHTML = '加载中... <i class=\"fas fa-spinner fa-spin\"></i>';\n                    container.classList.add('show');\n\n                    try {\n                        const url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&comment_id=\\${commentId}&source=\\${encodeURIComponent(config.source)}\\`;\n                        const response = await fetch(url);\n                        const result = await response.json();\n\n                        if (result.code === 0 && result.data && result.data.replies && result.data.replies.length > 0) {\n                            container.innerHTML = renderRepliesHtml(result.data.replies);\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        } else {\n                            container.innerHTML = '<div style=\"padding:16px;color:#999;font-size:13px;text-align:center;\">暂无回复</div>';\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        }\n                    } catch (error) {\n                        console.error('加载回复失败:', error);\n                        container.innerHTML = '<div style=\"padding:16px;color:#ff4d4f;font-size:13px;text-align:center;\">加载失败，点击重试</div>';\n                        container.classList.remove('show');\n                        expandLink.innerHTML = '展开回复 <i class=\"fas fa-chevron-down\"></i>';\n                    }\n                }\n            }\n        }\n\n        function convertEmoji(text) {\n                    if (!text) return '';\n            Object.entries(emojiMap).forEach(([key, src]) => {\n                const regex = new RegExp(key.replace(/[.*+?^\\${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'), 'g');\n                text = text.replace(regex, \\`<img src=\"\\${src}\" class=\"bq\" alt=\"\\${key}\">\\`);\n            });\n            return text;\n        }\n\n        function openCommentModal() {\n            if (config.source !== '番茄') {\n                showToast('当前平台暂不支持评论');\n                return;\n            }\n            document.getElementById('commentModal').classList.add('show');\n            document.getElementById('commentTextarea').focus();\n        }\n\n        function closeCommentModal(event) {\n            if (event && event.target !== document.getElementById('commentModal')) return;\n            document.getElementById('commentModal').classList.remove('show');\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function updateCharCount() {\n            const textarea = document.getElementById('commentTextarea');\n            const charCount = document.getElementById('charCount');\n            const length = textarea.value.length;\n            charCount.textContent = \\`\\${length}/500\\`;\n            charCount.classList.toggle('over', length > 500);\n        }\n\n        async function submitComment() {\n            const content = document.getElementById('commentTextarea').value.trim();\n            if (!content) {\n                showToast('请输入评论内容');\n                return;\n            }\n            if (content.length > 500) {\n                showToast('评论内容不能超过500字');\n                return;\n            }\n\n            try {\n                const url = \\`${baser_url}/post_idea_review?ssionid=\\${config.ssionid}\\`;\n                const response = await fetch(url, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application/json' },\n                    body: JSON.stringify({\n                        text: content,\n                        book_id: config.bookId,\n                        item_id: config.itemId,\n                        para: config.currentPara,\n                        para_content: content\n                    })\n                });\n                const result = await response.json();\n\n                if (result.code === 0) {\n                    showToast('发表成功');\n                    closeCommentModal();\n                    document.getElementById('commentTextarea').value = '';\n                    updateCharCount();\n                    config.cursor = '';\n                    config.allComments = [];\n                    config.comments = [];\n                    config.hotComments = [];\n                    loadComments();\n                } else {\n                    showToast(result.msg || '发表失败');\n                }\n            } catch (error) {\n                console.error('发表评论失败:', error);\n                showToast('发表失败，请重试');\n            }\n        }\n\n        function openImagePreview(url) {\n            document.getElementById('previewImage').src = url;\n            document.getElementById('imagePreview').classList.add('show');\n        }\n\n        function closeImagePreview() {\n            document.getElementById('imagePreview').classList.remove('show');\n        }\n\n        function showToast(message) {\n            const toast = document.getElementById('toast');\n            toast.textContent = message;\n            toast.classList.add('show');\n            setTimeout(() => toast.classList.remove('show'), 2000);\n        }\n    </script>\n</body>\n</html>`\n}\n\n\n//按钮切换时改变源变量并刷新发现\nfunction show(m, t) {\n    const {\n        java,\n        source\n    } = this;\n    //源变量为空时刷新发现，重置源变量\n    source.getVariable()==''?java.refreshExplore():'';//\n    var data = JSON.parse(source.getVariable());\n    //java.log(data);\n    data[t] = m;\n    if (t==\"find_tab\"){\n    \tdata[\"find_source\"]=\"番茄\";\n    \t}\n    //java.longToast(JSON.stringify(data));\n    source.setVariable(JSON.stringify(data, null, 2));\n    java.refreshExplore();\n}\n\n/**\n * 创建筛选器配置\n * @param {string} title - 筛选器标题\n * @param {string[]} chars - 选项列表\n * @param {string} defaultVal - 默认值\n * @param {string} paramKey - URL参数名\n * @param {number} size - 布局占比（0-1之间，如0.33表示33%）\n * @returns {Object} 筛选器配置对象\n */\nfunction createFilter(title, chars, defaultVal, paramKey, size) {\n    return {\n        title: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        action: `show(infoMap['${title}'],'${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}",
    "lastUpdateTime": 1784357393190,
    "loginUi": "[{\n        \"name\": \"邮箱\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"密码\",\n        \"type\": \"password\"\n    }, {\n        \"name\": \"♥登录书源\",\n        \"type\": \"button\",\n        \"action\": \"login(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔐注册书源\",\n        \"type\": \"button\",\n        \"action\": \"register()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⛔️清空设置\",\n        \"type\": \"button\",\n        \"action\": \"reCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"✨设置检测\",\n        \"type\": \"button\",\n        \"action\": \"applyCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🔚 退出登录\",\n        \"type\": \"button\",\n        \"action\": \"logout()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"📡 发现页兼容\",\n        \"type\": \"button\",\n        \"action\": \"fxyjr()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🏝用户后台\",\n        \"type\": \"button\",\n        \"action\": \"loginqt()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🗑 清除设备\",\n        \"type\": \"button\",\n        \"action\": \"clearDevice()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🔮 检测登录\",\n        \"type\": \"button\",\n        \"action\": \"checkStatus()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"☕打赏享福利\",\n        \"type\": \"button\",\n        \"action\": \"vip()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"❇️ 更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"==下方配置为书源设置页面==\",\n        \"type\": \"button\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📑更少简介\",\n        \"type\": \"button\",\n        \"action\": \"set_info()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📝段评开关\",\n        \"type\": \"button\",\n        \"action\": \"paracomment('fqpara')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📚 同步书架\",\n        \"type\": \"button\",\n        \"action\": \"set_reading()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♋️ 男/女频道\",\n        \"type\": \"button\",\n        \"action\": \"set_source_type()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"💢 强制搜索全部\",\n        \"type\": \"button\",\n        \"action\": \"disabledSources()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🍅番茄登录\",\n        \"type\": \"button\",\n        \"action\": \"fq_login()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"➿️ 图片显示\",\n        \"type\": \"button\",\n        \"action\": \"closeImg()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📐 使用教程\",\n        \"type\": \"button\",\n        \"action\": \"jc()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🗂当前模式\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📖小说模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('小说')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔊听书模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('听书')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🏞漫画模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('漫画')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🖲短剧模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('短剧')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎚切换服务器\",\n        \"type\": \"button\",\n        \"action\": \"set_server()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♻️检测当前服务器\",\n        \"type\": \"button\",\n        \"action\": \"checkNet()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⚕️本地/服务器 \",\n        \"type\": \"button\",\n        \"action\": \"get_proxy()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📌永久发布页📌\",\n        \"type\": \"button\",\n        \"action\": \"api()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"↓↓下方可切换来源用于搜索/发现页↓↓\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"💖我来推荐\",\n        \"type\": \"button\",\n        \"action\": \"put_book()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"全部\",\n        \"type\": \"button\",\n        \"action\": \"set_source('全部')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('番茄')\",\n        'name': '番茄',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('69书吧')\",\n        'name': '69书吧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('七猫')\",\n        'name': '七猫',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('百度')\",\n        'name': '百度',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('起点')\",\n        'name': '起点(第三方)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得间')\",\n        'name': '得间',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('塔读')\",\n        'name': '塔读',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('书旗')\",\n        'name': '书旗',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('QQ')\",\n        'name': 'QQ',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('猫眼')\",\n        'name': '猫眼',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('搜书神器')\",\n        'name': '搜书神器',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得奇')\",\n        'name': '得奇',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('伪69')\",\n        'name': '伪69',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('爱下电子书')\",\n        'name': '爱下电子书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('小米')\",\n        'name': '小米',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('星星小说')\",\n        'name': '星星小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('笔趣阁22')\",\n        'name': '笔趣阁22',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('顶点')\",\n        'name': '顶点',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('幻梦轻小说')\",\n        'name': '幻梦轻小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('江湖')\",\n        'name': '江湖',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('歪瑞古德')\",\n        'name': '歪瑞古德漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('知乎')\",\n        'name': '知乎',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('vip')\",\n        'name': '下方为VIP专属书源(点击此处搜所有vip)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        'action': \"set_source('喜马拉雅')\",\n        'name': '喜马拉雅',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('svip')\",\n            'name': '下方为SVIP专属书源(点击此处搜所有svip)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 1\n            }\n        }, {\n            'action': \"set_source('超会专属短剧')\",\n            'name': '超会专属短剧',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('超会专属小说')\",\n            'name': '超会专属小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        'action': \"set_source('酷我')\",\n        'name': '酷我',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n            'action': \"set_source('台湾小说')\",\n            'name': '台湾小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('3A小说')\",\n            'name': '3A小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('包子漫画')\",\n            'name': '包子漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {       \t  \t\n            'action': \"set_source('QQ阅读')\",\n            'name': 'QQ(会员书籍免费)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('久久小说')\",\n            'name': '久久小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \t    'action': \"set_source('追更人')\",\n            'name': '追更人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画屋')\",\n            'name': '漫画屋',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画网')\",\n            'name': '漫画网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('52书库')\",\n            'name': '52书库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('腐小说')\",\n            'name': '腐小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('完本小说')\",\n            'name': '完本小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('盐选文库')\",\n            'name': '盐选文库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {    \t     \t\n            'action': \"set_source('有度中文')\",\n            'name': '有度中文',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('三零读书')\",\n            'name': '三零读书',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('鹿鹿')\",\n            'name': '鹿鹿',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('阅友小说')\",\n            'name': '阅友小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('星空小说')\",\n            'name': '星空小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全免漫画')\",\n            'name': '全免漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('365小说')\",\n            'name': '365小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('冷冷文学')\",\n            'name': '冷冷文学',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('万相书城')\",\n            'name': '万相书城',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('幻梦轻小说')\",\n            'name': '幻梦轻小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\t\n            'action': \"set_source('独步小说')\",\n            'name': '独步小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('福书网')\",\n            'name': '福书网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('速读谷')\",\n            'name': '速读谷',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全本同人')\",\n            'name': '全本同人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n             }\n        }, {\n        'action': \"set_source('漫客栈')\",\n        'name': '漫客栈',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('武芊漫画')\",\n        'name': '武芊漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('鸟韩漫')\",\n        'name': '鸟韩漫',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('新新漫画')\",\n        'name': '新新漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('拷贝漫画')\",\n        'name': '拷贝漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {  \t\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('极速影视')\",\n        'name': '极速影视',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('旺旺短剧')\",\n        'name': '旺旺短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {     \n       \n             'action': \"set_source('毒舌影视')\",\n            'name': '毒舌影视',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \"name\": \"自定义搜索源(多个用英文,分割)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义服务器(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义评论颜色(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"段评气泡样式(0-4)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"手动填写番茄token(可不填)\",\n        \"type\": \"text\"\n    }\n]",
    "loginUrl": "// 当前书源版本号，切勿修改，否则影响更新的识别\nconst localVersion = '5.7.17';\n\nlet controlUrl = host[0];\n\nfunction login(flag) {\n    if (flag == undefined) {\n        result = JSON.parse(source.getLoginInfo())\n    } else {\n        java.longToast(\"\\n\\n💞正在登录中...\")\n        putLoginInfo(JSON.stringify(result))\n    }\n    let base_url = getArgument('server') || host[0]\n    let zdyserver = String(result['自定义服务器(可不填)']);\n    if (zdyserver.includes('http')) {\n        setArgument('server', zdyserver);\n        if (getKey(String(cookie.getCookie(base_url)))) {\n            let cookies = cookie.getCookie(base_url)\n            try {\n                cookie.removeCookie(base_url)\n            } catch (e) {}\n            cookie.setCookie(zdyserver, cookies)\n        }\n        java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n    }\n    let plcolor = String(getArgument('plcolor') || result['自定义评论颜色(可不填)'] || '#000000');\n    if (plcolor) {\n        setArgument('plcolor', plcolor);\n    } else {\n        setArgument('plcolor', '#000000');\n    }\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources) {\n        setArgument('sources', zdysources);\n    };\n    base_url = getArgument('server')\n    let register_email = String(result['邮箱'])\n    let password = String(result['密码'])\n    let key = String(result['密钥'] || '')\n\n    if ((register_email && password || key) && !String(getKey(String(cookie.getCookie(base_url))))) {\n        try {\n            cookie.removeCookie(base_url)\n        } catch (e) {}\n        let deviceKey = '';\n        try {\n            deviceKey = java.deviceID();\n        } catch (e) {\n            deviceKey = java.androidId();\n        };\n        let deviceId = deviceKey;\n        if (register_email && password) {\n            let options = JSON.stringify({\n                method: 'POST',\n                headers: {\n                    'Content-Type': 'application/json'\n                },\n                body: JSON.stringify({\n                    register_email: result['邮箱'],\n                    password: result['密码']\n                })\n            })\n            try {\n                let data = JSON.parse(java.ajax(`${base_url}/login_api,${options}`))\n                if (data.code == 0) {\n                    //java.toast(deviceId)\n                    java.toast(\"\\n\\n✅️登录成功\")\n                    cookie.setCookie(base_url, `qttoken=${data.key};deviceId=${deviceId}`);\n                    for (var _h = 0; _h < host.length; _h++) { try { cookie.setCookie(host[_h], `qttoken=${data.key};deviceId=${deviceId}`); } catch(_e){} }\n                    result['密钥'] = data.key\n                    setArgument('qttoken', data.key);\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    java.toast('\\n\\n💔' + data.msg || \"登录失败，请重试！\")\n                }\n            } catch (e) {\n                java.toast(\"\\n\\n💔登录失败，请重试！\\n\" + e.message)\n            }\n        } else {\n            cookie.setCookie(base_url, `qttoken=${key};deviceId=${deviceId}`)\n            let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n            try {\n                res = JSON.parse(res)\n                if (res.id != undefined) {\n                    setArgument('qttoken', key);\n                    java.toast('\\n\\n密钥登录成功')\n                    result['邮箱'] = res.email\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    throw new Error()\n                }\n            } catch (e) {\n                java.log(e)\n                java.toast(\"\\n\\n💔登录失败\")\n            }\n        }\n    } else if (flag && String(getKey(String(cookie.getCookie(base_url))))) {\n        java.toast(\"\\n\\n当前✅️已登录，请🚫退出登录后重新登录\");\n        //checkStatus();\n    } else if (flag) {\n        java.toast(\"\\n\\n⛔️请先填写邮箱和密码\");\n    }\n}\n\nfunction objectToCookieString(obj) {\n    if (!obj || typeof obj !== 'object') {\n        return '';\n    }\n    return Object.entries(obj)\n        .map(([key, value]) => {\n            const stringValue = String(value);\n            const encodedKey = encodeURIComponent(key);\n            const encodedValue = encodeURIComponent(stringValue);\n            return `${encodedKey}=${encodedValue}`;\n        })\n        .join('; ');\n}\n\nfunction control() {\n    controlUrla = getArgument('controlUrl');\n    if (controlUrla) {\n        controlUrla = findFirstAvailableHost([controlUrla]);\n    }\n    if (!controlUrla) {\n        controlUrla = findFirstAvailableHost(host) || controlUrl;\n    }\n    setArgument('controlUrl', controlUrla);\n    try {\n        let open_argument = source.getVariable();\n        open_argument = JSON.parse(open_argument);\n        let control_cookie = objectToCookieString(open_argument);\n        cookie.setCookie(controlUrla, control_cookie);\n    } catch {}\n    //java.toast(cookie.getCookie(controlUrla))\n    java.startBrowserAwait(controlUrla + '/control', '大灰狼小说设置');\n    applyCookieSettings();\n}\n\nfunction applyCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    var cookieStr = String(cookie.getCookie(controlUrla));\n\n    var cookieData = {};\n    if (cookieStr && cookieStr !== 'null' && cookieStr !== 'undefined' && cookieStr !== '') {\n        var pairs = cookieStr.split('; ');\n        for (var i = 0; i < pairs.length; i++) {\n            var pair = pairs[i];\n            var eqIndex = pair.indexOf('=');\n            if (eqIndex > -1) {\n                var key = pair.substring(0, eqIndex).trim();\n                var value = decodeURIComponent(pair.substring(eqIndex + 1).trim());\n                cookieData[key] = value;\n                setArgument(key, value);\n            }\n        }\n    }\n\n    var displayConfig = [{\n            key: 'server',\n            label: '服务器',\n            defaultValue: host[0]\n        },\n        {\n            key: 'proxy',\n            label: '访问模式',\n            defaultValue: '云端'\n        },\n        {\n            key: 'tab',\n            label: '阅读模式',\n            defaultValue: '小说'\n        },\n        {\n            key: 'source_type',\n            label: '阅读频道',\n            defaultValue: '男频'\n        },\n        {\n            key: 'sources',\n            label: '书源选择',\n            defaultValue: '全部'\n        },\n        {\n            key: 'fqpara',\n            label: '段评显示',\n            defaultValue: 'on'\n        },\n        {\n            key: 'disabled_sources',\n            label: '强制搜索',\n            defaultValue: '0'\n        },\n        {\n            key: 'reading',\n            label: '同步书架',\n            defaultValue: '0'\n        },\n        {\n            key: 'info',\n            label: '完整简介',\n            defaultValue: 'on'\n        }\n    ];\n\n    var valueMap = {\n        // 访问模式\n        '本地': '💻 本地',\n        '云端': '☁️ 云端',\n\n        // 开关状态\n        'on': '✅ 开启',\n        'off': '❌ 关闭',\n        '1': '✅ 开启',\n        '0': '❌ 关闭',\n\n        // 频道类型\n        '男频': '👨 男频',\n        '女频': '👩 女频',\n\n        // 内容类型\n        '小说': '📖 小说',\n        '听书': '🎧 听书',\n        '漫画': '🎨 漫画',\n        '短剧': '🎬 短剧',\n\n        // 来源类型\n        'vip': '💎 VIP专属',\n        'svip': '👑 SVIP专属',\n        '推荐': '⭐ 网友推荐',\n        '全部': '📚 全部'\n    };\n\n\n    var displayLines = [];\n\n    for (var i = 0; i < displayConfig.length; i++) {\n        var config = displayConfig[i];\n        var value = cookieData[config.key] || getArgument(config.key) || config.defaultValue;\r\n\n\n        if (!cookieData[config.key]) {\n            setArgument(config.key, config.defaultValue);\n        }\n\n        var displayValue = valueMap[value] || value;\n        if (config.key === 'sources' && displayValue.length > 25) {\n            displayValue = displayValue.substring(0, 25) + '...';\n        }\n\n        displayLines.push(config.label + ': ' + displayValue);\n    }\n\n    // 构建提示模板\n    var template = '✨ 当前配置\\n';\n    template += '━━━━━━━━━━━━━━━━\\n';\n    template += displayLines.join('\\n');\n    template += '\\n━━━━━━━━━━━━━━━━\\n';\n    template += '❤️当前应用的 *⚙️长按书源登录设置* 中的配置哦❤️'\n\n    // 显示提示\n    java.longToast(template);\n\n    return displayLines.length;\n}\n\n\nfunction reCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    cookie.removeCookie(controlUrla);\n    applyCookieSettings();\n\n}\n// 检测服务器\nfunction checkNet() {\n    let url = getArgument('server');\n    java.longToast(`\\n\\n♻️正在检测：${url}\\n请稍等~`);\n    let date1 = new Date().getTime();\n    let html = java.ajax(url + '/health');\n    let date2 = new Date().getTime();\n    let t = date2 - date1;\n    let res = {};\n    try {\n        res = JSON.parse(html);\n    } catch {}\n    let c = res.status != \"healthy\";\n    let code = 1;\n    let time = t / 1000 + 's';\n    let logTime = '【' + url + '】\\n┋┋\\n' + '解析时间：' + time;\n    if (c || t > 5000) {\n        java.longToast('\\n💔【访问失败提示】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️当前接口无法访问(可能被墙)♣️\\n┋┋\\n请切换其他接口/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t < 1000) {\n        java.longToast('\\n💖【网络环境优良】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低，推荐使用此接口❤️\\n┋┋\\n网络环境优良，请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        java.longToast('\\n💛【网络环境一般】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般，勉强可使用♦️\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        java.longToast('\\n💔【网络环境堪忧】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高，不建议使用♠\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    }\n}\n\n\nfunction findFirstAvailableHost(hosts) {\n    // 按顺序检测，找到第一个可用的就返回\n    for (var i = 0; i < hosts.length; i++) {\n        var host = hosts[i];\n\n        try {\n            java.longToast(\"🔍 正在检测: \" + host);\n\n            var start = new Date().getTime();\n            var response = java.ajax(host + \"/health\");\n            var end = new Date().getTime();\n            var time = end - start;\n\n            // 检查是否可用\n            if (String(response).indexOf(\"大灰狼\") !== -1 && time <= 5000) {\n                // 显示结果\n                var status = \"✅ 可用\";\n                if (time < 1000) {\n                    status = \"💚 优秀\";\n                } else if (time < 2000) {\n                    status = \"💛 一般\";\n                } else {\n                    status = \"🧡 较慢\";\n                }\n                java.longToast(status + \"\\n主机: \" + host + \"\\n延迟: \" + time + \"ms\");\n                return host; // 直接返回找到的主机\n            }\n        } catch (e) {\n            // 这个主机失败，继续下一个\n        }\n    }\n\n    // 所有主机都不可用\n    java.longToast(\"❌ 没有可用的主机\");\n    return null;\n}\n\nfunction isVips(res) {\n    let isVIP = '';\n    let vipEndTime = res.vip_end_time;\n    let formattedDate = '';\n\n    if (vipEndTime && vipEndTime !== 0) {\n        let date = new Date(vipEndTime * 1000);\n        formattedDate = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;\n        let currentTime = Math.floor(Date.now() / 1000);\n        let remainingDays = Math.ceil((vipEndTime - currentTime) / (24 * 60 * 60));\n        if (currentTime > vipEndTime) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (已过期)`;\n        } else if (remainingDays <= 7) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} 剩余${remainingDays}天`;\n        } else {\n            if (vipEndTime < 1912946812) {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"}(${formattedDate})`;\n            } else {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (永久)`;\n            }\n        }\n    } else {\n        isVIP = '您尚未开通VIP';\n    }\n    return isVIP;\n}\n\nfunction checkStatus() {\n    java.longToast('\\n\\n♻️检测中...');\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    try {\n        res = JSON.parse(res)\n        if (res.id != undefined) {\n            result['邮箱'] = res.email\n            putLoginInfo(JSON.stringify(result))\n            let devices\n            try {\n                devices = Object.keys(JSON.parse(res.device)).length;\n            } catch (e) {\n                devices = res.device ? 1 : 0;\n            }\n            let isVip = isVips(res);\n            tips = `\n┏┅┅┅┅┅┅┱┄┄┄┄┄┄┄┄┄┄┐\n　 🧢昵称 　　　　${res.nickname.padEnd(20,\"\\t\") || \"未设置\".padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　✉️邮箱　　　　${res.email.replace(/(.{3}).*?@/,\"$1***@\").padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🔑密钥　　　　${(`${res.user_key.substring(0,4)}***${res.user_key.slice(-4)}`).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📅注册时间　　${java.timeFormat(res.register_time*1000).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🗒️今日阅读　　${(java.timeFormat(new Date()).slice(0,10)==java.timeFormat(res.last_read_time * 1000).slice(0,10)?res.day_read_count:0).toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📚累计阅读　　${res.all_read_count.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🕓最后阅读　　${(res.last_read_time != 0?java.timeFormat(res.last_read_time * 1000):'未阅读').padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📱在线设备　　${devices.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　👑会员状态　　${isVip.padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🚫封禁状态　　${res.is_banned?'已封禁':'正常　'}　　　　　　　\n┗┅┅┅┅┅┅┹┄┄┄┄┄┄┄┄┄┄┘\n`\n            java.log(tips)\n            java.longToast(tips)\n        } else {\n            throw new Error(res.msg)\n        }\n    } catch (e) {\n        //java.log(e)\n        java.toast(\"\\n检测登录失败\\n\" + e.message)\n    }\n}\n\nfunction clearDevice() {\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/clear,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    res = JSON.parse(res);\n    java.toast(res.code == 0 ? \"\\n\\n📴设备清除成功\" : res.msg)\n    Packages.java.lang.Thread.sleep(500)\n    checkStatus()\n}\n// 保存登录UI信息\nfunction putLoginInfo(info) {\n    try {\n        let key = java.androidId()\n        let encodeStr = Packages.android.util.Base64.encodeToString(java.createSymmetricCrypto(\"AES\", key).encrypt(info), 2)\n        cache.put(`userInfo_${source.getKey()}`, encodeStr)\n        return true\n    } catch (e) {\n        java.log(e)\n        return source.putLoginInfo(info)\n    }\n}\n\n// 用户后台\nfunction loginqt() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/user', '大灰狼小说后台');\n    }\n}\n\n// 用户注册\nfunction register() {\n    let base_url = getArgument('server');\n    java.startBrowserAwait(getArgument('server') + '/register', '大灰狼小说注册');\n}\n\n//登录番茄\nfunction fq_login() {\n    try {\n        cookie.removeCookie(\"snssdk.com\");\n        cookie.removeCookie(\"fanqienovel.com\")\n    } catch (e) {}\n    try {\n        java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n    } catch (e) {\n        java.toast(e)\n    }\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user\n    try {\n        user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n            method: \"GET\",\n            headers: {\n                \"Cookie\": cookie_\n            }\n        }))).data.name\n    } catch (e) {\n        java.log(e)\n    }\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"\\n\\n欢迎 \" + user + \"\\n登录成功！\")\n    return true\n}\n\n//退出登录\nfunction logout() {\n    cookie.removeCookie(\"fanqienovel.com\");\n    cookie.removeCookie(\"snssdk.com\");\n    cookie.removeCookie(\"69shuba.com\");\n    /*\n    let servers = host\n    for (let server of servers) {\n    \ttry{removeCookie(server )} catch(e){cookie.removeCookie(server )}\n    }\n    */\n    try {\n        cookie.removeCookie(getArgument('server'))\n    } catch (e) {}\n    java.toast(\"退出登录成功\");\n}\n\n//获取参数\nfunction getArgument(key) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    return open_argument[key];\n}\n\n//设置参数\nfunction setArgument(key, value) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\n// 设置本地or云端访问\nfunction get_proxy() {\n    let proxy = getArgument('proxy');\n    if (proxy == '本地') {\n        setArgument('proxy', '云端');\n        java.longToast('\\n所有数据采用\\n\\n服务器网络访问\\n\\n如果发现用不了，请切换本地网络访问，如69书吧');\n    } else {\n        setArgument('proxy', '本地');\n        java.longToast('\\n所有数据采用\\n\\n本地网络访问\\n\\n如果发现用不了，请开启网络代理，如69书吧');\n    }\n}\n\n\nfunction closeImg() {\n    let close_img = getArgument('close_img');\n    if (close_img == 'on') {\n        setArgument('close_img', 'off');\n        java.longToast('\\n显示文中图片');\n    } else {\n        setArgument('close_img', 'on');\n        java.longToast('\\n不显示文中图片');\n    }\n}\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\nfunction fxyjr() {\n    let fxyjr = getArgument('fxyjr');\n    if (fxyjr != 'on') {\n        setArgument('fxyjr', 'on');\n        java.longToast('\\n显示旧版发现页');\n    } else {\n        setArgument('fxyjr', 'off');\n        java.longToast('\\n显示新版发现页');\n    }\n}\n\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\n//首页\n//首页\nfunction api() {\n    java.startBrowserAwait('http://svip.langge.cf', \"首页\");\n}\n\n//打赏\nfunction vip() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/coffee', '大灰狼小说会员开通');\n    }\n}\n\nvar server = getArgument('server');\n\n//设置搜索媒体\nfunction set_media(media) {\n    const mediaConfig = {\n        '喜马拉雅': ['听书'],\n        '番茄': '*',\n        '福利小说': ['小说'],\n        '如漫画': ['漫画'],\n        '包子漫画': ['漫画'],\n        '九妖漫画': ['漫画'],\n        '绅士漫画': ['漫画'],\n        '福利漫画': ['漫画'],\n        '好看漫画': ['漫画'],\n        '拷贝漫画': ['漫画'],\n        '新新漫画': ['漫画'],\n        '鸟韩漫漫画': ['漫画'],\n        '武芊漫画': ['漫画'],                                \n        '六月听书': ['听书'],\n        '海洋听书': ['听书'],\n        '酷我听书': ['听书'],\n        '七猫': ['小说', '听书', '短剧'],\n        '河马': ['短剧'],\n        '超会专属短剧': ['短剧'],\n        '歪瑞古德': ['漫画'],\n        '毒舌影视': ['短剧'],\n        '全部': '*', // 允许所有模式\n        '默认': ['小说']\n    };\n\n    const source = getArgument('sources');\n    const allowedModes = mediaConfig[source] || mediaConfig['默认'];\n    let targetMedia = mediaConfig['默认'][0];\n    let isAllowed = false;\n\n    if (allowedModes === '*' || allowedModes.includes(media)) {\n        targetMedia = media;\n        isAllowed = true;\n    } else if (Array.isArray(allowedModes)) {\n        targetMedia = allowedModes[0];\n    }\n\n    const message = isAllowed ?\n        `\\n\\n已切换至：${targetMedia}\\n请重新搜索书籍！` :\n        `\\n\\n目前${source}：不支持【${media}】模式！\\n已自动切换至：${targetMedia}`;\n\n    setArgument('tab', targetMedia);\n    java.toast(message);\n}\n\n//获取搜索媒体\nfunction get_media() {\n    let media = getArgument('tab');\n    let source = getArgument('sources');\n    if (media == '') {\n        media = '全部';\n    }\n    var tishi = '\\n\\n当前服务器：' + getArgument('server')\n    java.longToast(`\\n\\n当前使用源：${source}-${media}${tishi}`);\n}\n\n\n//设置服务器\nfunction set_server() {\n    putLoginInfo(JSON.stringify(result))\n    let zdyserver;\n    let base_url = getArgument('server')\n    try {\n        zdyserver = String(result['自定义服务器(可不填)']);\n        if (zdyserver.includes('http')) {\n            setArgument('server', zdyserver);\n            if (getKey(String(cookie.getCookie(base_url)))) {\n                let cookies = cookie.getCookie(base_url)\n                try {\n                    cookie.removeCookie(base_url)\n                } catch (e) {}\n                cookie.setCookie(zdyserver, cookies)\n            }\n            java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n        } else {\n            zdyserver = '';\n        }\n    } catch (error) {\n        zdyserver = '';\n    }\n    if (!zdyserver) {\n        const servers = host\n        const currentServer = getArgument('server') || '';\n        const currentIndex = servers.indexOf(currentServer);\n\n        const nextIndex = currentIndex >= 0 ? (currentIndex + 1) % servers.length : 0;\n        const nextServer = servers[nextIndex];\n\n        setArgument('server', nextServer);\n        if (getKey(String(cookie.getCookie(currentServer)))) {\n            let cookies = cookie.getCookie(currentServer)\n            try {\n                cookie.removeCookie(currentServer)\n            } catch (e) {}\n            cookie.setCookie(nextServer, cookies)\n        }\n        java.longToast(`\\n\\n服务器【${nextIndex+1}】：${nextServer}`);\n    }\n}\n\n//获取音色\nvar tone_id = getArgument('tone_id');\n\nfunction get_tone_id(arg) {\n    var datadist = {\n        \"0\": \"默认音色\",\n        \"-1\": \"阅读模式\",\n        \"-2\": \"漫画模式\",\n        \"51\": \"多人发音\",\n        \"1\": \"甜美少女\",\n        \"2\": \"清亮青叔\",\n        \"5\": \"开朗青年\",\n        \"6\": \"温柔淑女\",\n        \"4\": \"成熟大叔\",\n        \"74\": \"大叔升级\",\n        \"30\": \"优雅御姐\"\n    };\n    var tone_id = datadist[arg] || arg;\n    var tishi = '\\n\\n当前音色：' + tone_id;\n    java.toast(tishi);\n}\n\n\n//设置来源\nfunction set_source(sources) {\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources.length > 1 && zdysources != 'undefined') {\n        java.toast('\\n\\n请先清空自定义源再设置');\n    } else {\n        setArgument('sources', sources);\n        set_media('小说');\n        java.toast(`\\n\\n当前来源已切换为:\\n${sources}\\n\\n切换后请重新搜索`);\n    }\n}\n\n// 设置简介\nfunction set_info() {\n    var info = getArgument('info');\n    if (info == 'off') {\n        setArgument('info', 'on');\n        java.toast('\\n\\n已恢复详情页详细简介');\n    } else {\n        setArgument('info', 'off');\n        java.toast('\\n\\n已精简详情页简介');\n    }\n}\n\n// 番茄段评\nfunction paracomment() {\n    var fqpara = getArgument('fqpara');\n    if (fqpara != 'on') {\n        setArgument('fqpara', 'on');\n        java.longToast(\"\\n\\n段评已开启\\n\\n长按刷新段后面的图片即可\\n\\n如果图片不显示，刷新无反应\\n请更新测试版阅读app\");\n    } else {\n        setArgument('fqpara', 'off');\n        java.longToast('\\n\\n段评已关闭');\n    }\n}\n\n// 强制搜索被禁用的源\nfunction disabledSources() {\n    var disabled_sources = getArgument('disabled_sources');\n    if (disabled_sources == '1') {\n        setArgument('disabled_sources', '0');\n        java.longToast('\\n\\n强制搜索禁用的源已关闭');\n    } else {\n        setArgument('disabled_sources', '1');\n        setArgument('sources', '全部');\n        java.longToast(\"\\n\\n强制搜索禁用的源已开启\\n\\n注意：开启后搜索时间会变长！\");\n    }\n}\n\n// 我要推荐\nfunction put_book() {\n    java.startBrowserAwait(getArgument('server') + '/put_book', '我来推荐');\n}\n\n\n// 使用教程\nfunction jc(){\n\t  let html = `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>使用教程</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n        }\n\n        body {\n            background-color: #f5f5f5;\n            padding: 20px;\n        }\n\n        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }\n\n        h1 {\n            text-align: center;\n            color: #333;\n            margin-bottom: 30px;\n            padding-bottom: 10px;\n            border-bottom: 2px solid #4CAF50;\n        }\n\n        .tutorial-card {\n            background-color: white;\n            border-radius: 8px;\n            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);\n            padding: 25px;\n            margin-bottom: 25px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .tutorial-card:hover {\n            transform: translateY(-5px);\n            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);\n        }\n\n        .card-title {\n            color: #4CAF50;\n            margin-bottom: 15px;\n            font-size: 1.4em;\n        }\n\n        .card-content {\n            line-height: 1.6;\n            color: #555;\n        }\n\n        .keyword-list {\n            background-color: #f9f9f9;\n            border-left: 4px solid #4CAF50;\n            padding: 15px;\n            margin-top: 15px;\n            border-radius: 0 4px 4px 0;\n            font-family: monospace;\n        }\n\n        .keyword-item {\n            margin-bottom: 8px;\n        }\n    </style>\n</head>\n<body>\n    <div class=\"container\">\n        <h1>使用教程</h1>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">搜索功能</h2>\n            <div class=\"card-content\">\n                <p><strong>1) 基础搜索：</strong>在发现页长按该书源，点击搜索，可直接搜索全部来源的小说。</p>\n                <p><strong>2) 进阶搜索：</strong>在“登陆-书源设置”中选择指定模式或来源，即可搜索指定内容。</p>\n                <p><strong>3) 快捷搜索：</strong>使用特殊关键词进行搜索。</p>\n                <div class=\"keyword-list\">\n                    <p class=\"keyword-item\">x:书名@来源 (例如: x:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">t:书名@来源 (例如: t:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">m:书名@来源 (例如: m:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">d:书名@来源 (例如: d:十日终焉@番茄)</p>\n                </div>\n                <p>其中，x表示小说（可省略），t表示听书，m表示漫画，d表示短剧。冒号支持中文和英文。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">发现页</h2>\n            <div class=\"card-content\">\n                <p>在书源设置中选择指定模式或者单个来源，然后刷新发现页即可。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">更多使用方式</h2>\n            <div class=\"card-content\">\n                <p>进入书源设置页面应该能一目了然。</p>\n            </div>\n        </div>\n    </div>\n</body>\n</html>`;\n\t  java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源教程');\n\t}\n\n// 书源更新\nfunction renderVersionPage() {\n    let yd = '';\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>书源更新</title>\n  <!-- Font Awesome 图标库 -->\n  <link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\" />\n  <style>\n    :root {\n      --primary-gradient: linear-gradient(135deg, #4e6ef2, #6b2dd8);\n      --latest-gradient: linear-gradient(135deg, #8e2de2 0%, #4a00e0 50%, #d4af37 100%);\n      --success-color: #28c76f;\n      --warning-color: #ff9f43;\n      --error-color: #ea5455;\n      --text-main: #1f2937;\n      --text-secondary: #6b7280;\n      --card-bg: #ffffff;\n      --border-color: #e5e7eb;\n      --light-bg: #f9fafb;\n      --shadow: 0 4px 12px rgba(78, 110, 242, 0.1);\n      --shadow-hover: 0 6px 18px rgba(78, 110, 242, 0.2);\n      --glow-shadow: 0 0 25px rgba(142, 45, 226, 0.5), 0 0 50px rgba(212, 175, 55, 0.3);\n      --modal-bg: rgba(31, 41, 55, 0.8);\n      --modal-content-bg: #ffffff;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n      font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n    }\n\n    body {\n      background: linear-gradient(135deg, #eef2ff, #f5f7ff);\n      color: var(--text-main);\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 16px;\n    }\n\n    /* 加载动画 */\n    .loading-wrapper {\n      text-align: center;\n      animation: fadeIn 0.3s ease;\n    }\n\n    .loading-spinner {\n      width: 50px;\n      height: 50px;\n      border: 4px solid rgba(78, 110, 242, 0.3);\n      border-top-color: #4e6ef2;\n      border-radius: 50%;\n      margin: 0 auto 20px;\n      animation: spin 1s linear infinite;\n    }\n\n    .loading-text {\n      color: var(--text-main);\n      font-size: 16px;\n      font-weight: 500;\n    }\n\n    @keyframes spin {\n      to { transform: rotate(360deg); }\n    }\n\n    @keyframes fadeIn {\n      from { opacity: 0; transform: translateY(20px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(30px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes pulse {\n      0%, 100% { opacity: 1; }\n      50% { opacity: 0.7; }\n    }\n\n    @keyframes gradientAnimation {\n      0% { background-position: 0% 50%; }\n      50% { background-position: 100% 50%; }\n      100% { background-position: 0% 50%; }\n    }\n\n    @keyframes breathe {\n      0%, 100% { \n        transform: scale(1);\n        box-shadow: var(--glow-shadow), var(--shadow);\n      }\n      50% { \n        transform: scale(1.02);\n        box-shadow: 0 0 30px rgba(142, 45, 226, 0.6), 0 0 60px rgba(212, 175, 55, 0.4), var(--shadow);\n      }\n    }\n\n    @keyframes shimmer {\n      0% {\n        background-position: -200% center;\n      }\n      100% {\n        background-position: 200% center;\n      }\n    }\n\n    /* 主容器 */\n    .container {\n      width: 100%;\n      max-width: 420px;\n      background: var(--card-bg);\n      border-radius: 24px;\n      overflow: hidden;\n      box-shadow: var(--shadow);\n      position: relative;\n      z-index: 1;\n      animation: slideIn 0.5s ease;\n      display: none;\n    }\n\n    /* 头部 */\n    .header {\n      background: var(--primary-gradient);\n      color: #ffffff;\n      padding: 24px 16px;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .header::before {\n      content: '';\n      position: absolute;\n      top: -30px;\n      left: -30px;\n      width: 80px;\n      height: 80px;\n      background: rgba(255, 255, 255, 0.15);\n      border-radius: 50%;\n    }\n\n    .header::after {\n      content: '';\n      position: absolute;\n      bottom: -60px;\n      right: -60px;\n      width: 150px;\n      height: 150px;\n      background: rgba(255, 255, 255, 0.1);\n      border-radius: 50%;\n    }\n\n    .header h1 {\n      font-size: 1.4rem;\n      font-weight: 700;\n      margin-bottom: 8px;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header p {\n      font-size: 0.9rem;\n      opacity: 0.9;\n      line-height: 1.4;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header-icon {\n      font-size: 48px;\n      margin-bottom: 10px;\n      display: inline-block;\n      animation: bounce 2s ease infinite;\n    }\n\n    @keyframes bounce {\n      0%, 100% { transform: translateY(0); }\n      50% { transform: translateY(-10px); }\n    }\n\n    /* 版本对比 */\n    .version-comparison {\n      display: flex;\n      flex-wrap: nowrap;\n      gap: 12px;\n      padding: 16px;\n      margin-top: 8px;\n      position: relative;\n      z-index: 10;\n    }\n\n    .version-card {\n      flex: 1;\n      min-width: 45%;\n      background: var(--card-bg);\n      border-radius: 16px;\n      padding: 28px 16px 16px;\n      box-shadow: var(--shadow);\n      text-align: center;\n      position: relative;\n      transition: transform 0.3s ease, box-shadow 0.3s ease;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n    }\n\n    .version-card:hover {\n      transform: translateY(-4px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .version-card.current-version {\n      background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 100%);\n      border: 1px solid rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version:hover {\n      box-shadow: 0 6px 20px rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version h3,\n    .version-card.current-version .version-number,\n    .version-card.current-version .version-date {\n      color: var(--text-main);\n    }\n\n    .version-card.latest-version {\n      background: var(--latest-gradient);\n      background-size: 300% 300%;\n      box-shadow: var(--glow-shadow), var(--shadow);\n      color: #fff;\n      z-index: 2;\n      animation: gradientAnimation 6s ease infinite, breathe 3s ease-in-out infinite;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .version-card.latest-version::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        90deg,\n        transparent,\n        rgba(255, 255, 255, 0.3),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: shimmer 3s infinite;\n    }\n\n    .version-card.latest-version h3,\n    .version-card.latest-version .version-number,\n    .version-card.latest-version .version-date {\n      color: #fff;\n      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n      position: relative;\n      z-index: 1;\n    }\n\n    .version-status {\n      position: absolute;\n      top: 6px;\n      right: 6px;\n      padding: 3px 7px;\n      font-size: 0.65rem;\n      font-weight: 600;\n      border-radius: 6px;\n      color: #fff;\n      line-height: 1.2;\n      white-space: nowrap;\n      z-index: 2;\n    }\n\n    .version-card.latest-version .version-status {\n      background: rgba(255, 255, 255, 0.25);\n      backdrop-filter: blur(5px);\n      border: 1px solid rgba(255, 255, 255, 0.3);\n      color: #fff;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    }\n\n    .status-outdated { background: var(--warning-color); }\n    .status-latest { background: var(--success-color); }\n    .status-invalid { background: var(--error-color); }\n\n    .version-card h3 {\n      font-size: 0.9rem;\n      color: var(--text-secondary);\n      margin-bottom: 8px;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n    }\n\n    .version-number {\n      font-size: 1.25rem;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 8px 0;\n      transition: all 0.3s ease;\n      font-family: 'Courier New', monospace;\n    }\n\n    .version-card.latest-version .version-number {\n      font-size: 1.4rem;\n      transform: scale(1.05);\n      text-shadow: \n        0 2px 4px rgba(0, 0, 0, 0.3),\n        0 0 10px rgba(212, 175, 55, 0.8),\n        0 0 20px rgba(212, 175, 55, 0.5);\n      animation: pulse-glow 2s ease-in-out infinite;\n    }\n\n    @keyframes pulse-glow {\n      0%, 100% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 10px rgba(212, 175, 55, 0.8),\n          0 0 20px rgba(212, 175, 55, 0.5);\n      }\n      50% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 15px rgba(212, 175, 55, 1),\n          0 0 30px rgba(212, 175, 55, 0.7);\n      }\n    }\n\n    .version-date {\n      font-size: 0.8rem;\n      color: var(--text-secondary);\n      margin-top: 4px;\n    }\n\n    /* 版本对比指示器 */\n    .version-indicator {\n      position: absolute;\n      left: 50%;\n      top: 50%;\n      transform: translate(-50%, -50%);\n      z-index: 5;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n      color: white;\n    }\n\n    .version-indicator.update-needed {\n      background: var(--error-color);\n      box-shadow: 0 2px 8px rgba(234, 84, 85, 0.4);\n      animation: pulse-indicator 1.5s infinite;\n    }\n\n    .version-indicator.is-latest {\n      background: var(--success-color);\n      box-shadow: 0 2px 8px rgba(40, 199, 111, 0.4);\n    }\n\n    @keyframes pulse-indicator {\n      0% { transform: translate(-50%, -50%) scale(1); }\n      50% { transform: translate(-50%, -50%) scale(1.1); }\n      100% { transform: translate(-50%, -50%) scale(1); }\n    }\n\n    /* 内容区 */\n    .content-container {\n      padding: 16px;\n    }\n\n    /* 状态提示 */\n    .status-alert {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      padding: 12px 16px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      font-weight: 500;\n      font-size: 14px;\n      animation: slideIn 0.5s ease 0.3s backwards;\n    }\n\n    .status-alert i {\n      font-size: 20px;\n    }\n\n    .status-alert.update-available {\n      background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);\n      color: #d63031;\n      box-shadow: 0 4px 15px rgba(253, 203, 110, 0.4);\n    }\n\n    .status-alert.up-to-date {\n      background: linear-gradient(135deg, #55efc4 0%, #00b894 100%);\n      color: white;\n      box-shadow: 0 4px 15px rgba(0, 184, 148, 0.4);\n    }\n\n    /* 更新容器 */\n    .update-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.4s backwards;\n    }\n\n    .update-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n    }\n\n    .update-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .update-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .update-tag {\n      background: rgba(78, 110, 242, 0.1);\n      color: #4e6ef2;\n      padding: 4px 8px;\n      border-radius: 8px;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .update-content {\n      padding: 16px;\n    }\n\n    .update-date {\n      font-weight: 600;\n      color: #4e6ef2;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      padding: 8px 0;\n      border-bottom: 1px dashed #e0e0e0;\n    }\n\n    .update-text {\n      margin: 8px 0;\n      position: relative;\n      padding-left: 16px;\n      line-height: 1.5;\n      color: var(--text-main);\n      font-size: 0.95rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .update-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      font-weight: bold;\n      color: #4e6ef2;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 历史日志 */\n    .history-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.5s backwards;\n    }\n\n    .history-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n      cursor: pointer;\n      user-select: none;\n    }\n\n    .history-header:hover {\n      opacity: 0.8;\n    }\n\n    .history-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .history-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .toggle-history {\n      background: none;\n      border: none;\n      color: var(--text-secondary);\n      cursor: pointer;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.85rem;\n      transition: color 0.2s ease;\n    }\n\n    .toggle-history:hover {\n      color: #4e6ef2;\n    }\n\n    .history-content {\n      padding: 0 16px;\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 0.4s ease, padding 0.4s ease;\n    }\n\n    .history-content.expanded {\n      max-height: 60vh;\n      overflow-y: auto;\n      padding: 16px;\n      scrollbar-width: thin;\n      scrollbar-color: #4e6ef2 #f0f0f0;\n    }\n\n    .history-content.expanded::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-track {\n      background: #f0f0f0;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb {\n      background: #4e6ef2;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb:hover {\n      background: #3a56d0;\n    }\n\n    .history-item {\n      margin-bottom: 16px;\n      padding-bottom: 16px;\n      border-bottom: 1px dashed var(--border-color);\n    }\n\n    .history-item:last-child {\n      border-bottom: none;\n      margin-bottom: 0;\n      padding-bottom: 0;\n    }\n\n    .history-date {\n      font-weight: 600;\n      color: var(--text-main);\n      margin-bottom: 8px;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.9rem;\n      background: rgba(78, 110, 242, 0.05);\n      padding: 6px 10px;\n      border-radius: 6px;\n    }\n\n    .history-text {\n      margin: 8px 0;\n      padding-left: 16px;\n      line-height: 1.4;\n      color: var(--text-secondary);\n      position: relative;\n      font-size: 0.9rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .history-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      color: #4e6ef2;\n      font-weight: bold;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 按钮组 */\n    .button-group {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-bottom: 16px;\n    }\n\n    .button {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      padding: 14px 28px;\n      text-align: center;\n      font-size: 1rem;\n      border: none;\n      border-radius: 12px;\n      text-decoration: none;\n      background: var(--primary-gradient);\n      color: white;\n      font-weight: 600;\n      transition: all 0.3s ease;\n      box-shadow: var(--shadow);\n      position: relative;\n      overflow: hidden;\n      cursor: pointer;\n    }\n\n    .button i {\n      font-size: 1rem;\n    }\n\n    .button::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: rgba(255, 255, 255, 0.1);\n      transform: rotate(30deg);\n      transition: all 0.6s ease;\n      pointer-events: none;\n    }\n\n    .button:hover {\n      transform: translateY(-3px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .button:hover::after {\n      transform: rotate(30deg) translate(20%, 20%);\n    }\n\n    .button:active {\n      transform: scale(0.95);\n    }\n\n    /* 错误状态 */\n    .error-state {\n      text-align: center;\n      padding: 40px 20px;\n      color: var(--text-main);\n    }\n\n    .error-icon {\n      font-size: 64px;\n      margin-bottom: 20px;\n      color: var(--error-color);\n    }\n\n    .error-text {\n      font-size: 16px;\n      line-height: 1.6;\n      margin-bottom: 20px;\n    }\n\n    .retry-button {\n      background: var(--primary-gradient);\n      color: white;\n      padding: 12px 30px;\n      border-radius: 12px;\n      border: none;\n      font-weight: 600;\n      cursor: pointer;\n      transition: all 0.3s ease;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n\n    .retry-button:hover {\n      transform: translateY(-2px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .retry-button:active {\n      transform: scale(0.95);\n    }\n\n    /* 装饰元素 */\n    .decoration {\n      position: absolute;\n      z-index: 0;\n      pointer-events: none;\n    }\n\n    .decoration.circle {\n      width: 120px;\n      height: 120px;\n      border-radius: 50%;\n      background: rgba(107, 45, 216, 0.05);\n      top: 10%;\n      left: 10%;\n    }\n\n    .decoration.square {\n      width: 80px;\n      height: 80px;\n      transform: rotate(45deg);\n      background: rgba(78, 110, 242, 0.05);\n      bottom: 10%;\n      right: 10%;\n    }\n\n    /* 响应式 */\n    @media (max-width: 768px) {\n      body {\n        padding: 12px;\n      }\n\n      .container {\n        max-width: 100%;\n        border-radius: 20px;\n      }\n\n      .header {\n        padding: 20px 15px;\n      }\n\n      .header h1 {\n        font-size: 1.3rem;\n      }\n\n      .header-icon {\n        font-size: 40px;\n      }\n\n      .version-comparison {\n        flex-direction: row;\n        flex-wrap: nowrap;\n        gap: 10px;\n        padding: 12px;\n        margin-top: 6px;\n        overflow-x: auto;\n      }\n\n      .version-card {\n        min-width: 45%;\n        padding: 26px 12px 12px;\n      }\n\n      /* 移动端减弱呼吸动效 */\n      .version-card.latest-version {\n        animation: gradientAnimation 6s ease infinite;\n      }\n\n      .version-status {\n        top: 5px;\n        right: 5px;\n        padding: 2px 5px;\n        font-size: 0.6rem;\n      }\n\n      .version-number {\n        font-size: 1.1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.2rem;\n      }\n\n      .update-header h2, .history-header h2 {\n        font-size: 0.9rem;\n      }\n\n      .button {\n        padding: 12px 24px;\n        font-size: 0.95rem;\n      }\n\n      .history-content.expanded {\n        max-height: 50vh;\n        -webkit-overflow-scrolling: touch;\n      }\n    }\n\n    @media (max-width: 380px) {\n      .header h1 {\n        font-size: 1.2rem;\n      }\n\n      .version-number {\n        font-size: 1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.1rem;\n      }\n\n      .button {\n        padding: 11px;\n        font-size: 0.9rem;\n      }\n    }\n  </style>\n</head>\n<body>\n  <div class=\"decoration circle\"></div>\n  <div class=\"decoration square\"></div>\n\n  <div id=\"loading\" class=\"loading-wrapper\">\n    <div class=\"loading-spinner\"></div>\n    <div class=\"loading-text\"><i class=\"fas fa-search\"></i> 正在检查更新...</div>\n  </div>\n\n  <div class=\"container\" id=\"container\">\n    <div class=\"header\">\n      <div class=\"header-icon\"><i class=\"fas fa-book\"></i></div>\n      <h1>大灰狼书源更新</h1>\n      <p>推荐使用阅读Sigma版本<br>正式版可能存在兼容性问题-<a href='https://legado.langge.cf'>下载</a></p>\n    </div>\n\n    <div class=\"version-comparison\">\n      <div class=\"version-card current-version\">\n        <div class=\"version-status status-outdated\" id=\"currentStatus\">待检查</div>\n        <h3><i class=\"fas fa-cube\"></i> 当前版本</h3>\n        <div class=\"version-number\" id=\"currentVersion\">-</div>\n        <div class=\"version-date\">您的当前版本</div>\n      </div>\n\n      <div class=\"version-indicator update-needed\" id=\"versionIndicator\" style=\"display: none;\">\n        <i class=\"fas fa-arrow-right\"></i>\n      </div>\n\n      <div class=\"version-card latest-version\">\n        <div class=\"version-status status-latest\" id=\"latestStatus\">最新版本</div>\n        <h3><i class=\"fas fa-star\"></i> 最新版本</h3>\n        <div class=\"version-number\" id=\"latestVersion\">-</div>\n        <div class=\"version-date\">可用最新版本</div>\n      </div>\n    </div>\n\n    <div class=\"content-container\">\n      <div class=\"status-alert\" id=\"statusAlert\" style=\"display: none;\"></div>\n\n      <div id=\"latestLogContainer\" style=\"display: none;\">\n        <div class=\"update-container\">\n          <div class=\"update-header\">\n            <h2><i class=\"fas fa-bolt\"></i> 最新更新</h2>\n            <div class=\"update-tag\">最新发布</div>\n          </div>\n          <div class=\"update-content\">\n            <div class=\"update-date\" id=\"latestLogDate\"></div>\n            <div class=\"update-text\" id=\"latestLogContent\"></div>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"button-group\" id=\"buttonGroup\" style=\"display: none;\"></div>\n\n      <div class=\"history-container\" id=\"logs\" style=\"display: none;\">\n        <div class=\"history-header\" onclick=\"toggleLogs()\">\n          <h2><i class=\"fas fa-history\"></i> 历史更新 <span id=\"historyCount\"></span></h2>\n          <button class=\"toggle-history\" id=\"toggleButton\">\n            <span id=\"toggleText\">展开历史</span>\n            <i class=\"fas fa-chevron-down\" id=\"toggleIcon\"></i>\n          </button>\n        </div>\n        <div class=\"history-content\" id=\"logList\"></div>\n      </div>\n    </div>\n  </div>\n\n  <script>\n  let logsCollapsed = true;\n\n  function toggleLogs() {\n    logsCollapsed = !logsCollapsed;\n    const logList = document.getElementById('logList');\n    const toggleText = document.getElementById('toggleText');\n    const toggleIcon = document.getElementById('toggleIcon');\n    \n    if (logsCollapsed) {\n      logList.classList.remove('expanded');\n      toggleText.textContent = '展开历史';\n      toggleIcon.className = 'fas fa-chevron-down';\n    } else {\n      logList.classList.add('expanded');\n      toggleText.textContent = '收起历史';\n      toggleIcon.className = 'fas fa-chevron-up';\n    }\n  }\n\n  (async function() {\n    const loading = document.getElementById('loading');\n    const container = document.getElementById('container');\n    const currentVersion = document.getElementById('currentVersion');\n    const latestVersion = document.getElementById('latestVersion');\n    const currentStatus = document.getElementById('currentStatus');\n    const latestStatus = document.getElementById('latestStatus');\n    const versionIndicator = document.getElementById('versionIndicator');\n    const statusAlert = document.getElementById('statusAlert');\n    const buttonGroup = document.getElementById('buttonGroup');\n    const latestLogContainer = document.getElementById('latestLogContainer');\n    const latestLogDate = document.getElementById('latestLogDate');\n    const latestLogContent = document.getElementById('latestLogContent');\n    const logsContainer = document.getElementById('logs');\n    const logList = document.getElementById('logList');\n    const historyCount = document.getElementById('historyCount');\n\n    const localVer = '${String(localVersion)}';\n\n    // 统一的服务器配置 - 方便维护\n    const serverConfig = {\n      main: {\n        name: '主线路',\n        icon: 'rocket',\n        baseUrl: 'https://sy.langge.cf',\n        downloadPath: '/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup1: {\n        name: '备用线路1',\n        icon: 'box',\n        baseUrl: 'https://api.langge.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup2: {\n        name: '备用线路2',\n        icon: 'satellite',\n        baseUrl: 'https://20.langge.tk',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup3: {\n        name: '备用线路3',\n        icon: 'link',\n        baseUrl: 'http://219.154.201.122:5006',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup4: {\n        name: '备用线路4',\n        icon: 'bolt',\n        baseUrl: 'https://v2.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup5: {\n        name: '备用线路5',\n        icon: 'globe',\n        baseUrl: 'https://v10.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup6: {\n        name: '备用线路6',\n        icon: 'broadcast-tower',\n        baseUrl: 'https://v4.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      }\n    };\n\n    // 版本比较函数\n    function compareVersions(vs) {\n      const normalize = (v) => {\n        return v.split('.').map(n => {\n          const num = parseInt(n, 10);\n          return isNaN(num) ? 0 : num;\n        });\n      };\n\n      const parts1 = normalize(localVer);\n      const parts2 = normalize(vs);\n      const maxLength = Math.max(parts1.length, parts2.length);\n      \n      for (let i = 0; i < maxLength; i++) {\n        const num1 = parts1[i] || 0;\n        const num2 = parts2[i] || 0;\n        if (num1 > num2) return 1;\n        if (num1 < num2) return -1;\n      }\n      return 0;\n    }\n\n    async function fetchVersionData() {\n      // 使用统一配置中除主线路外的备用线路进行版本检查\n      const serversToCheck = Object.values(serverConfig).filter(s => s.baseUrl.includes('czyl.cf') || s.baseUrl.includes('219.154'));\n      \n      for (const server of serversToCheck) {\n        try {\n          const response = await fetch(server.baseUrl + '/version', { timeout: 2000 });\n          if (response.ok) {\n            return await response.json();\n          }\n        } catch (e) {\n          console.warn(\\`接口失败：\\${server.baseUrl}\\`, e);\n        }\n      }\n      throw new Error('所有更新接口都请求失败');\n    }\n\n    function showError(message) {\n      loading.innerHTML = \\`\n        <div class=\"error-state\">\n          <div class=\"error-icon\"><i class=\"fas fa-exclamation-triangle\"></i></div>\n          <div class=\"error-text\">\\${message}</div>\n          <button class=\"retry-button\" onclick=\"location.reload()\"><i class=\"fas fa-redo\"></i> 重试</button>\n        </div>\n      \\`;\n    }\n\n    try {\n      const data = await fetchVersionData();\n      const cloudVersion = String(data.version3);\n      const updateLog = data.update_log || {};\n\n      // 显示版本信息\n      currentVersion.textContent = \\`v\\${localVer}\\`;\n      latestVersion.textContent = \\`v\\${cloudVersion}\\`;\n\n      // 处理日志\n      const logEntries = Object.entries(updateLog);\n      if (logEntries.length > 0) {\n        // 显示最新日志\n        const [latestDate, latestContent] = logEntries[0];\n        latestLogDate.innerHTML = \\`<i class=\"fas fa-calendar-alt\"></i> \\${latestDate}\\`;\n        latestLogContent.textContent = latestContent;\n        latestLogContainer.style.display = 'block';\n\n        // 显示历史日志\n        if (logEntries.length > 1) {\n          const historyLogs = logEntries.slice(1);\n          historyCount.textContent = \\`(\\${historyLogs.length}条)\\`;\n          logList.innerHTML = historyLogs.map(([date, content]) => \\`\n            <div class=\"history-item\">\n              <div class=\"history-date\">\n                <i class=\"fas fa-calendar-day\"></i>\n                <span>\\${date}</span>\n              </div>\n              <div class=\"history-text\">\\${content}</div>\n            </div>\n          \\`).join('');\n          logsContainer.style.display = 'block';\n        }\n      }\n\n      // 检查更新状态\n      const compareResult = compareVersions(cloudVersion);\n      \n      // 显示版本指示器\n      versionIndicator.style.display = 'flex';\n      \n      if (compareResult === -1) {\n        // 需要更新\n        currentStatus.textContent = '待更新';\n        currentStatus.className = 'version-status status-outdated';\n        versionIndicator.className = 'version-indicator update-needed';\n        versionIndicator.innerHTML = '<i class=\"fas fa-arrow-right\"></i>';\n\n        // 使用统一配置生成下载按钮\n        buttonGroup.innerHTML = Object.values(serverConfig).map(server => {\n          const fullUrl = server.baseUrl + server.downloadPath;\n          return \\`\n            <a href=\"yuedu://booksource/importonline?src=\\${encodeURIComponent(fullUrl)}\" class=\"button\">\n              <i class=\"fas fa-\\${server.icon}\"></i>\n              <span>\\${server.name}</span>\n            </a>\n          \\`;\n        }).join('');\n        buttonGroup.style.display = 'flex';\n      } else {\n        // 已是最新版本\n        currentStatus.textContent = '最新';\n        currentStatus.className = 'version-status status-latest';\n        versionIndicator.className = 'version-indicator is-latest';\n        versionIndicator.innerHTML = '<i class=\"fas fa-check\"></i>';\n        \n        statusAlert.className = 'status-alert up-to-date';\n        statusAlert.innerHTML = '<i class=\"fas fa-check-circle\"></i> <div>您已是最新版本</div>';\n        statusAlert.style.display = 'flex';\n      }\n\n      // 显示主容器，隐藏加载\n      loading.style.display = 'none';\n      container.style.display = 'block';\n\n    } catch (err) {\n      console.error('版本检查失败：', err);\n      showError('<i class=\"fas fa-exclamation-circle\"></i> 检查更新失败，请稍后重试<br><small>' + err.message + '</small>');\n    }\n  })();\n  </script>\n</body>\n</html>\n`;\n    java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源更新');\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "1",
      "coverUrl": "$.thumb_url",
      "init": "<js>\nif (String(baseUrl).startsWith(\"data:\")) {\n    let res = JSON.parse(java.hexDecodeToString(result));\n    let book_id = res.book_id;\n    let tab = res.tab;\n    let sources = res.sources;\n    let url = res.url;\n    let html = \"\";\n    let proxy = getArguments(source.getVariable(), \"proxy\");\n    if (url != \"\" && proxy == \"本地\") {\n        if (sources == '69书吧') {\n            let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n            let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };            \n             let op = JSON.stringify({\n                \"headers\": headers\n            });\n            html = java.ajax(`${url},${op}`);\n        } else {\n            html = java.ajax(url);\n        }\n        //java.log(html);\n        if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n            cookie.removeCookie('https://www.69shuba.com');\n            java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n            html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n             java.log(html);\n        }\n    }\n    let base_url = getArguments(source.getVariable(), \"server\");\n    let op = {\n        method: \"POST\",\n        body: {\n            html: html\n        }\n    };\n    op = JSON.stringify(op);\n    let varia = String(book.getVariable('custom'));\n    if (varia == 'null') {\n        varia = '';\n    }\n    varia = JSON.stringify({\n        'custom': varia\n    });\n    //varia = java.base64Encode(varia);\n    java.log(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n    try {\n        result = java.ajax(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n        JSON.parse(result);\n    } catch(_err) {\n        for (var _i = 0; _i < host.length; _i++) {\n            if (host[_i] === base_url) continue;\n            try {\n                result = java.ajax(`${host[_i]}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n                JSON.parse(result);\n                setArguments(\"server\", host[_i]);\n                java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n                break;\n            } catch(_e2) { continue; }\n        }\n    }\n}\nresult\n</js>$.data",
      "intro": "<js>\nlet {\n    book_id,\n    source: sources,\n    tab,\n    book_tts,\n    tags,\n    role,\n    last_chapter_title,\n    last_chapter_update_time,\n    word_number,\n    status,\n    score,\n    abstract,\n    copyright_info\n} = result;\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (proxy == \"本地\") {\n    proxy = \"本地网络\";\n} else {\n    proxy = \"服务器网络\";\n}\njava.put(\"book_detail\", JSON.stringify(result));\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet key3 = \"\";\ntry {\n    let cookieValue =\n        String(cookie.getCookie(base_url)) || String(java.getCookie(base_url));\n    key3 = getKey(cookieValue);\n} catch (e) {\n    key3 = \"\";\n}\n\nif (key3 == \"\") {\n    java.log(\"当前服务器未查询到登录状态，尝试查询其他服务器登录状态...\");\n    let cookieValue;\n    for (let h of host) {\n        try {\n            cookieValue = String(cookie.getCookie(h)) || String(java.getCookie(h));\n            key3 = getKey(cookieValue);\n        } catch (e) {\n            key3 = \"\";\n        }\n        if (key3) {\n            java.log(`已在${h}登录，退出查询，正在转移登录状态到当前服务${base_url}`);\n            //java.log(cookieValue)\n            cookie.removeCookie(h);\n            cookie.removeCookie(base_url);\n            cookie.setCookie(base_url, cookieValue);\n            break;\n        }\n    }\n}\n\nif (book.readConfig == null || book.readConfig.useReplaceRule == null) {\n    book.setUseReplaceRule(false);\n}\n\nlet nickname = '账号状态：⚠️ 未登录 | 点击右上角 🔖 登录';\ntry {\n    let opcx = {\n        method: \"GET\",\n        headers: {\n            cookie: 'qttoken=' + key3 + ';'\n        },\n    };\n    opcx = JSON.stringify(opcx);\n    let user_info = JSON.parse(java.ajax(base_url + '/get_avatar,' + opcx));\n    if (user_info.code == 0) {\n        if (user_info.nickname) {\n            nickname = '欢迎回来：' + user_info.nickname\n        } else {\n            nickname = '欢迎回来：' + user_info.email + \"(请前往用户后台设置用户名)\"\n        }\n    }\n} catch (e) {\n    if (key) {\n        nickname = '账号状态：已登录'\n    }\n};\n\nlet loginStatus = nickname;\n\nlet lightDivider = \"❇️───────❇️───────❇️\";\nlet heavyDivider = \"&lrm;\\n&lrm;\";\n\nlet isValid = (value) => String(value).length > 1;\nlet ctitle = book.durChapterTitle || '未开始';\nlet info = `\n    📡 当前服务：${base_url}\n    🔑 ${loginStatus}\n    🏷 数据来源：${sources}\n    🔄 当前模式：${tab}\n    ⚙️ 访问模式：${proxy}\n    📖 阅读至：${ctitle}\n`;\n\nif (tab == \"听书\") {\n    //let toneId = getArguments(source.getVariable(), \"tone_id\");\n    let toneId = String(book.getVariable('custom'));\n    if (toneId == '') {\n    \ttoneId= '4';\n    \t}\n    if (isValid(book_tts)) {\n        info += `${lightDivider}\n    🎵 音色配置：${toneId}\n    ✨ AI音色请点击右上角书籍变量填写相关值，真人听书请重新搜索选择带有主播的书籍\n    ${book_tts}\n`;\n    }\n}\n\nlet basicInfo = \"\";\nlet addBasicInfo = (value, prefix, icon) => {\n    if (isValid(value)) basicInfo += `    ${icon} ${prefix} ${value}\\n`;\n};\n\naddBasicInfo(tags, \"书籍分类：\", \"🌈\");\naddBasicInfo(role, \"书籍主角：\", \"👑\");\naddBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\naddBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\naddBasicInfo(word_number, \"书籍字数：\", \"📊\");\naddBasicInfo(status, \"书籍状态：\", \"🚩\");\naddBasicInfo(score, \"书籍评分：\", \"⭐\");\n\nif (basicInfo) info += `${lightDivider}\\n${basicInfo}`;\n\nif (isValid(abstract)) {\n    let indentedAbstract = abstract\n        .split(\"\\n\")\n        .map((line) => `    ${line}`)\n        .join(\"\\n\");\n    info += `${heavyDivider}\n    📖 书籍简介：\n${indentedAbstract}\n`;\n} else {\n    info += `${heavyDivider}`;\n}\n\nif (isValid(copyright_info)) {\n    info += `${lightDivider}\n    © ${copyright_info}\n`;\n} else {\n    info += `${lightDivider}`;\n}\n\ninfo += `\n${heavyDivider}\n    💠💠💠 数据更新于 ${new Date().toLocaleString()} 💠💠💠\n`;\nlet jjinfo = getArguments(source.getVariable(), \"info\");\n\nif (jjinfo != \"off\") {\n    info = String(info)\n        .split(\"\\n\")\n        .map((line) => line.replace(/^ {4}/, \"\"))\n        .join(\"\\n\");\n} else {\n    basicInfo = \"\";\n    addBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\n    addBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\n    addBasicInfo(word_number, \"书籍字数：\", \"📊\");\n    addBasicInfo(status, \"书籍状态：\", \"🚩\");\n    addBasicInfo(score, \"书籍评分：\", \"⭐\");\n    if (isValid(abstract)) {\n        let indentedAbstract = abstract\n            .split(\"\\n\")\n            .map((line) => `    ${line}`)\n            .join(\"\\n\");\n        basicInfo += `\n    \\n&lrm;\n    📖 书籍简介：\n${indentedAbstract}\n`;\n    } else {\n        basicInfo += `${heavyDivider}`;\n    }\n    info = `&lrm;\\n🏷 数据来源：${sources}\\n` + basicInfo;\n}\n</js>",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}} {{$.last_chapter_update_time}}",
      "name": "$.book_name",
      "tocUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || \"小说\";\nlet url = result.toc_url || \"\";\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (fqcookie) {\n    fqssionid = getSessionId(fqcookie);\n};\nsetArguments('fqssionid', fqssionid);\njava.put(\"tab\", tab);\njava.put(\"book_id\", book_id);\nlet qtcatalog = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcatalog = java.base64Encode(JSON.stringify(qtcatalog));\n`data:;base64,${qtcatalog},{\"type\":\"qingtian2\"}`;\n</js>",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "<js>\njava.log(result)\nresult = String(java.hexDecodeToString(result));\nlet res;\nif (result.match(/大灰狼融合/)) {\n    result = result.split(\"大灰狼融合4\");\n    res = {\n        item_id: result[0],\n        tab: result[1],\n        title: result[2],\n        sources: result[3],\n        url: \"\"\n    };\n} else {\n    res = JSON.parse(result);\n}\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n    \n    return isModified;\n}\n\nvar islyc = checkEnv();\ntry {\nif (islyc) {\n\tbook.imageStyle = 'FULL';\n\t} else {\n\t\tbook.imageStyle = 'TEXT';\n\t\t}\n} catch {}\nlet varia1 = String(book.getVariable('custom'));\nif (varia1 == 'null') {\n    varia1 = '';\n}\nlet varia = JSON.stringify({\n    'custom': varia1\n});\n//  varia = java.base64Encode(varia);\nlet book_id = res.book_id;\nlet item_id = res.item_id;\nlet tab = res.tab;\nlet title = res.title;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        java.log(url);\n        java.log(op);\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n    java.log('dddddddddddddddddddddddddddd')\n    java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧' && book.durChapterIndex === chapter.index) {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n        java.log('cscscscs')\n        java.log(html);\n    }\n};\nlet content = \"\";\nlet data;\n//let tone_id = getArguments(source.getVariable(), \"tone_id\");\nlet tone_id = varia1;\nif (tone_id == '') {\n    tone_id = '4';\n}\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet fqpara = getArguments(source.getVariable(), \"fqpara\");\nlet close_img = getArguments(source.getVariable(), \"close_img\");\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nlet qtcookie = cookie.getCookie(base_url);\ntry {\n\t   let device2 = String(cookie.getKey(base_url, \"device\"));\n\t   if (!device2){\n\t   \tdevice2 = device;\n\t   \t}\n    qtcookie = `qttoken=${String(cookie.getKey(base_url, \"qttoken\"))}; deviceId=${device2};`\n} catch (e) {java.log(e)}\n\nvar params = {\n    html: html,\n    item_id: item_id,\n    source: sources,\n    tab: tab,\n    tone_id: tone_id,\n    variable: varia,\n    version: '4.11.5.1'\n};\n\nvar content_url = '/content';\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara && tab == \"小说\") {\n    content_url = '/content?review=1';\n}\n\n//var signInfo = generateComplexSignature('POST', content_url, {}, APP_SECRET, params);\n\n\n//var signedParams = copyObject(params);\n//signedParams.timestamp = signInfo.timestamp;\n//signedParams.nonce = signInfo.nonce;\n//signedParams.sign = signInfo.sign;\n\n\nvar op = {\n    method: \"POST\",\n    body: JSON.stringify(params),\n    headers: {\n        cookie: qtcookie,\n        'Content-Type': 'application/json'\n    }\n};\n\nop = JSON.stringify(op);\njava.log(op);\njava.log(cookie.getCookie(base_url))\ntry {\n    data = java.ajax(base_url + content_url + `,${op}`);\n    JSON.parse(data);\n} catch(_err) {\n    for (var _i = 0; _i < host.length; _i++) {\n        if (host[_i] === base_url) continue;\n        try {\n            data = java.ajax(host[_i] + content_url + `,${op}`);\n            JSON.parse(data);\n            setArguments(\"server\", host[_i]);\n            try { var _oldCk = cookie.getCookie(base_url); if (_oldCk) cookie.setCookie(host[_i], _oldCk); } catch(_ce) {}\n            base_url = host[_i];\n            java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n            break;\n        } catch(_e2) { continue; }\n    }\n}\ntry {\n    data = JSON.parse(data);\n    if (data.msg) {\n        java.toast(data.msg);\n    }\n} catch (e) {}\ncontent = data.content\n\nif (close_img == 'on') {\n\tcontent = removeAllImgTags(content);\n\t}\n\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara == \"on\" && tab == \"小说\") {\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    content = content\n        .replace(/ident=\"/g, 'ident=\"' + base_url)\n        .replace(/book_id=/g, 'book_id=' + book_id + '&ssionid=' + fqssionid);\n    if (device_type == \"苹果\") {\n        content = paraForiOS(content, sources);\n    } else {\n        content = paraForAndroid(content, sources,islyc);\n    }\n}\ndata = JSON.stringify({\n    content: content,\n});\nif (device_type == \"安卓\" && (tab == \"短剧\" || tab == \"视频\" || sources.includes('毒舌影视') || sources.includes('NT动漫'))) {\n    data = {\n        content: `【右上角刷新】开启播放(下一集请切换下一章刷新)\\n播放直链：\\n${content}`,\n    };\n    data = JSON.stringify(data);\n    if (book.durChapterIndex === chapter.index) {\n        let video_url = `${base_url}/online_video?book_id=${book_id}&source=${sources}&tab=${tab}`;\n        if (sources.includes('毒舌影视') || sources.includes('NT动漫')) {\n            video_url = content;\n        };\n        java.startBrowser(video_url, title);\n        java.toast(\"正在加载视频...\");\n    }\n\n}\ndata;\n</js>$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.category}}\n{{$.score}}\n{{$.status}}\n{{$.source}}\n{{$.tags}}",
      "lastChapter": "{{$.last_chapter_title}} • {{$.last_update_time}}",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "checkKeyWord": "我的26岁女房客@番茄",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "<js>\nlet res = JSON.parse(java.hexDecodeToString(result));\nif (res.method) {\n    res = Object.fromEntries(\n        res.body\n        .replace(\"source\", \"sources\")\n        .split(\"&\")\n        .map((query) => query.split(\"=\"))\n    );\n    res.url = \"\";\n}\nlet book_id = res.book_id;\njava.put('book_id', book_id);\nlet tab = res.tab;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        html = java.ajax(`${url},${op}`);    \n    } else {\n        html = java.ajax(url);\n    }\n    //java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n           java.log(html);\n    }\n};\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet op = {\n    method: \"POST\",\n    body: {\n        html: html\n    }\n};\nop = JSON.stringify(op);\nlet varia = String(book.getVariable('custom'));\nif (varia == 'null') {\n    varia = '';\n}\nvaria = JSON.stringify({\n    'custom': varia\n});\n// varia = java.base64Encode(varia);\n//java.log(`${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\nlet data = java.ajax(\n    `${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`\n);\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nif (tab == \"小说\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n} else if (tab == \"听书\") {\n    if (device_type == \"安卓\") {\n        book.type = 32;\n    } else {\n        book.type = 1;\n    }\n} else if (tab == \"漫画\") {\n    if (device_type == \"安卓\") {\n        book.type = 64;\n    } else {\n        book.type = 2;\n    }\n} else if (tab == \"短剧\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 3;\n    }\n} else {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet reading = getArguments(source.getVariable(), \"reading\");\n\nif (book && book.order != 0 && reading == '1') {\n    try {\n        if (!data || !book.variable || !base_url || !qtcookie) {\n            java.log('缺少必要参数');\n        } else {\n            let parsedData;\n            try {\n                parsedData = JSON.parse(data);\n            } catch (e) {\n                java.log('解析data数据失败:' + e);\n            }\n            \n            if (parsedData && parsedData.data && Array.isArray(parsedData.data) && parsedData.data[book.durChapterIndex]) {\n                let ritem = parsedData.data[book.durChapterIndex];\n                let bookInfoObj;\n                try {\n                    bookInfoObj = JSON.parse(book.variable);\n                } catch (e) {\n                    java.log('解析book.variable失败:' + e);\n                }\n                \n                if (bookInfoObj) {\n                    let book_info;\n                    try {\n                        book_info = JSON.parse(bookInfoObj.book_detail || JSON.stringify(bookInfoObj));\n                    } catch (e) {\n                        java.log('解析book_detail失败:' + e);\n                    }\n                    \n                    if (book_info && typeof book_info === 'object') {\n                        let rurl = base_url + '/add_book_to_book_shelf,';\n                        book_info['read_status'] = 1;\n                        book_info['last_chapter_item_id'] = ritem.item_id || '';\n                        book_info['last_chapter_title'] = ritem.title || '';\n                        let rop = {\n                            method: \"POST\",\n                            headers: {\n                                cookie: qtcookie\n                            },\n                            body: book_info\n                        };\n                        let check_book_url = base_url + '/check_book_in_book_shelf,';\n                        let checkResponse;\n                        \n                        try {\n                            checkResponse = java.ajax(check_book_url + JSON.stringify(rop));\n                        } catch (e) {\n                            java.log('检查书籍请求失败:' + e);\n                        }\n                        \n                        if (checkResponse) {\n                            let check_data;\n                            try {\n                                check_data = JSON.parse(checkResponse).data;\n                            } catch (e) {\n                                java.log('解析检查响应失败:' + e);\n                            }\n                            try {\n                                if (check_data && check_data.id) {\n                                    book_info['id'] = check_data.id;\n                                    let uurl = base_url + '/update_book_shelf,';\n                                    java.ajax(uurl + JSON.stringify(rop));\n                                } else {\n                                    java.ajax(rurl + JSON.stringify(rop));\n                                }\n                            } catch (e) {\n                                java.log('书架操作失败:' + e);\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    } catch (error) {\n        java.log('书籍同步流程异常:' + error);\n        java.longToast('\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。');\n    }\n}\ndata;\n</js>$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet tab = result.tab;\nlet sources = result.source;\nlet title = result.title;\nlet item_id = result.item_id;\nlet book_id = java.get(\"book_id\");\nlet url = result.toc_url || \"\";\nlet qtcontent = {\n    book_id: book_id,\n    item_id: item_id,\n    title: title,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcontent = java.base64Encode(JSON.stringify(qtcontent));\nif (sources == '卷') {\n    content_url = item_id\n} else if ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\") && tab == \"小说\") {\n    var base_url = getArguments(source.getVariable(), \"server\") || \"\";\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    let sourcess = sources.replace('svip_', '');\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\",\"js\":\"book ? result : '${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&ssionid=${fqssionid}&source=${sourcess}'\"}`;\n} else {\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\"}`;\n}\n</js>",
      "updateTime": "$.first_pass_time"
    },
    "searchUrl": "<js>\nlet base_url = getArguments(source.getVariable(), 'server');\nlet media;\nlet sources = getArguments(source.getVariable(), 'sources') || getArguments(source.getVariable(), 'source');\nlet disabled_sources = getArguments(source.getVariable(), 'disabled_sources') || '0';\nif (String(key).startsWith(\"m:\") || String(key).startsWith(\"m：\")) {\n    media = \"漫画\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"t:\") || String(key).startsWith(\"t：\")) {\n    media = \"听书\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"d:\") || String(key).startsWith(\"d：\")) {\n    media = \"短剧\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"x:\") || String(key).startsWith(\"x：\")) {\n    media = \"小说\"\n    key = key.slice(2)\n} else {\n    media = getArguments(source.getVariable(), 'tab') || getArguments(source.getVariable(), 'media');\n}\nif (key.includes('@')) {\n    var parts = key.split('@');\n    key = parts[0];\n    sources = parts[1] || sources;\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet op = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\nop = JSON.stringify(op);\n`${base_url}/search?title=${key}&tab=${media}&source=${sources}&page={{page}}&disabled_sources=${disabled_sources},${op}`\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "// @author: Syiism. \n// 详细使用见书源更新日志（登录 -> 书源更新）",
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "番茄🍅",
    "bookSourceType": 0,
    "bookSourceUrl": "番茄🍅",
    "customButton": true,
    "customOrder": 12,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": true,
    "exploreUrl": "@js:\n//autoSetHost();\nfunction began() {\n  source.setVariable(JSON.stringify({\n  \t'sytj_type': '',\n  \t'sytj_title': '',\n  \t\"频道\": \"男频\",\n  \"bd_id\": 2,\n  \"tone\": \"tone_id=0\",\n  \"server_id\": 0,\n  \"server\": hosts[0],\n  \"hosts\": hosts,\n  \"type\": \"小说模式\",\n  \"module\": 3,\n  \"showPara\": false,\n  \"showChap\": false,\n  \"showBook\": true,\n  \"tone_cn\": \"\",\n  }, null, '\\t'));\n  java.toast(\"已初始化源变量！\");\n}\n\n// ===== 初始化 =====\nif (source.getVariable()==\"\") { \n    java.toast('init...');\n    began();\n}\n\nlet arr = [],\n    个人中心 = 1;\n\n// === 工具函数 ===\nlet _zwf = \"※\";\nlet numx = 3;\n\nfunction push(title, url, num, g,action) {\n    let j = {\n    title: title,\n    url: url,\n    style: {\n        layout_flexGrow: g == 0 ? g : 1,\n        layout_flexBasisPercent: num\n    }\n  }\n     if(action){\n         j.action = action.action;\n         j.name = action.name;\n         j.type = action.type;\n         j.chars = action.chars;\n         j.viewName = action.viewName;\n         j.default = action.default;      \n     }     \n     arr.push(j)\t\n}\n\nfunction zwf(len,numx,num) {\n  if(len % numx !== 0) {\n    let n = len % numx;\n    let p = numx - n;\n      \n    for(let i=0;i<p;i++) {\n      push(_zwf, '', num, 1,{\n      \"type\":\"button\",\n      \"action\":\"java.toast('这是占位符')\"});\n    }\n  }\n}\n\n// ==== 登录番茄 (个人中心) ====\nlet book_shelf_url = 'https://fanqienovel.com/reading/bookapi/bookshelf/info/v:version/?aid=1967&iid=0&version_code=57700&update_version_code=57700'\nlet book_shelf_info = JSON.parse(java.ajax(book_shelf_url + ', ' + JSON.stringify({\n  headers: {\n    'Cookie': \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : (source.getLoginInfoMap() || {})['手动登录Token']),\n  }\n})));\n\nlet username = '';\nif (book_shelf_info.code != 0) {\n  个人中心 = 0\n} else {\n  let uinfo = java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({ headers: { Cookie: \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : (source.getLoginInfoMap() || {})['手动登录Token']) } }))\n  uinfo = JSON.parse(uinfo)\n  username = uinfo.data.name\n}\n\nif (个人中心) {\n  push(username + '的个人中心', '', 1, 1, {});\n  push(\"我的书架\", \"https://fanqienovel.com/reading/bookapi/bookshelf/info/v:version/?aid=1967&iid=0&version_code=57700&update_version_code=57700&page={{page}}\", 0.4, 1, {});\n}\n\n// ===== 分类 =====\n\n// ===== API配套 ====\npush('首页推荐', '', 1, 1, {});\nlet sytjs = getSytjs();\nsytjs.forEach(x => {\n  let url = GET('server') + '/api/v1/recommend/homepage?offset=0&tab_type=' + x.tab_type;\n  push(x.title, url, 0.25, 1, {});\n});\nzwf(sytjs.length, 3, 0.25, 1);\n\n// ===== 模式 =====\nlet types = ['小说模式', '听书模式', \n//'朗读模式', \n'漫画模式', '短剧模式', '短篇模式', '漫剧模式'];\npush('模式', '', 0.4, 1, {\n  \"type\": \"select\",\n  \"chars\": types,\n  \"default\": GET('type') || '小说模式',\n  \"action\": \"java.refreshExplore()\"\n});\n\nlet modeMap = (getModuleMap())[infoMap[\"模式\"] || GET('type')];\n\nSET('bd_id', modeMap.bd_id);\nSET('module', modeMap.module);\nSET('type', infoMap[\"模式\"] || GET('type'));\n\n// 频道\nlet pds = [\"男频\", \"女频\", \"出版\"];\nlet genders = {\n    \"男频\": \"gender=1\",\n    \"女频\": \"gender=0\",\n    \"出版\": \"genre_type=160\"\n}\npush('频道', '', 0.4, 1, {\n  \"type\": \"select\",\n  \"chars\": pds,\n  \"default\": GET('频道') || \"男频\",\n  \"action\": `SET('频道', '${infoMap[\"频道\"]}');java.refreshExplore()`\n});\n\n// ===== 榜单 ====\nlet getBdUrl = (tab, id) => `${GET('server')}/api/v1/rank/7098235271900037133?offset={{(page-1)*10}}&genre_tab=${+tab}&rank_sub_info_id=2&algo_type=${+id}`;\n\npush(`【${GET('type')}】榜单`, '', 1, 1, {});\n\nlet categorys = getCategorys();\nlet sub_items = categorys[GET('bd_id')].sub_items;\n\nsub_items.forEach( x => {\n  push(x.show_name, \n  getBdUrl(GET('bd_id'), x.selector_item_id), 0.25, 1, {});\n});\nzwf(sub_items.length, numx, 0.25);\n\n//  标签\npush('🏷 标  签 🏷', '', 1, 1, {});\nlet category = () => {\n  let category_url = \"https://novel.snssdk.com/api/novel/channel/homepage/new_category/page/data/v1/?aid=13\";\nlet data = cache.get(category_url);\n\nif (data && data != '') return JSON.parse(data).data;\ndata = java.ajax(category_url);\ncache.put(category_url, data);\njava.toast('加载中...')\nreturn  JSON.parse(data).data;\n}\n\nlet dd = category();\nlet ctgs = {\n  \"男频\": dd[\"boy_category\"],\n  \"女频\": dd[\"girl_category\"],\n  \"出版\": dd[\"publish_category\"]\n};\nlet _pd = infoMap['频道'] || GET('频道');\nctgs[_pd].forEach( item => {\n    let url = `https://novel.snssdk.com/api/novel/channel/homepage/new_category/book_list/v1/?aid=1967&app_name=news_article&app_version=9.7.3&channel=tengxun_tt&creation_status=9&device_platform=android&enter_from=novel_category&novel_host&novel_version&version_code=973&version_name=9.7.3&word_count=9&os=android&device_type=ProjectTitan&os_api=29&os_version=10&offset={{(page-1)*10}}&limit=10&category_id=${item.category_id}&{genders[_pd]}`;\npush(item.category_name, url, 0.25, 1, {});\n});\nzwf(ctgs[_pd].length, numx, 0.25);\n\nJSON.stringify(arr)",
    "jsLib": "// ===== 工具函数 =====\nfunction GET(k) {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n  return d[k] || '';\n}\n\nfunction SET(k, v) {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n  d[k] = v;\n  source.putVariable(JSON.stringify(d, null, '\\t'));\n}\n\nfunction autoSetHost() {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n  \n  let resp = java.ajax(d['server']);\n  if (/true/.test(resp)) { \n    java.toast('自动切换至：\\n' + d['server']); \n    return; \n  }\n  \n  let hosts = d['hosts'];\n  let id = (d['server_id'] + 1) % hosts.length;\n  d['server'] = hosts[id];\n  d['server_id'] = id;\n  \n  source.putVariable(JSON.stringify(d, null, '\\t'));\n  autoSetHost();\n}\n\nfunction randomInt(min=0, max=14) {\n    return Math.floor(Math.random() * (max - min + 1)) + min;\n}\n// ================\n\n// ===== 段评功能() =====\nfunction getComments(content, bookId, itemId) {\n  var java = this.java, cache = this.cache;\n  try {\n    var separator = '\\n';\n    if (/<p>/.test(content)) { content = content.replace('<p>','').replace(/<\\/p>/g, '').replace('\\n', ''); separator = '<p>'; } else { content = content.replace(/\\r/g, '').replace(/\\n$/, ''); }\n    var comcont = content.split(separator);\ncomcont.forEach((item, idx) => {\ncomcont[idx] = item.replace(/[\\r\\n]/g, '').trim();\n});\n    var url = `https://fqdp.mlds.dpdns.org/api/idea/summary?book_id=${bookId}&item_id=${itemId}`;\n    var comments = JSON.parse(java.ajax(url));\n    comments = comments.data;\n\n    var commentList = [];\n\nObject.entries(comments).forEach(([paragraphId, { count }]) => {\n  commentList.push({\n    paragraphId: paragraphId,\n    textCount: count\n  });\n});\n\n    if (commentList.length == 0) { return content; }\n    commentList.forEach(function(x) {\n        if (comcont[x.paragraphId]) {\n//java.toast(JSON.stringify(x));\n            comcont[x.paragraphId] += '<img src=\"' + createSvg.call({source: this.source, java: java, cache: cache}, x.textCount, comcont[x.paragraphId], bookId, itemId, x.paragraphId) + '\">';\n        }\n    }.bind(this));\n    return comcont.join('\\n');\n  } catch (e) { java.log(e); return content; }\n}\nfunction createSvg(number, txt, bookId, itemId, para_index) {\n  var java = this.java, cache = this.cache;\n  var qpyscolor = '#A9A9A9', qpwzcolor = '#A9A9A9';\n  var displayText = number > 99 ? '99' : number;\n\nvar svg = '<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\"><g transform=\"rotate(90 512 512) scale(1 1.2)\"><path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"' + qpyscolor + '\" p-id=\"1530\"></path></g><text x=\"460\" y=\"620\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"' + qpwzcolor + '\">' + displayText + '</text></svg>';\n\n  var encodedSvg = java.base64Encode(svg);\n  return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"style\":\"text\",\"type\":\"qd\",\"click\":\"showCmt(\\'' + txt + '\\',\\'' + bookId + '\\',\\'' + itemId + '\\',\\'' + para_index + '\\',\\'' + number + '\\')\"}';\n}\n\nfunction showCmt(txt, bookId, itemId, para_index, _count) {\n\t//this.java.longToast(para_index)\n  let url = `https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html?book_id=${bookId}&item_id=${itemId}&para_id=${para_index}&api_base=https://muyangmodelscope-fanq1.ms.show&paragraph_tog=1`;\n\nthis.java.showBrowser(url, this.java.ajax('https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html'));\n}\n\nfunction getChapComments(bookId, itemId, author_user_id) {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n\nlet _url = `${d['server']}/api/v1/forum-id?author_user_id=${author_user_id}&book_id=${bookId}&item_id=${itemId}`;\nlet resp = java.ajax(_url);\n//java.longToast(resp)\nresp = JSON.parse(resp);\nlet forum_id = resp['data']['forum_data']['forum_id'];\n//java.toast(forum_id)\n\nlet url = `https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html?book_id=${bookId}&item_id=${itemId}&offset=0&count=20&author_user_id=${author_user_id}&forum_id=${forum_id}&api_base=${GET('server')}&chapter_tog=true`;\n\nthis.java.showBrowser(url, this.java.ajax('https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html'));\n}\n\nfunction showBookCom() {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n\n    var url = `https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html?book_id=${d['bookId']}&offset=0&count=20&item_id=0&api_base=${d[\"server\"]}&book_tog=true`;\n    var html = this.java.ajax('https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/comment-viewer.html');\n\n    this.java.showBrowser(url, html);\n}\n\n// =============================\n\n// 模式映射\nfunction getModuleMap() {\n  return {\n    '朗读模式': { module: \"2\", bd_id: '2' },\n    '小说模式': { module: \"3\", bd_id: '2' },\n    '听书模式': { module: \"2\", bd_id: '6' },\n    '漫画模式': { module: \"8\", bd_id: '2' },\n    '短剧模式': { module: \"11\", bd_id: '4' },\n    '短篇模式': { module: \"13\", bd_id: '7' },\n    '漫剧模式': { module: \"19\", bd_id: '5' }\n};\n}\n\n// 音色\nfunction _getTones() {\n  var data = [\n    [\"正常模式\", \"\"],\n    [\"真人\", \"tone_id=0\"],\n    [\"甜美少女\", \"tone_id=1\"],\n    [\"清亮青叔\", \"tone_id=2\"],\n    [\"成熟大叔\", \"tone_id=4\"],\n    [\"开朗青年\", \"tone_id=5\"],\n    [\"温柔淑女\", \"tone_id=6\"],\n    [\"风雅青叔\", \"tone_id=8\"],\n    [\"清纯少女\", \"tone_id=12\"],\n    [\"磁性青叔\", \"tone_id=17\"],\n    [\"推文女声\", \"tone_id=27\"],\n    [\"亲切姐姐\", \"tone_id=28\"],\n    [\"儒雅大叔\", \"tone_id=29\"],\n    [\"优雅御姐\", \"tone_id=30\"],\n    [\"斯文青叔\", \"tone_id=31\"],\n    [\"知性主播\", \"tone_id=32\"],\n    [\"多人对话\", \"tone_id=51\"],\n    [\"成熟升级\", \"tone_id=74\"],\n    [\"俏皮御姐\", \"tone_id=100\"],\n    [\"双音灵动\", \"tone_id=103\"],\n    [\"王明军音\", \"tone_id=105\"],\n    [\"音频7\", \"tone_id=7\"],\n    [\"音频9\", \"tone_id=9\"],\n    [\"音频10\", \"tone_id=10\"],\n    [\"音频11\", \"tone_id=11\"],\n    [\"音频14\", \"tone_id=14\"],\n    [\"音频15\", \"tone_id=15\"],\n    [\"音频16\", \"tone_id=16\"],\n    [\"音频18\", \"tone_id=18\"],\n    [\"音频21\", \"tone_id=21\"],\n    [\"音频22\", \"tone_id=22\"],\n    [\"音频23\", \"tone_id=23\"],\n    [\"音频26\", \"tone_id=26\"],\n    [\"音频53\", \"tone_id=53\"],\n    [\"音频55\", \"tone_id=55\"],\n    [\"音频56\", \"tone_id=56\"],\n    [\"音频57\", \"tone_id=57\"],\n    [\"音频58\", \"tone_id=58\"],\n    [\"音频59\", \"tone_id=59\"],\n    [\"音频60\", \"tone_id=60\"],\n     [\"音频61\", \"tone_id=61\"],\n     [\"音频62\", \"tone_id=62\"],\n     [\"音频63\", \"tone_id=63\"],\n     [\"音频64\", \"tone_id=64\"],\n     [\"音频67\", \"tone_id=67\"],   \n     [\"音频68\", \"tone_id=68\"],\n      [\"音频71\", \"tone_id=71\"],\n      [\"音频72\", \"tone_id=72\"],\n      [\"音频73\", \"tone_id=73\"],\n     [\"音频75\", \"tone_id=75\"],\n       [\"音频76\", \"tone_id=76\"],\n       [\"音频77\", \"tone_id=77\"],\n        [\"音频78\", \"tone_id=78\"],\n       [\"音频79\", \"tone_id=79\"],\n    [\"音频80\", \"tone_id=80\"],\n    [\"音频81\", \"tone_id=81\"],\n     [\"音频82\", \"tone_id=82\"],\n     [\"音频84\", \"tone_id=84\"],\n      [\"音频85\", \"tone_id=85\"],\n      [\"音频86\", \"tone_id=86\"],\n       [\"音频87\", \"tone_id=87\"],\n       [\"音频88\", \"tone_id=88\"],\n         [\"音频89\", \"tone_id=89\"],\n           [\"音频90\", \"tone_id=90\"],\n        [\"音频91\", \"tone_id=91\"],\n    [\"音频101\", \"tone_id=101\"],\n    [\"音频102\", \"tone_id=102\"],\n    [\"音频104\", \"tone_id=104\"],\n    [\"音频106\", \"tone_id=106\"],\n    [\"音频107\", \"tone_id=107\"],\n    [\"音频108\", \"tone_id=108\"],\n    [\"音频109\", \"tone_id=109\"],\n    [\"音频110\", \"tone_id=110\"],\n    [\"音频111\", \"tone_id=111\"],\n    [\"音频112\", \"tone_id=112\"],\n    [\"音频113\", \"tone_id=113\"],\n      [\"音频114\", \"tone_id=114\"],\n        [\"音频115\", \"tone_id=115\"],\n    [\"音频204\", \"tone_id=204\"]\n];\nreturn data;\n}\n\nfunction getCategorys() {\n  return {\n  \"2\": {\n    \"category_name\": \"小说\",\n    \"is_selected\": true,\n    \"sub_items\": [\n      {\"show_name\": \"推荐榜\", \"selector_item_id\": \"101\", \"is_selected\": true},\n      {\"show_name\": \"完本榜\", \"selector_item_id\": \"100\", \"is_selected\": false},\n      {\"show_name\": \"新书榜\", \"selector_item_id\": \"108\", \"is_selected\": false},\n      {\"show_name\": \"书友榜\", \"selector_item_id\": \"207\", \"is_selected\": false},\n      {\"show_name\": \"追更榜\", \"selector_item_id\": \"109\", \"is_selected\": false},\n      {\"show_name\": \"黑马榜\", \"selector_item_id\": \"102\", \"is_selected\": false},\n      {\"show_name\": \"礼物榜\", \"selector_item_id\": \"188\", \"is_selected\": false},\n      {\"show_name\": \"阅读榜\", \"selector_item_id\": \"111\", \"is_selected\": false}\n    ]\n  },\n  \"3\": {\n    \"category_name\": \"出版\",\n    \"is_selected\": false,\n    \"sub_items\": [\n      {\"show_name\": \"热门榜\", \"selector_item_id\": \"210\", \"is_selected\": false},\n      {\"show_name\": \"影视原著榜\", \"selector_item_id\": \"211\", \"is_selected\": false},\n      {\"show_name\": \"典藏榜\", \"selector_item_id\": \"196\", \"is_selected\": false},\n      {\"show_name\": \"知识榜\", \"selector_item_id\": \"212\", \"is_selected\": false},\n      {\"show_name\": \"名家榜\", \"selector_item_id\": \"213\", \"is_selected\": false},\n      {\"show_name\": \"飙升榜\", \"selector_item_id\": \"197\", \"is_selected\": false}\n    ]\n  },\n  \"4\": {\n    \"category_name\": \"短剧\",\n    \"is_selected\": false,\n    \"sub_items\": [\n      {\"show_name\": \"推荐榜\", \"selector_item_id\": \"503\", \"is_selected\": false},\n      {\"show_name\": \"热播榜\", \"selector_item_id\": \"504\", \"is_selected\": false},\n      {\"show_name\": \"飙升榜\", \"selector_item_id\": \"505\", \"is_selected\": false},\n      {\"show_name\": \"新剧榜\", \"selector_item_id\": \"506\", \"is_selected\": false},\n      {\"show_name\": \"热搜榜\", \"selector_item_id\": \"507\", \"is_selected\": false}\n    ]\n  },\n  \"5\": {\n    \"category_name\": \"漫剧\",\n    \"is_selected\": false,\n    \"sub_items\": [\n      {\"show_name\": \"推荐榜\", \"selector_item_id\": \"550\", \"is_selected\": false}\n    ]\n  },\n  \"6\": {\n    \"category_name\": \"听书\",\n    \"is_selected\": false,\n    \"sub_items\": [\n      {\"show_name\": \"听书榜\", \"selector_item_id\": \"201\", \"is_selected\": false}\n    ]\n  },\n  \"7\": {\n    \"category_name\": \"短篇\",\n    \"is_selected\": false,\n    \"sub_items\": [\n      {\"show_name\": \"短篇榜\", \"selector_item_id\": \"601\", \"is_selected\": false}\n    ]\n  }\n};\n}\n\nfunction getSytjs() {\n  return [\n  {\"tab_type\": 2, \"title\": \"推荐\"},\n  {\"tab_type\": 25, \"title\": \"小说\"},\n  {\"tab_type\": 11, \"title\": \"经典\"},\n  {\"tab_type\": 12, \"title\": \"知识\"},\n  {\"tab_type\": 5, \"title\": \"听书\"},\n  {\"tab_type\": 8, \"title\": \"看剧\"},\n  {\"tab_type\": 16, \"title\": \"视频\"},\n  {\"tab_type\": 24, \"title\": \"漫剧\"},\n  {\"tab_type\": 103, \"title\": \"短篇\"},\n  {\"tab_type\": 9, \"title\": \"漫画\"},\n  {\"tab_type\": 31, \"title\": \"新书\"}\n];\n}\n\n",
    "lastUpdateTime": 1783118436450,
    "loginUi": "@js:\n// === 工具函数 ===\nlet _zwf = \"※\";\nlet numx = 3;\nlet res = []; // 初始化结果数组\n\nfunction push(title, url, num, g, action) {\n    let j = {\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: g == 0 ? g : 1,\n            layout_flexBasisPercent: num\n        }\n    };\n    if (action) {\n        j.action = action.action;\n        j.name = action.name || title;\n        j.type = action.type;\n        j.chars = action.chars;\n        j.viewName = action.viewName;\n        j.default = action.default;\n    }\n    res.push(j);\n}\n\n// ==== 登录 ====\n// 登录检查\npush(\"\", \"\", 1, 1, {\n    name: \"❓登录检查❓\",\n    type: \"button\",\n    action: \"login_(false, true)\"\n});\n\n// 账号登录\npush(\"\", \"\", 0.4, 1, {\n    name: \"🍅账号登录🍅\",\n    type: \"button\",\n    action: \"login_(true, false)\"\n});\n\n// 退出登录\npush(\"\", \"\", 0.4, 1, {\n    name: \"❗️退出登录❗️\",\n    type: \"button\",\n    action: \"logout()\"\n});\n\n// ===== 书源更新 =====\npush(\"\", \"\", 1, 1, {\n    name: \"　　🍀 书源更新 🍀　　\",\n    type: \"button\",\n    action: \"updateSource()\"\n});\n\npush(\"\", \"\", 1, 1, {\n    name: \"🍀 服务器更新 🍀\",\n    type: \"button\",\n    action: \"updateHost()\"\n});\n\npush(\"\", \"\", 1, 1, {\n    name: \"🎚服务器检查🎚　\",\n    type: \"button\",\n    action: \"checkNet()\"\n});\n\n// === 线路选择 ===\npush(\"🚀当前域名🚀\", '', 0.4, 1, {\n  \"type\": \"button\",\n  \"action\": \"getHosts()\"\n});\n\npush(\"🔁切换域名🔁\", '', 0.4, 1, {\n  \"type\": \"button\",\n  \"action\": \"setHost()\"\n});\n\n// === 段评开关 ===\npush(\"\", \"\", 0.4, 1, {\n    name: \"💬段评开关💬\",\n    type: \"button\",\n    action: \"toggleParaComments()\"\n});\n\n\npush(\"\", \"\", 0.4, 1, {\n    name: \"📝章评开关📝\",\n    type: \"button\",\n    action: \"toggleChapComments()\"\n});\n\npush(\"▶️播放器开关▶️\", '', 1, 1, {\"type\": \"button\", \"action\": \"checkPlayer()\"});\n\n// === 模式选择 ===\npush(\"当前模式\", '', 1, 1, {\"type\": \"button\", \"action\": \"currenMode()\"});\n\nlet types = ['小说模式', '听书模式', \n//'朗读模式', \n'漫画模式', '短剧模式', '短篇模式', '漫剧模式'];\nlet names = ['📕小说模式📕', '📻听书模式📻', \n//'🎤朗读模式🎤', \n'🖼漫画模式🖼', '📹短剧模式📹', '📃短篇模式📃', '🎥漫剧模式🎥'];\nfor (let i = 0; i < types.length; i++) {\n    push('', '', 0.45, 1, {\n        \"name\": names[i],\n        \"type\": \"button\",\n        \"action\": `setType('${types[i]}')`\n    });\n}\n\n// === 源变量 ===\npush(\"\", \"\", 0.35, 1, {\n    name: \"📦初始化源变量📦\",\n    type: \"button\",\n    action: \"began()\"\n});\n\n// 清除源变量\npush(\"\", \"\", 0.35, 1, {\n    name: \" 🎐清除源变量🎐 \",\n    type: \"button\",\n    action: \"clean()\"\n});\n\n// ====== 音色 =====\n\tlet dd = _getTones();\nfor (let i = 0; i < dd.length; i++) {\n    push('', '', 0.25, 1, {\n        \"name\": dd[i][0],\n        \"type\": \"button\",\n        \"action\": 'setVoice(' + i + ')'\n    });\n}\n\nJSON.stringify(res);\n",
    "loginUrl": "// ==== 变量定义 ====\nvar hosts = [\n  \"https://modtianmingyun-fanqie1.ms.show\",\n  \"https://modtianmingyun-fanqie2.ms.show\",\n  \"https://modtianmingyun-fanqie3.ms.show\",\n  \"https://modtianmingyun-fanqie4.ms.show\",\n  \"https://modtianmingyun-fanqie5.ms.show\",\n  \"https://modtianmingyun-fanqie6.ms.show\"\n];\n\nconst version = '2.10.13';\nconst project = '书源：Syiism.  接口：system'\nvar sytjs = getSytjs();\n\nfunction login() {}\n\n// ===== 工具函数 =====\n// 登录及登录检查\nfunction login_(openBrowser, checkMode) {\n    // java.removeCookie(\"snssdk.com\")\n    var cookie_ = String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token']\n    // java.toast(cookie_)\n    if (cookie_ && cookie_ != \"\" && !checkMode) {\n        if (!source.variableComment) {\n            java.toast(\"请不要重复登录，请先退出登录！\")\n        } else {\n            java.toast(\"您为填写token登录，请手动移除token后再次登录\")\n        }\n        return false\n    }\n    if (openBrowser) {\n        try {\n            java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n        } catch (e) {\n            java.toast(e)\n        }\n    }\n    // java.log(\"snssdk cookie: \" + java.getCookie(\"snssdk.com\") + \"will be reomved\")\n    try {\n        cookie.removeCookie(\"snssdk.com\")\n    } catch (e) {}\n    // java.log(cookie)\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user\n    try {\n      user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n        method: \"GET\",\n        headers: {\n          \"Cookie\": cookie_\n        }\n      }))).data.name\n     } catch (e) {java.log(e)}\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"欢迎 \" + user + \"\\n登录成功！\" + java.getThemeConfig())\n    return true\n}\n\n// 取消登录\nfunction logout() {\n    cookie.removeCookie(\"fanqienovel.com\");\n    cookie.removeCookie(\"snssdk.com\");\n    if (source.getLoginInfoMap()['手动登录Token']) java.toast(\"请手动移除填写的Token\")\n    else java.toast(\"退出登录成功\");\n}\nfunction logToken() {\n  java.log(\n    String(\n      cookie.getKey(\n        \"fanqienovel.com\",\n        \"sessionid\"\n      )\n    ) ? String(\n     cookie.getKey(\n        \"fanqienovel.com\", \n        \"sessionid\"\n      )\n    ) : (\n     source.getLoginInfoMap()\n      ? source.getLoginInfoMap()\n      : {}\n    )['手动登录Token']\n  )\n  java.toast(\"登录Token已打印到日志，请妥善保管\")\n}\n\nfunction began() {\n  source.setVariable(JSON.stringify({\n  \t'sytjs': sytjs,\n  \t'sytj_type': '',\n  \t'sytj_title': '',\n  \t\"频道\": \"男频\",\n  \"bd_id\": 2,\n  \"tone\": \"tone_id=0\",\n  \"server_id\": 0,\n  \"server\": hosts[0],\n  \"hosts\": hosts,\n  \"type\": \"小说模式\",\n  \"module\": 3,\n  \"showPara\": false,\n  \"showChap\": false,\n  \"showBook\": true,\n  \"isPlayer\": false,\n  \"tone_cn\": \"\",\n  }, null, '\\t'));\n  java.toast(\"已初始化源变量！\");\n}\n\nfunction clean() {\n    source.setVariable('');\n    java.toast(\"源变量已清除\");\n }\n\nfunction toggleParaComments() {\n\t   let t = GET('showPara');\n    SET('showPara', !t);\n    java.toast(!t ? \"\\n💬打开段评💬\" : \"\\n🚫关闭段评🚫\");\n}\n\nfunction toggleChapComments() {\n\t   let t = GET('showChap');\n    SET('showChap', !t);\n    java.toast(!t ? \"\\n💬打开章评💬\" : \"\\n🚫关闭章评🚫\");\n}\n\nfunction checkPlayer() {\n  \t   let t = GET('isPlayer');\n    SET('isPlayer', !t);\n    java.toast(!t ? \"\\n▶️启用阅读播放器▶️\" : \"\\n⏸️启用第三方播放器⏸️\");\n}\n\n// 设置类型\nfunction setType(Type) {\n    SET('type', Type);\n    if (Type == '朗读模式') {\n        SET('module', \"2\");\n    } else if (Type == '小说模式') {\n        SET('module', \"3\");\n        SET('bd_id', '2');      \n        SET('tone', '');\n        SET('tone_cn', '');\n    } else if (Type == '听书模式') {\n        SET('module', \"2\");\n        SET('bd_id', '6'); \n    } else if (Type == '漫画模式') {\n        SET('module', \"8\");\n        SET('tone', '');\n        SET('tone_cn', '');\n    } else if (Type == '短剧模式') {\n        SET('module', \"11\");\n        SET('bd_id', '4'); \n        SET('tone', '');\n        SET('tone_cn', '');\n    } else if (Type == '短篇模式') {\n        SET('module', \"13\");\n        SET('bd_id', '7'); \n        SET('tone', '');\n        SET('tone_cn', '');\n    } else if (Type == '漫剧模式') {\n        SET('module', \"19\");\n        SET('bd_id', '5');\n        SET('tone', '');\n        SET('tone_cn', '');\n    }\n    java.toast('已将类型切换为:\\n' + Type + '\\n需要刷新发现页');\n}\n\n// 设置音色\nfunction setVoice(num) {\n    var data = _getTones();\n\n    if (num < 0 || num >= data.length) { java.longToast(\"无效的接口编号！\"); return; }\n    SET('tone', data[num][1]);\n    SET('tone_cn', data[num][0]+`(${GET('tone')})`);\n    java.longToast(\"设置成功\\n当前模式：\" + (GET('type') || \"未知模式\") + \"\\n音色设置：\" + data[num][0] + '[' + data[num][1] + ']' + \"\\n‼️设置完成请点击切换模式‼️\");\n}\n\n// \nfunction currenMode() {\n    java.longToast(\"\\n当前模式：\" + (GET('type') || \"未知模式\") + \"\\n音色设置：\" + GET('tone_cn') + \"\\n段评：\" + (GET(\"showPara\") ? \"💬打开💬\" : \"🚫关闭🚫\") + \"\\n章评：\" + (GET(\"showChap\") ? \"💬打开💬\" : \"🚫关闭🚫\"));\n}\n\n// 检测服务器\nfunction checkNet() {\n    let url = GET('server');\n    java.longToast(`\\n\\n♻️正在检测：${url}\\n请稍等~`);\n    let date1 = new Date().getTime();\n    let html = java.log(java.ajax(url));\n    let date2 = new Date().getTime();\n    let t = date2 - date1;\n    let time = t / 1000 + 's';\n    let logTime = '【' + url + '】\\n┋┋\\n' + '解析时间：' + time;\n\n    if (t > 5000) {\n        java.longToast('\\n' + \n                      '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + \n                      logTime + '\\n┋┋\\n♣️当前接口♣️\\n┋┋\\n请切换其他接口/切换网络环境\\n┋┋' + \n                      '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t < 1000) {\n        java.longToast('\\n💖【网络环境优良】\\n' + \n                      '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + \n                      logTime + '\\n┋┋\\n❤️延迟低，推荐使用此接口❤️\\n┋┋\\n网络环境优良，请继续保持状态\\n┋┋' + \n                      '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        java.longToast('\\n💛【网络环境一般】\\n' + \n                      '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + \n                      logTime + '\\n┋┋\\n♦️延迟一般，勉强可使用♦️\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + \n                      '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        java.longToast('\\n💔【网络环境堪忧】\\n' + \n                      '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + \n                      logTime + '\\n┋┋\\n♠延迟过高，不建议使用♠\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + \n                      '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    }\n}\n\nfunction updateSource() {\n  let url = 'https://raw.giteeusercontent.com/syiism/legado-source/raw/main/ui/update.html';\n  let verUrl = 'https://studio-muyangmodelscope-fanq1.api-inference.modelscope.net/api/legado_version?file=fq.json';\n  \n  // 先转JSON字符串，再双重编码\n  let param = `?project=${project}&sourceName=${encodeURIComponent(source.bookSourceName)}&group=${encodeURIComponent(source.bookSourceGroup)}&verUrl=${encodeURIComponent(verUrl)}&version=${encodeURIComponent(version)}&sourceUrl=${encodeURIComponent(\"https://pc.sysbbs.com/source/plugin/bphp_clouds/upload/50669/20260619/3f641d4727920975565abacf00452c95.json\")}`;\n  \n  java.startBrowser(url + param, '书源更新', java.ajax(url));\n}\n// ==== 域名设置 =====\nfunction getHosts() {\n java.longToast(\"\\n当前域名:\\n \" + (GET('server') || hosts[0]) + \"\\n域名列表:\\n\" + hosts.join('\\n'));\n}\n\nfunction setHost() {\n\t//autoSetHost();\n\t\n  let id = (GET('server_id') + 1) % hosts.length;\n  SET('server', hosts[id])\n  SET('server_id', id);\n  java.toast(GET('server'));\n  \n}\n\nfunction updateHost() {\n  const URL_REGEX = /https?:\\/\\/[^\\s]+/gi;\nconst matches = String(java.ajax('https://fanqieapi.zheo.top/url.txt')).match(URL_REGEX);\n  java.toast(\"匹配数量: \" + (matches ? matches.length : 0));\n  \n  if (matches && matches.length > 0) {\n    let urls = matches.map(url => url.replace(/\\/+$/, ''));\n    java.toast(\"过滤后: \" + urls.join(', '));\n    SET('hosts', urls);\n    getHosts();\n  } else {\n    java.toast(\"未匹配到 .ms.show 域名\");\n    // 如果没匹配到，显示原始数据的前100个字符\n    java.toast(\"数据预览: \" + urlString.substring(0, 100));\n  }\n  \n}\n\n// ===== 初始化 =====\nif (source.getVariable()==\"\") { \n    began();\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "init": "<js>\nif (/comic_book_type/.test(result))\n  SET('module', 8), SET('type', '漫画模式');\nelse if(/author_info/.test(result))\n  SET('module', 3), SET('type', '小说模式');\nelse if (/audiobook_type/.test(result))\n  SET('module', 2), SET('type', '听书模式'),SET('tone', 'tone_id=0');\nelse if (/linked_aigc_tool/.test(result))\n  SET('module', 19), SET('type', '漫剧模式');\nelse  SET('module', 11), SET('type', '短剧模式');\nif (GET('tone') != '') \n  SET('module', 2), SET('type', '听书模式');\njava.log(GET('tone'));\nresult;\n</js>",
      "intro": "<js>\nfunction renderBookInfoHtml(result) {\n    var module = GET('module');\n    // 解析源数据\n    const raw = JSON.parse(result);\n    const $ = raw.data ? raw.data : raw;\n\n    // ===== 记录重要信息  =====\n    if (module == 3) {\n    SET('author_id', $.author_info.user_id);\n    SET('author_name', $.author)\njava.log(GET('author_id'));\n    }\n    \n    // ===================== 工具函数（匹配原模板语法）=====================\n    /**\n     * 日期处理 {{$.create_time##T|\\+.*## }} 截取T前日期时间\n     */\n    function formatCreateTime(timeStr) {\n        if (!timeStr) return '';\n        return String(timeStr).split('T')[0] + ' ' + String(timeStr).split('+')[0].split('T')[1] || '';\n    }\n\n    /**\n     * 数组分割 {{$.category##/##,}} 替换分隔符\n     */\n    function splitReplaceStr(str, oldSep, newSep) {\n        if (!str) return '';\n        return String(str).split(oldSep).join(newSep);\n    }\n\n    /**\n     * 文本截取 {{$.source##，.*|授权发行##}} 匹配 ，截断文本\n     */\n    function cutTextBySep(text, sep) {\n        if (!text) return '';\n        const arr = String(text).split(sep);\n        return arr[0] || text;\n    }\n\n    // ===================== 变量映射 全部{{}}模板转为JS变量 =====================\n    const book_id = $.book_id ?? '';\n    java.put('bookId', book_id);\n   SET('bookId', book_id);\n    const original_book_name = $.original_book_name ?? '';\n    const book_flight_alias_name = $.book_flight_alias_name ?? '';\n    const creation_status = $.creation_status ?? 0; // 0连载 1完结\n    const create_time = formatCreateTime($.create_time);\n    const last_chapter_update_time = java.timeFormatUTC($.last_chapter_update_time+'000','yyyy-MM-dd HH:mm:ss',8);\n    const word_number = ($.word_number ?? 0) > 10000 ? ($.word_number / 10000).toFixed(1)+'万' : $.word_number;\n    const category = splitReplaceStr($.category, '/', '，');\n    const tags = $.tags ?? '';\n    const roles = $.role;\n    const syms = GET('type');\n    const tones = $.tones ?? '';\n    const currentTone = GET(\"tone_cn\") || '未设置';\n    const score = $.score ?? 0;\n    const sub_info = $.sub_info.replace('在读','') ?? '';\n    const source = cutTextBySep($.source, '，');\n    const abstract = $.abstract ?? '';\n    const copyright_info = cutTextBySep($.copyright_info, '，');\n    const bookReview = '无';\n\n    // 状态拼接：__status__-连载/完结\n    const statusText = creation_status === 1 ? '正常-完结' : '正常-连载';\n\n    // ===================== 响应式HTML模板 =====================\n    const html = `\n<useweb>\n<style>\n* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;\n}\n.card-wrap {\n  width: 100%;\n  max-width: 100%;\n  padding: 0 12px;\n}\n:root {\n  --card-bg: #f2f2f2;\n  --card-shadow: rgba(0, 0, 0, 0.1);\n}\nhtml.dark {\n  --card-bg: #1e1e1e;\n  --card-shadow: rgba(0, 0, 0, 0.4);\n}\n\n/* 卡片基础样式 - 高度完全自适应 */\n.book-card,\n.intro-card {\n  width: 100%;\n  max-width: 750px;\n  margin: 12px 0;\n  padding: 16px;\n  border-radius: 12px;\n  background: var(--card-bg);\n  box-shadow: 0 2px 12px var(--card-shadow);\n  /* 关键：高度自适应，无任何固定高度限制 */\n  height: auto;\n  min-height: unset;\n  max-height: none;\n  overflow: visible;\n}\n\n/* 简介卡片独立样式 */\n.intro-card {\n  margin-bottom: 4px;\n}\n\n/* 简介标题行：标签+提示同行，不干扰下方正文 */\n.intro-header {\n  display: flex;\n  align-items: baseline;\n  gap: 12px;\n  margin-bottom: 6px;\n}\n.intro-item .label {\n  font-weight: 600;\n  color: #222;\n  font-size: 16px;\n}\n.intro-tip {\n  font-size: 16px;\n  color: #000;\n  white-space: nowrap;\n}\n/* 简介正文保持原有样式不变 */\n.intro-item .val {\n  display: block;\n  width: 100%;\n  line-height: 1.7;\n  color: #333;\n  white-space: pre-line;\n  word-break: break-all;\n  font-size: 15px;\n  height: auto;\n  overflow: visible;\n}\n\n/* 主卡片内条目样式 - flex 布局 */\n.book-item {\n  display: flex;\n  gap: 8px;\n  padding: 8px 0;\n  align-items: flex-start;\n  flex-wrap: wrap;\n  height: auto;\n}\n.label {\n  font-weight: 600;\n  color: #222;\n  min-width: 90px;\n  flex-shrink: 0;\n  height: auto;\n}\n.val {\n  color: #444;\n  flex: 1;\n  word-break: break-all;\n  height: auto;\n}\n\n/* 移动端适配 */\n@media screen and (max-width:480px) {\n  .card-wrap {\n    padding: 0 12px 1px 12px;\n  }\n  .book-item {\n    padding: 6px 0;\n  }\n  .label {\n    min-width: 70px;\n    font-size: 14px;\n  }\n  .val {\n    font-size: 14px;\n  }\n  .intro-item .label {\n    font-size: 14px;\n  }\n  .intro-tip {\n    font-size: 14px;\n  }\n  .intro-item .val {\n    font-size: 14px;\n  }\n}\n</style>\n\n<div class=\"card-wrap\">\n  <!-- 独立简介卡片 -->\n  <div class=\"intro-card\">\n    <div class=\"intro-item\">\n      <!-- 标题行：简介标签 + 提示文字同行，完全不改动下方简介内容区域 -->\n      <div class=\"intro-header\">\n        <span class=\"label\">📜 简介</span>\n        <span class=\"intro-tip\">💬点击书籍名查看书评💬</span>\n      </div>\n      <div class=\"val\">${abstract}</div>\n    </div>\n  </div>\n\n  <!-- 主卡片 -->\n  <div class=\"book-card\">\n    <div class=\"book-item\">\n      <span class=\"label\">🆔 编号：</span>\n      <span class=\"val\">${book_id}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📕 源名：</span>\n      <span class=\"val\">${original_book_name}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📔 别名：</span>\n      <span class=\"val\">${book_flight_alias_name}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📇 状态：</span>\n      <span class=\"val\">${statusText}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">✏️ 开坑：</span>\n      <span class=\"val\">${create_time}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🕰 更新：</span>\n      <span class=\"val\">${last_chapter_update_time}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">⌨️ 字数：</span>\n      <span class=\"val\">${word_number}字</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📎 分类：</span>\n      <span class=\"val\">${category}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🏷️ 标签：</span>\n      <span class=\"val\">${tags}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">👤 主角：</span>\n      <span class=\"val\">${roles}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">⚙️ 当前模式：</span>\n      <span class=\"val\">${syms}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🗣 当前音色：</span>\n      <span class=\"val\">${currentTone}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🔊 可选音色：</span>\n      <span class=\"val\">${tones}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📊 评分：</span>\n      <span class=\"val\">${score}分</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">👁️ 在线：</span>\n      <span class=\"val\">${sub_info}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🔗 源站：</span>\n      <span class=\"val\">${source}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📝 书评：</span>\n      <span class=\"val\">${bookReview}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📍 版权：</span>\n      <span class=\"val\">${copyright_info}</span>\n    </div>\n  </div>\n</div>\n</useweb>`;\n\n    return html;\n}\nrenderBookInfoHtml(result);\n</js>",
      "lastChapter": "$.data.last_chapter_title",
      "tocUrl": "{{GET('server')}}/api/v1/books/{{$.data.book_id}}/directory/fanqie"
    },
    "ruleContent": {
      "callBackJs": "if (event == \"clickBookName\") {\n  showBookCom();\n  true;\n} else if (event == \"clickCustomButton\") {\n  let url = GET('server') + '/api/v1/books/' + GET('bookId') + '/related';\n  java.open(\"explore\", url, '关联作品', source);\n  true;\n} else if (event == \"clickAuthor\") {\n  let url = GET('server') + '/api/v1/authors/'+ GET('author_id')\n  java.open(\"explore\", url, GET('author_name')+'的作品', source);\n  true;\n} else if (event == \"longClickAuthor\") {\n  let url = GET('server') + '/api/v1/authors/'+ GET('author_id') + '/bookshelf?count=20&offset={{(page-1)*20}}'\n  java.open(\"explore\", url, GET('author_name')+'的书架', source);\n  true;\n}",
      "content": "@js:\nlet bookId = java.get('bookId');\nlet itemId = baseUrl.match(/.*\\?q=(\\d+)/)[1];\nlet module = GET('module');\njava.log(book.type);\n\nif (module == 3) {\n  let url = `${GET('server')}/api/v1/chapters/${itemId}`;\n  let resp = java.ajax(url);\n  resp = JSON.parse(resp);\n  result = resp.data.content;\n  if (GET('showPara')) \n     result = getComments(result, java.get('bookId'), itemId);\n\n  if (GET('showChap')) {\n     var discussSvg = '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1024 150\"><rect width=\"1024\" height=\"150\" rx=\"14\" fill=\"#D5D5D5\"/><text x=\"40\" y=\"90\" font-size=\"42\" font-weight=\"bold\" font-family=\"Arial,sans-serif\" fill=\"#333\">本章讨论</text><text x=\"984\" y=\"90\" font-size=\"30\" font-weight=\"bold\" font-family=\"Arial,sans-serif\" fill=\"#888\" text-anchor=\"end\">查看评论 &gt;</text></svg>';\n    var discussB64 = java.base64Encode(discussSvg);\n    result += '\\n';\n    result += `\\n<img src=\"data:image/svg+xml;base64,${discussB64},{\"click\":\"getChapComments('${bookId}','${itemId}', '${GET('author_id')}')\",\"style\":\"full\"}\">`;\n  }\n\n} else if (module == 2) {\n  let tone = GET('tone');\n  if (tone == '') tone = 'tone_id=0'; \n  let url = `${GET('server')}/api/v1/audio/play?item_ids=${itemId}&book_id=${java.get('bookId')}&${tone}`\n  try {\n    result = java.ajax(url);\n    //java.log(result);\n    result = JSON.parse(result).video_info.data.video_list.video_1.main_url;\njava.toast(result);\n  } catch(e) {\n\tresult = \"该书不支持当前音色，请更换并刷新\\n\" + url;\n  \tjava.longToast(result);\n\t}\n\n} else if (module == 8) {\n  let url = `${GET('server')}/api/v1/manga/reader?bookId=${java.get('bookId')}&itemId=${itemId}`;\n  if(book.durChapterIndex == chapter.index) {\n    java.startBrowser(url, chapter.title, java.ajax(\"https://raw.giteeusercontent.com/syiism/legado-source/raw/main/reader.html\"));\n  }\n result = \"刷新正文进入漫画\";\n} else if (module == 11 || module == 19) {\n  if (!GET(\"isPlayer\")) {\n\tlet url = `${GET('server')}/api/v1/player?bookId=${java.get('bookId')}&itemId=${itemId}`;\nif(book.durChapterIndex == chapter.index) {\n  java.startBrowser(url, chapter.title, java.ajax(\"https://raw.giteeusercontent.com/syiism/legado-source/raw/main/player.html\"));\n  //java.startBrowser(url, chapter.title);\n\tjava.toast('正在播放' + chapter.title);\n}\n result = '▶️刷新正文进入播放\\n播放地址：\\n' + url;\n} else {\n  let url = `${GET('server')}/api/v1/videos/${itemId}`;\n  if(book.durChapterIndex == chapter.index) {\n    let resp = java.ajax(url);\n    result = JSON.parse(resp).video_info.data.video_list.video_5.main_url;\n    const regex = /^(?:https?:\\/\\/)?(?:[^@\\n]+@)?(?:www\\.)?([^:\\/\\n?]+)/im;\n    result = result.replace(regex, GET('server'));\n    result;\n  } \njava.log(result);\n}\n}\nresult;"
    },
    "ruleExplore": {
      "author": "$.author||$.copyright",
      "bookList": "$.data.tab_item||$.data.cell_view.cell_data||$.data.book_shelf_info||$.data.data||$.data.cell_data||$.data.author_book_info||$.data.items\n<js>\nSET('tone', '');\n//java.toast(result)\n(function(result) {\nlet te = GET('type');\njava.log(te);\n// 首页推荐处理\nfunction parseTabItem(tabItem, fg) {\n  var bookList = [];\n  var videoList = [];\n\n  if (!tabItem || typeof tabItem !== 'object') return [];\n\n  function isArray(obj) {\n    return Object.prototype.toString.call(obj) === '[object JavaList]';\n  }\n\n  function walk(node) {\n    if (!node || typeof node !== 'object') return;\n\n    var i, len;\n\n    if (isArray(node.book_data) && node.book_data.length > 0) {\n      for (i = 0, len = node.book_data.length; i < len; i++) {\n        var b = node.book_data[i];\n        if (b && typeof b === 'object') bookList.push(b);\n      }\n    }\n\n    if (isArray(node.video_data) && node.video_data.length > 0) {\n      for (i = 0, len = node.video_data.length; i < len; i++) {\n        var v = node.video_data[i];\n        if (v && typeof v === 'object') videoList.push(v);\n      }\n    }\n\n    if (isArray(node.cell_data)) {\n      for (i = 0, len = node.cell_data.length; i < len; i++) {\n        walk(node.cell_data[i]);\n      }\n    }\n\n    if (isArray(node)) {\n    \tjava.log('node')\n      for (i = 0, len = node.length; i < len; i++) {\n        walk(node[i]);\n      }\n    }\n  }\n\n  walk(tabItem);\n \n  if (fg) return bookList.concat(videoList);\n\n  if (bookList.length > 0) return bookList;\n  return videoList;\n}\n// 首页推荐处理\nif (result[0] && result[0].title) {\n  java.toast('\\n首页推荐处理')\n  let res = '';\n  //java.longToast('\\n当前推荐: ' + GET('sytj_title'))\n  res = parseTabItem(result, false);\n  \n  return res;\n}\n\n// 关联作品处理\nif (result.length == 0) { java.toast('\\n没有关联作品'); return []; }\nif (('cell_name' in result[0]) && result[0].cell_name == \"关联作品\") {\n  java.toast('\\n关联作品处理')\n  return parseTabItem(result[0], true);\n}\n\n// 作者书架处理\n//java.toast(result[0])\nif (result[0] && result[0].book) {\n  java.toast('\\n作者书架处理')\n  let res = [];\n  result.forEach(x => { res.push(x.book); });\n  return res;\n}\n\n// 标签处理\nif (result[0] && result[0].abstract) return result;\n\n// 书架处理\nif (result[0].book_id) {\n  let pg = baseUrl.match(/&page=(\\d+)/)[1];\n  let url = `${GET('server')}/api/v1/books/{bookId}`;\n  let res = [];\n  for (let i = 0; i < pg * 10; i ++) {\n    let x = result[i];\n    let resp = java.ajax(url.replace('{bookId}', x.book_id));\n    resp = JSON.parse(resp);\n    res.push(JSON.stringify(resp.data));\n  };\n  return res;\n}\n  \n// 榜单处理\nres = [];\nresult.forEach( x => {\n  if (te ==  \"小说模式\" || te == \"听书模式\") {\n  res.push(x.book_data[0]);\n  } else if (te == \"漫剧模式\" || te == \"短剧模式\") {\n  res.push(x.video_data[0]);\n  }\n});\n\nreturn res;\n})(result);\n</js>",
      "bookUrl": "{{GET('server')}}/api/v1/books/{{$.book_id||$.series_id}}",
      "coverUrl": "$.audio_thumb_uri||$.detail_page_thumb_url||$.cover##(\\d+)-tt##6-novel",
      "intro": "$.abstract||$..video_desc##\\n",
      "kind": "{{$.card_tips}}\n{{$.sub_title}}\n男生{{$.gender}}女生\n{{$.category}}\n连载{{$.creation_status}}完结\n{{$.score}}分\n{{java.timeFormatUTC(java.getString(\"last_chapter_update_time\")*1000,'yyyy-MM-dd',8)}}\n##连载0|1完结\n<js>\njava.log(result)\nresult = result\n.replace(/男生.女生/, String(java.getString(\"$.isbn\")) ? \"出版\" : `男生${java.getString(\"$.gender\")}女生`)\n.replace(\"男生0\", \"\")\n.replace(\"1女生\", \"\")\n.replace(\"男生2女生\", \"出版\")\n.replace(\"连载4完结\",\"断更\")\n.replace(\"连载-1完结\",\"未知\")\n.replace(\"1970-01-01\", \"\")\n.replace(\"男生女生\", \"\")\n.replace(\"连载完结\",\"\")\n.replace(/\\{content=|, data_type=\\d+\\}/g, '');\n</js>##·|\"|'##,",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name||$.title",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author||$.copyright",
      "bookList": "<js>\nresult = JSON.parse(result);\nlet res = [], fg = 0;\nif (Object.prototype.toString.call(result.data) === '[object Object]') {\n  res.push(result.data); fg = 1;\n}\nif (fg)\nJSON.stringify({\"search_tabs\": res});\nelse JSON.stringify(result);\n</js>\n$.search_tabs\n<js>\n//java.log(result);\nfunction parseTabItem(tabItem) {\n/*\n  var bookList = [];\n  var videoList = [];\n*/\n  var dataList = [];\n\n  if (!tabItem || typeof tabItem !== 'object') return [];\n\n  function isArray(obj) {\n    return Object.prototype.toString.call(obj) === '[object JavaList]';\n  }\n\n  function isObject(obj) {\n    return Object.prototype.toString.call(obj) === '[object Object]';\n  }\n\n  function walk(node) {\n    if (!node || typeof node !== 'object') return;\n\n    var i, len;\n\n    if (isArray(node.book_data) && node.book_data.length > 0) {\n      for (i = 0, len = node.book_data.length; i < len; i++) {\n        var b = node.book_data[i];\n        if (b && typeof b === 'object') dataList.push(b);\n      }\n    }\n\n    if (isArray(node.video_data) && node.video_data.length > 0) {\n      for (i = 0, len = node.video_data.length; i < len; i++) {\n        var v = node.video_data[i];\n        if (v && typeof v === 'object') dataList.push(v);\n      }\n    }\n\n    if (\"abstract\" in node) {\njava.log('hhh');\n      dataList.push(node);\n    }\n\n    if (isArray(node.data)) {\n      for (i = 0, len = node.data.length; i < len; i++) {\n        walk(node.data[i]);\n      }\n    }\n\n    if (isArray(node)) {\n    \tjava.log('node')\n      for (i = 0, len = node.length; i < len; i++) {\n        walk(node[i]);\n      }\n    }\n  }\n\n  walk(tabItem);\n\n  return dataList;\n}\nparseTabItem(result);\n</js>",
      "bookUrl": "{{GET('server')}}/api/v1/books/{{$.book_id||$.series_id}}",
      "checkKeyWord": "+2我的",
      "coverUrl": "$.detail_page_thumb_url||$.cover##(\\d+)-tt##6-novel",
      "intro": "$.abstract||$..video_desc##\\n",
      "kind": "{{$.sub_title}}\n男生{{$.gender}}女生\n{{$.category}}\n连载{{$.creation_status}}完结\n{{$.score}}分\n{{java.timeFormatUTC(java.getString(\"last_chapter_update_time\")*1000,'yyyy-MM-dd',8)}}\n##连载0|1完结\n<js>result = result\n.replace(/男生.女生/, String(java.getString(\"$.isbn\")) ? \"出版\" : `男生${java.getString(\"$.gender\")}女生`)\n.replace(\"男生0\", \"\")\n.replace(\"1女生\", \"\")\n.replace(\"男生2女生\", \"出版\")\n.replace(\"连载4完结\",\"断更\")\n.replace(\"连载-1完结\",\"未知\")\n.replace(\"1970-01-01\", \"\")\n.replace(\"男生女生\", \"\")\n.replace(\"连载完结\",\"\");\n</js>##·##,",
      "lastChapter": "$.last_chapter_title",
      "name": "$.book_name||$.title",
      "wordCount": ".word_number"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterListWithVolume\n<js>\nlet module = GET('module');\nlet tone = GET('tone');\n//java.toast(module)\nif (module == 8) {\n  book.type = 64;\n} else if (module == 13) {\n  book.type = 8;\n} else if (module == 2 || tone != '') {\n  book.type = 32;\n} else if ((module == 11 || module == 19) && GET(\"isPlayer\")) {\n  book.type = 4;\n} else {\n  book.type = 8;\n}\nlet res = [];\nresult = JSON.parse(result);\nresult.forEach(x => {\n\t x.forEach(y => { res.push(JSON.stringify(y)); });\n});\nres;\n</js>",
      "chapterName": "$.title",
      "chapterUrl": "https://www.baidu.com/?q={{$.itemId}}",
      "updateTime": "{{$.volume_name}}  | {{java.timeFormatUTC(java.getString(\"firstPassTime\") * 1000, 'yyyy-MM-dd HH:mm:ss', 8)}}##第一卷：默认\n@js:\nif (result.startsWith(\" |\")) result = result.slice(2)\nif (result.startsWith(\"| \")) result = result.slice(2)\nresult"
    },
    "searchUrl": "@js:\nSET('tone', '');\n//autoSetHost();\n\n(function() {\nlet tab_type = key.match(/(\\d+)/);\nif (tab_type && tab_type[1].length > 3) return GET('server') + '/api/v1/books/' + key\nif (!tab_type) { \n  tab_type = GET(\"module\");\n  java.toast(\"\\n当前搜索模式：\" + GET(\"type\"));\n  if (tab_type == 13) {tab_type = 1; java.toast('\\n不支持短篇模式，已切换至综合')}\n}\nelse tab_type = tab_type[1];\njava.log(tab_type);\nreturn `${GET('server')}/api/v1/search?query=${key}&offset=${(page - 1) * 10}&count=10&tab_type=` + tab_type;\n})();",
    "weight": 0
  },
  {
    "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": 13,
    "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
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "番茄小说api(光遇接口)",
    "bookSourceType": 0,
    "bookSourceUrl": "https://fanqienovel.com/#guangyu",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z0-9-]+(?::\\d+)?\\/detail.*",
    "customButton": false,
    "customOrder": 14,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar open_argument = source.getVariable();\nvar base_url = getArguments(open_argument, 'server') || host[0];\nvar ms = getArguments(open_argument, 'tone_id') || '';\nvar source_type = getArguments(open_argument, 'source_type') || '男频';\nvar tab = getArguments(open_argument, 'find_tab') || getArguments(open_argument, 'tab') || '小说';\nvar sources =  getArguments(open_argument, 'sources') || '番茄';\n\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n\n    return isModified;\n}\n\nvar islyc = checkEnv();\nlet device_type = '安卓';\ntry {\n\t  try {\n\t  java.qread();\n\t  device_type =\"轻阅读\";\n\t  } catch {\n\t  \tjava.deviceID();\n    device_type = \"苹果\";\n\t  \t}\n    \n} catch (e) {\n    try {\n        java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device_type = \"安卓\";\n    }\n}\n\nif ((islyc&&device_type!='苹果') || device_type=='轻阅读'){\n\tsources = getArguments(open_argument, 'find_source') || sources;\n\tsetArguments('find_source', sources);\n\t}\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\n\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (!fqcookie && (sources == '番茄' || sources == '全部')) {\n    java.toast('您还未登陆番茄账号，无法同步数据哦！');\n} else {\n    fqssionid = getSessionId(fqcookie)\n}\nvar fqsjurl = base_url + \"/bookshelf?page={{page}}&ssionid=\" + fqssionid;\nvar fqtjurl = base_url + \"/fqrecommend?page={{page}}&ssionid=\" + fqssionid;\nvar fqlsurl = base_url + \"/fqhistory?page={{page}}&ssionid=\" + fqssionid;\n\nvar groupDatas = [];\nvar infoData = [ ];\nif (sources == '番茄' || sources == '全部') {\ninfoData = [{\n        \"title\": \"登录番茄\",\n        \"url\": '{\\{java.startBrowser(\"https://fanqienovel.com/\",\"番茄登录\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.45\n        }\n    }];\n}\n\nvar hasValidCookie = fqcookie.length > 0;\n\nif (hasValidCookie && (sources == '番茄' || sources == '全部')) {\n    function groupQuery() {\n        try {\n            var url = base_url + \"/group_name?ssionid=\" + fqssionid;\n            var res = java.ajax(url);\n            var response = JSON.parse(res);\n\n            if (!(response && response.data)) {}\n\n            response.data.forEach(function(group) {\n                var keys = Object.keys(group);\n                if (keys.length > 0) {\n                    var key = keys[0];\n                    var value = group[key];\n                    if (value && value.length) {\n                        var option = {\n                            \"method\": \"POST\",\n                            \"body\": {\n                                \"book_ids\": value,\n                                \"page\": \"{{page}}\"\n                            }\n                        };\n                        groupDatas.push({\n                            title: key,\n                            url: base_url + \"/bookshelf,\" + JSON.stringify(option),\n                            style: {\n                                layout_flexGrow: 1,\n                                layout_flexBasisPercent: 0.45\n                            }\n                        });\n                    }\n                }\n            });\n\n            if (groupDatas.length % 2 !== 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.45\n                    }\n                });\n            }\n        } catch (e) {\n            java.longToast(\"番茄登录过期，已隐藏番茄书架\" + fqssionid);\n        }\n    }\n\n    try {\n        java.longToast(\"正在加载分组数据...\");\n        var userUrl = base_url + \"/fquser?ssionid=\" + fqssionid;\n        var userRes = java.ajax(userUrl);\n        var userData = JSON.parse(userRes);\n\n        var userName = (userData && userData.data && userData.data.name) ? userData.data.name : '未知用户';\n        if (!userName.includes('未知用户')) {\n            infoData = [{\n                title: \"番茄个人中心\",\n                url: fqsjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"个性推荐(番茄)\",\n                url: fqtjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"历史阅读(番茄)\",\n                url: fqlsurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }];\n        }\n        groupQuery();\n    } catch (e) {\n        java.longToast(\"番茄登录过期，已隐藏番茄书架\");\n    }\n}\n\nvar style_list = [];\ntry {\n    var durl = `${base_url}/discovestyle?source=${sources}&source_type=${source_type}&tab=${tab}`;\n    var res = java.ajax(durl);\n    var result = JSON.parse(res);\n    style_list = result.data || [];\n    if (result.msg) {\n        java.toast(result.msg);\n    }\n} catch (e) {\n    java.toast(\"发现样式获取失败\");\n}\nlet qtcookie = cookie.getCookie(base_url);\n//let qtcookie = \"\"\nlet qtop = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\n\n\n\nqtop = JSON.stringify(qtop);\nlet qtsjurl = base_url + '/get_book_shelf,' + qtop;\n\nlet qtsj = [];\n\nif ((islyc&&device_type!='苹果') || device_type=='轻阅读') {\n    try {\n        qtsj.push(createFilter(\n            \"线路\",\n            host,\n            base_url,\n            \"server\",\n            1\n        ));\n        qtsj.push(createFilter(\n            \"模式\",\n            [\"小说\", \"听书\", \"短剧\", \"漫画\"],\n            tab,\n            \"find_tab\",\n            0.33\n        ));\n        qtsj.push(createFilter(\n            \"频道\",\n            [\"男频\", \"女频\"],\n            source_type,\n            \"source_type\",\n            0.33\n        ));\n        let source_list = ['番茄', '七猫', '书旗', '塔读', '江湖', '小米', '米读', 'QQ阅读', '酷我小说','幻梦轻小说', '西瓜小说', '69书吧', '顶点', '爱下电子书', '伪69', '超会专属小说', '番薯小说', '阅友小说', '笔趣阁22', '微山书院', '中华典藏', '老福特'];\n        if (tab == '听书') {\n            source_list = ['番茄', '七猫', '喜马拉雅', '酷我'];\n        }\n        if (tab == '漫画') {\n            source_list = ['全面漫画', '番茄', '包子漫画', '歪瑞古德', 'G社漫画'];\n        }\n        if (tab == '短剧') {\n            source_list = ['番茄', '七猫', '河马', '旺旺短剧'];\n        }\n        qtsj.push(createFilter(\n            \"平台\",\n            source_list,\n            sources,\n            \"find_source\",\n            1\n        ));\n       const excludeTitles = ['点击登录可切换来源', '切换后长按刷新即可'];\n       style_list = style_list.filter(item => !excludeTitles.includes(item.title));\n    } catch {}\n} else {\n\tif (device_type == '安卓'){\n\tqtsj.push({\n        \"title\": \"下载阅读Sigma最新测试版\",\n        \"url\": '{\\{java.longToast(\"本书源推荐使用最新版洛娅橙改版阅读Σ\\\\n请安装后重新导入书源\");java.startBrowser(\"https://legado.gyks.cf\",\"下载阅读Sigma最新测试版\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    })}\n\t}\n\nif (qtcookie) {\nqtsj.push({\n    title: \"晴天个人中心\",\n    url: qtsjurl,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n} else {\nqtsj.push({\n    title: \"登录晴天书源\",\n    url: `{\\{java.startBrowser(\"${base_url}/login\",\"登录书源\");}}`,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n}\n\n\nvar finalData = infoData.concat(groupDatas, style_list);\nfinalData = qtsj.concat(finalData);\nJSON.stringify(finalData);\n</js>",
    "header": "{ \"User-Agent\":\"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Mobile Safari/537.36 Edg/138.0.0.0\" }",
    "jsLib": "var host = [\n    'https://v1.gyks.cf',\n    'https://v2.gyks.cf',\n    'https://v3.gyks.cf',\n    'https://v4.gyks.cf',\n    'https://v5.gyks.cf',\n    'https://v6.gyks.cf',\n    'https://v7.gyks.cf',\n    'http://101.35.133.34:8888'\n];\n\nfunction getArguments(open_argument, key) {\n    try {\n        open_argument = JSON.parse(open_argument);\n    } catch (e) {\n        open_argument = {\n            tab: \"小说\",\n            tone_id: \"默认音色\",\n            server: host[0],\n            sources: \"全部\",\n            source_type: \"男频\",\n        };\n    }\n    if (key) {\n        return open_argument[key];\n    } else {\n        return open_argument;\n    }\n}\n\nfunction setArguments(key, value) {\n    const {\n        source\n    } = this;\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\nfunction decrypt(Text) {\n    return Text;\n}\n\nfunction paraForAndroid(content, sources, ydv) {\n    let {\n        java,\n        cache,\n        source\n    } = this;\n    let plcolor = getArguments(source.getVariable(), \"plcolor\");\n    if (!plcolor) {\n        plcolor = \"#A9A9A9\";\n    }\n    let tccolor = getArguments(source.getVariable(), \"tccolor\");\n    if (!tccolor) {\n        tccolor = \"#ffffff\";\n    }\n\n    const createSvg = this.createSvg.bind(this);\n\n    return content.replace(/<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        (match, text, url, count) => {\n            if (url && count) {\n                const click = 0;\n                cache.putMemory(url, click);\n                const encodedUrl = url;\n                return `<p>${text}<img src=\"${createSvg(count, plcolor,tccolor,encodedUrl,sources,ydv)}\"></p>`;\n            } else {\n                return `<p>${text}</p>`;\n            }\n        }\n    );\n}\n\n\nfunction showCmt(url, sources, ydv) {\n    let {\n        java,\n        cache\n    } = this;\n    const currentTime = Date.now();\n    const click = cache.getFromMemory(url);\n    let isqread = false;\n    try {\n        java.qread();\n        isqread = true;\n    } catch (e) {}\n    if (click < 1 && !isqread && !ydv) {\n        cache.putMemory(url, click + 1);\n        return;\n    } else {\n        if (isqread) {\n            java.startBrowserDp(url, sources + '段评');\n        } else if (ydv) {\n            let paradata = new Date().toLocaleDateString();\n            let htmlContent = cache.get(paradata);\n            if (!htmlContent || String(htmlContent).indexOf(\"评论\") == -1) {\n                java.longToast(`\\n${paradata} 初始化段评页面,请稍等~`);\n                try {\n                    htmlContent = java.ajax(url);\n                } catch {\n                    htmlContent = paraHtml(url);\n                }\n                \n                cache.put(paradata, htmlContent);\n                java.longToast(`\\n${paradata} 初始化段评页面成功~`);\n            }\n            java.showBrowser(\n                url,\n                htmlContent,\n                `window.java=java;`,\n                JSON.stringify({\n                    \"expandedCornersRadius\": 20,\n                    \"dismissOnTouchOutside\": true,\n                    \"isDraggable\": true,\n                    \"shouldDimBackground\": true,\n                    \"backgroundDimAmount\": 0.5,\n                    \"hardwareAccelerated\": true,\n                    \"isNestedScrollingEnabled\": true,\n                    \"isGestureInsetBottomIgnored\": true,\n                    \"setFitToContents\": true,\n                    \"isHideable\": true,\n                    \"heightPercentage\": 0.8\n                })\n            );\n        } else {\n            java.startBrowser(url, sources + '段评');\n        }\n    }\n}\n\n\n\nfunction createSvg(number, color, tccolor, encodedUrl, sources, ydv) {\n    var displayText = number > 99 ? \"99+\" : number.toString();\n    var loginInfoMap = {};\n\n    if (this.source && typeof this.source.getLoginInfoMap == 'function') {\n        loginInfoMap = this.source.getLoginInfoMap() || {};\n    }\n\n    var bubbleStyle = String(getArguments(this.source.getVariable(), \"pstyle\") || loginInfoMap['段评气泡样式(0-4)'] || '0');\n    var svg;\n    if (bubbleStyle == '0') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '1') {\n        svg = `<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\">\n<g transform=\"rotate(90 512 512) scale(1 1.2)\">\n<path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"${color}\" p-id=\"1530\"></path> \n</g>\n      <text x=\"460\" y=\"650\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"${color}\">${displayText}</text>\n    </svg>\n`;\n    } else if (bubbleStyle == '2') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"6 10 88 76\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M12,12 L88,12 Q92,12 92,16 L92,68 Q92,72 88,72 L28,72 L12,84 L12,72 Q8,72 8,68 L8,16 Q8,12 12,12 Z\" stroke=\"currentColor\" stroke-width=\"4\" stroke-linejoin=\"round\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 2.5px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"50\" y=\"60\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" font-size=\"45\" fill=\"currentColor\" font-weight=\"500\" alignment-baseline=\"auto\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '3') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <rect x=\"0.5\" y=\"0.5\" width=\"24\" height=\"16\" rx=\"2.5\" ry=\"2.5\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></rect>\n                        <text x=\"12.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '4') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                            <path stroke=\"currentColor\" stroke-width=\"1.00\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-miterlimit=\"4.00\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\" d=\"M 7.5 0.5 L 16.5 0.5 A 7 7 0 0 1 23.5 7.5 L 23.5 7.5 A 7 7 0 0 1 16.5 14.5 L 8.5 14.5 L 5.192 16.5 L 5.5 14.5 A 7 7 30 0 1 0.5 7.5 L 0.5 7.5 A 7 7 0 0 1 7.5 0.5 Z\"/>\n                            <text fill=\"${color}\" font-family=\"Arial, sans-serif\" font-size=\"10\" font-weight=\"500\" text-anchor=\"middle\" dy=\"0.35em\" x=\"12.00\" y=\"7.50\">${displayText}</text>\n                            </svg>`;\n    } else if (bubbleStyle == '5') {\n        displayText = number > 99 ? \"99\" : number.toString();\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <circle cx=\"12.5\" cy=\"8.5\" r=\"8\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></circle>\n                        <text x=\"13\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n            </svg>`;\n    }\n    var jc = 'js';\n    if (ydv) {\n        jc = 'click'\n    }\n    var encodedSvg = this.java.base64Encode(svg);\n\n    return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"' + jc + '\":\"showCmt(\\'' + encodedUrl + '\\', \\'' + sources + '\\', ' + ydv + ')\",\"style\":\"text\"}';\n}\n\n\nfunction cleanHTML(html) {\n    let result = html\n        .replace(/<header[^>]*>[\\s\\S]*?<\\/header>/gi, \"\")\n        .replace(/<div class=\"tt-title\"[^>]*>[\\s\\S]*?<\\/div>/gi, \"\")\n        .replace(/<(?!\\/?p\\b|\\/?img\\b)[^>]+>/gi, \"\");\n    result = result.replace(/<\\/?p[^>]*>/g, \"\\n\");\n    return result.replace(/\\n+/g, \"\\n\").trim();\n}\n\n\nfunction getBaseUrl(url) {\n    if (!url) {\n        return null;\n    }\n    url = String(url);\n    if (url.match(/https?:\\/\\//i)) {\n        var index = url.indexOf(\"/\", 9);\n        return index == -1 ? url : url.substring(0, index);\n    }\n    return null;\n}\n\nfunction isIPv4Address(ip) {\n    ip = String(ip);\n    let parts = ip.split(\".\");\n    if (parts.length !== 4) return false;\n\n    for (let part of parts) {\n        if (!/^\\d+$/.test(part)) return false; // 必须是数字\n        if (part.length > 1 && part[0] === \"0\") return false; // 禁止前导零\n        let num = parseInt(part, 10);\n        if (num < 0 || num > 255) return false; // 范围检查\n    }\n    return true;\n}\n\nfunction isIPv6Address(ip) {\n    ip = String(ip);\n    // 处理双冒号（最多出现一次）\n    if (ip.includes(\":::\")) return false;\n    let doubleColonCount = (ip.match(/::/g) || []).length;\n    if (doubleColonCount > 1) return false;\n\n    // 分割成组\n    let groups = ip.split(\":\");\n    let validGroupCount = 8;\n    let actualGroupCount = groups.filter((g) => g !== \"\").length;\n\n    // 验证组数\n    if (doubleColonCount === 1) {\n        if (actualGroupCount > validGroupCount - 1) return false;\n    } else {\n        if (groups.length !== validGroupCount) return false;\n    }\n\n    // 验证每组内容\n    for (let group of groups) {\n        if (group === \"\") continue; // 跳过空组（双冒号部分）\n        if (!/^[0-9a-fA-F]{1,4}$/.test(group)) return false; // 1-4位十六进制\n    }\n    return true;\n}\n\nfunction isIPAddress(input) {\n    return isIPv4Address(input) || isIPv6Address(input);\n}\n\nfunction getSessionId(cookieString) {\n    const match = cookieString.match(/sessionid=([^;]+)/);\n    return match ? match[1] : null;\n}\n\nfunction getKey(key) {\n    let parts = key.split(\";\");\n    for (let part of parts) {\n        if (part.includes(\"qttoken\")) {\n            return part.split(\"=\")[1];\n        }\n    }\n    return \"\";\n}\n\nfunction getFanqieCookie() {\n    const {\n        cookie\n    } = this;\n    try {\n        return String(cookie.getCookie('fanqienovel.com') || java.getCookie('fanqienovel.com') || '');\n    } catch (e) {\n        return '';\n    }\n}\n\n\nfunction paraForiOS(html, sources) {\n    return html.replace(\n        /<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        function(match, text, url, count) {\n            if (url && count) {\n                const encodedUrl = url.replace(/&/g, '&amp;');\n                return `<div rs-native>${text}<comment count=\"${count}\" onPress=\"java.showReadingBrowser('${encodedUrl}','${sources}段评')\"></div>`;\n            } else {\n                return `<div rs-native>${text}</div>`;\n            }\n        }\n    );\n}\n\nfunction removeAllImgTags(htmlString) {\n    const imgTagRegex = /<img\\b[^>]*>|<\\/img>|<img\\b[^>]*\\/>/gi;\n    return htmlString.replace(imgTagRegex, '');\n}\n\n\n\nfunction paraHtml(url) {\n    let burl = url.split('?');\n    let baser_url = burl[0].replace(\"/get_para_review\", \"\");\n    url = burl[1];\n    return `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no\">\n    <link rel=\"shortcut icon\" href=\"${baser_url}/static/favicon.ico\" type=\"image/x-icon\">\n    <link rel=\"stylesheet\" href=\"${baser_url}/static/css/all.min.css\">\n    <title>段落评论</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            -webkit-tap-highlight-color: transparent;\n        }\n\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei\", sans-serif;\n            background: #f5f5f5;\n            color: #333;\n            line-height: 1.5;\n            min-height: 100vh;\n            padding-bottom: 70px;\n        }\n\n        /* 顶部栏 */\n        .header {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            z-index: 100;\n            background: #fff;\n            padding: 12px 16px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            border-bottom: 1px solid #eee;\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n\n        .header-left {\n            display: flex;\n            align-items: center;\n            gap: 12px;\n        }\n\n        .header-back {\n            font-size: 20px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .header-title {\n            font-size: 16px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        /* 排序按钮 */\n        .sort-buttons {\n            display: flex;\n            gap: 8px;\n        }\n\n        .sort-btn {\n            padding: 6px 14px;\n            font-size: 13px;\n            border-radius: 16px;\n            cursor: pointer;\n            background: #f5f5f5;\n            color: #666;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n        }\n\n        .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .sort-btn:hover:not(.active) {\n            background: #eee;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 6px 5px;\n            font-size: 13px;\n            border-radius: 0;\n            cursor: pointer;\n            background: transparent;\n            color: #07c160;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n            white-space: nowrap;\n            flex-shrink: 0;\n            box-shadow: none;\n        }\n\n        .comment-btn:hover {\n            color: #05a850;\n            transform: none;\n            box-shadow: none;\n        }\n\n        .comment-btn:active {\n            transform: none;\n            box-shadow: none;\n        }\n\n        /* 确保头部布局不会变形 */\n        .header {\n            flex-wrap: wrap;\n        }\n\n        .header-left {\n            flex-shrink: 1;\n            overflow: hidden;\n            min-width: 0;\n        }\n\n        .header-title {\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            max-width: 180px;\n        }\n\n        .sort-buttons {\n            flex-shrink: 1;\n            min-width: 0;\n        }\n\n        /* 排序按钮 */\n        .sort-btn {\n            padding: 5px 10px;\n            font-size: 12px;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 5px 8px;\n            font-size: 12px;\n        }\n\n        /* 响应式调整 */\n        @media (max-width: 480px) {\n            .header {\n                padding: 10px 12px;\n            }\n\n            .header-left {\n                gap: 8px;\n            }\n\n            .header-title {\n                font-size: 14px;\n                max-width: 150px;\n            }\n\n            .sort-buttons {\n                gap: 6px;\n            }\n\n            .sort-btn {\n                padding: 4px 10px;\n                font-size: 11px;\n            }\n\n            .comment-btn {\n                padding: 4px 6px;\n                font-size: 11px;\n            }\n\n            .theme-toggle {\n                width: 32px;\n                height: 32px;\n                margin-left: 8px;\n            }\n        }\n\n        /* 主容器 */\n        .main-container {\n            padding: 60px 0 0;\n        }\n\n        /* 段落引用 */\n        .paragraph-quote {\n            background: #fff;\n            padding: 16px;\n            margin: 12px;\n            border-radius: 8px;\n            border-left: 3px solid #07c160;\n            font-size: 14px;\n            color: #666;\n            line-height: 1.7;\n        }\n\n        /* 热门评论区域 */\n        .hot-section {\n            margin: 12px;\n        }\n\n        .section-header {\n            display: flex;\n            align-items: center;\n            padding: 8px 0;\n            margin-bottom: 8px;\n        }\n\n        .section-header i {\n            color: #ff6b6b;\n            margin-right: 8px;\n            font-size: 16px;\n        }\n\n        .section-title {\n            font-size: 15px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        .section-count {\n            color: #999;\n            font-size: 13px;\n            margin-left: 8px;\n            font-weight: normal;\n        }\n\n        /* 评论列表 */\n        .comment-list {\n            background: #fff;\n            border-radius: 8px;\n            overflow: hidden;\n        }\n\n        /* 评论卡片 */\n        .comment-item {\n            padding: 16px;\n            border-bottom: 1px solid #f0f0f0;\n        }\n\n        .comment-item:last-child {\n            border-bottom: none;\n        }\n\n        .comment-main {\n            display: flex;\n            gap: 12px;\n        }\n\n        .comment-avatar {\n            flex-shrink: 0;\n        }\n\n        .comment-avatar img {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .comment-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .comment-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 6px;\n        }\n\n        .comment-username {\n            font-size: 14px;\n            font-weight: 500;\n            color: #333;\n            margin-right: 8px;\n        }\n\n        .comment-tag {\n            font-size: 10px;\n            padding: 2px 6px;\n            border-radius: 4px;\n            margin-right: 6px;\n            font-weight: 500;\n        }\n\n        .tag-author {\n            background: linear-gradient(135deg, #ff6b6b, #ff8787);\n            color: #fff;\n        }\n\n        .tag-vip {\n            background: linear-gradient(135deg, #ffa726, #ffcc02);\n            color: #7c5200;\n        }\n\n        .tag-custom {\n            background: linear-gradient(135deg, #4fc3f7, #29b6f6);\n            color: #fff;\n        }\n\n        .comment-content {\n            font-size: 15px;\n            color: #333;\n            line-height: 1.6;\n            word-break: break-word;\n            margin-bottom: 10px;\n        }\n\n        .comment-content .bq {\n            width: 20px;\n            height: 20px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .comment-image {\n            max-width: 200px;\n            max-height: 200px;\n            border-radius: 8px;\n            margin-bottom: 10px;\n            cursor: pointer;\n        }\n\n        .comment-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .comment-meta {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .comment-time {\n            font-size: 12px;\n            color: #999;\n        }\n\n        .comment-reply-btn {\n            font-size: 12px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px 8px;\n            border-radius: 4px;\n            transition: background 0.2s;\n        }\n\n        .comment-reply-btn:hover {\n            background: #f5f5f5;\n        }\n\n        .comment-likes {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        .comment-likes i {\n            font-size: 14px;\n        }\n\n        /* 展开回复 */\n        .expand-replies {\n            display: flex;\n            align-items: center;\n            margin-top: 12px;\n            padding-left: 52px;\n            color: #576b95;\n            font-size: 13px;\n            cursor: pointer;\n        }\n\n        .expand-replies::before {\n            content: '';\n            width: 20px;\n            height: 1px;\n            background: #ddd;\n            margin-right: 8px;\n        }\n\n        .expand-replies i {\n            margin-left: 4px;\n            font-size: 10px;\n            transition: transform 0.3s;\n        }\n\n        .expand-replies.expanded i {\n            transform: rotate(180deg);\n        }\n\n        /* 回复列表 */\n        .reply-list {\n            margin-top: 12px;\n            padding-left: 52px;\n            display: none;\n        }\n\n        .reply-list.show {\n            display: block;\n        }\n\n        .reply-item {\n            padding: 12px 0;\n            border-bottom: 1px solid #f5f5f5;\n        }\n\n        .reply-item:last-child {\n            border-bottom: none;\n        }\n\n        .reply-main {\n            display: flex;\n            gap: 10px;\n        }\n\n        .reply-avatar img {\n            width: 28px;\n            height: 28px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .reply-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .reply-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 4px;\n        }\n\n        .reply-username {\n            font-size: 13px;\n            font-weight: 500;\n            color: #333;\n        }\n\n        .reply-to {\n            font-size: 13px;\n            color: #999;\n            margin: 0 4px;\n        }\n\n        .reply-to-username {\n            font-size: 13px;\n            color: #576b95;\n        }\n\n        .reply-content {\n            font-size: 14px;\n            color: #333;\n            line-height: 1.5;\n            margin-bottom: 6px;\n        }\n\n        .reply-content .bq {\n            width: 18px;\n            height: 18px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .reply-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .reply-time {\n            font-size: 11px;\n            color: #999;\n        }\n\n        .reply-likes {\n            display: flex;\n            align-items: center;\n            gap: 3px;\n            color: #999;\n            font-size: 12px;\n        }\n\n        /* 默认头像 */\n        .default-avatar {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: #fff;\n            font-size: 18px;\n        }\n\n        .default-avatar.small {\n            width: 28px;\n            height: 28px;\n            font-size: 12px;\n        }\n\n        /* 底部输入栏 */\n        .bottom-bar {\n            position: fixed;\n            bottom: 0;\n            \n            left: 0;\n            right: 0;\n            background: #fff;\n            padding: 10px 16px;\n            padding-bottom: 20px;\n            display: flex;\n            align-items: center;\n            gap: 12px;\n            border-top: 1px solid #eee;\n            z-index: 100;\n        }\n\n        .input-wrapper {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            background: #f5f5f5;\n            border-radius: 20px;\n            padding: 8px 16px;\n            cursor: pointer;\n        }\n\n        .input-wrapper span {\n            color: #999;\n            font-size: 14px;\n        }\n\n        .bottom-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .bottom-action-btn {\n            font-size: 22px;\n            color: #666;\n            cursor: pointer;\n            transition: color 0.2s;\n        }\n\n        .bottom-action-btn:hover {\n            color: #333;\n        }\n\n        /* 加载状态 */\n        .loading {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 60px 20px;\n            color: #999;\n        }\n\n        .loading-spinner {\n            width: 32px;\n            height: 32px;\n            border: 3px solid #f0f0f0;\n            border-top-color: #07c160;\n            border-radius: 50%;\n            animation: spin 0.8s linear infinite;\n            margin-bottom: 12px;\n        }\n\n        @keyframes spin {\n            to { transform: rotate(360deg); }\n        }\n\n        /* 空状态 */\n        .empty {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 80px 20px;\n            color: #999;\n        }\n\n        .empty i {\n            font-size: 48px;\n            margin-bottom: 16px;\n            opacity: 0.3;\n        }\n\n        .empty-title {\n            font-size: 15px;\n            color: #666;\n            margin-bottom: 8px;\n        }\n\n        .empty-desc {\n            font-size: 13px;\n            color: #999;\n        }\n\n        /* 没有更多 */\n        .no-more {\n            text-align: center;\n            padding: 20px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        /* 评论弹窗 */\n        .modal-overlay {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.5);\n            z-index: 200;\n            display: none;\n            align-items: flex-start;\n            justify-content: center;\n            overflow: hidden;\n            padding-top: 180px;\n        }\n\n        .modal-overlay.show {\n            display: flex;\n        }\n\n        .modal-content {\n            background: #fff;\n            width: 90%;\n            max-width: 500px;\n            border-radius: 16px;\n            padding: 20px;\n            animation: slideDown 0.3s ease;\n            transition: transform 0.3s ease;\n            max-height: 80vh;\n            box-shadow: 0 10px 40px rgba(0,0,0,0.2);\n        }\n\n        @keyframes slideDown {\n            from {\n                transform: translateY(-100%);\n            }\n            to {\n                transform: translateY(0);\n            }\n        }\n\n        .modal-header {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            margin-bottom: 16px;\n        }\n\n        .modal-title {\n            font-size: 16px;\n            font-weight: 600;\n        }\n\n        .modal-close {\n            font-size: 24px;\n            color: #999;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .modal-textarea-wrapper {\n            position: relative;\n            margin-bottom: 12px;\n        }\n\n        .modal-textarea {\n            width: 100%;\n            min-height: 120px;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            padding: 12px;\n            padding-bottom: 40px;\n            font-size: 15px;\n            resize: none;\n            outline: none;\n        }\n\n        .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .emoji-toggle-btn {\n            position: absolute;\n            bottom: 10px;\n            right: 10px;\n            font-size: 22px;\n            color: #999;\n            cursor: pointer;\n            background: none;\n            border: none;\n            padding: 4px;\n            transition: color 0.2s;\n        }\n\n        .emoji-toggle-btn:hover {\n            color: #07c160;\n        }\n\n        /* 表情面板 */\n        .emoji-panel {\n            position: absolute;\n            bottom: 45px;\n            right: 0;\n            background: #fff;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            box-shadow: 0 4px 20px rgba(0,0,0,0.15);\n            padding: 12px;\n            width: 320px;\n            max-height: 280px;\n            overflow-y: auto;\n            z-index: 10;\n            display: none;\n        }\n\n        .emoji-panel.show {\n            display: block;\n        }\n\n        .emoji-grid {\n            display: grid;\n            grid-template-columns: repeat(6, 1fr);\n            gap: 6px;\n        }\n\n        .emoji-btn {\n            padding: 8px;\n            border: none;\n            background: transparent;\n            cursor: pointer;\n            border-radius: 6px;\n            transition: background 0.2s;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            aspect-ratio: 1;\n        }\n\n        .emoji-btn:hover {\n            background: #f0f0f0;\n        }\n\n        .emoji-btn img {\n            width: 24px;\n            height: 24px;\n        }\n\n        .modal-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .char-count {\n            font-size: 13px;\n            color: #999;\n        }\n\n        .char-count.over {\n            color: #ff4d4f;\n        }\n\n        .submit-btn {\n            background: #07c160;\n            color: #fff;\n            border: none;\n            padding: 8px 24px;\n            border-radius: 20px;\n            font-size: 14px;\n            font-weight: 500;\n            cursor: pointer;\n        }\n\n        .submit-btn:disabled {\n            background: #ccc;\n            cursor: not-allowed;\n        }\n\n        /* 图片预览 */\n        .image-preview {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.9);\n            z-index: 300;\n            display: none;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .image-preview.show {\n            display: flex;\n        }\n\n        .image-preview img {\n            max-width: 90%;\n            max-height: 90%;\n            border-radius: 8px;\n        }\n\n        .image-preview-close {\n            position: absolute;\n            top: 20px;\n            right: 20px;\n            font-size: 32px;\n            color: #fff;\n            cursor: pointer;\n        }\n\n        /* Toast */\n        .toast {\n            position: fixed;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            background: rgba(0, 0, 0, 0.75);\n            color: #fff;\n            padding: 12px 24px;\n            border-radius: 8px;\n            font-size: 14px;\n            z-index: 400;\n            display: none;\n        }\n\n        .toast.show {\n            display: block;\n        }\n\n        /* 隐藏 */\n        .hidden {\n            display: none !important;\n        }\n\n        /* 深色模式 */\n        html.dark, body.dark {\n            background: #1a1a1a;\n            color: #e0e0e0;\n        }\n\n        /* 确保在深色模式下整个页面都是深色背景 */\n        .dark {\n            background: #1a1a1a;\n        }\n\n        .dark .header {\n            background: #2d2d2d;\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .header-title {\n            color: #e0e0e0;\n        }\n\n        .dark .header-back {\n            color: #999;\n        }\n\n        .dark .sort-btn {\n            background: #3d3d3d;\n            color: #999;\n        }\n\n        .dark .sort-btn:hover:not(.active) {\n            background: #4d4d4d;\n        }\n\n        .dark .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .dark .comment-btn {\n            background: transparent;\n            color: #07c160;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:hover {\n            background: transparent;\n            color: #05a850;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:active {\n            background: transparent;\n            box-shadow: none;\n        }\n\n        .dark .paragraph-quote {\n            background: #2d2d2d;\n            color: #aaa;\n        }\n\n        .dark .comment-list {\n            background: #2d2d2d;\n        }\n\n        .dark .comment-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .comment-username {\n            color: #e0e0e0;\n        }\n\n        .dark .comment-content {\n            color: #ccc;\n        }\n\n        .dark .comment-time {\n            color: #777;\n        }\n\n        .dark .comment-likes {\n            color: #777;\n        }\n\n        .dark .expand-replies {\n            color: #5b9bd5;\n        }\n\n        .dark .expand-replies::before {\n            background: #4d4d4d;\n        }\n\n        .dark .reply-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .reply-username {\n            color: #e0e0e0;\n        }\n\n        .dark .reply-content {\n            color: #bbb;\n        }\n\n        .dark .reply-to-username {\n            color: #5b9bd5;\n        }\n\n        .dark .reply-time,\n        .dark .reply-likes {\n            color: #666;\n        }\n\n        .dark .bottom-bar {\n            background: #2d2d2d;\n            border-top-color: #3d3d3d;\n        }\n\n        .dark .input-wrapper {\n            background: #3d3d3d;\n        }\n\n        .dark .input-wrapper span {\n            color: #777;\n        }\n\n        .dark .bottom-action-btn {\n            color: #999;\n        }\n\n        .dark .modal-content {\n            background: #2d2d2d;\n        }\n\n        .dark .modal-title {\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea {\n            background: #3d3d3d;\n            border-color: #4d4d4d;\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .dark .emoji-panel {\n            background: #2d2d2d;\n            border-color: #4d4d4d;\n        }\n\n        .dark .emoji-btn:hover {\n            background: #3d3d3d;\n        }\n\n        .dark .section-title {\n            color: #e0e0e0;\n        }\n\n        .dark .loading {\n            color: #777;\n        }\n\n        .dark .loading-spinner {\n            border-color: #3d3d3d;\n            border-top-color: #07c160;\n        }\n\n        .dark .empty {\n            color: #666;\n        }\n\n        .dark .empty-title {\n            color: #999;\n        }\n\n        .dark .no-more {\n            color: #666;\n        }\n\n        .dark .default-avatar {\n            background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);\n        }\n\n        /* 深色模式切换按钮 */\n        .theme-toggle {\n            width: 36px;\n            height: 36px;\n            border-radius: 50%;\n            border: none;\n            background: #f5f5f5;\n            color: #666;\n            font-size: 16px;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.2s;\n            margin-left: 12px;\n        }\n\n        .theme-toggle:hover {\n            background: #eee;\n        }\n\n        .dark .theme-toggle {\n            background: #3d3d3d;\n            color: #ffc107;\n        }\n\n        .dark .theme-toggle:hover {\n            background: #4d4d4d;\n        }\n\n        /* ==================== PC端响应式优化 ==================== */\n        @media (min-width: 768px) {\n            body {\n                background: #e8e8e8;\n            }\n\n            .dark body,\n            body.dark {\n                background: #121212;\n            }\n\n            .header {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 0 0 12px 12px;\n                box-shadow: 0 2px 12px rgba(0,0,0,0.08);\n            }\n\n            .main-container {\n                max-width: 800px;\n                margin: 0 auto;\n                padding-top: 72px;\n                background: transparent;\n            }\n\n            .paragraph-quote {\n                margin: 16px 0;\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .hot-section {\n                margin: 16px 0;\n            }\n\n            .comment-list {\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .comment-item {\n                padding: 20px 24px;\n            }\n\n            .comment-item:hover {\n                background: #fafafa;\n            }\n\n            .dark .comment-item:hover {\n                background: #363636;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 48px;\n                height: 48px;\n                font-size: 20px;\n            }\n\n            .comment-main {\n                gap: 16px;\n            }\n\n            .comment-username {\n                font-size: 15px;\n            }\n\n            .comment-content {\n                font-size: 15px;\n                line-height: 1.7;\n            }\n\n            .comment-image {\n                max-width: 300px;\n                max-height: 300px;\n            }\n\n            .expand-replies {\n                padding-left: 64px;\n            }\n\n            .reply-list {\n                padding-left: 64px;\n            }\n\n            .reply-avatar img,\n            .default-avatar.small {\n                width: 32px;\n                height: 32px;\n                font-size: 14px;\n            }\n\n            .reply-main {\n                gap: 12px;\n            }\n\n            .reply-username {\n                font-size: 14px;\n            }\n\n            .reply-content {\n                font-size: 14px;\n                line-height: 1.6;\n            }\n\n            .bottom-bar {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 12px 12px 0 0;\n                box-shadow: 0 -2px 12px rgba(0,0,0,0.08);\n            }\n\n            .modal-content {\n                max-width: 600px;\n                margin: 0 auto;\n                border-radius: 16px;\n                margin-bottom: 20px;\n            }\n\n            /* 更多评论区域 */\n            #moreSection {\n                margin: 16px 0;\n            }\n\n            /* 加载状态 */\n            .loading,\n            .empty {\n                background: #fff;\n                border-radius: 12px;\n                margin: 16px 0;\n            }\n\n            .dark .loading,\n            .dark .empty {\n                background: #2d2d2d;\n            }\n\n            .no-more {\n                padding: 30px;\n            }\n\n            /* 列表容器 */\n            .main-container > div[style*=\"margin: 0 12px\"] {\n                margin: 0 !important;\n            }\n        }\n\n        /* 更大屏幕 */\n        @media (min-width: 1200px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 900px;\n            }\n\n            .comment-item {\n                padding: 24px 32px;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 52px;\n                height: 52px;\n            }\n\n            .expand-replies,\n            .reply-list {\n                padding-left: 68px;\n            }\n        }\n\n        /* 超宽屏幕双栏布局（可选） */\n        @media (min-width: 1400px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 1000px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <!-- 顶部栏 -->\n    <div class=\"header\">\n        <div class=\"header-left\">\n            <span class=\"header-title\" id=\"headerTitle\">评论</span>\n        </div>\n        <div class=\"sort-buttons\" id=\"sortButtons\">\n            <button class=\"comment-btn\" id=\"commentBtn\" onclick=\"openCommentModal()\" style=\"display:none;\">\n                <i class=\"fas fa-pen\"></i> 去评论\n            </button>\n            <button class=\"sort-btn active\" id=\"sortByHot\" onclick=\"sortComments('hot')\">\n                <i class=\"fas fa-fire\"></i> 最热\n            </button>\n            <button class=\"sort-btn\" id=\"sortByTime\" onclick=\"sortComments('time')\">\n                <i class=\"fas fa-clock\"></i> 最新\n            </button>\n\n            <button class=\"theme-toggle\" id=\"themeToggle\" onclick=\"toggleTheme()\">\n                <i class=\"fas fa-moon\" id=\"themeIcon\"></i>\n            </button>\n        </div>\n    </div>\n\n    <!-- 主容器 -->\n    <div class=\"main-container\">\n        <!-- 段落内容 -->\n        <div class=\"paragraph-quote hidden\" id=\"paragraphQuote\"></div>\n\n        <!-- 热门评论区域（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"hotSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-fire\"></i>\n                <span class=\"section-title\">热门评论</span>\n                <span class=\"section-count\" id=\"hotCount\"></span>\n            </div>\n            <div class=\"comment-list\" id=\"hotCommentList\"></div>\n        </div>\n\n        <!-- 更多评论标题（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"moreSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-clock\" style=\"color: #07c160;\"></i>\n                <span class=\"section-title\">更多评论</span>\n                <span class=\"section-count\" id=\"moreCount\"></span>\n            </div>\n        </div>\n\n        <!-- 评论列表 -->\n        <div style=\"margin: 0 12px;\">\n            <div class=\"comment-list\" id=\"commentList\"></div>\n        </div>\n\n        <!-- 加载状态 -->\n        <div class=\"loading\" id=\"loading\">\n            <div class=\"loading-spinner\"></div>\n            <span>加载中...</span>\n        </div>\n\n        <!-- 空状态 -->\n        <div class=\"empty hidden\" id=\"empty\">\n            <i class=\"fas fa-comment-slash\"></i>\n            <div class=\"empty-title\">暂无评论</div>\n            <div class=\"empty-desc\">快来发表第一条评论吧</div>\n        </div>\n\n        <!-- 没有更多 -->\n        <div class=\"no-more hidden\" id=\"noMore\">— 没有更多评论了 —</div>\n    </div>\n\n    <!-- 底部输入栏（仅番茄显示） -->\n    <div class=\"bottom-bar hidden\" id=\"bottomBar\">\n        <div class=\"input-wrapper\" onclick=\"openCommentModal()\">\n            <span>趣评千万条，你也来...</span>\n        </div>\n        <div class=\"bottom-actions\">\n            <i class=\"far fa-smile bottom-action-btn\" onclick=\"openCommentModal()\"></i>\n        </div>\n    </div>\n\n    <!-- 评论弹窗 -->\n    <div class=\"modal-overlay\" id=\"commentModal\" onclick=\"closeCommentModal(event)\">\n        <div class=\"modal-content\" onclick=\"event.stopPropagation()\">\n            <div class=\"modal-header\">\n                <span class=\"modal-title\">发表评论</span>\n                <i class=\"fas fa-times modal-close\" onclick=\"closeCommentModal()\"></i>\n            </div>\n            <div class=\"modal-textarea-wrapper\">\n                <textarea class=\"modal-textarea\" id=\"commentTextarea\" placeholder=\"写下你的想法...\" maxlength=\"500\"></textarea>\n                <button type=\"button\" class=\"emoji-toggle-btn\" id=\"emojiToggleBtn\" onclick=\"toggleEmojiPanel(event)\">\n                    <i class=\"far fa-smile\"></i>\n                </button>\n                <div class=\"emoji-panel\" id=\"emojiPanel\">\n                    <div class=\"emoji-grid\" id=\"emojiGrid\"></div>\n                </div>\n            </div>\n            <div class=\"modal-footer\">\n                <span class=\"char-count\" id=\"charCount\">0/500</span>\n                <button class=\"submit-btn\" id=\"submitBtn\" onclick=\"submitComment()\">发表</button>\n            </div>\n        </div>\n    </div>\n\n    <!-- 图片预览 -->\n    <div class=\"image-preview\" id=\"imagePreview\" onclick=\"closeImagePreview()\">\n        <i class=\"fas fa-times image-preview-close\"></i>\n        <img id=\"previewImage\" src=\"\" alt=\"\">\n    </div>\n\n    <!-- Toast -->\n    <div class=\"toast\" id=\"toast\"></div>\n\n    <script>\n        // 配置\n        const urlParams = new URLSearchParams(\"${url}\");\n        const config = {\n            bookId: urlParams.get('book_id'),\n            itemId: urlParams.get('item_id'),\n            currentPara: urlParams.get('para'),\n            ssionid: urlParams.get('ssionid'),\n            source: urlParams.get('source') || '番茄',\n            cursor: '',\n            lastCursor: '', // 保存上一个cursor用于错误恢复\n            hasMore: false,\n            isLoading: false,\n            currentSort: 'hot',\n            comments: [],\n            hotComments: [],\n            allComments: [],\n            loadRetryCount: 0, // 加载重试次数\n            maxRetryCount: 3 // 最大重试次数\n        };\n\n        // 表情映射\n        const emojiMap = {\n            \"[微笑]\": \"${baser_url}/static/emoji/emoji_dr_1.png\",\n            \"[偷笑]\": \"${baser_url}/static/emoji/emoji_dr_2.png\",\n            \"[笑]\": \"${baser_url}/static/emoji/emoji_dr_3.png\",\n            \"[什么]\": \"${baser_url}/static/emoji/emoji_dr_4.png\",\n            \"[害羞]\": \"${baser_url}/static/emoji/emoji_dr_5.png\",\n            \"[爱慕]\": \"${baser_url}/static/emoji/emoji_dr_6.png\",\n            \"[飞吻]\": \"${baser_url}/static/emoji/emoji_dr_7.png\",\n            \"[奸笑]\": \"${baser_url}/static/emoji/emoji_dr_8.png\",\n            \"[尬笑]\": \"${baser_url}/static/emoji/emoji_dr_9.png\",\n            \"[思考]\": \"${baser_url}/static/emoji/emoji_dr_10.png\",\n            \"[撇嘴]\": \"${baser_url}/static/emoji/emoji_dr_11.png\",\n            \"[做鬼脸]\": \"${baser_url}/static/emoji/emoji_dr_12.png\",\n            \"[酷]\": \"${baser_url}/static/emoji/emoji_dr_13.png\",\n            \"[翻白眼]\": \"${baser_url}/static/emoji/emoji_dr_14.png\",\n            \"[惊呆]\": \"${baser_url}/static/emoji/emoji_dr_15.png\",\n            \"[震惊]\": \"${baser_url}/static/emoji/emoji_dr_16.png\",\n            \"[送心]\": \"${baser_url}/static/emoji/emoji_dr_17.png\",\n            \"[委屈]\": \"${baser_url}/static/emoji/emoji_dr_18.png\",\n            \"[快哭了]\": \"${baser_url}/static/emoji/emoji_dr_19.png\",\n            \"[笑哭]\": \"${baser_url}/static/emoji/emoji_dr_20.png\",\n            \"[哭]\": \"${baser_url}/static/emoji/emoji_dr_21.png\",\n            \"[大笑]\": \"${baser_url}/static/emoji/emoji_dr_22.png\",\n            \"[舔屏]\": \"${baser_url}/static/emoji/emoji_dr_23.png\",\n            \"[怒]\": \"${baser_url}/static/emoji/emoji_dr_24.png\",\n            \"[捂脸]\": \"${baser_url}/static/emoji/emoji_dr_25.png\",\n            \"[吐]\": \"${baser_url}/static/emoji/emoji_dr_26.png\",\n            \"[恐惧]\": \"${baser_url}/static/emoji/emoji_dr_27.png\",\n            \"[抓狂]\": \"${baser_url}/static/emoji/emoji_dr_28.png\",\n            \"[敬礼]\": \"${baser_url}/static/emoji/emoji_dr_29.png\",\n            \"[石化]\": \"${baser_url}/static/emoji/emoji_dr_30.png\",\n            \"[OK]\": \"${baser_url}/static/emoji/emoji_dr_31.png\",\n            \"[赞]\": \"${baser_url}/static/emoji/emoji_dr_32.png\",\n            \"[爱心]\": \"${baser_url}/static/emoji/emoji_dr_33.png\",\n            \"[伤心]\": \"${baser_url}/static/emoji/emoji_dr_34.png\",\n            \"[KISS]\": \"${baser_url}/static/emoji/emoji_dr_35.png\",\n            \"[懂了]\": \"${baser_url}/static/emoji/emoji_dr_36.png\",\n            \"[探究]\": \"${baser_url}/static/emoji/emoji_dr_37.png\",\n            \"[重拳出击]\": \"${baser_url}/static/emoji/emoji_dr_38.png\",\n            \"[吃瓜]\": \"${baser_url}/static/emoji/emoji_dr_39.png\",\n            \"[盯]\": \"${baser_url}/static/emoji/emoji_dr_40.png\",\n            \"[你细品]\": \"${baser_url}/static/emoji/emoji_dr_41.png\",\n            \"[赶稿中]\": \"${baser_url}/static/emoji/emoji_dr_42.png\",\n            \"[注意]\": \"${baser_url}/static/emoji/emoji_dr_43.png\",\n            \"[饱了]\": \"${baser_url}/static/emoji/emoji_dr_44.png\",\n            \"[码住]\": \"${baser_url}/static/emoji/emoji_dr_45.png\",\n            \"[学会了]\": \"${baser_url}/static/emoji/emoji_dr_46.png\",\n            \"[顶帖]\": \"${baser_url}/static/emoji/emoji_dr_47.png\",\n            \"[求爆更]\": \"${baser_url}/static/emoji/emoji_dr_48.png\",\n            \"[求关注]\": \"${baser_url}/static/emoji/emoji_dr_49.png\",\n            \"[我也强推]\": \"${baser_url}/static/emoji/emoji_dr_50.png\",\n            \"[雀食神作]\": \"${baser_url}/static/emoji/emoji_dr_51.png\",\n            \"[已种草]\": \"${baser_url}/static/emoji/emoji_dr_52.png\",\n            \"[书架加一]\": \"${baser_url}/static/emoji/emoji_dr_53.png\",\n            \"[歪头笑哭]\": \"${baser_url}/static/emoji/emoticon_emoji_wtxk.png\",\n            \"[神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[狗头]\": \"${baser_url}/static/emoji/emoticon_emoji_doge.png\",\n            \"[哈哈]\": \"${baser_url}/static/emoji/emoticon_emoji_hhh.png\",\n            \"[流泪]\": \"${baser_url}/static/emoji/emoticon_emoji_tears.png\",\n            \"[可爱]\": \"${baser_url}/static/emoji/emoticon_emoji_cute.png\",\n            \"[色]\": \"${baser_url}/static/emoji/emoticon_emoji_smimi.png\",\n            \"[调皮]\": \"${baser_url}/static/emoji/emoticon_emoji_tpi.png\",\n            \"[小七_神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[小七_狗头]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gt.png\",\n            \"[小七_鄙视]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_bs.png\",\n            \"[小七_高兴]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gx.png\",\n            \"[小七_黑人问号]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_hrwh.png\",\n            \"[小七_厉害]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_lh.png\",\n            \"[小七_流泪]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ll.png\",\n            \"[小七_OK]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ok.png\",\n            \"[小七_色]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_s.png\",\n            \"[小七_伤心]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sx.png\",\n            \"[小七_调皮]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_tq.png\",\n            \"[小七_委屈]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_wh.png\",\n            \"[小七_笑哭]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xk.png\",\n            \"[小七_笑嘻嘻]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\",\n            \"[小七_斜眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xyx.png\",\n            \"[小七_赞美]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_zm.png\",\n            \"[眯眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\"\n        };\n\n        // 初始化\n        document.addEventListener('DOMContentLoaded', () => {\n            initTheme();\n            initSortButtons();\n\n            // 隐藏底部输入栏，使用顶部评论按钮\n            document.body.style.paddingBottom = '20px';\n\n            document.getElementById('commentTextarea').addEventListener('input', updateCharCount);\n\n            initEmojiPanel(); // 初始化表情面板\n            initInfiniteScroll();\n            loadComments();\n        });\n\n        function initTheme() {\n            let readerSettings = localStorage.getItem('readerSettings');\n            let theme = localStorage.getItem('theme');\n            if (readerSettings) {\n                try {\n                    const parsed = JSON.parse(readerSettings);\n                    if (parsed.theme !== undefined) {\n                        theme = parsed.theme;\n                    }\n                } catch {}\n            }\n            \n            // 设置默认值为auto\n            if (!theme) {\n                theme = 'auto';\n                localStorage.setItem('theme', 'auto');\n            }\n            \n            updateTheme(theme);\n        }\n\n        function updateTheme(theme) {\n            const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n            let isDark;\n            \n            if (theme === 'auto') {\n                isDark = prefersDark;\n            } else {\n                isDark = theme === 'dark';\n            }\n            \n            if (isDark) {\n                document.documentElement.classList.add('dark');\n                document.body.classList.add('dark');\n            } else {\n                document.documentElement.classList.remove('dark');\n                document.body.classList.remove('dark');\n            }\n            \n            updateThemeIcon(theme);\n        }\n\n        function updateThemeIcon(theme) {\n            const icon = document.getElementById('themeIcon');\n            \n            if (theme === 'auto') {\n                icon.className = 'fas fa-adjust';\n            } else if (theme === 'dark') {\n                icon.className = 'fas fa-sun';\n            } else {\n                icon.className = 'fas fa-moon';\n            }\n        }\n\n        function toggleTheme() {\n            let currentTheme = localStorage.getItem('theme');\n            let newTheme;\n            \n            if (currentTheme === 'auto') {\n                // From auto to opposite of current system preference\n                const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n                newTheme = prefersDark ? 'light' : 'dark';\n            } else if (currentTheme === 'light') {\n                newTheme = 'dark';\n            } else {\n                newTheme = 'auto';\n            }\n            \n            localStorage.setItem('theme', newTheme);\n            updateTheme(newTheme);\n        }\n\n        // Listen for system theme changes in auto mode\n        window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', (e) => {\n            const currentTheme = localStorage.getItem('theme');\n            if (currentTheme === 'auto') {\n                updateTheme('auto');\n            }\n        });\n\n        function initInfiniteScroll() {\n            let scrollTimeout;\n            let lastScrollTime = 0;\n            \n            window.addEventListener('scroll', () => {\n                const now = Date.now();\n                if (now - lastScrollTime < 100) return; // 节流，100ms内不重复处理\n                lastScrollTime = now;\n                \n                clearTimeout(scrollTimeout);\n                scrollTimeout = setTimeout(() => {\n                    if (config.isLoading || !config.hasMore) return;\n                    \n                    const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n                    const windowHeight = window.innerHeight;\n                    const documentHeight = document.documentElement.scrollHeight;\n                    const distance = documentHeight - (scrollTop + windowHeight);\n\n                    // 增加触发距离，避免过早加载\n                    if (distance < 100 && distance > -50) {\n                        loadComments();\n                    }\n                }, 150); // 防抖，150ms后执行\n            }, { passive: true });\n        }\n\n        function initSortButtons() {\n            const sortByHot = document.getElementById('sortByHot');\n            if (config.source === '七猫') {\n                sortByHot.innerHTML = '<i class=\"fas fa-history\"></i> 最早';\n            }\n        }\n\n        function initEmojiPanel() {\n            const emojiGrid = document.getElementById('emojiGrid');\n            if (!emojiGrid) return;\n\n            Object.entries(emojiMap).forEach(([text, src]) => {\n                const btn = document.createElement('button');\n                btn.type = 'button';\n                btn.className = 'emoji-btn';\n                btn.innerHTML = \\`<img src=\"\\${src}\" alt=\"\\${text}\">\\`;\n                btn.onclick = (e) => {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    insertEmoji(text);\n                };\n                emojiGrid.appendChild(btn);\n            });\n        }\n\n        function toggleEmojiPanel(e) {\n            e.preventDefault();\n            e.stopPropagation();\n            document.getElementById('emojiPanel').classList.toggle('show');\n        }\n\n        function insertEmoji(text) {\n            const textarea = document.getElementById('commentTextarea');\n            const start = textarea.selectionStart;\n            const end = textarea.selectionEnd;\n            const textBefore = textarea.value.substring(0, start);\n            const textAfter = textarea.value.substring(end);\n            textarea.value = textBefore + text + textAfter;\n            textarea.focus();\n            textarea.selectionStart = textarea.selectionEnd = start + text.length;\n            updateCharCount();\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function sortComments(sortType) {\n            if (config.currentSort === sortType) return;\n            config.currentSort = sortType;\n\n            document.querySelectorAll('.sort-btn').forEach(btn => btn.classList.remove('active'));\n            if (sortType === 'time') {\n                document.getElementById('sortByTime').classList.add('active');\n            } else {\n                document.getElementById('sortByHot').classList.add('active');\n            }\n\n            let sortedComments = [...config.allComments];\n            \n            if (config.source === '七猫') {\n                if (sortType === 'hot') {\n                    sortedComments.reverse();\n                }\n            } else {\n                if (sortType === 'hot') {\n                    sortedComments.sort((a, b) => (b.like_count || 0) - (a.like_count || 0));\n                } else {\n                    sortedComments.sort((a, b) => (b.create_timestamp || 0) - (a.create_timestamp || 0));\n                }\n            }\n\n            config.comments = sortedComments;\n            renderComments(sortedComments, false);\n        }\n\n        async function loadComments(retryCount = 0) {\n            if (config.isLoading) return;\n            \n            // 预检查：如果已经确定没有更多数据，直接返回\n            if (!config.cursor && config.comments.length > 0) {\n                console.log('没有更多数据可加载（cursor为空）');\n                return;\n            }\n            \n            // 如果已经有大量数据但cursor为空，认为已经加载完毕\n            if (!config.cursor && config.comments.length > 20) {\n                console.log('数据量充足且cursor为空，停止加载');\n                config.hasMore = false;\n                return;\n            }\n            \n            config.isLoading = true;\n\n            const isFirstLoad = !config.cursor;\n            if (!isFirstLoad) {\n                document.getElementById('noMore').classList.add('hidden');\n                showLoadingMore(true);\n            }\n\n            try {\n                let url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&para=\\${config.currentPara}&source=\\${encodeURIComponent(config.source)}\\`;\n                \n                if (config.cursor) {\n                    url += \\`&cursor=\\${encodeURIComponent(config.cursor)}\\`;\n                }\n\n                // 添加超时控制\n                const controller = new AbortController();\n                const timeoutId = setTimeout(() => controller.abort(), 10000); // 10秒超时\n\n                const response = await fetch(url, {\n                    signal: controller.signal,\n                    headers: {\n                        'Accept': 'application/json',\n                        'Content-Type': 'application/json'\n                    }\n                });\n                \n                clearTimeout(timeoutId);\n                \n                if (!response.ok) {\n                    throw new Error(\\`HTTP \\${response.status}: \\${response.statusText}\\`);\n                }\n                \n                const result = await response.json();\n\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n\n                if (result.code === 0 && result.data) {\n                    const data = result.data;\n\n                    if (isFirstLoad) {\n                        // 修复：如果 total 为 0 但实际有评论，使用评论数组长度\n                        const commentCount = data.total || \n                            (data.comments?.length || 0) + (data.hot_comments?.length || 0);\n                        document.getElementById('headerTitle').textContent = commentCount > 0 \n                            ? \\`\\${commentCount}条评论\\` \n                            : '评论';\n                    }\n\n                    if (isFirstLoad && data.paragraph_content) {\n                        const paraEl = document.getElementById('paragraphQuote');\n                        paraEl.textContent = data.paragraph_content.length > 100 \n                            ? data.paragraph_content.substring(0, 100) + '...' \n                            : data.paragraph_content;\n                        paraEl.classList.remove('hidden');\n                    }\n\n                    if (isFirstLoad && data.hot_comments && data.hot_comments.length > 0) {\n                        config.hotComments = data.hot_comments;\n                        renderHotComments(data.hot_comments);\n                        document.getElementById('hotSection').classList.remove('hidden');\n                        document.getElementById('moreSection').classList.remove('hidden');\n                        document.getElementById('moreCount').textContent = \\`(\\${data.total || 0})\\`;\n                    }\n\n                    // 处理评论数据（包括空数据情况）\n                    const comments = data.comments || [];\n                    if (comments.length > 0) {\n                        if (isFirstLoad) {\n                            config.allComments = [...comments];\n                            config.comments = [...comments];\n                            renderComments(comments, false);\n                        } else {\n                            config.allComments = config.allComments.concat(comments);\n                            config.comments = config.comments.concat(comments);\n                            renderComments(comments, true);\n                        }\n                    }\n\n                    // 更严谨的状态判断\n                    const hasMoreFromServer = data.has_more;\n                    const nextCursor = data.next_cursor || '';\n                    \n                    // 如果服务器明确返回hasMore=false，或者没有下一页游标且当前页数据为空，则停止加载\n                    config.hasMore = hasMoreFromServer === true && nextCursor !== '' && comments.length > 0;\n                    \n                    // 特殊情况：如果服务器返回hasMore=true但没有数据，可能是后端bug，保守处理\n                    if (hasMoreFromServer === true && comments.length === 0) {\n                        console.warn('服务器返回hasMore=true但没有数据，停止加载以避免死循环');\n                        config.hasMore = false;\n                    }\n                    \n                    config.lastCursor = config.cursor; // 保存上一个cursor\n                    config.cursor = nextCursor;\n\n                    // 调试日志\n                    console.log(\\`加载完成: 当前页\\${comments.length}条, hasMore=\\${config.hasMore}, cursor='\\${config.cursor}'\\`);\n                    \n                    if (!config.hasMore && config.comments.length > 0) {\n                        document.getElementById('noMore').classList.remove('hidden');\n                        console.log('已到达最后一页，停止加载更多');\n                    }\n\n                    if (config.comments.length === 0 && config.hotComments.length === 0) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                } else {\n                    if (isFirstLoad) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                }\n            } catch (error) {\n                console.error('加载评论失败:', error);\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n                \n                // 更详细的错误处理\n                let errorMsg = '加载失败，请重试';\n                if (error.name === 'AbortError') {\n                    errorMsg = '请求超时，请检查网络后重试';\n                } else if (error.message.includes('HTTP')) {\n                    errorMsg = '服务器错误，请稍后重试';\n                } else if (error.message.includes('Failed to fetch')) {\n                    errorMsg = '网络连接失败，请检查网络';\n                }\n                \n                showToast(errorMsg);\n                \n                // 重置cursor，允许重试\n                if (!isFirstLoad) {\n                    config.cursor = config.lastCursor || '';\n                }\n                \n                // 自动重试机制\n                if (retryCount < config.maxRetryCount && !isFirstLoad) {\n                    const retryDelay = Math.min(1000 * Math.pow(2, retryCount), 5000); // 指数退避，最大5秒\n                    console.log(\\`加载失败，\\${retryDelay/1000}秒后重试(\\${retryCount + 1}/\\${config.maxRetryCount})\\`);\n                    \n                    setTimeout(() => {\n                        loadComments(retryCount + 1);\n                    }, retryDelay);\n                    \n                    // 显示重试提示\n                    showToast(\\`加载失败，\\${retryDelay/1000}秒后自动重试\\`);\n                    return; // 不重置isLoading，让重试逻辑处理\n                }\n            } finally {\n                config.isLoading = false;\n            }\n        }\n\n        function showLoadingMore(show) {\n            let loadingMore = document.getElementById('loadingMore');\n            if (!loadingMore) {\n                loadingMore = document.createElement('div');\n                loadingMore.id = 'loadingMore';\n                loadingMore.className = 'loading';\n                loadingMore.style.padding = '20px';\n                loadingMore.style.opacity = '0';\n                loadingMore.style.transition = 'opacity 0.3s ease';\n                loadingMore.innerHTML = '<div class=\"loading-spinner\" style=\"width:24px;height:24px;margin-bottom:8px;\"></div><span style=\"font-size:13px;\">加载更多...</span>';\n                document.querySelector('.main-container').appendChild(loadingMore);\n                \n                // 强制重排后添加动画\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            }\n            \n            if (show) {\n                loadingMore.style.display = 'flex';\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            } else {\n                loadingMore.style.opacity = '0';\n                setTimeout(() => {\n                    loadingMore.style.display = 'none';\n                }, 300);\n            }\n        }\n\n        function renderHotComments(comments) {\n            const container = document.getElementById('hotCommentList');\n            container.innerHTML = '';\n            document.getElementById('hotCount').textContent = \\`(\\${comments.length})\\`;\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'hot'));\n            });\n        }\n\n        function renderComments(comments, append = false) {\n            const container = document.getElementById('commentList');\n            if (!append) {\n                container.innerHTML = '';\n            }\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'normal'));\n            });\n        }\n\n        function createCommentElement(comment, type) {\n            const div = document.createElement('div');\n            div.className = 'comment-item';\n            div.dataset.commentId = comment.comment_id;\n\n            // 用户标签\n            let tagsHtml = '';\n            if (comment.user && comment.user.is_author) {\n                tagsHtml += '<span class=\"comment-tag tag-author\">作者</span>';\n            }\n            if (comment.user && comment.user.is_vip) {\n                tagsHtml += '<span class=\"comment-tag tag-vip\">VIP</span>';\n            }\n            if (comment.user && comment.user.tags) {\n                comment.user.tags.forEach(tag => {\n                    tagsHtml += \\`<span class=\"comment-tag tag-custom\">\\${tag}</span>\\`;\n                });\n            }\n\n            // 图片\n            let imageHtml = '';\n            if (comment.image_url) {\n                imageHtml = \\`<img class=\"comment-image\" src=\"\\${comment.image_url}\" onclick=\"openImagePreview('\\${comment.image_url}')\" alt=\"\" onerror=\"this.style.display='none'\">\\`;\n            }\n\n            // 展开回复逻辑\n            let expandHtml = '';\n            let replyListHtml = '';\n            \n            const inlineReplyCount = (comment.replies && comment.replies.length) || 0;\n            const serverReplyCount = comment.reply_count || 0;\n            \n            // 只有当有回复时才显示展开按钮\n            if (serverReplyCount > 0 || inlineReplyCount > 0) {\n                const uniqueId = \\`\\${type}-\\${comment.comment_id}\\`;\n                const totalReplies = Math.max(serverReplyCount, inlineReplyCount);\n                \n                // 七猫：始终从接口获取回复（内嵌回复只是预览）\n                if (config.source === '七猫') {\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                } else if (inlineReplyCount > 0) {\n                    // 番茄/塔读：有内嵌回复，默认收起，标记已加载\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\" data-loaded=\"true\">\\${renderRepliesHtml(comment.replies)}</div>\\`;\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                } else {\n                    // 没有内嵌回复，需要从接口加载\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                }\n            }\n\n            // 头像\n            const userName = comment.user?.user_name || '匿名用户';\n            const userAvatar = comment.user?.user_avatar || '';\n            const avatarHtml = userAvatar \n                ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                : \\`<div class=\"default-avatar\"><i class=\"fas fa-user\"></i></div>\\`;\n\n            div.innerHTML = \\`\n                <div class=\"comment-main\">\n                    <div class=\"comment-avatar\">\n                        \\${avatarHtml}\n                    </div>\n                    <div class=\"comment-body\">\n                        <div class=\"comment-header\">\n                            <span class=\"comment-username\">\\${userName}</span>\n                            \\${tagsHtml}\n                        </div>\n                        <div class=\"comment-content\">\\${convertEmoji(comment.content || '')}</div>\n                        \\${imageHtml}\n                        <div class=\"comment-footer\">\n                            <div class=\"comment-meta\">\n                                <span class=\"comment-time\">\\${comment.create_time || ''}</span>\n                                \\${config.source === '番茄' ? '<span class=\"comment-reply-btn\" style=\"display:none;\">回复</span>' : ''}\n                            </div>\n                            <div class=\"comment-likes\">\n                                <i class=\"far fa-heart\"></i>\n                                <span>\\${comment.like_count || 0}</span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                \\${expandHtml}\n                \\${replyListHtml}\n            \\`;\n\n            return div;\n        }\n\n        function renderRepliesHtml(replies) {\n            if (!replies || replies.length === 0) return '';\n\n            return replies.map(reply => {\n                let replyToHtml = '';\n                if (reply.reply_to_user && reply.reply_to_user.user_name) {\n                    replyToHtml = \\`\n                        <span class=\"reply-to\">回复</span>\n                        <span class=\"reply-to-username\">\\${reply.reply_to_user.user_name}</span>\n                    \\`;\n                }\n\n                let tagsHtml = '';\n                if (reply.user && reply.user.is_author) {\n                    tagsHtml += '<span class=\"comment-tag tag-author\" style=\"margin-left:6px;\">作者</span>';\n                }\n\n                const userName = reply.user?.user_name || '匿名';\n                const userAvatar = reply.user?.user_avatar || '';\n                const avatarHtml = userAvatar \n                    ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                    : \\`<div class=\"default-avatar small\"><i class=\"fas fa-user\"></i></div>\\`;\n\n                return \\`\n                    <div class=\"reply-item\">\n                        <div class=\"reply-main\">\n                            <div class=\"reply-avatar\">\n                                \\${avatarHtml}\n                            </div>\n                            <div class=\"reply-body\">\n                                <div class=\"reply-header\">\n                                    <span class=\"reply-username\">\\${userName}</span>\n                                    \\${tagsHtml}\n                                    \\${replyToHtml}\n                                </div>\n                                <div class=\"reply-content\">\\${convertEmoji(reply.content || '')}</div>\n                                <div class=\"reply-footer\">\n                                    <span class=\"reply-time\">\\${reply.create_time || ''}</span>\n                                    <div class=\"reply-likes\">\n                                        <i class=\"far fa-heart\"></i>\n                                        <span>\\${reply.like_count || 0}</span>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                \\`;\n            }).join('');\n        }\n\n        async function toggleReplies(uniqueId, commentId) {\n            const container = document.getElementById(\\`replies-\\${uniqueId}\\`);\n            const expandLink = document.querySelector(\\`[onclick*=\"toggleReplies('\\${uniqueId}'\"]\\`);\n            const isExpanded = container.classList.contains('show');\n\n            if (isExpanded) {\n                // 收起\n                container.classList.remove('show');\n                const replyCount = container.querySelectorAll('.reply-item').length;\n                expandLink.innerHTML = \\`展开\\${replyCount}条回复 <i class=\"fas fa-chevron-down\"></i>\\`;\n                expandLink.classList.remove('expanded');\n            } else {\n                // 展开\n                if (container.dataset.loaded === 'true') {\n                    // 已有数据，直接显示\n                    container.classList.add('show');\n                    expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                    expandLink.classList.add('expanded');\n                } else {\n                    // 需要加载\n                    expandLink.innerHTML = '加载中... <i class=\"fas fa-spinner fa-spin\"></i>';\n                    container.classList.add('show');\n\n                    try {\n                        const url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&comment_id=\\${commentId}&source=\\${encodeURIComponent(config.source)}\\`;\n                        const response = await fetch(url);\n                        const result = await response.json();\n\n                        if (result.code === 0 && result.data && result.data.replies && result.data.replies.length > 0) {\n                            container.innerHTML = renderRepliesHtml(result.data.replies);\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        } else {\n                            container.innerHTML = '<div style=\"padding:16px;color:#999;font-size:13px;text-align:center;\">暂无回复</div>';\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        }\n                    } catch (error) {\n                        console.error('加载回复失败:', error);\n                        container.innerHTML = '<div style=\"padding:16px;color:#ff4d4f;font-size:13px;text-align:center;\">加载失败，点击重试</div>';\n                        container.classList.remove('show');\n                        expandLink.innerHTML = '展开回复 <i class=\"fas fa-chevron-down\"></i>';\n                    }\n                }\n            }\n        }\n\n        function convertEmoji(text) {\n                    if (!text) return '';\n            Object.entries(emojiMap).forEach(([key, src]) => {\n                const regex = new RegExp(key.replace(/[.*+?^\\${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'), 'g');\n                text = text.replace(regex, \\`<img src=\"\\${src}\" class=\"bq\" alt=\"\\${key}\">\\`);\n            });\n            return text;\n        }\n\n        function openCommentModal() {\n            if (config.source !== '番茄') {\n                showToast('当前平台暂不支持评论');\n                return;\n            }\n            document.getElementById('commentModal').classList.add('show');\n            document.getElementById('commentTextarea').focus();\n        }\n\n        function closeCommentModal(event) {\n            if (event && event.target !== document.getElementById('commentModal')) return;\n            document.getElementById('commentModal').classList.remove('show');\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function updateCharCount() {\n            const textarea = document.getElementById('commentTextarea');\n            const charCount = document.getElementById('charCount');\n            const length = textarea.value.length;\n            charCount.textContent = \\`\\${length}/500\\`;\n            charCount.classList.toggle('over', length > 500);\n        }\n\n        async function submitComment() {\n            const content = document.getElementById('commentTextarea').value.trim();\n            if (!content) {\n                showToast('请输入评论内容');\n                return;\n            }\n            if (content.length > 500) {\n                showToast('评论内容不能超过500字');\n                return;\n            }\n\n            try {\n                const url = \\`${baser_url}/post_idea_review?ssionid=\\${config.ssionid}\\`;\n                const response = await fetch(url, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application/json' },\n                    body: JSON.stringify({\n                        text: content,\n                        book_id: config.bookId,\n                        item_id: config.itemId,\n                        para: config.currentPara,\n                        para_content: content\n                    })\n                });\n                const result = await response.json();\n\n                if (result.code === 0) {\n                    showToast('发表成功');\n                    closeCommentModal();\n                    document.getElementById('commentTextarea').value = '';\n                    updateCharCount();\n                    config.cursor = '';\n                    config.allComments = [];\n                    config.comments = [];\n                    config.hotComments = [];\n                    loadComments();\n                } else {\n                    showToast(result.msg || '发表失败');\n                }\n            } catch (error) {\n                console.error('发表评论失败:', error);\n                showToast('发表失败，请重试');\n            }\n        }\n\n        function openImagePreview(url) {\n            document.getElementById('previewImage').src = url;\n            document.getElementById('imagePreview').classList.add('show');\n        }\n\n        function closeImagePreview() {\n            document.getElementById('imagePreview').classList.remove('show');\n        }\n\n        function showToast(message) {\n            const toast = document.getElementById('toast');\n            toast.textContent = message;\n            toast.classList.add('show');\n            setTimeout(() => toast.classList.remove('show'), 2000);\n        }\n    </script>\n</body>\n</html>`\n}\n\n\n//按钮切换时改变源变量并刷新发现\nfunction show(m, t) {\n    const {\n        java,\n        source\n    } = this;\n    //源变量为空时刷新发现，重置源变量\n    source.getVariable()==''?java.refreshExplore():'';//\n    var data = JSON.parse(source.getVariable());\n    //java.log(data);\n    data[t] = m;\n    if (t==\"find_tab\"){\n    \tdata[\"find_source\"]=\"番茄\";\n    \t}\n    //java.longToast(JSON.stringify(data));\n    source.setVariable(JSON.stringify(data, null, 2));\n    java.refreshExplore();\n}\n\n/**\n * 创建筛选器配置\n * @param {string} title - 筛选器标题\n * @param {string[]} chars - 选项列表\n * @param {string} defaultVal - 默认值\n * @param {string} paramKey - URL参数名\n * @param {number} size - 布局占比（0-1之间，如0.33表示33%）\n * @returns {Object} 筛选器配置对象\n */\nfunction createFilter(title, chars, defaultVal, paramKey, size) {\n    return {\n        title: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        action: `show(infoMap['${title}'],'${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}",
    "lastUpdateTime": 1777742742504,
    "loginUi": "[{\n        \"name\": \"邮箱\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"密码\",\n        \"type\": \"password\"\n    }, {\n        \"name\": \"♥登录书源\",\n        \"type\": \"button\",\n        \"action\": \"login(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔐注册书源\",\n        \"type\": \"button\",\n        \"action\": \"register()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"⚙️书源设置\",\n        \"type\": \"button\",\n        \"action\": \"control()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"⛔️清空设置\",\n        \"type\": \"button\",\n        \"action\": \"reCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"✨应用设置\",\n        \"type\": \"button\",\n        \"action\": \"applyCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🔚 退出登录\",\n        \"type\": \"button\",\n        \"action\": \"logout()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🏝用户后台\",\n        \"type\": \"button\",\n        \"action\": \"loginqt()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🗑 清除设备\",\n        \"type\": \"button\",\n        \"action\": \"clearDevice()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🔮 检测登录\",\n        \"type\": \"button\",\n        \"action\": \"checkStatus()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"☕打赏享福利\",\n        \"type\": \"button\",\n        \"action\": \"vip()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"❇️ 更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"==下方配置为书源设置页面无法打开时使用==\",\n        \"type\": \"button\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📑更少简介\",\n        \"type\": \"button\",\n        \"action\": \"set_info()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📝段评开关\",\n        \"type\": \"button\",\n        \"action\": \"paracomment('fqpara')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📚 同步书架\",\n        \"type\": \"button\",\n        \"action\": \"set_reading()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♋️ 男/女频道\",\n        \"type\": \"button\",\n        \"action\": \"set_source_type()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"💢 强制搜索全部\",\n        \"type\": \"button\",\n        \"action\": \"disabledSources()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🍅番茄登录\",\n        \"type\": \"button\",\n        \"action\": \"fq_login()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"➿️ 图片显示\",\n        \"type\": \"button\",\n        \"action\": \"closeImg()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📐 使用教程\",\n        \"type\": \"button\",\n        \"action\": \"jc()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🗂当前模式\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📖小说模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('小说')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔊听书模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('听书')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🏞漫画模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('漫画')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🖲短剧模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('短剧')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎚切换服务器\",\n        \"type\": \"button\",\n        \"action\": \"set_server()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♻️检测当前服务器\",\n        \"type\": \"button\",\n        \"action\": \"checkNet()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⚕️本地/服务器 \",\n        \"type\": \"button\",\n        \"action\": \"get_proxy()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📌永久发布页📌\",\n        \"type\": \"button\",\n        \"action\": \"api()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"↓↓下方可切换来源用于搜索/发现页↓↓\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📤我来上传\",\n        \"type\": \"button\",\n        \"action\": \"put_sk()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"💖我来推荐\",\n        \"type\": \"button\",\n        \"action\": \"put_book()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"全部\",\n        \"type\": \"button\",\n        \"action\": \"set_source('全部')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('番茄')\",\n        'name': '番茄',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('69书吧')\",\n        'name': '69书吧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('七猫')\",\n        'name': '七猫',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('百度')\",\n        'name': '百度',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('起点')\",\n        'name': '起点(第三方)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得间')\",\n        'name': '得间',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('塔读')\",\n        'name': '塔读',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('书旗')\",\n        'name': '书旗',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('QQ')\",\n        'name': 'QQ',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('猫眼')\",\n        'name': '猫眼',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('搜书神器')\",\n        'name': '搜书神器',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得奇')\",\n        'name': '得奇',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('伪69')\",\n        'name': '伪69',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('爱下电子书')\",\n        'name': '爱下电子书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('小米')\",\n        'name': '小米',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('星星小说')\",\n        'name': '星星小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('笔趣阁22')\",\n        'name': '笔趣阁22',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('顶点')\",\n        'name': '顶点',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('幻梦轻小说')\",\n        'name': '幻梦轻小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('江湖')\",\n        'name': '江湖',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('歪瑞古德')\",\n        'name': '歪瑞古德漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('知乎')\",\n        'name': '知乎',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('vip')\",\n        'name': '下方为VIP专属书源(点击此处搜所有vip)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        'action': \"set_source('喜马拉雅')\",\n        'name': '喜马拉雅',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('svip')\",\n        'name': '下方为SVIP专属书源(点击此处搜所有svip)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        'action': \"set_source('超会专属短剧')\",\n        'name': '超会专属短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('超会专属小说')\",\n        'name': '超会专属小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('酷我')\",\n        'name': '酷我听书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('番薯小说')\",\n        'name': '番薯小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('QQ阅读')\",\n        'name': 'QQ(会员书籍免费)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('阅友小说')\",\n        'name': '阅友小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('好看漫画')\",\n        'name': '好看漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('全本小说')\",\n        'name': '全本小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('神书网')\",\n        'name': '神书网',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('读全本')\",\n        'name': '读全本',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('八一中文网')\",\n        'name': '八一中文网',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('斋书苑')\",\n        'name': '斋书苑',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('101看书')\",\n        'name': '101看书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('万相书城')\",\n        'name': '万相书城',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('轻小说文库')\",\n        'name': '轻小说文库',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('轻之文库')\",\n        'name': '轻之文库',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('中华典藏')\",\n        'name': '中华典藏',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('毒舌影视')\",\n        'name': '毒舌影视',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"自定义搜索源(多个用英文,分割)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义服务器(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义评论颜色(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"段评气泡样式(0-4)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"手动填写番茄token(可不填)\",\n        \"type\": \"text\"\n    }\n]",
    "loginUrl": "// 当前书源版本号，切勿修改，否则影响更新的识别\nconst localVersion = '5.5.2';\n\nlet controlUrl = host[0];\n\nfunction login(flag) {\n    if (flag == undefined) {\n        result = JSON.parse(source.getLoginInfo())\n    } else {\n        java.longToast(\"\\n\\n💞正在登录中...\")\n        putLoginInfo(JSON.stringify(result))\n    }\n    let base_url = getArgument('server') || host[0];\n    let zdyserver = String(result['自定义服务器(可不填)']);\n    if (zdyserver.includes('http')) {\n        setArgument('server', zdyserver);\n        if (getKey(String(cookie.getCookie(base_url)))) {\n            let cookies = cookie.getCookie(base_url)\n            try {\n                cookie.removeCookie(base_url)\n            } catch (e) {}\n            cookie.setCookie(zdyserver, cookies)\n        }\n        java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n    }\n    let plcolor = String(getArgument('plcolor') || result['自定义评论颜色(可不填)'] || '#000000');\n    if (plcolor) {\n        setArgument('plcolor', plcolor);\n    } else {\n        setArgument('plcolor', '#000000');\n    }\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources) {\n        setArgument('sources', zdysources);\n    };\n    base_url = getArgument('server') || host[0];\n    let register_email = String(result['邮箱'])\n    let password = String(result['密码'])\n    let key = String(result['密钥'] || '')\n\n    if ((register_email && password || key) && !String(getKey(String(cookie.getCookie(base_url))))) {\n        try {\n            cookie.removeCookie(base_url)\n        } catch (e) {}\n        let deviceKey = '';\n        try {\n            deviceKey = java.deviceID();\n        } catch (e) {\n            deviceKey = java.androidId();\n        };\n        let deviceId = deviceKey;\n        if (register_email && password) {\n            let options = JSON.stringify({\n                method: 'POST',\n                headers: {\n                    'Content-Type': 'application/json'\n                },\n                body: JSON.stringify({\n                    register_email: result['邮箱'],\n                    password: result['密码']\n                })\n            })\n            try {\n                let data = JSON.parse(java.ajax(`${base_url}/login_api,${options}`))\n                if (data.code == 0) {\n                    //java.toast(deviceId)\n                    java.toast(\"\\n\\n✅️登录成功\")\n                    cookie.setCookie(base_url, `qttoken=${data.key};deviceId=${deviceId}`)\n                    result['密钥'] = data.key\n                    setArgument('qttoken', data.key);\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    java.toast('\\n\\n💔' + data.msg || \"登录失败，请重试！\")\n                }\n            } catch (e) {\n                java.toast(\"\\n\\n💔登录失败，请重试！\\n\" + e.message)\n            }\n        } else {\n            cookie.setCookie(base_url, `qttoken=${key};deviceId=${deviceId}`)\n            let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n            try {\n                res = JSON.parse(res)\n                if (res.id != undefined) {\n                    setArgument('qttoken', key);\n                    java.toast('\\n\\n密钥登录成功')\n                    result['邮箱'] = res.email\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    throw new Error()\n                }\n            } catch (e) {\n                java.log(e)\n                java.toast(\"\\n\\n💔登录失败\")\n            }\n        }\n    } else if (flag && String(getKey(String(cookie.getCookie(base_url))))) {\n        java.toast(\"\\n\\n当前✅️已登录，请🚫退出登录后重新登录\");\n        //checkStatus();\n    } else if (flag) {\n        try {\n            java.qread();\n            java.toast(\"\\n\\n请点击右上角✓登陆\");\n       } catch {\n           java.toast(\"\\n\\n⛔️请先填写邮箱和密码\");\n       }\n        \n    }\n}\n\nfunction objectToCookieString(obj) {\n    if (!obj || typeof obj !== 'object') {\n        return '';\n    }\n    return Object.entries(obj)\n        .map(([key, value]) => {\n            const stringValue = String(value);\n            const encodedKey = encodeURIComponent(key);\n            const encodedValue = encodeURIComponent(stringValue);\n            return `${encodedKey}=${encodedValue}`;\n        })\n        .join('; ');\n}\n\nfunction control() {\n    controlUrla = getArgument('controlUrl');\n    if (controlUrla) {\n        controlUrla = findFirstAvailableHost([controlUrla]);\n    }\n    if (!controlUrla) {\n        controlUrla = findFirstAvailableHost(host) || controlUrl;\n    }\n    setArgument('controlUrl', controlUrla);\n    try {\n        let open_argument = source.getVariable();\n        open_argument = JSON.parse(open_argument);\n        let control_cookie = objectToCookieString(open_argument);\n        cookie.setCookie(controlUrla, control_cookie);\n    } catch {}\n    //java.toast(cookie.getCookie(controlUrla))\n    java.startBrowserAwait(controlUrla + '/control', '晴天小说设置');\n    applyCookieSettings();\n}\n\nfunction applyCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    var cookieStr = String(cookie.getCookie(controlUrla));\n\n    var cookieData = {};\n    if (cookieStr && cookieStr !== 'null' && cookieStr !== 'undefined' && cookieStr !== '') {\n        var pairs = cookieStr.split('; ');\n        for (var i = 0; i < pairs.length; i++) {\n            var pair = pairs[i];\n            var eqIndex = pair.indexOf('=');\n            if (eqIndex > -1) {\n                var key = pair.substring(0, eqIndex).trim();\n                var value = decodeURIComponent(pair.substring(eqIndex + 1).trim());\n                cookieData[key] = value;\n                setArgument(key, value);\n            }\n        }\n    }\n\n    var displayConfig = [{\n            key: 'server',\n            label: '服务器',\n            defaultValue: host[0]\n        },\n        {\n            key: 'proxy',\n            label: '访问模式',\n            defaultValue: '云端'\n        },\n        {\n            key: 'tab',\n            label: '阅读模式',\n            defaultValue: '小说'\n        },\n        {\n            key: 'source_type',\n            label: '阅读频道',\n            defaultValue: '男频'\n        },\n        {\n            key: 'sources',\n            label: '书源选择',\n            defaultValue: '全部'\n        },\n        {\n            key: 'fqpara',\n            label: '段评显示',\n            defaultValue: 'on'\n        },\n        {\n            key: 'disabled_sources',\n            label: '强制搜索',\n            defaultValue: '0'\n        },\n        {\n            key: 'reading',\n            label: '同步书架',\n            defaultValue: '0'\n        },\n        {\n            key: 'info',\n            label: '完整简介',\n            defaultValue: 'on'\n        }\n    ];\n\n    var valueMap = {\n        // 访问模式\n        '本地': '💻 本地',\n        '云端': '☁️ 云端',\n\n        // 开关状态\n        'on': '✅ 开启',\n        'off': '❌ 关闭',\n        '1': '✅ 开启',\n        '0': '❌ 关闭',\n\n        // 频道类型\n        '男频': '👨 男频',\n        '女频': '👩 女频',\n\n        // 内容类型\n        '小说': '📖 小说',\n        '听书': '🎧 听书',\n        '漫画': '🎨 漫画',\n        '短剧': '🎬 短剧',\n\n        // 来源类型\n        'vip': '💎 VIP专属',\n        'svip': '👑 SVIP专属',\n        '推荐': '⭐ 网友推荐',\n        '全部': '📚 全部'\n    };\n\n\n    var displayLines = [];\n\n    for (var i = 0; i < displayConfig.length; i++) {\n        var config = displayConfig[i];\n        var value = cookieData[config.key] || config.defaultValue;\n\n        if (!cookieData[config.key]) {\n            setArgument(config.key, config.defaultValue);\n        }\n\n        var displayValue = valueMap[value] || value;\n        if (config.key === 'sources' && displayValue.length > 25) {\n            displayValue = displayValue.substring(0, 25) + '...';\n        }\n\n        displayLines.push(config.label + ': ' + displayValue);\n    }\n\n    // 构建提示模板\n    var template = '✨ 当前配置\\n';\n    template += '━━━━━━━━━━━━━━━━\\n';\n    template += displayLines.join('\\n');\n    template += '\\n━━━━━━━━━━━━━━━━\\n';\n    template += '❤️当前应用的 *⚙️书源设置* 中的配置哦❤️'\n\n    // 显示提示\n    java.longToast(template);\n\n    return displayLines.length;\n}\n\n\nfunction reCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    cookie.removeCookie(controlUrla);\n    applyCookieSettings();\n\n}\n// 检测服务器\nfunction checkNet() {\n    let url = getArgument('server') || host[0];;\n    java.longToast(`\\n\\n♻️正在检测：${url}\\n请稍等~`);\n    let date1 = new Date().getTime();\n    let html = java.ajax(url + '/health');\n    let date2 = new Date().getTime();\n    let t = date2 - date1;\n    let res = {};\n    try {\n        res = JSON.parse(html);\n    } catch {}\n    let c = res.status != \"healthy\";\n    let code = 1;\n    let time = t / 1000 + 's';\n    let logTime = '【' + url + '】\\n┋┋\\n' + '解析时间：' + time;\n    if (c || t > 5000) {\n        java.longToast('\\n💔【访问失败提示】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️当前接口无法访问(可能被墙)♣️\\n┋┋\\n请切换其他接口/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t < 1000) {\n        java.longToast('\\n💖【网络环境优良】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低，推荐使用此接口❤️\\n┋┋\\n网络环境优良，请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        java.longToast('\\n💛【网络环境一般】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般，勉强可使用♦️\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        java.longToast('\\n💔【网络环境堪忧】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高，不建议使用♠\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    }\n}\n\n\nfunction findFirstAvailableHost(hosts) {\n    // 按顺序检测，找到第一个可用的就返回\n    for (var i = 0; i < hosts.length; i++) {\n        var host = hosts[i];\n\n        try {\n            java.longToast(\"🔍 正在检测: \" + host);\n\n            var start = new Date().getTime();\n            var response = java.ajax(host + \"/health\");\n            var end = new Date().getTime();\n            var time = end - start;\n\n            // 检查是否可用\n            if (String(response).indexOf(\"晴天\") !== -1 && time <= 5000) {\n                // 显示结果\n                var status = \"✅ 可用\";\n                if (time < 1000) {\n                    status = \"💚 优秀\";\n                } else if (time < 2000) {\n                    status = \"💛 一般\";\n                } else {\n                    status = \"🧡 较慢\";\n                }\n                java.longToast(status + \"\\n主机: \" + host + \"\\n延迟: \" + time + \"ms\");\n                return host; // 直接返回找到的主机\n            }\n        } catch (e) {\n            // 这个主机失败，继续下一个\n        }\n    }\n\n    // 所有主机都不可用\n    java.longToast(\"❌ 没有可用的主机\");\n    return null;\n}\n\nfunction isVips(res) {\n    let isVIP = '';\n    let vipEndTime = res.vip_end_time;\n    let formattedDate = '';\n\n    if (vipEndTime && vipEndTime !== 0) {\n        let date = new Date(vipEndTime * 1000);\n        formattedDate = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;\n        let currentTime = Math.floor(Date.now() / 1000);\n        let remainingDays = Math.ceil((vipEndTime - currentTime) / (24 * 60 * 60));\n        if (currentTime > vipEndTime) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (已过期)`;\n        } else if (remainingDays <= 7) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} 剩余${remainingDays}天`;\n        } else {\n            if (vipEndTime < 1912946812) {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"}(${formattedDate})`;\n            } else {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (永久)`;\n            }\n        }\n    } else {\n        isVIP = '您尚未开通VIP';\n    }\n    return isVIP;\n}\n\nfunction checkStatus() {\n    java.longToast('\\n\\n♻️检测中...');\n    let base_url = getArgument('server') || host[0];\n    let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    try {\n        res = JSON.parse(res)\n        if (res.id != undefined) {\n            result['邮箱'] = res.email\n            putLoginInfo(JSON.stringify(result))\n            let devices\n            try {\n                devices = Object.keys(JSON.parse(res.device)).length;\n            } catch (e) {\n                devices = res.device ? 1 : 0;\n            }\n            let isVip = isVips(res);\n            tips = `\n┏┅┅┅┅┅┅┱┄┄┄┄┄┄┄┄┄┄┐\n　 🧢昵称 　　　　${res.nickname.padEnd(20,\"\\t\") || \"未设置\".padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　✉️邮箱　　　　${res.email.replace(/(.{3}).*?@/,\"$1***@\").padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🔑密钥　　　　${(`${res.user_key.substring(0,4)}***${res.user_key.slice(-4)}`).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📅注册时间　　${java.timeFormat(res.register_time*1000).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🗒️今日阅读　　${(java.timeFormat(new Date()).slice(0,10)==java.timeFormat(res.last_read_time * 1000).slice(0,10)?res.day_read_count:0).toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📚累计阅读　　${res.all_read_count.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🕓最后阅读　　${(res.last_read_time != 0?java.timeFormat(res.last_read_time * 1000):'未阅读').padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📱在线设备　　${devices.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　👑会员状态　　${isVip.padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🚫封禁状态　　${res.is_banned?'已封禁':'正常　'}　　　　　　　\n┗┅┅┅┅┅┅┹┄┄┄┄┄┄┄┄┄┄┘\n`\n            java.log(tips)\n            java.longToast(tips)\n        } else {\n            throw new Error(res.msg)\n        }\n    } catch (e) {\n        //java.log(e)\n        java.toast(\"\\n检测登录失败\\n\" + e.message)\n    }\n}\n\nfunction clearDevice() {\n    let base_url = getArgument('server') || host[0];\n    let res = java.ajax(`${base_url}/clear,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    res = JSON.parse(res);\n    java.toast(res.code == 0 ? \"\\n\\n📴设备清除成功\" : res.msg)\n    Packages.java.lang.Thread.sleep(500)\n    checkStatus()\n}\n// 保存登录UI信息\nfunction putLoginInfo(info) {\n    try {\n        let key = java.androidId()\n        let encodeStr = Packages.android.util.Base64.encodeToString(java.createSymmetricCrypto(\"AES\", key).encrypt(info), 2)\n        cache.put(`userInfo_${source.getKey()}`, encodeStr)\n        return true\n    } catch (e) {\n        java.log(e)\n        return source.putLoginInfo(info)\n    }\n}\n\n// 用户后台\nfunction loginqt() {\n    let base_url = getArgument('server') || host[0];\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(base_url + '/user', '晴天小说后台');\n    }\n}\n\n// 用户注册\nfunction register() {\n    let base_url = getArgument('server') || host[0];;\n    java.startBrowserAwait(base_url + '/register', '晴天小说注册');\n}\n\n//登录番茄\nfunction fq_login() {\n    try {\n        cookie.removeCookie(\"snssdk.com\");\n        cookie.removeCookie(\"fanqienovel.com\")\n    } catch (e) {}\n    try {\n        java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n    } catch (e) {\n        java.toast(e)\n    }\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user\n    try {\n        user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n            method: \"GET\",\n            headers: {\n                \"Cookie\": cookie_\n            }\n        }))).data.name\n    } catch (e) {\n        java.log(e)\n    }\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"\\n\\n欢迎 \" + user + \"\\n登录成功！\")\n    return true\n}\n\n//退出登录\nfunction logout() {\n    cookie.removeCookie(\"fanqienovel.com\");\n    cookie.removeCookie(\"snssdk.com\");\n    cookie.removeCookie(\"69shuba.com\");\n    /*\n    let servers = host\n    for (let server of servers) {\n    \ttry{removeCookie(server )} catch(e){cookie.removeCookie(server )}\n    }\n    */\n    try {\n        cookie.removeCookie(getArgument('server'))\n    } catch (e) {}\n    java.toast(\"退出登录成功\");\n}\n\n//获取参数\nfunction getArgument(key) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    return open_argument[key];\n}\n\n//设置参数\nfunction setArgument(key, value) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\n// 设置本地or云端访问\nfunction get_proxy() {\n    let proxy = getArgument('proxy');\n    if (proxy == '本地') {\n        setArgument('proxy', '云端');\n        java.longToast('\\n所有数据采用\\n\\n服务器网络访问\\n\\n如果发现用不了，请切换本地网络访问，如69书吧');\n    } else {\n        setArgument('proxy', '本地');\n        java.longToast('\\n所有数据采用\\n\\n本地网络访问\\n\\n如果发现用不了，请开启网络代理，如69书吧');\n    }\n}\n\n\nfunction closeImg() {\n    let close_img = getArgument('close_img');\n    if (close_img == 'on') {\n        setArgument('close_img', 'off');\n        java.longToast('\\n显示文中图片');\n    } else {\n        setArgument('close_img', 'on');\n        java.longToast('\\n不显示文中图片');\n    }\n}\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n晴天书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n晴天书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到晴天书架！\");\n    }\n\n}\n\n//首页\nfunction api() {\n    java.startBrowserAwait('http://vip.gyks.cf', \"首页\");\n}\n\n//打赏\nfunction vip() {\n    let base_url = getArgument('server')|| host[0];\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/coffee', '晴天小说会员开通');\n    }\n}\n\nfunction put_sk() {\n    java.startBrowserAwait('https://sk.gyks.cf', '晴天书库');\n\n}\n\nvar server = getArgument('server')|| host[0];\n\n//设置搜索媒体\nfunction set_media(media) {\n    const mediaConfig = {\n        '喜马拉雅': ['听书'],\n        '番茄': '*',\n        '福利小说': ['小说'],\n        '如漫画': ['漫画'],\n        '包子漫画': ['漫画'],\n        '九妖漫画': ['漫画'],\n        '绅士漫画': ['漫画'],\n        '福利漫画': ['漫画'],\n        '好看漫画': ['漫画'],\n        '六月听书': ['听书'],\n        '海洋听书': ['听书'],\n        '酷我听书': ['听书'],\n        '七猫': ['小说', '听书', '短剧'],\n        '河马': ['短剧'],\n        '超会专属短剧': ['短剧'],\n        '歪瑞古德': ['漫画'],\n        '毒舌影视': ['短剧'],\n        '全部': '*', // 允许所有模式\n        '默认': ['小说']\n    };\n\n    const source = getArgument('sources');\n    const allowedModes = mediaConfig[source] || mediaConfig['默认'];\n    let targetMedia = mediaConfig['默认'][0];\n    let isAllowed = false;\n\n    if (allowedModes === '*' || allowedModes.includes(media)) {\n        targetMedia = media;\n        isAllowed = true;\n    } else if (Array.isArray(allowedModes)) {\n        targetMedia = allowedModes[0];\n    }\n\n    const message = isAllowed ?\n        `\\n\\n已切换至：${targetMedia}\\n请重新搜索书籍！` :\n        `\\n\\n目前${source}：不支持【${media}】模式！\\n已自动切换至：${targetMedia}`;\n\n    setArgument('tab', targetMedia);\n    java.toast(message);\n}\n\n//获取搜索媒体\nfunction get_media() {\n    let media = getArgument('tab');\n    let source = getArgument('sources');\n    if (media == '') {\n        media = '全部';\n    }\n    var tishi = '\\n\\n当前服务器：' + getArgument('server')|| host[0];\n    java.longToast(`\\n\\n当前使用源：${source}-${media}${tishi}`);\n}\n\n\n//设置服务器\nfunction set_server() {\n    putLoginInfo(JSON.stringify(result))\n    let zdyserver;\n    let base_url = getArgument('server')|| host[0];\n    try {\n        zdyserver = String(result['自定义服务器(可不填)']);\n        if (zdyserver.includes('http')) {\n            setArgument('server', zdyserver);\n            if (getKey(String(cookie.getCookie(base_url)))) {\n                let cookies = cookie.getCookie(base_url)\n                try {\n                    cookie.removeCookie(base_url)\n                } catch (e) {}\n                cookie.setCookie(zdyserver, cookies)\n            }\n            java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n        } else {\n            zdyserver = '';\n        }\n    } catch (error) {\n        zdyserver = '';\n    }\n    if (!zdyserver) {\n        const servers = host\n        const currentServer = getArgument('server') || '';\n        const currentIndex = servers.indexOf(currentServer);\n\n        const nextIndex = currentIndex >= 0 ? (currentIndex + 1) % servers.length : 0;\n        const nextServer = servers[nextIndex];\n\n        setArgument('server', nextServer);\n        if (getKey(String(cookie.getCookie(currentServer)))) {\n            let cookies = cookie.getCookie(currentServer)\n            try {\n                cookie.removeCookie(currentServer)\n            } catch (e) {}\n            cookie.setCookie(nextServer, cookies)\n        }\n        java.longToast(`\\n\\n服务器【${nextIndex+1}】：${nextServer}`);\n    }\n}\n\n//获取音色\nvar tone_id = getArgument('tone_id');\n\nfunction get_tone_id(arg) {\n    var datadist = {\n        \"0\": \"默认音色\",\n        \"-1\": \"阅读模式\",\n        \"-2\": \"漫画模式\",\n        \"51\": \"多人发音\",\n        \"1\": \"甜美少女\",\n        \"2\": \"清亮青叔\",\n        \"5\": \"开朗青年\",\n        \"6\": \"温柔淑女\",\n        \"4\": \"成熟大叔\",\n        \"74\": \"大叔升级\",\n        \"30\": \"优雅御姐\"\n    };\n    var tone_id = datadist[arg] || arg;\n    var tishi = '\\n\\n当前音色：' + tone_id;\n    java.toast(tishi);\n}\n\n\n//设置来源\nfunction set_source(sources) {\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources.length > 1 && zdysources != 'undefined') {\n        java.toast('\\n\\n请先清空自定义源再设置');\n    } else {\n        setArgument('sources', sources);\n        set_media('小说');\n        java.toast(`\\n\\n当前来源已切换为:\\n${sources}\\n\\n切换后请重新搜索`);\n    }\n}\n\n// 设置简介\nfunction set_info() {\n    var info = getArgument('info');\n    if (info == 'off') {\n        setArgument('info', 'on');\n        java.toast('\\n\\n已恢复详情页详细简介');\n    } else {\n        setArgument('info', 'off');\n        java.toast('\\n\\n已精简详情页简介');\n    }\n}\n\n// 番茄段评\nfunction paracomment() {\n    var fqpara = getArgument('fqpara');\n    if (fqpara != 'on') {\n        setArgument('fqpara', 'on');\n        java.longToast(\"\\n\\n段评已开启\\n\\n长按刷新段后面的图片即可\\n\\n如果图片不显示，刷新无反应\\n请更新测试版阅读app\");\n    } else {\n        setArgument('fqpara', 'off');\n        java.longToast('\\n\\n段评已关闭');\n    }\n}\n\n// 强制搜索被禁用的源\nfunction disabledSources() {\n    var disabled_sources = getArgument('disabled_sources');\n    if (disabled_sources == '1') {\n        setArgument('disabled_sources', '0');\n        java.longToast('\\n\\n强制搜索禁用的源已关闭');\n    } else {\n        setArgument('disabled_sources', '1');\n        setArgument('sources', '全部');\n        java.longToast(\"\\n\\n强制搜索禁用的源已开启\\n\\n注意：开启后搜索时间会变长！\");\n    }\n}\n\n// 我要推荐\nfunction put_book() {\n    java.startBrowserAwait(getArgument('server')|| host[0] + '/put_book', '我来推荐');\n}\n\n\n// 使用教程\nfunction jc(){\n\t  let html = `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>使用教程</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n        }\n\n        body {\n            background-color: #f5f5f5;\n            padding: 20px;\n        }\n\n        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }\n\n        h1 {\n            text-align: center;\n            color: #333;\n            margin-bottom: 30px;\n            padding-bottom: 10px;\n            border-bottom: 2px solid #4CAF50;\n        }\n\n        .tutorial-card {\n            background-color: white;\n            border-radius: 8px;\n            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);\n            padding: 25px;\n            margin-bottom: 25px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .tutorial-card:hover {\n            transform: translateY(-5px);\n            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);\n        }\n\n        .card-title {\n            color: #4CAF50;\n            margin-bottom: 15px;\n            font-size: 1.4em;\n        }\n\n        .card-content {\n            line-height: 1.6;\n            color: #555;\n        }\n\n        .keyword-list {\n            background-color: #f9f9f9;\n            border-left: 4px solid #4CAF50;\n            padding: 15px;\n            margin-top: 15px;\n            border-radius: 0 4px 4px 0;\n            font-family: monospace;\n        }\n\n        .keyword-item {\n            margin-bottom: 8px;\n        }\n    </style>\n</head>\n<body>\n    <div class=\"container\">\n        <h1>使用教程</h1>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">搜索功能</h2>\n            <div class=\"card-content\">\n                <p><strong>1) 基础搜索：</strong>在发现页长按该书源，点击搜索，可直接搜索全部来源的小说。</p>\n                <p><strong>2) 进阶搜索：</strong>在“登陆-书源设置”中选择指定模式或来源，即可搜索指定内容。</p>\n                <p><strong>3) 快捷搜索：</strong>使用特殊关键词进行搜索。</p>\n                <div class=\"keyword-list\">\n                    <p class=\"keyword-item\">x:书名@来源 (例如: x:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">t:书名@来源 (例如: t:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">m:书名@来源 (例如: m:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">d:书名@来源 (例如: d:十日终焉@番茄)</p>\n                </div>\n                <p>其中，x表示小说（可省略），t表示听书，m表示漫画，d表示短剧。冒号支持中文和英文。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">发现页</h2>\n            <div class=\"card-content\">\n                <p>在书源设置中选择指定模式或者单个来源，然后刷新发现页即可。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">更多使用方式</h2>\n            <div class=\"card-content\">\n                <p>进入书源设置页面应该能一目了然。</p>\n            </div>\n        </div>\n    </div>\n</body>\n</html>`;\n\t  java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '晴天书源教程');\n\t}\n\n// 书源更新\nfunction renderVersionPage() {\n    let yd = '';\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>书源更新</title>\n  <!-- Font Awesome 图标库 -->\n  <link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\" />\n  <style>\n    :root {\n      --primary-gradient: linear-gradient(135deg, #4e6ef2, #6b2dd8);\n      --latest-gradient: linear-gradient(135deg, #8e2de2 0%, #4a00e0 50%, #d4af37 100%);\n      --success-color: #28c76f;\n      --warning-color: #ff9f43;\n      --error-color: #ea5455;\n      --text-main: #1f2937;\n      --text-secondary: #6b7280;\n      --card-bg: #ffffff;\n      --border-color: #e5e7eb;\n      --light-bg: #f9fafb;\n      --shadow: 0 4px 12px rgba(78, 110, 242, 0.1);\n      --shadow-hover: 0 6px 18px rgba(78, 110, 242, 0.2);\n      --glow-shadow: 0 0 25px rgba(142, 45, 226, 0.5), 0 0 50px rgba(212, 175, 55, 0.3);\n      --modal-bg: rgba(31, 41, 55, 0.8);\n      --modal-content-bg: #ffffff;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n      font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n    }\n\n    body {\n      background: linear-gradient(135deg, #eef2ff, #f5f7ff);\n      color: var(--text-main);\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 16px;\n    }\n\n    /* 加载动画 */\n    .loading-wrapper {\n      text-align: center;\n      animation: fadeIn 0.3s ease;\n    }\n\n    .loading-spinner {\n      width: 50px;\n      height: 50px;\n      border: 4px solid rgba(78, 110, 242, 0.3);\n      border-top-color: #4e6ef2;\n      border-radius: 50%;\n      margin: 0 auto 20px;\n      animation: spin 1s linear infinite;\n    }\n\n    .loading-text {\n      color: var(--text-main);\n      font-size: 16px;\n      font-weight: 500;\n    }\n\n    @keyframes spin {\n      to { transform: rotate(360deg); }\n    }\n\n    @keyframes fadeIn {\n      from { opacity: 0; transform: translateY(20px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(30px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes pulse {\n      0%, 100% { opacity: 1; }\n      50% { opacity: 0.7; }\n    }\n\n    @keyframes gradientAnimation {\n      0% { background-position: 0% 50%; }\n      50% { background-position: 100% 50%; }\n      100% { background-position: 0% 50%; }\n    }\n\n    @keyframes breathe {\n      0%, 100% { \n        transform: scale(1);\n        box-shadow: var(--glow-shadow), var(--shadow);\n      }\n      50% { \n        transform: scale(1.02);\n        box-shadow: 0 0 30px rgba(142, 45, 226, 0.6), 0 0 60px rgba(212, 175, 55, 0.4), var(--shadow);\n      }\n    }\n\n    @keyframes shimmer {\n      0% {\n        background-position: -200% center;\n      }\n      100% {\n        background-position: 200% center;\n      }\n    }\n\n    /* 主容器 */\n    .container {\n      width: 100%;\n      max-width: 420px;\n      background: var(--card-bg);\n      border-radius: 24px;\n      overflow: hidden;\n      box-shadow: var(--shadow);\n      position: relative;\n      z-index: 1;\n      animation: slideIn 0.5s ease;\n      display: none;\n    }\n\n    /* 头部 */\n    .header {\n      background: var(--primary-gradient);\n      color: #ffffff;\n      padding: 24px 16px;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .header::before {\n      content: '';\n      position: absolute;\n      top: -30px;\n      left: -30px;\n      width: 80px;\n      height: 80px;\n      background: rgba(255, 255, 255, 0.15);\n      border-radius: 50%;\n    }\n\n    .header::after {\n      content: '';\n      position: absolute;\n      bottom: -60px;\n      right: -60px;\n      width: 150px;\n      height: 150px;\n      background: rgba(255, 255, 255, 0.1);\n      border-radius: 50%;\n    }\n\n    .header h1 {\n      font-size: 1.4rem;\n      font-weight: 700;\n      margin-bottom: 8px;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header p {\n      font-size: 0.9rem;\n      opacity: 0.9;\n      line-height: 1.4;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header-icon {\n      font-size: 48px;\n      margin-bottom: 10px;\n      display: inline-block;\n      animation: bounce 2s ease infinite;\n    }\n\n    @keyframes bounce {\n      0%, 100% { transform: translateY(0); }\n      50% { transform: translateY(-10px); }\n    }\n\n    /* 版本对比 */\n    .version-comparison {\n      display: flex;\n      flex-wrap: nowrap;\n      gap: 12px;\n      padding: 16px;\n      margin-top: 8px;\n      position: relative;\n      z-index: 10;\n    }\n\n    .version-card {\n      flex: 1;\n      min-width: 45%;\n      background: var(--card-bg);\n      border-radius: 16px;\n      padding: 28px 16px 16px;\n      box-shadow: var(--shadow);\n      text-align: center;\n      position: relative;\n      transition: transform 0.3s ease, box-shadow 0.3s ease;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n    }\n\n    .version-card:hover {\n      transform: translateY(-4px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .version-card.current-version {\n      background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 100%);\n      border: 1px solid rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version:hover {\n      box-shadow: 0 6px 20px rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version h3,\n    .version-card.current-version .version-number,\n    .version-card.current-version .version-date {\n      color: var(--text-main);\n    }\n\n    .version-card.latest-version {\n      background: var(--latest-gradient);\n      background-size: 300% 300%;\n      box-shadow: var(--glow-shadow), var(--shadow);\n      color: #fff;\n      z-index: 2;\n      animation: gradientAnimation 6s ease infinite, breathe 3s ease-in-out infinite;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .version-card.latest-version::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        90deg,\n        transparent,\n        rgba(255, 255, 255, 0.3),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: shimmer 3s infinite;\n    }\n\n    .version-card.latest-version h3,\n    .version-card.latest-version .version-number,\n    .version-card.latest-version .version-date {\n      color: #fff;\n      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n      position: relative;\n      z-index: 1;\n    }\n\n    .version-status {\n      position: absolute;\n      top: 6px;\n      right: 6px;\n      padding: 3px 7px;\n      font-size: 0.65rem;\n      font-weight: 600;\n      border-radius: 6px;\n      color: #fff;\n      line-height: 1.2;\n      white-space: nowrap;\n      z-index: 2;\n    }\n\n    .version-card.latest-version .version-status {\n      background: rgba(255, 255, 255, 0.25);\n      backdrop-filter: blur(5px);\n      border: 1px solid rgba(255, 255, 255, 0.3);\n      color: #fff;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    }\n\n    .status-outdated { background: var(--warning-color); }\n    .status-latest { background: var(--success-color); }\n    .status-invalid { background: var(--error-color); }\n\n    .version-card h3 {\n      font-size: 0.9rem;\n      color: var(--text-secondary);\n      margin-bottom: 8px;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n    }\n\n    .version-number {\n      font-size: 1.25rem;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 8px 0;\n      transition: all 0.3s ease;\n      font-family: 'Courier New', monospace;\n    }\n\n    .version-card.latest-version .version-number {\n      font-size: 1.4rem;\n      transform: scale(1.05);\n      text-shadow: \n        0 2px 4px rgba(0, 0, 0, 0.3),\n        0 0 10px rgba(212, 175, 55, 0.8),\n        0 0 20px rgba(212, 175, 55, 0.5);\n      animation: pulse-glow 2s ease-in-out infinite;\n    }\n\n    @keyframes pulse-glow {\n      0%, 100% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 10px rgba(212, 175, 55, 0.8),\n          0 0 20px rgba(212, 175, 55, 0.5);\n      }\n      50% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 15px rgba(212, 175, 55, 1),\n          0 0 30px rgba(212, 175, 55, 0.7);\n      }\n    }\n\n    .version-date {\n      font-size: 0.8rem;\n      color: var(--text-secondary);\n      margin-top: 4px;\n    }\n\n    /* 版本对比指示器 */\n    .version-indicator {\n      position: absolute;\n      left: 50%;\n      top: 50%;\n      transform: translate(-50%, -50%);\n      z-index: 5;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n      color: white;\n    }\n\n    .version-indicator.update-needed {\n      background: var(--error-color);\n      box-shadow: 0 2px 8px rgba(234, 84, 85, 0.4);\n      animation: pulse-indicator 1.5s infinite;\n    }\n\n    .version-indicator.is-latest {\n      background: var(--success-color);\n      box-shadow: 0 2px 8px rgba(40, 199, 111, 0.4);\n    }\n\n    @keyframes pulse-indicator {\n      0% { transform: translate(-50%, -50%) scale(1); }\n      50% { transform: translate(-50%, -50%) scale(1.1); }\n      100% { transform: translate(-50%, -50%) scale(1); }\n    }\n\n    /* 内容区 */\n    .content-container {\n      padding: 16px;\n    }\n\n    /* 状态提示 */\n    .status-alert {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      padding: 12px 16px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      font-weight: 500;\n      font-size: 14px;\n      animation: slideIn 0.5s ease 0.3s backwards;\n    }\n\n    .status-alert i {\n      font-size: 20px;\n    }\n\n    .status-alert.update-available {\n      background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);\n      color: #d63031;\n      box-shadow: 0 4px 15px rgba(253, 203, 110, 0.4);\n    }\n\n    .status-alert.up-to-date {\n      background: linear-gradient(135deg, #55efc4 0%, #00b894 100%);\n      color: white;\n      box-shadow: 0 4px 15px rgba(0, 184, 148, 0.4);\n    }\n\n    /* 更新容器 */\n    .update-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.4s backwards;\n    }\n\n    .update-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n    }\n\n    .update-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .update-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .update-tag {\n      background: rgba(78, 110, 242, 0.1);\n      color: #4e6ef2;\n      padding: 4px 8px;\n      border-radius: 8px;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .update-content {\n      padding: 16px;\n    }\n\n    .update-date {\n      font-weight: 600;\n      color: #4e6ef2;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      padding: 8px 0;\n      border-bottom: 1px dashed #e0e0e0;\n    }\n\n    .update-text {\n      margin: 8px 0;\n      position: relative;\n      padding-left: 16px;\n      line-height: 1.5;\n      color: var(--text-main);\n      font-size: 0.95rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .update-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      font-weight: bold;\n      color: #4e6ef2;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 历史日志 */\n    .history-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.5s backwards;\n    }\n\n    .history-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n      cursor: pointer;\n      user-select: none;\n    }\n\n    .history-header:hover {\n      opacity: 0.8;\n    }\n\n    .history-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .history-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .toggle-history {\n      background: none;\n      border: none;\n      color: var(--text-secondary);\n      cursor: pointer;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.85rem;\n      transition: color 0.2s ease;\n    }\n\n    .toggle-history:hover {\n      color: #4e6ef2;\n    }\n\n    .history-content {\n      padding: 0 16px;\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 0.4s ease, padding 0.4s ease;\n    }\n\n    .history-content.expanded {\n      max-height: 60vh;\n      overflow-y: auto;\n      padding: 16px;\n      scrollbar-width: thin;\n      scrollbar-color: #4e6ef2 #f0f0f0;\n    }\n\n    .history-content.expanded::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-track {\n      background: #f0f0f0;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb {\n      background: #4e6ef2;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb:hover {\n      background: #3a56d0;\n    }\n\n    .history-item {\n      margin-bottom: 16px;\n      padding-bottom: 16px;\n      border-bottom: 1px dashed var(--border-color);\n    }\n\n    .history-item:last-child {\n      border-bottom: none;\n      margin-bottom: 0;\n      padding-bottom: 0;\n    }\n\n    .history-date {\n      font-weight: 600;\n      color: var(--text-main);\n      margin-bottom: 8px;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.9rem;\n      background: rgba(78, 110, 242, 0.05);\n      padding: 6px 10px;\n      border-radius: 6px;\n    }\n\n    .history-text {\n      margin: 8px 0;\n      padding-left: 16px;\n      line-height: 1.4;\n      color: var(--text-secondary);\n      position: relative;\n      font-size: 0.9rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .history-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      color: #4e6ef2;\n      font-weight: bold;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 按钮组 */\n    .button-group {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-bottom: 16px;\n    }\n\n    .button {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      padding: 14px 28px;\n      text-align: center;\n      font-size: 1rem;\n      border: none;\n      border-radius: 12px;\n      text-decoration: none;\n      background: var(--primary-gradient);\n      color: white;\n      font-weight: 600;\n      transition: all 0.3s ease;\n      box-shadow: var(--shadow);\n      position: relative;\n      overflow: hidden;\n      cursor: pointer;\n    }\n\n    .button i {\n      font-size: 1rem;\n    }\n\n    .button::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: rgba(255, 255, 255, 0.1);\n      transform: rotate(30deg);\n      transition: all 0.6s ease;\n      pointer-events: none;\n    }\n\n    .button:hover {\n      transform: translateY(-3px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .button:hover::after {\n      transform: rotate(30deg) translate(20%, 20%);\n    }\n\n    .button:active {\n      transform: scale(0.95);\n    }\n\n    /* 错误状态 */\n    .error-state {\n      text-align: center;\n      padding: 40px 20px;\n      color: var(--text-main);\n    }\n\n    .error-icon {\n      font-size: 64px;\n      margin-bottom: 20px;\n      color: var(--error-color);\n    }\n\n    .error-text {\n      font-size: 16px;\n      line-height: 1.6;\n      margin-bottom: 20px;\n    }\n\n    .retry-button {\n      background: var(--primary-gradient);\n      color: white;\n      padding: 12px 30px;\n      border-radius: 12px;\n      border: none;\n      font-weight: 600;\n      cursor: pointer;\n      transition: all 0.3s ease;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n\n    .retry-button:hover {\n      transform: translateY(-2px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .retry-button:active {\n      transform: scale(0.95);\n    }\n\n    /* 装饰元素 */\n    .decoration {\n      position: absolute;\n      z-index: 0;\n      pointer-events: none;\n    }\n\n    .decoration.circle {\n      width: 120px;\n      height: 120px;\n      border-radius: 50%;\n      background: rgba(107, 45, 216, 0.05);\n      top: 10%;\n      left: 10%;\n    }\n\n    .decoration.square {\n      width: 80px;\n      height: 80px;\n      transform: rotate(45deg);\n      background: rgba(78, 110, 242, 0.05);\n      bottom: 10%;\n      right: 10%;\n    }\n\n    /* 响应式 */\n    @media (max-width: 768px) {\n      body {\n        padding: 12px;\n      }\n\n      .container {\n        max-width: 100%;\n        border-radius: 20px;\n      }\n\n      .header {\n        padding: 20px 15px;\n      }\n\n      .header h1 {\n        font-size: 1.3rem;\n      }\n\n      .header-icon {\n        font-size: 40px;\n      }\n\n      .version-comparison {\n        flex-direction: row;\n        flex-wrap: nowrap;\n        gap: 10px;\n        padding: 12px;\n        margin-top: 6px;\n        overflow-x: auto;\n      }\n\n      .version-card {\n        min-width: 45%;\n        padding: 26px 12px 12px;\n      }\n\n      /* 移动端减弱呼吸动效 */\n      .version-card.latest-version {\n        animation: gradientAnimation 6s ease infinite;\n      }\n\n      .version-status {\n        top: 5px;\n        right: 5px;\n        padding: 2px 5px;\n        font-size: 0.6rem;\n      }\n\n      .version-number {\n        font-size: 1.1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.2rem;\n      }\n\n      .update-header h2, .history-header h2 {\n        font-size: 0.9rem;\n      }\n\n      .button {\n        padding: 12px 24px;\n        font-size: 0.95rem;\n      }\n\n      .history-content.expanded {\n        max-height: 50vh;\n        -webkit-overflow-scrolling: touch;\n      }\n    }\n\n    @media (max-width: 380px) {\n      .header h1 {\n        font-size: 1.2rem;\n      }\n\n      .version-number {\n        font-size: 1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.1rem;\n      }\n\n      .button {\n        padding: 11px;\n        font-size: 0.9rem;\n      }\n    }\n  </style>\n</head>\n<body>\n  <div class=\"decoration circle\"></div>\n  <div class=\"decoration square\"></div>\n\n  <div id=\"loading\" class=\"loading-wrapper\">\n    <div class=\"loading-spinner\"></div>\n    <div class=\"loading-text\"><i class=\"fas fa-search\"></i> 正在检查更新...</div>\n  </div>\n\n  <div class=\"container\" id=\"container\">\n    <div class=\"header\">\n      <div class=\"header-icon\"><i class=\"fas fa-book\"></i></div>\n      <h1>晴天书源更新</h1>\n      <p>推荐使用阅读Sigma版本<br>正式版可能存在兼容性问题-<a href='https://legado.gyks.cf'>下载</a></p>\n    </div>\n\n    <div class=\"version-comparison\">\n      <div class=\"version-card current-version\">\n        <div class=\"version-status status-outdated\" id=\"currentStatus\">待检查</div>\n        <h3><i class=\"fas fa-cube\"></i> 当前版本</h3>\n        <div class=\"version-number\" id=\"currentVersion\">-</div>\n        <div class=\"version-date\">您的当前版本</div>\n      </div>\n\n      <div class=\"version-indicator update-needed\" id=\"versionIndicator\" style=\"display: none;\">\n        <i class=\"fas fa-arrow-right\"></i>\n      </div>\n\n      <div class=\"version-card latest-version\">\n        <div class=\"version-status status-latest\" id=\"latestStatus\">最新版本</div>\n        <h3><i class=\"fas fa-star\"></i> 最新版本</h3>\n        <div class=\"version-number\" id=\"latestVersion\">-</div>\n        <div class=\"version-date\">可用最新版本</div>\n      </div>\n    </div>\n\n    <div class=\"content-container\">\n      <div class=\"status-alert\" id=\"statusAlert\" style=\"display: none;\"></div>\n\n      <div id=\"latestLogContainer\" style=\"display: none;\">\n        <div class=\"update-container\">\n          <div class=\"update-header\">\n            <h2><i class=\"fas fa-bolt\"></i> 最新更新</h2>\n            <div class=\"update-tag\">最新发布</div>\n          </div>\n          <div class=\"update-content\">\n            <div class=\"update-date\" id=\"latestLogDate\"></div>\n            <div class=\"update-text\" id=\"latestLogContent\"></div>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"button-group\" id=\"buttonGroup\" style=\"display: none;\"></div>\n\n      <div class=\"history-container\" id=\"logs\" style=\"display: none;\">\n        <div class=\"history-header\" onclick=\"toggleLogs()\">\n          <h2><i class=\"fas fa-history\"></i> 历史更新 <span id=\"historyCount\"></span></h2>\n          <button class=\"toggle-history\" id=\"toggleButton\">\n            <span id=\"toggleText\">展开历史</span>\n            <i class=\"fas fa-chevron-down\" id=\"toggleIcon\"></i>\n          </button>\n        </div>\n        <div class=\"history-content\" id=\"logList\"></div>\n      </div>\n    </div>\n  </div>\n\n  <script>\n  let logsCollapsed = true;\n\n  function toggleLogs() {\n    logsCollapsed = !logsCollapsed;\n    const logList = document.getElementById('logList');\n    const toggleText = document.getElementById('toggleText');\n    const toggleIcon = document.getElementById('toggleIcon');\n    \n    if (logsCollapsed) {\n      logList.classList.remove('expanded');\n      toggleText.textContent = '展开历史';\n      toggleIcon.className = 'fas fa-chevron-down';\n    } else {\n      logList.classList.add('expanded');\n      toggleText.textContent = '收起历史';\n      toggleIcon.className = 'fas fa-chevron-up';\n    }\n  }\n\n  (async function() {\n    const loading = document.getElementById('loading');\n    const container = document.getElementById('container');\n    const currentVersion = document.getElementById('currentVersion');\n    const latestVersion = document.getElementById('latestVersion');\n    const currentStatus = document.getElementById('currentStatus');\n    const latestStatus = document.getElementById('latestStatus');\n    const versionIndicator = document.getElementById('versionIndicator');\n    const statusAlert = document.getElementById('statusAlert');\n    const buttonGroup = document.getElementById('buttonGroup');\n    const latestLogContainer = document.getElementById('latestLogContainer');\n    const latestLogDate = document.getElementById('latestLogDate');\n    const latestLogContent = document.getElementById('latestLogContent');\n    const logsContainer = document.getElementById('logs');\n    const logList = document.getElementById('logList');\n    const historyCount = document.getElementById('historyCount');\n\n    const localVer = '${String(localVersion)}';\n\n    // 统一的服务器配置 - 方便维护\n    const serverConfig = {\n      main: {\n        name: '主线路',\n        icon: 'rocket',\n        baseUrl: 'https://sy.gyks.cf',\n        downloadPath: '/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup1: {\n        name: '备用线路1',\n        icon: 'box',\n        baseUrl: 'http://v1.gyks.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup2: {\n        name: '备用线路2',\n        icon: 'satellite',\n        baseUrl: 'http://v2.gyks.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup3: {\n        name: '备用线路3',\n        icon: 'link',\n        baseUrl: 'http://v3.gyks.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup4: {\n        name: '备用线路4',\n        icon: 'bolt',\n        baseUrl: 'http://v4.gyks.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup5: {\n        name: '备用线路5',\n        icon: 'globe',\n        baseUrl: 'http://v5.gyks.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup6: {\n        name: '备用线路6',\n        icon: 'broadcast-tower',\n        baseUrl: 'http://101.35.133.34:8888',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E6%99%B4%E5%A4%A9%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      }\n    };\n\n    // 版本比较函数\n    function compareVersions(vs) {\n      const normalize = (v) => {\n        return v.split('.').map(n => {\n          const num = parseInt(n, 10);\n          return isNaN(num) ? 0 : num;\n        });\n      };\n\n      const parts1 = normalize(localVer);\n      const parts2 = normalize(vs);\n      const maxLength = Math.max(parts1.length, parts2.length);\n      \n      for (let i = 0; i < maxLength; i++) {\n        const num1 = parts1[i] || 0;\n        const num2 = parts2[i] || 0;\n        if (num1 > num2) return 1;\n        if (num1 < num2) return -1;\n      }\n      return 0;\n    }\n\n    async function fetchVersionData() {\n      // 使用统一配置中除主线路外的备用线路进行版本检查\n      const serversToCheck = Object.values(serverConfig).filter(s => s.baseUrl.includes('gyks.cf') || s.baseUrl.includes('101.35'));\n      \n      for (const server of serversToCheck) {\n        try {\n          const response = await fetch(server.baseUrl + '/version', { timeout: 2000 });\n          if (response.ok) {\n            return await response.json();\n          }\n        } catch (e) {\n          console.warn(\\`接口失败：\\${server.baseUrl}\\`, e);\n        }\n      }\n      throw new Error('所有更新接口都请求失败');\n    }\n\n    function showError(message) {\n      loading.innerHTML = \\`\n        <div class=\"error-state\">\n          <div class=\"error-icon\"><i class=\"fas fa-exclamation-triangle\"></i></div>\n          <div class=\"error-text\">\\${message}</div>\n          <button class=\"retry-button\" onclick=\"location.reload()\"><i class=\"fas fa-redo\"></i> 重试</button>\n        </div>\n      \\`;\n    }\n\n    try {\n      const data = await fetchVersionData();\n      const cloudVersion = String(data.version3);\n      const updateLog = data.update_log || {};\n\n      // 显示版本信息\n      currentVersion.textContent = \\`v\\${localVer}\\`;\n      latestVersion.textContent = \\`v\\${cloudVersion}\\`;\n\n      // 处理日志\n      const logEntries = Object.entries(updateLog);\n      if (logEntries.length > 0) {\n        // 显示最新日志\n        const [latestDate, latestContent] = logEntries[0];\n        latestLogDate.innerHTML = \\`<i class=\"fas fa-calendar-alt\"></i> \\${latestDate}\\`;\n        latestLogContent.textContent = latestContent;\n        latestLogContainer.style.display = 'block';\n\n        // 显示历史日志\n        if (logEntries.length > 1) {\n          const historyLogs = logEntries.slice(1);\n          historyCount.textContent = \\`(\\${historyLogs.length}条)\\`;\n          logList.innerHTML = historyLogs.map(([date, content]) => \\`\n            <div class=\"history-item\">\n              <div class=\"history-date\">\n                <i class=\"fas fa-calendar-day\"></i>\n                <span>\\${date}</span>\n              </div>\n              <div class=\"history-text\">\\${content}</div>\n            </div>\n          \\`).join('');\n          logsContainer.style.display = 'block';\n        }\n      }\n\n      // 检查更新状态\n      const compareResult = compareVersions(cloudVersion);\n      \n      // 显示版本指示器\n      versionIndicator.style.display = 'flex';\n      \n      if (compareResult === -1) {\n        // 需要更新\n        currentStatus.textContent = '待更新';\n        currentStatus.className = 'version-status status-outdated';\n        versionIndicator.className = 'version-indicator update-needed';\n        versionIndicator.innerHTML = '<i class=\"fas fa-arrow-right\"></i>';\n\n        // 使用统一配置生成下载按钮\n        buttonGroup.innerHTML = Object.values(serverConfig).map(server => {\n          const fullUrl = server.baseUrl + server.downloadPath;\n          return \\`\n            <a href=\"yuedu://booksource/importonline?src=\\${encodeURIComponent(fullUrl)}\" class=\"button\">\n              <i class=\"fas fa-\\${server.icon}\"></i>\n              <span>\\${server.name}</span>\n            </a>\n          \\`;\n        }).join('');\n        buttonGroup.style.display = 'flex';\n      } else {\n        // 已是最新版本\n        currentStatus.textContent = '最新';\n        currentStatus.className = 'version-status status-latest';\n        versionIndicator.className = 'version-indicator is-latest';\n        versionIndicator.innerHTML = '<i class=\"fas fa-check\"></i>';\n        \n        statusAlert.className = 'status-alert up-to-date';\n        statusAlert.innerHTML = '<i class=\"fas fa-check-circle\"></i> <div>您已是最新版本</div>';\n        statusAlert.style.display = 'flex';\n      }\n\n      // 显示主容器，隐藏加载\n      loading.style.display = 'none';\n      container.style.display = 'block';\n\n    } catch (err) {\n      console.error('版本检查失败：', err);\n      showError('<i class=\"fas fa-exclamation-circle\"></i> 检查更新失败，请稍后重试<br><small>' + err.message + '</small>');\n    }\n  })();\n  </script>\n</body>\n</html>\n`;\n    java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '晴天书源更新');\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "1",
      "coverUrl": "$.thumb_url",
      "init": "<js>\nif (String(baseUrl).startsWith(\"data:\")) {\n    let res = JSON.parse(java.hexDecodeToString(result));\n    let book_id = res.book_id;\n    let tab = res.tab;\n    let sources = res.sources;\n    let url = res.url;\n    let html = \"\";\n    let proxy = getArguments(source.getVariable(), \"proxy\");\n    if (url != \"\" && proxy == \"本地\") {\n        if (sources == '69书吧') {\n            let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n            let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };            \n             let op = JSON.stringify({\n                \"headers\": headers\n            });\n            html = java.ajax(`${url},${op}`);\n        } else {\n            html = java.ajax(url);\n        }\n        //java.log(html);\n        if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n            cookie.removeCookie('https://www.69shuba.com');\n            java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n            html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n             java.log(html);\n        }\n    }\n    let base_url = getArguments(source.getVariable(), \"server\")|| host[0];\n    let op = {\n        method: \"POST\",\n        body: {\n            html: html\n        }\n    };\n    op = JSON.stringify(op);\n    let varia = String(book.getVariable('custom'));\n    if (varia == 'null') {\n        varia = '';\n    }\n    varia = JSON.stringify({\n        'custom': varia\n    });\n    //varia = java.base64Encode(varia);\n    java.log(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n    result = java.ajax(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n}\nresult\n</js>$.data",
      "intro": "<js>\nlet {\n    book_id,\n    source: sources,\n    tab,\n    book_tts,\n    tags,\n    role,\n    last_chapter_title,\n    last_chapter_update_time,\n    word_number,\n    status,\n    score,\n    abstract,\n    copyright_info\n} = result;\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (proxy == \"本地\") {\n    proxy = \"本地网络\";\n} else {\n    proxy = \"服务器网络\";\n}\njava.put(\"book_detail\", JSON.stringify(result));\nlet base_url = getArguments(source.getVariable(), \"server\")|| host[0];\nlet key3 = \"\";\ntry {\n    let cookieValue =\n        String(cookie.getCookie(base_url)) || String(java.getCookie(base_url));\n    key3 = getKey(cookieValue);\n} catch (e) {\n    key3 = \"\";\n}\n\nif (key3 == \"\") {\n    java.log(\"当前服务器未查询到登录状态，尝试查询其他服务器登录状态...\");\n    let cookieValue;\n    for (let h of host) {\n        try {\n            cookieValue = String(cookie.getCookie(h)) || String(java.getCookie(h));\n            key3 = getKey(cookieValue);\n        } catch (e) {\n            key3 = \"\";\n        }\n        if (key3) {\n            java.log(`已在${h}登录，退出查询，正在转移登录状态到当前服务${base_url}`);\n            //java.log(cookieValue)\n            cookie.removeCookie(h);\n            cookie.removeCookie(base_url);\n            cookie.setCookie(base_url, cookieValue);\n            break;\n        }\n    }\n}\n\nif (book.readConfig == null || book.readConfig.useReplaceRule == null) {\n    book.setUseReplaceRule(false);\n}\n\nlet nickname = '账号状态：⚠️ 未登录 | 点击右上角 🔖 登录';\ntry {\n    let opcx = {\n        method: \"GET\",\n        headers: {\n            cookie: 'qttoken=' + key3 + ';'\n        },\n    };\n    opcx = JSON.stringify(opcx);\n    let user_info = JSON.parse(java.ajax(base_url + '/get_avatar,' + opcx));\n    if (user_info.code == 0) {\n        if (user_info.nickname) {\n            nickname = '欢迎回来：' + user_info.nickname\n        } else {\n            nickname = '欢迎回来：' + user_info.email + \"(请前往用户后台设置用户名)\"\n        }\n    }\n} catch (e) {\n    if (key) {\n        nickname = '账号状态：已登录'\n    }\n};\n\nlet loginStatus = nickname;\n\nlet lightDivider = \"❇️───────❇️───────❇️\";\nlet heavyDivider = \"&lrm;\\n&lrm;\";\n\nlet isValid = (value) => String(value).length > 1;\nlet ctitle = book.durChapterTitle || '未开始';\nlet info = `\n    📡 当前服务：${base_url}\n    🔑 ${loginStatus}\n    🏷 数据来源：${sources}\n    🔄 当前模式：${tab}\n    ⚙️ 访问模式：${proxy}\n    📖 阅读至：${ctitle}\n`;\n\nif (tab == \"听书\") {\n    //let toneId = getArguments(source.getVariable(), \"tone_id\");\n    let toneId = String(book.getVariable('custom'));\n    if (toneId == '') {\n    \ttoneId= '4';\n    \t}\n    if (isValid(book_tts)) {\n        info += `${lightDivider}\n    🎵 音色配置：${toneId}\n    ✨ AI音色请点击右上角书籍变量填写相关值，真人听书请重新搜索选择带有主播的书籍\n    ${book_tts}\n`;\n    }\n}\n\nlet basicInfo = \"\";\nlet addBasicInfo = (value, prefix, icon) => {\n    if (isValid(value)) basicInfo += `    ${icon} ${prefix} ${value}\\n`;\n};\n\naddBasicInfo(tags, \"书籍分类：\", \"🌈\");\naddBasicInfo(role, \"书籍主角：\", \"👑\");\naddBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\naddBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\naddBasicInfo(word_number, \"书籍字数：\", \"📊\");\naddBasicInfo(status, \"书籍状态：\", \"🚩\");\naddBasicInfo(score, \"书籍评分：\", \"⭐\");\n\nif (basicInfo) info += `${lightDivider}\\n${basicInfo}`;\n\nif (isValid(abstract)) {\n    let indentedAbstract = abstract\n        .split(\"\\n\")\n        .map((line) => `    ${line}`)\n        .join(\"\\n\");\n    info += `${heavyDivider}\n    📖 书籍简介：\n${indentedAbstract}\n`;\n} else {\n    info += `${heavyDivider}`;\n}\n\nif (isValid(copyright_info)) {\n    info += `${lightDivider}\n    © ${copyright_info}\n`;\n} else {\n    info += `${lightDivider}`;\n}\n\ninfo += `\n${heavyDivider}\n    💠💠💠 数据更新于 ${new Date().toLocaleString()} 💠💠💠\n`;\nlet jjinfo = getArguments(source.getVariable(), \"info\");\n\nif (jjinfo != \"off\") {\n    info = String(info)\n        .split(\"\\n\")\n        .map((line) => line.replace(/^ {4}/, \"\"))\n        .join(\"\\n\");\n} else {\n    basicInfo = \"\";\n    addBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\n    addBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\n    addBasicInfo(word_number, \"书籍字数：\", \"📊\");\n    addBasicInfo(status, \"书籍状态：\", \"🚩\");\n    addBasicInfo(score, \"书籍评分：\", \"⭐\");\n    if (isValid(abstract)) {\n        let indentedAbstract = abstract\n            .split(\"\\n\")\n            .map((line) => `    ${line}`)\n            .join(\"\\n\");\n        basicInfo += `\n    \\n&lrm;\n    📖 书籍简介：\n${indentedAbstract}\n`;\n    } else {\n        basicInfo += `${heavyDivider}`;\n    }\n    info = `&lrm;\\n🏷 数据来源：${sources}\\n` + basicInfo;\n}\n</js>",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}} {{$.last_chapter_update_time}}",
      "name": "$.book_name",
      "tocUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || \"小说\";\nlet url = result.toc_url || \"\";\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (fqcookie) {\n    fqssionid = getSessionId(fqcookie);\n};\nsetArguments('fqssionid', fqssionid);\njava.put(\"tab\", tab);\njava.put(\"book_id\", book_id);\nlet qtcatalog = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcatalog = java.base64Encode(JSON.stringify(qtcatalog));\n`data:;base64,${qtcatalog},{\"type\":\"qingtian2\"}`;\n</js>",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "<js>\njava.log(result)\nresult = String(java.hexDecodeToString(result));\nlet res;\nif (result.match(/晴天融合/)) {\n    result = result.split(\"晴天融合4\");\n    res = {\n        item_id: result[0],\n        tab: result[1],\n        title: result[2],\n        sources: result[3],\n        url: \"\"\n    };\n} else {\n    res = JSON.parse(result);\n}\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n    \n    return isModified;\n}\n\nvar islyc = checkEnv();\ntry {\nif (islyc) {\n\tbook.imageStyle = 'FULL';\n\t} else {\n\t\tbook.imageStyle = 'TEXT';\n\t\t}\n} catch {}\nlet varia1 = String(book.getVariable('custom'));\nif (varia1 == 'null') {\n    varia1 = '';\n}\nlet varia = JSON.stringify({\n    'custom': varia1\n});\n//  varia = java.base64Encode(varia);\nlet book_id = res.book_id;\nlet item_id = res.item_id;\nlet tab = res.tab;\nlet title = res.title;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        java.log(url);\n        java.log(op);\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n    java.log('dddddddddddddddddddddddddddd')\n    java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧' && book.durChapterIndex === chapter.index) {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n        java.log('cscscscs')\n        java.log(html);\n    }\n};\nlet content = \"\";\nlet data;\n//let tone_id = getArguments(source.getVariable(), \"tone_id\");\nlet tone_id = varia1;\nif (tone_id == '') {\n    tone_id = '4';\n}\nlet base_url = getArguments(source.getVariable(), \"server\")|| host[0];\nlet fqpara = getArguments(source.getVariable(), \"fqpara\");\nlet close_img = getArguments(source.getVariable(), \"close_img\");\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nlet qtcookie = cookie.getCookie(base_url);\ntry {\n\t   let device2 = String(cookie.getKey(base_url, \"device\"));\n\t   if (!device2){\n\t   \tdevice2 = device;\n\t   \t}\n    qtcookie = `qttoken=${String(cookie.getKey(base_url, \"qttoken\"))}; deviceId=${device2};`\n} catch (e) {java.log(e)}\n\nvar params = {\n    html: html,\n    item_id: item_id,\n    source: sources,\n    tab: tab,\n    tone_id: tone_id,\n    variable: varia,\n    version: '4.11.5.1'\n};\n\nvar content_url = '/content';\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara && tab == \"小说\") {\n    content_url = '/content?review=1';\n}\n\n//var signInfo = generateComplexSignature('POST', content_url, {}, APP_SECRET, params);\n\n\n//var signedParams = copyObject(params);\n//signedParams.timestamp = signInfo.timestamp;\n//signedParams.nonce = signInfo.nonce;\n//signedParams.sign = signInfo.sign;\n\n\nvar op = {\n    method: \"POST\",\n    body: JSON.stringify(params),\n    headers: {\n        cookie: qtcookie,\n        'Content-Type': 'application/json'\n    }\n};\n\nop = JSON.stringify(op);\njava.log(op);\njava.log(cookie.getCookie(base_url))\ndata = java.ajax(base_url + content_url + `,${op}`);\ntry {\n    data = JSON.parse(data);\n    if (data.msg) {\n        java.toast(data.msg);\n    }\n} catch (e) {}\ncontent = data.content\n\nif (close_img == 'on') {\n\tcontent = removeAllImgTags(content);\n\t}\n\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara == \"on\" && tab == \"小说\") {\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    content = content\n        .replace(/ident=\"/g, 'ident=\"' + base_url)\n        .replace(/book_id=/g, 'book_id=' + book_id + '&ssionid=' + fqssionid);\n    if (device_type == \"苹果\") {\n        content = paraForiOS(content, sources);\n    } else {\n        content = paraForAndroid(content, sources,islyc);\n    }\n}\ndata = JSON.stringify({\n    content: content,\n});\nif (device_type == \"安卓\" && (tab == \"短剧\" || tab == \"视频\" || sources.includes('毒舌影视') || sources.includes('NT动漫'))) {\n    data = {\n        content: `【右上角刷新】开启播放(下一集请切换下一章刷新)\\n播放直链：\\n${content}`,\n    };\n    data = JSON.stringify(data);\n    if (book.durChapterIndex === chapter.index) {\n        let video_url = `${base_url}/online_video?book_id=${book_id}&source=${sources}&tab=${tab}`;\n        if (sources.includes('毒舌影视') || sources.includes('NT动漫')) {\n            video_url = content;\n        };\n        java.startBrowser(video_url, title);\n        java.toast(\"正在加载视频...\");\n    }\n\n}\ndata;\n</js>$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.category}}\n{{$.score}}\n{{$.status}}\n{{$.source}}\n{{$.tags}}",
      "lastChapter": "{{$.last_chapter_title}} • {{$.last_update_time}}",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "checkKeyWord": "我的26岁女房客@番茄",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "<js>\nlet res = JSON.parse(java.hexDecodeToString(result));\nif (res.method) {\n    res = Object.fromEntries(\n        res.body\n        .replace(\"source\", \"sources\")\n        .split(\"&\")\n        .map((query) => query.split(\"=\"))\n    );\n    res.url = \"\";\n}\nlet book_id = res.book_id;\njava.put('book_id', book_id);\nlet tab = res.tab;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        html = java.ajax(`${url},${op}`);    \n    } else {\n        html = java.ajax(url);\n    }\n    //java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n           java.log(html);\n    }\n};\nlet base_url = getArguments(source.getVariable(), \"server\")|| host[0];\nlet op = {\n    method: \"POST\",\n    body: {\n        html: html\n    }\n};\nop = JSON.stringify(op);\nlet varia = String(book.getVariable('custom'));\nif (varia == 'null') {\n    varia = '';\n}\nvaria = JSON.stringify({\n    'custom': varia\n});\n// varia = java.base64Encode(varia);\n//java.log(`${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\nlet data = java.ajax(\n    `${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`\n);\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nif (tab == \"小说\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n} else if (tab == \"听书\") {\n    if (device_type == \"安卓\") {\n        book.type = 32;\n    } else {\n        book.type = 1;\n    }\n} else if (tab == \"漫画\") {\n    if (device_type == \"安卓\") {\n        book.type = 64;\n    } else {\n        book.type = 2;\n    }\n} else if (tab == \"短剧\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 3;\n    }\n} else {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet reading = getArguments(source.getVariable(), \"reading\");\n\nif (book && book.order != 0 && reading == '1') {\n    try {\n        if (!data || !book.variable || !base_url || !qtcookie) {\n            java.log('缺少必要参数');\n        } else {\n            let parsedData;\n            try {\n                parsedData = JSON.parse(data);\n            } catch (e) {\n                java.log('解析data数据失败:' + e);\n            }\n            \n            if (parsedData && parsedData.data && Array.isArray(parsedData.data) && parsedData.data[book.durChapterIndex]) {\n                let ritem = parsedData.data[book.durChapterIndex];\n                let bookInfoObj;\n                try {\n                    bookInfoObj = JSON.parse(book.variable);\n                } catch (e) {\n                    java.log('解析book.variable失败:' + e);\n                }\n                \n                if (bookInfoObj) {\n                    let book_info;\n                    try {\n                        book_info = JSON.parse(bookInfoObj.book_detail || JSON.stringify(bookInfoObj));\n                    } catch (e) {\n                        java.log('解析book_detail失败:' + e);\n                    }\n                    \n                    if (book_info && typeof book_info === 'object') {\n                        let rurl = base_url + '/add_book_to_book_shelf,';\n                        book_info['read_status'] = 1;\n                        book_info['last_chapter_item_id'] = ritem.item_id || '';\n                        book_info['last_chapter_title'] = ritem.title || '';\n                        let rop = {\n                            method: \"POST\",\n                            headers: {\n                                cookie: qtcookie\n                            },\n                            body: book_info\n                        };\n                        let check_book_url = base_url + '/check_book_in_book_shelf,';\n                        let checkResponse;\n                        \n                        try {\n                            checkResponse = java.ajax(check_book_url + JSON.stringify(rop));\n                        } catch (e) {\n                            java.log('检查书籍请求失败:' + e);\n                        }\n                        \n                        if (checkResponse) {\n                            let check_data;\n                            try {\n                                check_data = JSON.parse(checkResponse).data;\n                            } catch (e) {\n                                java.log('解析检查响应失败:' + e);\n                            }\n                            try {\n                                if (check_data && check_data.id) {\n                                    book_info['id'] = check_data.id;\n                                    let uurl = base_url + '/update_book_shelf,';\n                                    java.ajax(uurl + JSON.stringify(rop));\n                                } else {\n                                    java.ajax(rurl + JSON.stringify(rop));\n                                }\n                            } catch (e) {\n                                java.log('书架操作失败:' + e);\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    } catch (error) {\n        java.log('书籍同步流程异常:' + error);\n        java.longToast('\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。');\n    }\n}\ndata;\n</js>$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet tab = result.tab;\nlet sources = result.source;\nlet title = result.title;\nlet item_id = result.item_id;\nlet book_id = java.get(\"book_id\");\nlet url = result.toc_url || \"\";\nlet qtcontent = {\n    book_id: book_id,\n    item_id: item_id,\n    title: title,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcontent = java.base64Encode(JSON.stringify(qtcontent));\nif (sources == '卷') {\n    content_url = item_id\n} else if ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\") && tab == \"小说\") {\n    var base_url = getArguments(source.getVariable(), \"server\") || host[0];\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    let sourcess = sources.replace('svip_', '');\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\",\"js\":\"book ? result : '${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&ssionid=${fqssionid}&source=${sourcess}'\"}`;\n} else {\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\"}`;\n}\n</js>",
      "updateTime": "$.first_pass_time"
    },
    "searchUrl": "<js>\nlet base_url = getArguments(source.getVariable(), 'server')|| host[0];\nlet media;\nlet sources = getArguments(source.getVariable(), 'sources') || getArguments(source.getVariable(), 'source');\nlet disabled_sources = getArguments(source.getVariable(), 'disabled_sources') || '0';\nif (String(key).startsWith(\"m:\") || String(key).startsWith(\"m：\")) {\n    media = \"漫画\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"t:\") || String(key).startsWith(\"t：\")) {\n    media = \"听书\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"d:\") || String(key).startsWith(\"d：\")) {\n    media = \"短剧\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"x:\") || String(key).startsWith(\"x：\")) {\n    media = \"小说\"\n    key = key.slice(2)\n} else {\n    media = getArguments(source.getVariable(), 'tab') || getArguments(source.getVariable(), 'media');\n}\nif (key.includes('@')) {\n    var parts = key.split('@');\n    key = parts[0];\n    sources = parts[1] || sources;\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet op = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\nop = JSON.stringify(op);\n`${base_url}/search?title=${key}&tab=${media}&source=${sources}&page={{page}}&disabled_sources=${disabled_sources},${op}`\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "// 原作者：夜明空＆zimushui\n\n// 2026/4/5/ By sjshb57\n修复章节名称显示，删除括号内内容并移除前置序号\n// 2026/4/6/ By sjshb57\n移除正文内容显示首行标题＆同时修复目录单字括号内容被误删的问题，并且优化显示效果，符合审美\n//2026/4/7 By sjshb57\n修复搜索封面失效，修复详情页简介显示不完全，添加登陆URL，修复上个版本导致的部分书籍章节号消失的问题\n//2026/4/13 By sjshb57\n修复部分书籍会导致正文第一行被误删的问题\n// 2026/7/5 By sjshb57\n修复搜索只出现单本书籍的问题\n// 2026/7/26 By sjshb57\n// 请求头补 Referer，封面/字数逻辑合并进 jsLib",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌙 得奇小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.deqixs.cc/",
    "bookUrlPattern": "https?:\\/\\/www\\.deqixs\\.cc\\/(books|index)\\/\\d+.*",
    "customButton": false,
    "customOrder": 15,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\n    \"title\": \"玄幻小说\",\n    \"url\": \"https://www.deqixs.cc/sort/1/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"都市小说\",\n    \"url\": \"https://www.deqixs.cc/sort/2/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"仙侠小说\",\n    \"url\": \"https://www.deqixs.cc/sort/3/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"历史小说\",\n    \"url\": \"https://www.deqixs.cc/sort/4/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"科幻小说\",\n    \"url\": \"https://www.deqixs.cc/sort/5/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"诸天无限\",\n    \"url\": \"https://www.deqixs.cc/sort/6/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"悬疑小说\",\n    \"url\": \"https://www.deqixs.cc/sort/7/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"体育小说\",\n    \"url\": \"https://www.deqixs.cc/sort/8/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"游戏小说\",\n    \"url\": \"https://www.deqixs.cc/sort/9/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"综合其他\",\n    \"url\": \"https://www.deqixs.cc/sort/10/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总点击榜\",\n    \"url\": \"https://www.deqixs.cc/top/allvisit/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月点击榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthvisit/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周点击榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekvisit/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日点击榜\",\n    \"url\": \"https://www.deqixs.cc/top/dayvisit/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总推荐榜\",\n    \"url\": \"https://www.deqixs.cc/top/allvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月推荐榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周推荐榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日推荐榜\",\n    \"url\": \"https://www.deqixs.cc/top/dayvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总月票榜\",\n    \"url\": \"https://www.deqixs.cc/top/allvipvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"本月票榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthvipvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"前月票榜\",\n    \"url\": \"https://www.deqixs.cc/top/previpvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周月票榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekvipvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日月票榜\",\n    \"url\": \"https://www.deqixs.cc/top/dayvipvote/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总鲜花榜\",\n    \"url\": \"https://www.deqixs.cc/top/allflower/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月鲜花榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthflower/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周鲜花榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekflower/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日鲜花榜\",\n    \"url\": \"https://www.deqixs.cc/top/dayflower/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总鸡蛋榜\",\n    \"url\": \"https://www.deqixs.cc/top/allegg/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月鸡蛋榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthegg/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周鸡蛋榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekegg/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日鸡蛋榜\",\n    \"url\": \"https://www.deqixs.cc/top/dayegg/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"总销售榜\",\n    \"url\": \"https://www.deqixs.cc/top/allsale/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月销售榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthsale/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周销售榜\",\n    \"url\": \"https://www.deqixs.cc/top/weeksale/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日销售榜\",\n    \"url\": \"https://www.deqixs.cc/top/daysale/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"月勤更榜\",\n    \"url\": \"https://www.deqixs.cc/top/monthwords/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"周勤更榜\",\n    \"url\": \"https://www.deqixs.cc/top/weekwords/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"日勤更榜\",\n    \"url\": \"https://www.deqixs.cc/top/daywords/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"最近更新\",\n    \"url\": \"https://www.deqixs.cc/top/lastupdate/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"最新入库\",\n    \"url\": \"https://www.deqixs.cc/top/postdate/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"最新上架\",\n    \"url\": \"https://www.deqixs.cc/top/signtime/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"收藏榜\",\n    \"url\": \"https://www.deqixs.cc/top/goodnum/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"字数榜\",\n    \"url\": \"https://www.deqixs.cc/top/words/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"编辑推荐\",\n    \"url\": \"https://www.deqixs.cc/top/toptime/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"title\": \"新书榜\",\n    \"url\": \"https://www.deqixs.cc/top/newhot/{{page}}.html\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}]",
    "header": "{\"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\", \"Referer\": \"https://www.deqixs.cc/\", \"Accept-Language\": \"zh-CN,zh;q=0.9\"}",
    "jsLib": "function cover(href) {\n    var m = String(href).match(/\\/(\\d+)\\/?$/);\n    if (!m) return \"\";\n    var id = m[1];\n    var p = id.length <= 3 ? \"0\" : id.slice(0, -3);\n    return \"https://www.deqixs.cc/files/article/image/\" + p + \"/\" + id + \"/\" + id + \"s.jpg\";\n}\n\nfunction words(html) {\n    var m = String(html).match(/towan\\('(\\d+)'\\)/);\n    if (m) return m[1];\n    return String(html).replace(/<[^>]+>/g, \"\").replace(/字数[：:]/g, \"\").trim();\n}",
    "lastUpdateTime": 1785064888736,
    "loginUrl": "login.php?jumpurl=https://www.deqixs.cc/",
    "respondTime": 2730,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "//p[@class=\"bookintro\"]/text()\n@js:result.trim().replace(/[ \\t]+/g, '\\n').replace(/^/gm, '\\u3000\\u3000')",
      "kind": "{{@@[property~=update_time|status|category]@content##(\\d+):(\\d+):(\\d+)}},{{@@.booktag@.blue.1@text}}",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ".booktag@.blue.0@script@all##.*\\('(\\d+)'\\).*##$1"
    },
    "ruleContent": {
      "content": "@js:\nvar url = String(baseUrl);\nvar match = url.match(/\\/(\\d+)\\/(\\d+)\\.html/);\nvar content = '';\nif (match) {\n    var origin = url.match(/(https?:\\/\\/[^\\/]+)/)[1];\n    var jsUrl = origin + '/scripts/chapter.js.php?aid=' + match[1] + '&cid=' + match[2] + '&referrer=' + encodeURIComponent(url);\n    var scriptStr = java.ajax(jsUrl);\n    var token = scriptStr.match(/chapterToken\\s*=\\s*['\"]([^'\"]+)['\"]/);\n    var ts = scriptStr.match(/timestamp\\s*=\\s*['\"]?([^'\";\\s]+)/);\n    var nc = scriptStr.match(/nonce\\s*=\\s*['\"]([^'\"]+)['\"]/);\n    if (token && ts && nc) {\n        var ajaxUrl = origin + '/modules/article/ajax2.php?aid=' + match[1] + '&cid=' + match[2] + '&token=' + token[1] + '&timestamp=' + ts[1] + '&nonce=' + nc[1];\n        var opt = JSON.stringify({\n            \"charset\": \"gbk\",\n            \"headers\": {\n                \"X-Requested-With\": \"XMLHttpRequest\",\n                \"Referer\": url\n            }\n        });\n        var res = java.ajax(ajaxUrl + ',' + opt);\n        try {\n            content = JSON.parse(res).data.content;\n        } catch (e) {}\n    }\n}\ncontent ? content : java.getString('#rtext@html');",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "@js:\nconst FILTER_RULES = [\n  /更新不易.+?看最新章节！/g,\n  /更新不易.+?看最新无错章节！/g, \n  /更新不易.+?最新小说章节！/g,\n  /速.?读.?谷/g, \n  /本章节未完.+?请订阅/g,\n  /↑返回顶部↑/g,\n  /[（(]本章.+?完[）)]/g,\n  /^(?=.*[1-9])(?=.*章).+\\n/,\n]\n\nfor(let reg of FILTER_RULES){\n\tresult = result.replace(reg, \"\")\n}\nresult;"
    },
    "ruleExplore": {
      "author": "class.author.0@text##作者[：:]",
      "bookList": "class.bookbox",
      "bookUrl": "class.bookname@a@href",
      "coverUrl": "class.bookname@a@href@js:cover(result)",
      "intro": "class.update@textNodes##简介[：:]",
      "kind": "class.author.2@text##阅读量[：:]",
      "lastChapter": "class.cat@a@text",
      "name": "class.bookname@a@text",
      "wordCount": "class.author.1@html@js:words(result)"
    },
    "ruleSearch": {
      "author": "class.author.0@text##作者[：:]",
      "bookList": "class.bookbox",
      "bookUrl": "class.bookname@a@href",
      "coverUrl": "class.bookname@a@href@js:cover(result)",
      "intro": "class.update@textNodes##简介[：:]",
      "kind": "class.author.2@text##阅读量[：:]",
      "lastChapter": "class.cat@a@text",
      "name": "class.bookname@a@text",
      "wordCount": "class.author.1@html@js:words(result)"
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll@dd@a",
      "chapterName": "text@js:result.replace(/^\\d+\\./, '').replace(/^第\\S+?章\\s+(?=(\\d+\\.|第))/, '').replace(/[（(][^）)]*[）)]/g, function(m){var t=m.slice(1,-1);return (t==='上'||t==='中'||t==='下') ? ' ('+t+')' : '';}).replace(/[（(][^）)]*$/, '')",
      "chapterUrl": "href",
      "nextTocUrl": "<js>\nvar txt = java.getString(\"#pagestats@text\");\nvar max = 0;\nvar m = txt.match(/\\/(\\d+)/);\nif (m) max = parseInt(m[1]);\nvar idMatch = baseUrl.match(/(?:index|books)\\/(\\d+)/);\nvar id = idMatch ? idMatch[1] : \"\";\nvar list = [];\nif (id && max > 1) {\n    for (var i = 2; i <= max; i++) {\n        list.push(\"https://www.deqixs.cc/index/\" + id + \"/\" + i);\n    }\n}\nlist;\n</js>"
    },
    "searchUrl": "https://www.deqixs.cc/modules/article/search.php,{\n  \"charset\": \"utf-8\",\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}&searchtype=all\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "v3.1(穷尽式修复·JS主动拉取完整目录) 书源作者：苍茫\n功能：搜索+发现+详情+目录+正文\n站点：爱笔楼 http://m.biqutu.info\n特征：OG标签全量提取、目录JS主动拉取完整页、正文直出\n维护关注：OG标签变更、完整目录页URL格式变更\n已知问题：无",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱笔楼·苍茫",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.biqutu.info",
    "bookUrlPattern": "http://m\\.biqutu\\.info/\\d+[_/]\\d+/",
    "concurrentRate": "2000",
    "customButton": false,
    "customOrder": 16,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"全部\",\"url\":\"/xclass/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/xclass/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"修真仙侠\",\"url\":\"/xclass/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市青春\",\"url\":\"/xclass/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"历史军事\",\"url\":\"/xclass/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"网游竞技\",\"url\":\"/xclass/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻灵异\",\"url\":\"/xclass/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"其它\",\"url\":\"/xclass/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 13; Mobile) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1783739334028,
    "respondTime": 26024,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.Readarea ReadAjax_content@html",
      "nextContentUrl": "class.Readpage@tag.a.2@href",
      "replaceRegex": "##章节错误.*\\n*|加入书签.*\\n*|最快更新.*\\n*|最新网址.*\\n*"
    },
    "ruleExplore": {
      "author": ".bookinfo .detail .author a@text",
      "bookList": "#main .hot_sale",
      "bookUrl": ".bookimg a@href",
      "coverUrl": ".bookimg img@data-original",
      "intro": "p.review@text",
      "name": ".bookinfo .detail .title@text"
    },
    "ruleSearch": {
      "author": ".author a@text",
      "bookList": ".list1 .hot_sale",
      "bookUrl": "a.0@href",
      "checkKeyWord": "系统",
      "kind": ".author@text##.*连载|.*全本",
      "lastChapter": ".author a[style]@text",
      "name": ".title@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@tag.p!0",
      "chapterName": "text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/SearchBook.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "更新日志请点击登录，更新书源中查看\n\n基础使用教程：\n1、搜索：\n    1)基础搜索：在发现页长按该书源，点击搜索，直接搜，搜索范围(全部来源小说)\n    2)进阶搜索：在登陆-书源设置中选择指定模式/来源，可搜索指定模式/来源内容\n    3)快捷搜索：使用特殊关键词(x,t,m,d,@)搜索\n         x:书名@来源  如(x:十日终焉@番茄)\n         t:书名@来源  如(t:十日终焉@番茄)\n         m:书名@来源  如(m:十日终焉@番茄)\n         d:书名@来源  如(d:十日终焉@番茄)\n         其中：x表示小说(可省略)，t表示听书，m表示漫画，d表示短剧\n         冒号支持中文英文\n         \n2、发现页：\n    在书源设置中选择指定模式或者单个来源，然后刷新发现页即可\n    \n3、更多使用方式长按发现页书源选择登录一目了然\n4、用户后台有视频教程\n         ",
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "🍅番茄，书旗",
    "bookSourceType": 0,
    "bookSourceUrl": "番茄，书旗",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z0-9-]+(?::\\d+)?\\/detail.*",
    "customButton": false,
    "customOrder": 18,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar open_argument = source.getVariable();\nif (!open_argument || open_argument == '') {\n    var initData = {\n        tab: \"小说\",\n        tone_id: \"默认音色\",\n        server: host[0],\n        sources: \"番茄\",\n        source_type: \"男频\",\n        find_source: \"番茄\",\n        find_tab: \"小说\",\n        fqpara: \"on\"\n    };\n    source.setVariable(JSON.stringify(initData));\n    open_argument = source.getVariable();\n}\nvar base_url = getArguments(open_argument, 'server') || host[0];\nvar ms = getArguments(open_argument, 'tone_id') || '';\nvar source_type = getArguments(open_argument, 'source_type') || '男频';\nvar tab = getArguments(open_argument, 'find_tab') || getArguments(open_argument, 'tab') || '小说';\nvar sources =  getArguments(open_argument, 'sources') || '番茄';\nvar fxyjr = getArguments(open_argument, 'fxyjr');\n\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n\n    return isModified;\n}\n\nvar islyc = checkEnv();\nlet device_type = '安卓';\ntry {\n\t  try {\n\t  java.qread();\n\t  device_type =\"轻阅读\";\n\t  } catch {\n\t  \tjava.deviceID();\n    device_type = \"苹果\";\n\t  \t}\n    \n} catch (e) {\n    try {\n        java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device_type = \"安卓\";\n    }\n}\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr != \"on\"){\n\tsources = getArguments(open_argument, 'find_source') || sources;\n\tsetArguments('find_source', sources);\n\t}\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\n\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (!fqcookie && (sources == '番茄' || sources == '全部')) {\n    java.toast('您还未登陆番茄账号，无法同步数据哦！');\n} else {\n    fqssionid = getSessionId(fqcookie)\n}\nvar fqsjurl = base_url + \"/bookshelf?page={{page}}&ssionid=\" + fqssionid;\nvar fqtjurl = base_url + \"/fqrecommend?page={{page}}&ssionid=\" + fqssionid;\nvar fqlsurl = base_url + \"/fqhistory?page={{page}}&ssionid=\" + fqssionid;\n\nvar groupDatas = [];\nvar infoData = [ ];\nif (sources == '番茄' || sources == '全部') {\ninfoData = [{\n        \"title\": \"登录番茄\",\n        \"url\": '{\\{java.startBrowser(\"https://fanqienovel.com/\",\"番茄登录\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.45\n        }\n    }];\n}\n\nvar hasValidCookie = fqcookie.length > 0;\n\nif (hasValidCookie && (sources == '番茄' || sources == '全部')) {\n    function groupQuery() {\n        try {\n            var url = base_url + \"/group_name?ssionid=\" + fqssionid;\n            var res = java.ajax(url);\n            var response = JSON.parse(res);\n\n            if (!(response && response.data)) {}\n\n            response.data.forEach(function(group) {\n                var keys = Object.keys(group);\n                if (keys.length > 0) {\n                    var key = keys[0];\n                    var value = group[key];\n                    if (value && value.length) {\n                        var option = {\n                            \"method\": \"POST\",\n                            \"body\": {\n                                \"book_ids\": value,\n                                \"page\": \"{{page}}\"\n                            }\n                        };\n                        groupDatas.push({\n                            title: key,\n                            url: base_url + \"/bookshelf,\" + JSON.stringify(option),\n                            style: {\n                                layout_flexGrow: 1,\n                                layout_flexBasisPercent: 0.45\n                            }\n                        });\n                    }\n                }\n            });\n\n            if (groupDatas.length % 2 !== 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.45\n                    }\n                });\n            }\n        } catch (e) {\n            java.longToast(\"番茄登录过期，已隐藏番茄书架\" + fqssionid);\n        }\n    }\n\n    try {\n        java.longToast(\"正在加载分组数据...\");\n        var userUrl = base_url + \"/fquser?ssionid=\" + fqssionid;\n        var userRes = java.ajax(userUrl);\n        var userData = JSON.parse(userRes);\n\n        var userName = (userData && userData.data && userData.data.name) ? userData.data.name : '未知用户';\n        if (!userName.includes('未知用户')) {\n            infoData = [{\n                title: \"番茄个人中心\",\n                url: fqsjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"个性推荐(番茄)\",\n                url: fqtjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }, {\n                title: \"历史阅读(番茄)\",\n                url: fqlsurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.45\n                }\n            }];\n        }\n        groupQuery();\n    } catch (e) {\n        java.longToast(\"番茄登录过期，已隐藏番茄书架\");\n    }\n}\n\nvar style_list = [];\ntry {\n    var durl = `${base_url}/discovestyle?source=${sources}&source_type=${source_type}&tab=${tab}`;\n    var res = java.ajax(durl);\n    var result = JSON.parse(res);\n    style_list = result.data || [];\n    if (result.msg) {\n        java.toast(result.msg);\n    }\n} catch (e) {\n    java.toast(\"发现样式获取失败\");\n}\nlet qtcookie = cookie.getCookie(base_url);\n//let qtcookie = \"\"\nlet qtop = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\n\n\n\nqtop = JSON.stringify(qtop);\nlet qtsjurl = base_url + '/get_book_shelf,' + qtop;\n\nlet qtsj = [];\n\nif (((islyc&&device_type!='苹果') || device_type=='轻阅读') && fxyjr !=\"on\") {\n    try {\n        qtsj.push(createFilter(\n            \"线路\",\n            host,\n            base_url,\n            \"server\",\n            1\n        ));\n        qtsj.push(createFilter(\n            \"模式\",\n            [\"小说\", \"听书\", \"短剧\", \"漫画\"],\n            tab,\n            \"find_tab\",\n            0.33\n        ));\n        qtsj.push(createFilter(\n            \"频道\",\n            [\"男频\", \"女频\"],\n            source_type,\n            \"source_type\",\n            0.33\n        ));\n        let source_list = ['番茄', '七猫', '书旗', '塔读', '江湖', '小米', '米读', 'QQ阅读', '酷我小说','幻梦轻小说', '西瓜小说', '69书吧', '顶点', '爱下电子书', '伪69', '超会专属小说', '3A小说', '阅友小说', '笔趣阁22', '追更人', '久久小说', '52书库', '腐小说', '完本小说', '盐选文库', '有度中文', '三零读书', '鹿鹿', '星空小说', '365小说', '冷冷文学', '万相书城', '独步小说', '福书网', '速读谷', '全本同人'];\n        if (tab == '听书') {\n            source_list = ['番茄', '七猫', '喜马拉雅', '酷我'];\n        }\n        if (tab == '漫画') {\n            source_list = ['全免漫画', '番茄', '包子漫画', '漫画屋', '漫画网', '漫客栈', '漫画屋'];\n        }\n        if (tab == '短剧') {\n            source_list = ['番茄', '七猫', '河马短剧', '旺旺短剧', '极速影视'];\n        }\n        qtsj.push(createFilter(\n            \"平台\",\n            source_list,\n            sources,\n            \"find_source\",\n            1\n        ));\n       const excludeTitles = ['点击登录可切换来源', '切换后长按刷新即可'];\n       style_list = style_list.filter(item => !excludeTitles.includes(item.title));\n    } catch {}\n} else {\n\tif (device_type == '安卓'){\n\tqtsj.push({\n        \"title\": \"下载阅读Sigma最新测试版\",\n        \"url\": '{\\{java.longToast(\"本书源推荐使用最新版洛娅橙改版阅读Σ\\\\n请安装后重新导入书源\");java.startBrowser(\"https://legado.langge.cf\",\"下载阅读Sigma最新测试版\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    })}\n\t}\n\nif (qtcookie) {\nqtsj.push({\n    title: \"大灰狼个人中心\",\n    url: qtsjurl,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n} else {\nqtsj.push({\n    title: \"登录大灰狼书源\",\n    url: `{\\{java.startBrowser(\"${base_url}/login\",\"登录书源\");}}`,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n    }\n})\n}\n\n\nvar finalData = infoData.concat(groupDatas, style_list);\nfinalData = qtsj.concat(finalData);\nJSON.stringify(finalData);\n</js>",
    "header": "{ \"User-Agent\":\"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Mobile Safari/537.36 Edg/138.0.0.0\" }",
    "jsLib": "var host = [\n    'http://219.154.201.122:5006',\n    'https://api.langge.cf',\n    'https://v2.czyl.cf',\n    'https://20.langge.tk',\n    'https://v4.czyl.cf',   \n    'https://v5.czyl.cf',\n    'https://v7.czyl.cf',\n    'https://v8.czyl.cf',\n    'https://v9.czyl.cf',\n    'https://v10.czyl.cf'\n];\n\nfunction getArguments(open_argument, key) {\n    try {\n        open_argument = JSON.parse(open_argument);\n    } catch (e) {\n        open_argument = {\n            tab: \"小说\",\n            tone_id: \"默认音色\",\n            server: host[0],\n            sources: \"全部\",\n            source_type: \"男频\",\n        };\n    }\n    if (key) {\n        return open_argument[key];\n    } else {\n        return open_argument;\n    }\n}\n\nfunction setArguments(key, value) {\n    const {\n        source\n    } = this;\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\nfunction decrypt(Text) {\n    return Text;\n}\n\nfunction paraForAndroid(content, sources, ydv) {\n    let {\n        java,\n        cache,\n        source\n    } = this;\n    let plcolor = getArguments(source.getVariable(), \"plcolor\");\n    if (!plcolor) {\n        plcolor = \"#A9A9A9\";\n    }\n    let tccolor = getArguments(source.getVariable(), \"tccolor\");\n    if (!tccolor) {\n        tccolor = \"#ffffff\";\n    }\n\n    const createSvg = this.createSvg.bind(this);\n\n    return content.replace(/<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        (match, text, url, count) => {\n            if (url && count) {\n                const click = 0;\n                cache.putMemory(url, click);\n                const encodedUrl = url;\n                return `<p>${text}<img src=\"${createSvg(count, plcolor,tccolor,encodedUrl,sources,ydv)}\"></p>`;\n            } else {\n                return `<p>${text}</p>`;\n            }\n        }\n    );\n}\n\n\nfunction showCmt(url, sources, ydv) {\n    let {\n        java,\n        cache\n    } = this;\n    const currentTime = Date.now();\n    const click = cache.getFromMemory(url);\n    let isqread = false;\n    try {\n        java.qread();\n        isqread = true;\n    } catch (e) {}\n    if (click < 1 && !isqread && !ydv) {\n        cache.putMemory(url, click + 1);\n        return;\n    } else {\n        if (isqread) {\n            java.startBrowserDp(url, sources + '段评');\n        } else if (ydv) {\n            let paradata = new Date().toLocaleDateString();\n            let htmlContent = cache.get(paradata);\n            if (!htmlContent || String(htmlContent).indexOf(\"评论\") == -1) {\n                java.longToast(`\\n${paradata} 初始化段评页面,请稍等~`);\n                try {\n                    htmlContent = java.ajax(url);\n                } catch {\n                    htmlContent = paraHtml(url);\n                }\n                \n                cache.put(paradata, htmlContent);\n                java.longToast(`\\n${paradata} 初始化段评页面成功~`);\n            }\n            java.showBrowser(\n                url,\n                htmlContent,\n                `window.java=java;`,\n                JSON.stringify({\n                    \"expandedCornersRadius\": 20,\n                    \"dismissOnTouchOutside\": true,\n                    \"isDraggable\": true,\n                    \"shouldDimBackground\": true,\n                    \"backgroundDimAmount\": 0.5,\n                    \"hardwareAccelerated\": true,\n                    \"isNestedScrollingEnabled\": true,\n                    \"isGestureInsetBottomIgnored\": true,\n                    \"setFitToContents\": true,\n                    \"isHideable\": true,\n                    \"heightPercentage\": 0.8\n                })\n            );\n        } else {\n            java.startBrowser(url, sources + '段评');\n        }\n    }\n}\n\n\n\nfunction createSvg(number, color, tccolor, encodedUrl, sources, ydv) {\n    var displayText = number > 99 ? \"99+\" : number.toString();\n    var loginInfoMap = {};\n\n    if (this.source && typeof this.source.getLoginInfoMap == 'function') {\n        loginInfoMap = this.source.getLoginInfoMap() || {};\n    }\n\n    var bubbleStyle = String(getArguments(this.source.getVariable(), \"pstyle\") || loginInfoMap['段评气泡样式(0-4)'] || '0');\n    var svg;\n    if (bubbleStyle == '0') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '1') {\n        svg = `<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\">\n<g transform=\"rotate(90 512 512) scale(1 1.2)\">\n<path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"${color}\" p-id=\"1530\"></path> \n</g>\n      <text x=\"460\" y=\"650\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"${color}\">${displayText}</text>\n    </svg>\n`;\n    } else if (bubbleStyle == '2') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"6 10 88 76\" style=\"color: ${color}; opacity: 1;\">\n                        <path d=\"M12,12 L88,12 Q92,12 92,16 L92,68 Q92,72 88,72 L28,72 L12,84 L12,72 Q8,72 8,68 L8,16 Q8,12 12,12 Z\" stroke=\"currentColor\" stroke-width=\"4\" stroke-linejoin=\"round\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 2.5px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                        <text x=\"50\" y=\"60\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" font-size=\"45\" fill=\"currentColor\" font-weight=\"500\" alignment-baseline=\"auto\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '3') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <rect x=\"0.5\" y=\"0.5\" width=\"24\" height=\"16\" rx=\"2.5\" ry=\"2.5\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></rect>\n                        <text x=\"12.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else if (bubbleStyle == '4') {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                            <path stroke=\"currentColor\" stroke-width=\"1.00\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-miterlimit=\"4.00\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\" d=\"M 7.5 0.5 L 16.5 0.5 A 7 7 0 0 1 23.5 7.5 L 23.5 7.5 A 7 7 0 0 1 16.5 14.5 L 8.5 14.5 L 5.192 16.5 L 5.5 14.5 A 7 7 30 0 1 0.5 7.5 L 0.5 7.5 A 7 7 0 0 1 7.5 0.5 Z\"/>\n                            <text fill=\"${color}\" font-family=\"Arial, sans-serif\" font-size=\"10\" font-weight=\"500\" text-anchor=\"middle\" dy=\"0.35em\" x=\"12.00\" y=\"7.50\">${displayText}</text>\n                            </svg>`;\n    } else if (bubbleStyle == '5') {\n        displayText = number > 99 ? \"99\" : number.toString();\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                        <circle cx=\"12.5\" cy=\"8.5\" r=\"8\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></circle>\n                        <text x=\"13\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n                    </svg>`;\n    } else {\n        svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\" style=\"color: ${color}; opacity: 1;\">\n                <path d=\"M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z\" stroke=\"currentColor\" style=\"stroke: ${color}; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: ${tccolor}; fill-opacity: 0.5;\"></path>\n                <text x=\"13.5\" y=\"12\" text-anchor=\"middle\" alignment-baseline=\"auto\" font-size=\"10\" fill=\"currentColor\" font-family=\"Arial, sans-serif\" font-weight=\"500\" style=\"fill: ${color}; opacity: 1;\">${displayText}</text>\n            </svg>`;\n    }\n    var jc = 'js';\n    if (ydv) {\n        jc = 'click'\n    }\n    var encodedSvg = this.java.base64Encode(svg);\n\n    return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"' + jc + '\":\"showCmt(\\'' + encodedUrl + '\\', \\'' + sources + '\\', ' + ydv + ')\",\"style\":\"text\"}';\n}\n\n\nfunction cleanHTML(html) {\n    let result = html\n        .replace(/<header[^>]*>[\\s\\S]*?<\\/header>/gi, \"\")\n        .replace(/<div class=\"tt-title\"[^>]*>[\\s\\S]*?<\\/div>/gi, \"\")\n        .replace(/<(?!\\/?p\\b|\\/?img\\b)[^>]+>/gi, \"\");\n    result = result.replace(/<\\/?p[^>]*>/g, \"\\n\");\n    return result.replace(/\\n+/g, \"\\n\").trim();\n}\n\n\nfunction getBaseUrl(url) {\n    if (!url) {\n        return null;\n    }\n    url = String(url);\n    if (url.match(/https?:\\/\\//i)) {\n        var index = url.indexOf(\"/\", 9);\n        return index == -1 ? url : url.substring(0, index);\n    }\n    return null;\n}\n\nfunction isIPv4Address(ip) {\n    ip = String(ip);\n    let parts = ip.split(\".\");\n    if (parts.length !== 4) return false;\n\n    for (let part of parts) {\n        if (!/^\\d+$/.test(part)) return false; // 必须是数字\n        if (part.length > 1 && part[0] === \"0\") return false; // 禁止前导零\n        let num = parseInt(part, 10);\n        if (num < 0 || num > 255) return false; // 范围检查\n    }\n    return true;\n}\n\nfunction isIPv6Address(ip) {\n    ip = String(ip);\n    // 处理双冒号（最多出现一次）\n    if (ip.includes(\":::\")) return false;\n    let doubleColonCount = (ip.match(/::/g) || []).length;\n    if (doubleColonCount > 1) return false;\n\n    // 分割成组\n    let groups = ip.split(\":\");\n    let validGroupCount = 8;\n    let actualGroupCount = groups.filter((g) => g !== \"\").length;\n\n    // 验证组数\n    if (doubleColonCount === 1) {\n        if (actualGroupCount > validGroupCount - 1) return false;\n    } else {\n        if (groups.length !== validGroupCount) return false;\n    }\n\n    // 验证每组内容\n    for (let group of groups) {\n        if (group === \"\") continue; // 跳过空组（双冒号部分）\n        if (!/^[0-9a-fA-F]{1,4}$/.test(group)) return false; // 1-4位十六进制\n    }\n    return true;\n}\n\nfunction isIPAddress(input) {\n    return isIPv4Address(input) || isIPv6Address(input);\n}\n\nfunction getSessionId(cookieString) {\n    const match = cookieString.match(/sessionid=([^;]+)/);\n    return match ? match[1] : null;\n}\n\nfunction getKey(key) {\n    let parts = key.split(\";\");\n    for (let part of parts) {\n        if (part.includes(\"qttoken\")) {\n            return part.split(\"=\")[1];\n        }\n    }\n    return \"\";\n}\n\nfunction getFanqieCookie() {\n    const {\n        cookie\n    } = this;\n    try {\n        return String(cookie.getCookie('fanqienovel.com') || java.getCookie('fanqienovel.com') || '');\n    } catch (e) {\n        return '';\n    }\n}\n\n\nfunction paraForiOS(html, sources) {\n    return html.replace(\n        /<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        function(match, text, url, count) {\n            if (url && count) {\n                const encodedUrl = url.replace(/&/g, '&amp;');\n                return `<div rs-native>${text}<comment count=\"${count}\" onPress=\"java.showReadingBrowser('${encodedUrl}','${sources}段评')\"></div>`;\n            } else {\n                return `<div rs-native>${text}</div>`;\n            }\n        }\n    );\n}\n\nfunction removeAllImgTags(htmlString) {\n    const imgTagRegex = /<img\\b[^>]*>|<\\/img>|<img\\b[^>]*\\/>/gi;\n    return htmlString.replace(imgTagRegex, '');\n}\n\n\n\nfunction paraHtml(url) {\n    let burl = url.split('?');\n    let baser_url = burl[0].replace(\"/get_para_review\", \"\");\n    url = burl[1];\n    return `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no\">\n    <link rel=\"shortcut icon\" href=\"${baser_url}/static/favicon.ico\" type=\"image/x-icon\">\n    <link rel=\"stylesheet\" href=\"${baser_url}/static/css/all.min.css\">\n    <title>段落评论</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            -webkit-tap-highlight-color: transparent;\n        }\n\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei\", sans-serif;\n            background: #f5f5f5;\n            color: #333;\n            line-height: 1.5;\n            min-height: 100vh;\n            padding-bottom: 70px;\n        }\n\n        /* 顶部栏 */\n        .header {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            z-index: 100;\n            background: #fff;\n            padding: 12px 16px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            border-bottom: 1px solid #eee;\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n\n        .header-left {\n            display: flex;\n            align-items: center;\n            gap: 12px;\n        }\n\n        .header-back {\n            font-size: 20px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .header-title {\n            font-size: 16px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        /* 排序按钮 */\n        .sort-buttons {\n            display: flex;\n            gap: 8px;\n        }\n\n        .sort-btn {\n            padding: 6px 14px;\n            font-size: 13px;\n            border-radius: 16px;\n            cursor: pointer;\n            background: #f5f5f5;\n            color: #666;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n        }\n\n        .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .sort-btn:hover:not(.active) {\n            background: #eee;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 6px 5px;\n            font-size: 13px;\n            border-radius: 0;\n            cursor: pointer;\n            background: transparent;\n            color: #07c160;\n            border: none;\n            transition: all 0.2s;\n            font-weight: 500;\n            white-space: nowrap;\n            flex-shrink: 0;\n            box-shadow: none;\n        }\n\n        .comment-btn:hover {\n            color: #05a850;\n            transform: none;\n            box-shadow: none;\n        }\n\n        .comment-btn:active {\n            transform: none;\n            box-shadow: none;\n        }\n\n        /* 确保头部布局不会变形 */\n        .header {\n            flex-wrap: wrap;\n        }\n\n        .header-left {\n            flex-shrink: 1;\n            overflow: hidden;\n            min-width: 0;\n        }\n\n        .header-title {\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            max-width: 180px;\n        }\n\n        .sort-buttons {\n            flex-shrink: 1;\n            min-width: 0;\n        }\n\n        /* 排序按钮 */\n        .sort-btn {\n            padding: 5px 10px;\n            font-size: 12px;\n        }\n\n        /* 评论按钮样式 */\n        .comment-btn {\n            padding: 5px 8px;\n            font-size: 12px;\n        }\n\n        /* 响应式调整 */\n        @media (max-width: 480px) {\n            .header {\n                padding: 10px 12px;\n            }\n\n            .header-left {\n                gap: 8px;\n            }\n\n            .header-title {\n                font-size: 14px;\n                max-width: 150px;\n            }\n\n            .sort-buttons {\n                gap: 6px;\n            }\n\n            .sort-btn {\n                padding: 4px 10px;\n                font-size: 11px;\n            }\n\n            .comment-btn {\n                padding: 4px 6px;\n                font-size: 11px;\n            }\n\n            .theme-toggle {\n                width: 32px;\n                height: 32px;\n                margin-left: 8px;\n            }\n        }\n\n        /* 主容器 */\n        .main-container {\n            padding: 60px 0 0;\n        }\n\n        /* 段落引用 */\n        .paragraph-quote {\n            background: #fff;\n            padding: 16px;\n            margin: 12px;\n            border-radius: 8px;\n            border-left: 3px solid #07c160;\n            font-size: 14px;\n            color: #666;\n            line-height: 1.7;\n        }\n\n        /* 热门评论区域 */\n        .hot-section {\n            margin: 12px;\n        }\n\n        .section-header {\n            display: flex;\n            align-items: center;\n            padding: 8px 0;\n            margin-bottom: 8px;\n        }\n\n        .section-header i {\n            color: #ff6b6b;\n            margin-right: 8px;\n            font-size: 16px;\n        }\n\n        .section-title {\n            font-size: 15px;\n            font-weight: 600;\n            color: #333;\n        }\n\n        .section-count {\n            color: #999;\n            font-size: 13px;\n            margin-left: 8px;\n            font-weight: normal;\n        }\n\n        /* 评论列表 */\n        .comment-list {\n            background: #fff;\n            border-radius: 8px;\n            overflow: hidden;\n        }\n\n        /* 评论卡片 */\n        .comment-item {\n            padding: 16px;\n            border-bottom: 1px solid #f0f0f0;\n        }\n\n        .comment-item:last-child {\n            border-bottom: none;\n        }\n\n        .comment-main {\n            display: flex;\n            gap: 12px;\n        }\n\n        .comment-avatar {\n            flex-shrink: 0;\n        }\n\n        .comment-avatar img {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .comment-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .comment-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 6px;\n        }\n\n        .comment-username {\n            font-size: 14px;\n            font-weight: 500;\n            color: #333;\n            margin-right: 8px;\n        }\n\n        .comment-tag {\n            font-size: 10px;\n            padding: 2px 6px;\n            border-radius: 4px;\n            margin-right: 6px;\n            font-weight: 500;\n        }\n\n        .tag-author {\n            background: linear-gradient(135deg, #ff6b6b, #ff8787);\n            color: #fff;\n        }\n\n        .tag-vip {\n            background: linear-gradient(135deg, #ffa726, #ffcc02);\n            color: #7c5200;\n        }\n\n        .tag-custom {\n            background: linear-gradient(135deg, #4fc3f7, #29b6f6);\n            color: #fff;\n        }\n\n        .comment-content {\n            font-size: 15px;\n            color: #333;\n            line-height: 1.6;\n            word-break: break-word;\n            margin-bottom: 10px;\n        }\n\n        .comment-content .bq {\n            width: 20px;\n            height: 20px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .comment-image {\n            max-width: 200px;\n            max-height: 200px;\n            border-radius: 8px;\n            margin-bottom: 10px;\n            cursor: pointer;\n        }\n\n        .comment-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .comment-meta {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .comment-time {\n            font-size: 12px;\n            color: #999;\n        }\n\n        .comment-reply-btn {\n            font-size: 12px;\n            color: #666;\n            cursor: pointer;\n            padding: 4px 8px;\n            border-radius: 4px;\n            transition: background 0.2s;\n        }\n\n        .comment-reply-btn:hover {\n            background: #f5f5f5;\n        }\n\n        .comment-likes {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        .comment-likes i {\n            font-size: 14px;\n        }\n\n        /* 展开回复 */\n        .expand-replies {\n            display: flex;\n            align-items: center;\n            margin-top: 12px;\n            padding-left: 52px;\n            color: #576b95;\n            font-size: 13px;\n            cursor: pointer;\n        }\n\n        .expand-replies::before {\n            content: '';\n            width: 20px;\n            height: 1px;\n            background: #ddd;\n            margin-right: 8px;\n        }\n\n        .expand-replies i {\n            margin-left: 4px;\n            font-size: 10px;\n            transition: transform 0.3s;\n        }\n\n        .expand-replies.expanded i {\n            transform: rotate(180deg);\n        }\n\n        /* 回复列表 */\n        .reply-list {\n            margin-top: 12px;\n            padding-left: 52px;\n            display: none;\n        }\n\n        .reply-list.show {\n            display: block;\n        }\n\n        .reply-item {\n            padding: 12px 0;\n            border-bottom: 1px solid #f5f5f5;\n        }\n\n        .reply-item:last-child {\n            border-bottom: none;\n        }\n\n        .reply-main {\n            display: flex;\n            gap: 10px;\n        }\n\n        .reply-avatar img {\n            width: 28px;\n            height: 28px;\n            border-radius: 50%;\n            object-fit: cover;\n            background: #f0f0f0;\n        }\n\n        .reply-body {\n            flex: 1;\n            min-width: 0;\n        }\n\n        .reply-header {\n            display: flex;\n            align-items: center;\n            flex-wrap: wrap;\n            margin-bottom: 4px;\n        }\n\n        .reply-username {\n            font-size: 13px;\n            font-weight: 500;\n            color: #333;\n        }\n\n        .reply-to {\n            font-size: 13px;\n            color: #999;\n            margin: 0 4px;\n        }\n\n        .reply-to-username {\n            font-size: 13px;\n            color: #576b95;\n        }\n\n        .reply-content {\n            font-size: 14px;\n            color: #333;\n            line-height: 1.5;\n            margin-bottom: 6px;\n        }\n\n        .reply-content .bq {\n            width: 18px;\n            height: 18px;\n            vertical-align: middle;\n            margin: 0 1px;\n        }\n\n        .reply-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .reply-time {\n            font-size: 11px;\n            color: #999;\n        }\n\n        .reply-likes {\n            display: flex;\n            align-items: center;\n            gap: 3px;\n            color: #999;\n            font-size: 12px;\n        }\n\n        /* 默认头像 */\n        .default-avatar {\n            width: 40px;\n            height: 40px;\n            border-radius: 50%;\n            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: #fff;\n            font-size: 18px;\n        }\n\n        .default-avatar.small {\n            width: 28px;\n            height: 28px;\n            font-size: 12px;\n        }\n\n        /* 底部输入栏 */\n        .bottom-bar {\n            position: fixed;\n            bottom: 0;\n            \n            left: 0;\n            right: 0;\n            background: #fff;\n            padding: 10px 16px;\n            padding-bottom: 20px;\n            display: flex;\n            align-items: center;\n            gap: 12px;\n            border-top: 1px solid #eee;\n            z-index: 100;\n        }\n\n        .input-wrapper {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            background: #f5f5f5;\n            border-radius: 20px;\n            padding: 8px 16px;\n            cursor: pointer;\n        }\n\n        .input-wrapper span {\n            color: #999;\n            font-size: 14px;\n        }\n\n        .bottom-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n        }\n\n        .bottom-action-btn {\n            font-size: 22px;\n            color: #666;\n            cursor: pointer;\n            transition: color 0.2s;\n        }\n\n        .bottom-action-btn:hover {\n            color: #333;\n        }\n\n        /* 加载状态 */\n        .loading {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 60px 20px;\n            color: #999;\n        }\n\n        .loading-spinner {\n            width: 32px;\n            height: 32px;\n            border: 3px solid #f0f0f0;\n            border-top-color: #07c160;\n            border-radius: 50%;\n            animation: spin 0.8s linear infinite;\n            margin-bottom: 12px;\n        }\n\n        @keyframes spin {\n            to { transform: rotate(360deg); }\n        }\n\n        /* 空状态 */\n        .empty {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 80px 20px;\n            color: #999;\n        }\n\n        .empty i {\n            font-size: 48px;\n            margin-bottom: 16px;\n            opacity: 0.3;\n        }\n\n        .empty-title {\n            font-size: 15px;\n            color: #666;\n            margin-bottom: 8px;\n        }\n\n        .empty-desc {\n            font-size: 13px;\n            color: #999;\n        }\n\n        /* 没有更多 */\n        .no-more {\n            text-align: center;\n            padding: 20px;\n            color: #999;\n            font-size: 13px;\n        }\n\n        /* 评论弹窗 */\n        .modal-overlay {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.5);\n            z-index: 200;\n            display: none;\n            align-items: flex-start;\n            justify-content: center;\n            overflow: hidden;\n            padding-top: 180px;\n        }\n\n        .modal-overlay.show {\n            display: flex;\n        }\n\n        .modal-content {\n            background: #fff;\n            width: 90%;\n            max-width: 500px;\n            border-radius: 16px;\n            padding: 20px;\n            animation: slideDown 0.3s ease;\n            transition: transform 0.3s ease;\n            max-height: 80vh;\n            box-shadow: 0 10px 40px rgba(0,0,0,0.2);\n        }\n\n        @keyframes slideDown {\n            from {\n                transform: translateY(-100%);\n            }\n            to {\n                transform: translateY(0);\n            }\n        }\n\n        .modal-header {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            margin-bottom: 16px;\n        }\n\n        .modal-title {\n            font-size: 16px;\n            font-weight: 600;\n        }\n\n        .modal-close {\n            font-size: 24px;\n            color: #999;\n            cursor: pointer;\n            padding: 4px;\n        }\n\n        .modal-textarea-wrapper {\n            position: relative;\n            margin-bottom: 12px;\n        }\n\n        .modal-textarea {\n            width: 100%;\n            min-height: 120px;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            padding: 12px;\n            padding-bottom: 40px;\n            font-size: 15px;\n            resize: none;\n            outline: none;\n        }\n\n        .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .emoji-toggle-btn {\n            position: absolute;\n            bottom: 10px;\n            right: 10px;\n            font-size: 22px;\n            color: #999;\n            cursor: pointer;\n            background: none;\n            border: none;\n            padding: 4px;\n            transition: color 0.2s;\n        }\n\n        .emoji-toggle-btn:hover {\n            color: #07c160;\n        }\n\n        /* 表情面板 */\n        .emoji-panel {\n            position: absolute;\n            bottom: 45px;\n            right: 0;\n            background: #fff;\n            border: 1px solid #eee;\n            border-radius: 8px;\n            box-shadow: 0 4px 20px rgba(0,0,0,0.15);\n            padding: 12px;\n            width: 320px;\n            max-height: 280px;\n            overflow-y: auto;\n            z-index: 10;\n            display: none;\n        }\n\n        .emoji-panel.show {\n            display: block;\n        }\n\n        .emoji-grid {\n            display: grid;\n            grid-template-columns: repeat(6, 1fr);\n            gap: 6px;\n        }\n\n        .emoji-btn {\n            padding: 8px;\n            border: none;\n            background: transparent;\n            cursor: pointer;\n            border-radius: 6px;\n            transition: background 0.2s;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            aspect-ratio: 1;\n        }\n\n        .emoji-btn:hover {\n            background: #f0f0f0;\n        }\n\n        .emoji-btn img {\n            width: 24px;\n            height: 24px;\n        }\n\n        .modal-footer {\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n        }\n\n        .char-count {\n            font-size: 13px;\n            color: #999;\n        }\n\n        .char-count.over {\n            color: #ff4d4f;\n        }\n\n        .submit-btn {\n            background: #07c160;\n            color: #fff;\n            border: none;\n            padding: 8px 24px;\n            border-radius: 20px;\n            font-size: 14px;\n            font-weight: 500;\n            cursor: pointer;\n        }\n\n        .submit-btn:disabled {\n            background: #ccc;\n            cursor: not-allowed;\n        }\n\n        /* 图片预览 */\n        .image-preview {\n            position: fixed;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background: rgba(0, 0, 0, 0.9);\n            z-index: 300;\n            display: none;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .image-preview.show {\n            display: flex;\n        }\n\n        .image-preview img {\n            max-width: 90%;\n            max-height: 90%;\n            border-radius: 8px;\n        }\n\n        .image-preview-close {\n            position: absolute;\n            top: 20px;\n            right: 20px;\n            font-size: 32px;\n            color: #fff;\n            cursor: pointer;\n        }\n\n        /* Toast */\n        .toast {\n            position: fixed;\n            top: 50%;\n            left: 50%;\n            transform: translate(-50%, -50%);\n            background: rgba(0, 0, 0, 0.75);\n            color: #fff;\n            padding: 12px 24px;\n            border-radius: 8px;\n            font-size: 14px;\n            z-index: 400;\n            display: none;\n        }\n\n        .toast.show {\n            display: block;\n        }\n\n        /* 隐藏 */\n        .hidden {\n            display: none !important;\n        }\n\n        /* 深色模式 */\n        html.dark, body.dark {\n            background: #1a1a1a;\n            color: #e0e0e0;\n        }\n\n        /* 确保在深色模式下整个页面都是深色背景 */\n        .dark {\n            background: #1a1a1a;\n        }\n\n        .dark .header {\n            background: #2d2d2d;\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .header-title {\n            color: #e0e0e0;\n        }\n\n        .dark .header-back {\n            color: #999;\n        }\n\n        .dark .sort-btn {\n            background: #3d3d3d;\n            color: #999;\n        }\n\n        .dark .sort-btn:hover:not(.active) {\n            background: #4d4d4d;\n        }\n\n        .dark .sort-btn.active {\n            background: #07c160;\n            color: #fff;\n        }\n\n        .dark .comment-btn {\n            background: transparent;\n            color: #07c160;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:hover {\n            background: transparent;\n            color: #05a850;\n            box-shadow: none;\n        }\n\n        .dark .comment-btn:active {\n            background: transparent;\n            box-shadow: none;\n        }\n\n        .dark .paragraph-quote {\n            background: #2d2d2d;\n            color: #aaa;\n        }\n\n        .dark .comment-list {\n            background: #2d2d2d;\n        }\n\n        .dark .comment-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .comment-username {\n            color: #e0e0e0;\n        }\n\n        .dark .comment-content {\n            color: #ccc;\n        }\n\n        .dark .comment-time {\n            color: #777;\n        }\n\n        .dark .comment-likes {\n            color: #777;\n        }\n\n        .dark .expand-replies {\n            color: #5b9bd5;\n        }\n\n        .dark .expand-replies::before {\n            background: #4d4d4d;\n        }\n\n        .dark .reply-item {\n            border-bottom-color: #3d3d3d;\n        }\n\n        .dark .reply-username {\n            color: #e0e0e0;\n        }\n\n        .dark .reply-content {\n            color: #bbb;\n        }\n\n        .dark .reply-to-username {\n            color: #5b9bd5;\n        }\n\n        .dark .reply-time,\n        .dark .reply-likes {\n            color: #666;\n        }\n\n        .dark .bottom-bar {\n            background: #2d2d2d;\n            border-top-color: #3d3d3d;\n        }\n\n        .dark .input-wrapper {\n            background: #3d3d3d;\n        }\n\n        .dark .input-wrapper span {\n            color: #777;\n        }\n\n        .dark .bottom-action-btn {\n            color: #999;\n        }\n\n        .dark .modal-content {\n            background: #2d2d2d;\n        }\n\n        .dark .modal-title {\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea {\n            background: #3d3d3d;\n            border-color: #4d4d4d;\n            color: #e0e0e0;\n        }\n\n        .dark .modal-textarea:focus {\n            border-color: #07c160;\n        }\n\n        .dark .emoji-panel {\n            background: #2d2d2d;\n            border-color: #4d4d4d;\n        }\n\n        .dark .emoji-btn:hover {\n            background: #3d3d3d;\n        }\n\n        .dark .section-title {\n            color: #e0e0e0;\n        }\n\n        .dark .loading {\n            color: #777;\n        }\n\n        .dark .loading-spinner {\n            border-color: #3d3d3d;\n            border-top-color: #07c160;\n        }\n\n        .dark .empty {\n            color: #666;\n        }\n\n        .dark .empty-title {\n            color: #999;\n        }\n\n        .dark .no-more {\n            color: #666;\n        }\n\n        .dark .default-avatar {\n            background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);\n        }\n\n        /* 深色模式切换按钮 */\n        .theme-toggle {\n            width: 36px;\n            height: 36px;\n            border-radius: 50%;\n            border: none;\n            background: #f5f5f5;\n            color: #666;\n            font-size: 16px;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.2s;\n            margin-left: 12px;\n        }\n\n        .theme-toggle:hover {\n            background: #eee;\n        }\n\n        .dark .theme-toggle {\n            background: #3d3d3d;\n            color: #ffc107;\n        }\n\n        .dark .theme-toggle:hover {\n            background: #4d4d4d;\n        }\n\n        /* ==================== PC端响应式优化 ==================== */\n        @media (min-width: 768px) {\n            body {\n                background: #e8e8e8;\n            }\n\n            .dark body,\n            body.dark {\n                background: #121212;\n            }\n\n            .header {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 0 0 12px 12px;\n                box-shadow: 0 2px 12px rgba(0,0,0,0.08);\n            }\n\n            .main-container {\n                max-width: 800px;\n                margin: 0 auto;\n                padding-top: 72px;\n                background: transparent;\n            }\n\n            .paragraph-quote {\n                margin: 16px 0;\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .hot-section {\n                margin: 16px 0;\n            }\n\n            .comment-list {\n                border-radius: 12px;\n                box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n            }\n\n            .comment-item {\n                padding: 20px 24px;\n            }\n\n            .comment-item:hover {\n                background: #fafafa;\n            }\n\n            .dark .comment-item:hover {\n                background: #363636;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 48px;\n                height: 48px;\n                font-size: 20px;\n            }\n\n            .comment-main {\n                gap: 16px;\n            }\n\n            .comment-username {\n                font-size: 15px;\n            }\n\n            .comment-content {\n                font-size: 15px;\n                line-height: 1.7;\n            }\n\n            .comment-image {\n                max-width: 300px;\n                max-height: 300px;\n            }\n\n            .expand-replies {\n                padding-left: 64px;\n            }\n\n            .reply-list {\n                padding-left: 64px;\n            }\n\n            .reply-avatar img,\n            .default-avatar.small {\n                width: 32px;\n                height: 32px;\n                font-size: 14px;\n            }\n\n            .reply-main {\n                gap: 12px;\n            }\n\n            .reply-username {\n                font-size: 14px;\n            }\n\n            .reply-content {\n                font-size: 14px;\n                line-height: 1.6;\n            }\n\n            .bottom-bar {\n                max-width: 800px;\n                left: 50%;\n                transform: translateX(-50%);\n                border-radius: 12px 12px 0 0;\n                box-shadow: 0 -2px 12px rgba(0,0,0,0.08);\n            }\n\n            .modal-content {\n                max-width: 600px;\n                margin: 0 auto;\n                border-radius: 16px;\n                margin-bottom: 20px;\n            }\n\n            /* 更多评论区域 */\n            #moreSection {\n                margin: 16px 0;\n            }\n\n            /* 加载状态 */\n            .loading,\n            .empty {\n                background: #fff;\n                border-radius: 12px;\n                margin: 16px 0;\n            }\n\n            .dark .loading,\n            .dark .empty {\n                background: #2d2d2d;\n            }\n\n            .no-more {\n                padding: 30px;\n            }\n\n            /* 列表容器 */\n            .main-container > div[style*=\"margin: 0 12px\"] {\n                margin: 0 !important;\n            }\n        }\n\n        /* 更大屏幕 */\n        @media (min-width: 1200px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 900px;\n            }\n\n            .comment-item {\n                padding: 24px 32px;\n            }\n\n            .comment-avatar img,\n            .default-avatar {\n                width: 52px;\n                height: 52px;\n            }\n\n            .expand-replies,\n            .reply-list {\n                padding-left: 68px;\n            }\n        }\n\n        /* 超宽屏幕双栏布局（可选） */\n        @media (min-width: 1400px) {\n            .header,\n            .main-container,\n            .bottom-bar {\n                max-width: 1000px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <!-- 顶部栏 -->\n    <div class=\"header\">\n        <div class=\"header-left\">\n            <span class=\"header-title\" id=\"headerTitle\">评论</span>\n        </div>\n        <div class=\"sort-buttons\" id=\"sortButtons\">\n            <button class=\"comment-btn\" id=\"commentBtn\" onclick=\"openCommentModal()\" style=\"display:none;\">\n                <i class=\"fas fa-pen\"></i> 去评论\n            </button>\n            <button class=\"sort-btn active\" id=\"sortByHot\" onclick=\"sortComments('hot')\">\n                <i class=\"fas fa-fire\"></i> 最热\n            </button>\n            <button class=\"sort-btn\" id=\"sortByTime\" onclick=\"sortComments('time')\">\n                <i class=\"fas fa-clock\"></i> 最新\n            </button>\n\n            <button class=\"theme-toggle\" id=\"themeToggle\" onclick=\"toggleTheme()\">\n                <i class=\"fas fa-moon\" id=\"themeIcon\"></i>\n            </button>\n        </div>\n    </div>\n\n    <!-- 主容器 -->\n    <div class=\"main-container\">\n        <!-- 段落内容 -->\n        <div class=\"paragraph-quote hidden\" id=\"paragraphQuote\"></div>\n\n        <!-- 热门评论区域（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"hotSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-fire\"></i>\n                <span class=\"section-title\">热门评论</span>\n                <span class=\"section-count\" id=\"hotCount\"></span>\n            </div>\n            <div class=\"comment-list\" id=\"hotCommentList\"></div>\n        </div>\n\n        <!-- 更多评论标题（仅七猫） -->\n        <div class=\"hot-section hidden\" id=\"moreSection\">\n            <div class=\"section-header\">\n                <i class=\"fas fa-clock\" style=\"color: #07c160;\"></i>\n                <span class=\"section-title\">更多评论</span>\n                <span class=\"section-count\" id=\"moreCount\"></span>\n            </div>\n        </div>\n\n        <!-- 评论列表 -->\n        <div style=\"margin: 0 12px;\">\n            <div class=\"comment-list\" id=\"commentList\"></div>\n        </div>\n\n        <!-- 加载状态 -->\n        <div class=\"loading\" id=\"loading\">\n            <div class=\"loading-spinner\"></div>\n            <span>加载中...</span>\n        </div>\n\n        <!-- 空状态 -->\n        <div class=\"empty hidden\" id=\"empty\">\n            <i class=\"fas fa-comment-slash\"></i>\n            <div class=\"empty-title\">暂无评论</div>\n            <div class=\"empty-desc\">快来发表第一条评论吧</div>\n        </div>\n\n        <!-- 没有更多 -->\n        <div class=\"no-more hidden\" id=\"noMore\">— 没有更多评论了 —</div>\n    </div>\n\n    <!-- 底部输入栏（仅番茄显示） -->\n    <div class=\"bottom-bar hidden\" id=\"bottomBar\">\n        <div class=\"input-wrapper\" onclick=\"openCommentModal()\">\n            <span>趣评千万条，你也来...</span>\n        </div>\n        <div class=\"bottom-actions\">\n            <i class=\"far fa-smile bottom-action-btn\" onclick=\"openCommentModal()\"></i>\n        </div>\n    </div>\n\n    <!-- 评论弹窗 -->\n    <div class=\"modal-overlay\" id=\"commentModal\" onclick=\"closeCommentModal(event)\">\n        <div class=\"modal-content\" onclick=\"event.stopPropagation()\">\n            <div class=\"modal-header\">\n                <span class=\"modal-title\">发表评论</span>\n                <i class=\"fas fa-times modal-close\" onclick=\"closeCommentModal()\"></i>\n            </div>\n            <div class=\"modal-textarea-wrapper\">\n                <textarea class=\"modal-textarea\" id=\"commentTextarea\" placeholder=\"写下你的想法...\" maxlength=\"500\"></textarea>\n                <button type=\"button\" class=\"emoji-toggle-btn\" id=\"emojiToggleBtn\" onclick=\"toggleEmojiPanel(event)\">\n                    <i class=\"far fa-smile\"></i>\n                </button>\n                <div class=\"emoji-panel\" id=\"emojiPanel\">\n                    <div class=\"emoji-grid\" id=\"emojiGrid\"></div>\n                </div>\n            </div>\n            <div class=\"modal-footer\">\n                <span class=\"char-count\" id=\"charCount\">0/500</span>\n                <button class=\"submit-btn\" id=\"submitBtn\" onclick=\"submitComment()\">发表</button>\n            </div>\n        </div>\n    </div>\n\n    <!-- 图片预览 -->\n    <div class=\"image-preview\" id=\"imagePreview\" onclick=\"closeImagePreview()\">\n        <i class=\"fas fa-times image-preview-close\"></i>\n        <img id=\"previewImage\" src=\"\" alt=\"\">\n    </div>\n\n    <!-- Toast -->\n    <div class=\"toast\" id=\"toast\"></div>\n\n    <script>\n        // 配置\n        const urlParams = new URLSearchParams(\"${url}\");\n        const config = {\n            bookId: urlParams.get('book_id'),\n            itemId: urlParams.get('item_id'),\n            currentPara: urlParams.get('para'),\n            ssionid: urlParams.get('ssionid'),\n            source: urlParams.get('source') || '番茄',\n            cursor: '',\n            lastCursor: '', // 保存上一个cursor用于错误恢复\n            hasMore: false,\n            isLoading: false,\n            currentSort: 'hot',\n            comments: [],\n            hotComments: [],\n            allComments: [],\n            loadRetryCount: 0, // 加载重试次数\n            maxRetryCount: 3 // 最大重试次数\n        };\n\n        // 表情映射\n        const emojiMap = {\n            \"[微笑]\": \"${baser_url}/static/emoji/emoji_dr_1.png\",\n            \"[偷笑]\": \"${baser_url}/static/emoji/emoji_dr_2.png\",\n            \"[笑]\": \"${baser_url}/static/emoji/emoji_dr_3.png\",\n            \"[什么]\": \"${baser_url}/static/emoji/emoji_dr_4.png\",\n            \"[害羞]\": \"${baser_url}/static/emoji/emoji_dr_5.png\",\n            \"[爱慕]\": \"${baser_url}/static/emoji/emoji_dr_6.png\",\n            \"[飞吻]\": \"${baser_url}/static/emoji/emoji_dr_7.png\",\n            \"[奸笑]\": \"${baser_url}/static/emoji/emoji_dr_8.png\",\n            \"[尬笑]\": \"${baser_url}/static/emoji/emoji_dr_9.png\",\n            \"[思考]\": \"${baser_url}/static/emoji/emoji_dr_10.png\",\n            \"[撇嘴]\": \"${baser_url}/static/emoji/emoji_dr_11.png\",\n            \"[做鬼脸]\": \"${baser_url}/static/emoji/emoji_dr_12.png\",\n            \"[酷]\": \"${baser_url}/static/emoji/emoji_dr_13.png\",\n            \"[翻白眼]\": \"${baser_url}/static/emoji/emoji_dr_14.png\",\n            \"[惊呆]\": \"${baser_url}/static/emoji/emoji_dr_15.png\",\n            \"[震惊]\": \"${baser_url}/static/emoji/emoji_dr_16.png\",\n            \"[送心]\": \"${baser_url}/static/emoji/emoji_dr_17.png\",\n            \"[委屈]\": \"${baser_url}/static/emoji/emoji_dr_18.png\",\n            \"[快哭了]\": \"${baser_url}/static/emoji/emoji_dr_19.png\",\n            \"[笑哭]\": \"${baser_url}/static/emoji/emoji_dr_20.png\",\n            \"[哭]\": \"${baser_url}/static/emoji/emoji_dr_21.png\",\n            \"[大笑]\": \"${baser_url}/static/emoji/emoji_dr_22.png\",\n            \"[舔屏]\": \"${baser_url}/static/emoji/emoji_dr_23.png\",\n            \"[怒]\": \"${baser_url}/static/emoji/emoji_dr_24.png\",\n            \"[捂脸]\": \"${baser_url}/static/emoji/emoji_dr_25.png\",\n            \"[吐]\": \"${baser_url}/static/emoji/emoji_dr_26.png\",\n            \"[恐惧]\": \"${baser_url}/static/emoji/emoji_dr_27.png\",\n            \"[抓狂]\": \"${baser_url}/static/emoji/emoji_dr_28.png\",\n            \"[敬礼]\": \"${baser_url}/static/emoji/emoji_dr_29.png\",\n            \"[石化]\": \"${baser_url}/static/emoji/emoji_dr_30.png\",\n            \"[OK]\": \"${baser_url}/static/emoji/emoji_dr_31.png\",\n            \"[赞]\": \"${baser_url}/static/emoji/emoji_dr_32.png\",\n            \"[爱心]\": \"${baser_url}/static/emoji/emoji_dr_33.png\",\n            \"[伤心]\": \"${baser_url}/static/emoji/emoji_dr_34.png\",\n            \"[KISS]\": \"${baser_url}/static/emoji/emoji_dr_35.png\",\n            \"[懂了]\": \"${baser_url}/static/emoji/emoji_dr_36.png\",\n            \"[探究]\": \"${baser_url}/static/emoji/emoji_dr_37.png\",\n            \"[重拳出击]\": \"${baser_url}/static/emoji/emoji_dr_38.png\",\n            \"[吃瓜]\": \"${baser_url}/static/emoji/emoji_dr_39.png\",\n            \"[盯]\": \"${baser_url}/static/emoji/emoji_dr_40.png\",\n            \"[你细品]\": \"${baser_url}/static/emoji/emoji_dr_41.png\",\n            \"[赶稿中]\": \"${baser_url}/static/emoji/emoji_dr_42.png\",\n            \"[注意]\": \"${baser_url}/static/emoji/emoji_dr_43.png\",\n            \"[饱了]\": \"${baser_url}/static/emoji/emoji_dr_44.png\",\n            \"[码住]\": \"${baser_url}/static/emoji/emoji_dr_45.png\",\n            \"[学会了]\": \"${baser_url}/static/emoji/emoji_dr_46.png\",\n            \"[顶帖]\": \"${baser_url}/static/emoji/emoji_dr_47.png\",\n            \"[求爆更]\": \"${baser_url}/static/emoji/emoji_dr_48.png\",\n            \"[求关注]\": \"${baser_url}/static/emoji/emoji_dr_49.png\",\n            \"[我也强推]\": \"${baser_url}/static/emoji/emoji_dr_50.png\",\n            \"[雀食神作]\": \"${baser_url}/static/emoji/emoji_dr_51.png\",\n            \"[已种草]\": \"${baser_url}/static/emoji/emoji_dr_52.png\",\n            \"[书架加一]\": \"${baser_url}/static/emoji/emoji_dr_53.png\",\n            \"[歪头笑哭]\": \"${baser_url}/static/emoji/emoticon_emoji_wtxk.png\",\n            \"[神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[狗头]\": \"${baser_url}/static/emoji/emoticon_emoji_doge.png\",\n            \"[哈哈]\": \"${baser_url}/static/emoji/emoticon_emoji_hhh.png\",\n            \"[流泪]\": \"${baser_url}/static/emoji/emoticon_emoji_tears.png\",\n            \"[可爱]\": \"${baser_url}/static/emoji/emoticon_emoji_cute.png\",\n            \"[色]\": \"${baser_url}/static/emoji/emoticon_emoji_smimi.png\",\n            \"[调皮]\": \"${baser_url}/static/emoji/emoticon_emoji_tpi.png\",\n            \"[小七_神评]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sp.png\",\n            \"[小七_狗头]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gt.png\",\n            \"[小七_鄙视]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_bs.png\",\n            \"[小七_高兴]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_gx.png\",\n            \"[小七_黑人问号]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_hrwh.png\",\n            \"[小七_厉害]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_lh.png\",\n            \"[小七_流泪]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ll.png\",\n            \"[小七_OK]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_ok.png\",\n            \"[小七_色]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_s.png\",\n            \"[小七_伤心]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_sx.png\",\n            \"[小七_调皮]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_tq.png\",\n            \"[小七_委屈]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_wh.png\",\n            \"[小七_笑哭]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xk.png\",\n            \"[小七_笑嘻嘻]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\",\n            \"[小七_斜眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xyx.png\",\n            \"[小七_赞美]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_zm.png\",\n            \"[眯眼笑]\": \"${baser_url}/static/emoji/emoticon_xiaoqi_xxy.png\"\n        };\n\n        // 初始化\n        document.addEventListener('DOMContentLoaded', () => {\n            initTheme();\n            initSortButtons();\n\n            // 隐藏底部输入栏，使用顶部评论按钮\n            document.body.style.paddingBottom = '20px';\n\n            document.getElementById('commentTextarea').addEventListener('input', updateCharCount);\n\n            initEmojiPanel(); // 初始化表情面板\n            initInfiniteScroll();\n            loadComments();\n        });\n\n        function initTheme() {\n            let readerSettings = localStorage.getItem('readerSettings');\n            let theme = localStorage.getItem('theme');\n            if (readerSettings) {\n                try {\n                    const parsed = JSON.parse(readerSettings);\n                    if (parsed.theme !== undefined) {\n                        theme = parsed.theme;\n                    }\n                } catch {}\n            }\n            \n            // 设置默认值为auto\n            if (!theme) {\n                theme = 'auto';\n                localStorage.setItem('theme', 'auto');\n            }\n            \n            updateTheme(theme);\n        }\n\n        function updateTheme(theme) {\n            const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n            let isDark;\n            \n            if (theme === 'auto') {\n                isDark = prefersDark;\n            } else {\n                isDark = theme === 'dark';\n            }\n            \n            if (isDark) {\n                document.documentElement.classList.add('dark');\n                document.body.classList.add('dark');\n            } else {\n                document.documentElement.classList.remove('dark');\n                document.body.classList.remove('dark');\n            }\n            \n            updateThemeIcon(theme);\n        }\n\n        function updateThemeIcon(theme) {\n            const icon = document.getElementById('themeIcon');\n            \n            if (theme === 'auto') {\n                icon.className = 'fas fa-adjust';\n            } else if (theme === 'dark') {\n                icon.className = 'fas fa-sun';\n            } else {\n                icon.className = 'fas fa-moon';\n            }\n        }\n\n        function toggleTheme() {\n            let currentTheme = localStorage.getItem('theme');\n            let newTheme;\n            \n            if (currentTheme === 'auto') {\n                // From auto to opposite of current system preference\n                const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n                newTheme = prefersDark ? 'light' : 'dark';\n            } else if (currentTheme === 'light') {\n                newTheme = 'dark';\n            } else {\n                newTheme = 'auto';\n            }\n            \n            localStorage.setItem('theme', newTheme);\n            updateTheme(newTheme);\n        }\n\n        // Listen for system theme changes in auto mode\n        window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', (e) => {\n            const currentTheme = localStorage.getItem('theme');\n            if (currentTheme === 'auto') {\n                updateTheme('auto');\n            }\n        });\n\n        function initInfiniteScroll() {\n            let scrollTimeout;\n            let lastScrollTime = 0;\n            \n            window.addEventListener('scroll', () => {\n                const now = Date.now();\n                if (now - lastScrollTime < 100) return; // 节流，100ms内不重复处理\n                lastScrollTime = now;\n                \n                clearTimeout(scrollTimeout);\n                scrollTimeout = setTimeout(() => {\n                    if (config.isLoading || !config.hasMore) return;\n                    \n                    const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n                    const windowHeight = window.innerHeight;\n                    const documentHeight = document.documentElement.scrollHeight;\n                    const distance = documentHeight - (scrollTop + windowHeight);\n\n                    // 增加触发距离，避免过早加载\n                    if (distance < 100 && distance > -50) {\n                        loadComments();\n                    }\n                }, 150); // 防抖，150ms后执行\n            }, { passive: true });\n        }\n\n        function initSortButtons() {\n            const sortByHot = document.getElementById('sortByHot');\n            if (config.source === '七猫') {\n                sortByHot.innerHTML = '<i class=\"fas fa-history\"></i> 最早';\n            }\n        }\n\n        function initEmojiPanel() {\n            const emojiGrid = document.getElementById('emojiGrid');\n            if (!emojiGrid) return;\n\n            Object.entries(emojiMap).forEach(([text, src]) => {\n                const btn = document.createElement('button');\n                btn.type = 'button';\n                btn.className = 'emoji-btn';\n                btn.innerHTML = \\`<img src=\"\\${src}\" alt=\"\\${text}\">\\`;\n                btn.onclick = (e) => {\n                    e.preventDefault();\n                    e.stopPropagation();\n                    insertEmoji(text);\n                };\n                emojiGrid.appendChild(btn);\n            });\n        }\n\n        function toggleEmojiPanel(e) {\n            e.preventDefault();\n            e.stopPropagation();\n            document.getElementById('emojiPanel').classList.toggle('show');\n        }\n\n        function insertEmoji(text) {\n            const textarea = document.getElementById('commentTextarea');\n            const start = textarea.selectionStart;\n            const end = textarea.selectionEnd;\n            const textBefore = textarea.value.substring(0, start);\n            const textAfter = textarea.value.substring(end);\n            textarea.value = textBefore + text + textAfter;\n            textarea.focus();\n            textarea.selectionStart = textarea.selectionEnd = start + text.length;\n            updateCharCount();\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function sortComments(sortType) {\n            if (config.currentSort === sortType) return;\n            config.currentSort = sortType;\n\n            document.querySelectorAll('.sort-btn').forEach(btn => btn.classList.remove('active'));\n            if (sortType === 'time') {\n                document.getElementById('sortByTime').classList.add('active');\n            } else {\n                document.getElementById('sortByHot').classList.add('active');\n            }\n\n            let sortedComments = [...config.allComments];\n            \n            if (config.source === '七猫') {\n                if (sortType === 'hot') {\n                    sortedComments.reverse();\n                }\n            } else {\n                if (sortType === 'hot') {\n                    sortedComments.sort((a, b) => (b.like_count || 0) - (a.like_count || 0));\n                } else {\n                    sortedComments.sort((a, b) => (b.create_timestamp || 0) - (a.create_timestamp || 0));\n                }\n            }\n\n            config.comments = sortedComments;\n            renderComments(sortedComments, false);\n        }\n\n        async function loadComments(retryCount = 0) {\n            if (config.isLoading) return;\n            \n            // 预检查：如果已经确定没有更多数据，直接返回\n            if (!config.cursor && config.comments.length > 0) {\n                console.log('没有更多数据可加载（cursor为空）');\n                return;\n            }\n            \n            // 如果已经有大量数据但cursor为空，认为已经加载完毕\n            if (!config.cursor && config.comments.length > 20) {\n                console.log('数据量充足且cursor为空，停止加载');\n                config.hasMore = false;\n                return;\n            }\n            \n            config.isLoading = true;\n\n            const isFirstLoad = !config.cursor;\n            if (!isFirstLoad) {\n                document.getElementById('noMore').classList.add('hidden');\n                showLoadingMore(true);\n            }\n\n            try {\n                let url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&para=\\${config.currentPara}&source=\\${encodeURIComponent(config.source)}\\`;\n                \n                if (config.cursor) {\n                    url += \\`&cursor=\\${encodeURIComponent(config.cursor)}\\`;\n                }\n\n                // 添加超时控制\n                const controller = new AbortController();\n                const timeoutId = setTimeout(() => controller.abort(), 10000); // 10秒超时\n\n                const response = await fetch(url, {\n                    signal: controller.signal,\n                    headers: {\n                        'Accept': 'application/json',\n                        'Content-Type': 'application/json'\n                    }\n                });\n                \n                clearTimeout(timeoutId);\n                \n                if (!response.ok) {\n                    throw new Error(\\`HTTP \\${response.status}: \\${response.statusText}\\`);\n                }\n                \n                const result = await response.json();\n\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n\n                if (result.code === 0 && result.data) {\n                    const data = result.data;\n\n                    if (isFirstLoad) {\n                        // 修复：如果 total 为 0 但实际有评论，使用评论数组长度\n                        const commentCount = data.total || \n                            (data.comments?.length || 0) + (data.hot_comments?.length || 0);\n                        document.getElementById('headerTitle').textContent = commentCount > 0 \n                            ? \\`\\${commentCount}条评论\\` \n                            : '评论';\n                    }\n\n                    if (isFirstLoad && data.paragraph_content) {\n                        const paraEl = document.getElementById('paragraphQuote');\n                        paraEl.textContent = data.paragraph_content.length > 100 \n                            ? data.paragraph_content.substring(0, 100) + '...' \n                            : data.paragraph_content;\n                        paraEl.classList.remove('hidden');\n                    }\n\n                    if (isFirstLoad && data.hot_comments && data.hot_comments.length > 0) {\n                        config.hotComments = data.hot_comments;\n                        renderHotComments(data.hot_comments);\n                        document.getElementById('hotSection').classList.remove('hidden');\n                        document.getElementById('moreSection').classList.remove('hidden');\n                        document.getElementById('moreCount').textContent = \\`(\\${data.total || 0})\\`;\n                    }\n\n                    // 处理评论数据（包括空数据情况）\n                    const comments = data.comments || [];\n                    if (comments.length > 0) {\n                        if (isFirstLoad) {\n                            config.allComments = [...comments];\n                            config.comments = [...comments];\n                            renderComments(comments, false);\n                        } else {\n                            config.allComments = config.allComments.concat(comments);\n                            config.comments = config.comments.concat(comments);\n                            renderComments(comments, true);\n                        }\n                    }\n\n                    // 更严谨的状态判断\n                    const hasMoreFromServer = data.has_more;\n                    const nextCursor = data.next_cursor || '';\n                    \n                    // 如果服务器明确返回hasMore=false，或者没有下一页游标且当前页数据为空，则停止加载\n                    config.hasMore = hasMoreFromServer === true && nextCursor !== '' && comments.length > 0;\n                    \n                    // 特殊情况：如果服务器返回hasMore=true但没有数据，可能是后端bug，保守处理\n                    if (hasMoreFromServer === true && comments.length === 0) {\n                        console.warn('服务器返回hasMore=true但没有数据，停止加载以避免死循环');\n                        config.hasMore = false;\n                    }\n                    \n                    config.lastCursor = config.cursor; // 保存上一个cursor\n                    config.cursor = nextCursor;\n\n                    // 调试日志\n                    console.log(\\`加载完成: 当前页\\${comments.length}条, hasMore=\\${config.hasMore}, cursor='\\${config.cursor}'\\`);\n                    \n                    if (!config.hasMore && config.comments.length > 0) {\n                        document.getElementById('noMore').classList.remove('hidden');\n                        console.log('已到达最后一页，停止加载更多');\n                    }\n\n                    if (config.comments.length === 0 && config.hotComments.length === 0) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                } else {\n                    if (isFirstLoad) {\n                        document.getElementById('empty').classList.remove('hidden');\n                    }\n                }\n            } catch (error) {\n                console.error('加载评论失败:', error);\n                document.getElementById('loading').classList.add('hidden');\n                showLoadingMore(false);\n                \n                // 更详细的错误处理\n                let errorMsg = '加载失败，请重试';\n                if (error.name === 'AbortError') {\n                    errorMsg = '请求超时，请检查网络后重试';\n                } else if (error.message.includes('HTTP')) {\n                    errorMsg = '服务器错误，请稍后重试';\n                } else if (error.message.includes('Failed to fetch')) {\n                    errorMsg = '网络连接失败，请检查网络';\n                }\n                \n                showToast(errorMsg);\n                \n                // 重置cursor，允许重试\n                if (!isFirstLoad) {\n                    config.cursor = config.lastCursor || '';\n                }\n                \n                // 自动重试机制\n                if (retryCount < config.maxRetryCount && !isFirstLoad) {\n                    const retryDelay = Math.min(1000 * Math.pow(2, retryCount), 5000); // 指数退避，最大5秒\n                    console.log(\\`加载失败，\\${retryDelay/1000}秒后重试(\\${retryCount + 1}/\\${config.maxRetryCount})\\`);\n                    \n                    setTimeout(() => {\n                        loadComments(retryCount + 1);\n                    }, retryDelay);\n                    \n                    // 显示重试提示\n                    showToast(\\`加载失败，\\${retryDelay/1000}秒后自动重试\\`);\n                    return; // 不重置isLoading，让重试逻辑处理\n                }\n            } finally {\n                config.isLoading = false;\n            }\n        }\n\n        function showLoadingMore(show) {\n            let loadingMore = document.getElementById('loadingMore');\n            if (!loadingMore) {\n                loadingMore = document.createElement('div');\n                loadingMore.id = 'loadingMore';\n                loadingMore.className = 'loading';\n                loadingMore.style.padding = '20px';\n                loadingMore.style.opacity = '0';\n                loadingMore.style.transition = 'opacity 0.3s ease';\n                loadingMore.innerHTML = '<div class=\"loading-spinner\" style=\"width:24px;height:24px;margin-bottom:8px;\"></div><span style=\"font-size:13px;\">加载更多...</span>';\n                document.querySelector('.main-container').appendChild(loadingMore);\n                \n                // 强制重排后添加动画\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            }\n            \n            if (show) {\n                loadingMore.style.display = 'flex';\n                setTimeout(() => {\n                    loadingMore.style.opacity = '1';\n                }, 10);\n            } else {\n                loadingMore.style.opacity = '0';\n                setTimeout(() => {\n                    loadingMore.style.display = 'none';\n                }, 300);\n            }\n        }\n\n        function renderHotComments(comments) {\n            const container = document.getElementById('hotCommentList');\n            container.innerHTML = '';\n            document.getElementById('hotCount').textContent = \\`(\\${comments.length})\\`;\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'hot'));\n            });\n        }\n\n        function renderComments(comments, append = false) {\n            const container = document.getElementById('commentList');\n            if (!append) {\n                container.innerHTML = '';\n            }\n\n            comments.forEach(comment => {\n                container.appendChild(createCommentElement(comment, 'normal'));\n            });\n        }\n\n        function createCommentElement(comment, type) {\n            const div = document.createElement('div');\n            div.className = 'comment-item';\n            div.dataset.commentId = comment.comment_id;\n\n            // 用户标签\n            let tagsHtml = '';\n            if (comment.user && comment.user.is_author) {\n                tagsHtml += '<span class=\"comment-tag tag-author\">作者</span>';\n            }\n            if (comment.user && comment.user.is_vip) {\n                tagsHtml += '<span class=\"comment-tag tag-vip\">VIP</span>';\n            }\n            if (comment.user && comment.user.tags) {\n                comment.user.tags.forEach(tag => {\n                    tagsHtml += \\`<span class=\"comment-tag tag-custom\">\\${tag}</span>\\`;\n                });\n            }\n\n            // 图片\n            let imageHtml = '';\n            if (comment.image_url) {\n                imageHtml = \\`<img class=\"comment-image\" src=\"\\${comment.image_url}\" onclick=\"openImagePreview('\\${comment.image_url}')\" alt=\"\" onerror=\"this.style.display='none'\">\\`;\n            }\n\n            // 展开回复逻辑\n            let expandHtml = '';\n            let replyListHtml = '';\n            \n            const inlineReplyCount = (comment.replies && comment.replies.length) || 0;\n            const serverReplyCount = comment.reply_count || 0;\n            \n            // 只有当有回复时才显示展开按钮\n            if (serverReplyCount > 0 || inlineReplyCount > 0) {\n                const uniqueId = \\`\\${type}-\\${comment.comment_id}\\`;\n                const totalReplies = Math.max(serverReplyCount, inlineReplyCount);\n                \n                // 七猫：始终从接口获取回复（内嵌回复只是预览）\n                if (config.source === '七猫') {\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                } else if (inlineReplyCount > 0) {\n                    // 番茄/塔读：有内嵌回复，默认收起，标记已加载\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\" data-loaded=\"true\">\\${renderRepliesHtml(comment.replies)}</div>\\`;\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                } else {\n                    // 没有内嵌回复，需要从接口加载\n                    expandHtml = \\`\n                        <div class=\"expand-replies\" onclick=\"toggleReplies('\\${uniqueId}', '\\${comment.comment_id}')\">\n                            展开\\${totalReplies}条回复\n                            <i class=\"fas fa-chevron-down\"></i>\n                        </div>\n                    \\`;\n                    replyListHtml = \\`<div class=\"reply-list\" id=\"replies-\\${uniqueId}\"></div>\\`;\n                }\n            }\n\n            // 头像\n            const userName = comment.user?.user_name || '匿名用户';\n            const userAvatar = comment.user?.user_avatar || '';\n            const avatarHtml = userAvatar \n                ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                : \\`<div class=\"default-avatar\"><i class=\"fas fa-user\"></i></div>\\`;\n\n            div.innerHTML = \\`\n                <div class=\"comment-main\">\n                    <div class=\"comment-avatar\">\n                        \\${avatarHtml}\n                    </div>\n                    <div class=\"comment-body\">\n                        <div class=\"comment-header\">\n                            <span class=\"comment-username\">\\${userName}</span>\n                            \\${tagsHtml}\n                        </div>\n                        <div class=\"comment-content\">\\${convertEmoji(comment.content || '')}</div>\n                        \\${imageHtml}\n                        <div class=\"comment-footer\">\n                            <div class=\"comment-meta\">\n                                <span class=\"comment-time\">\\${comment.create_time || ''}</span>\n                                \\${config.source === '番茄' ? '<span class=\"comment-reply-btn\" style=\"display:none;\">回复</span>' : ''}\n                            </div>\n                            <div class=\"comment-likes\">\n                                <i class=\"far fa-heart\"></i>\n                                <span>\\${comment.like_count || 0}</span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                \\${expandHtml}\n                \\${replyListHtml}\n            \\`;\n\n            return div;\n        }\n\n        function renderRepliesHtml(replies) {\n            if (!replies || replies.length === 0) return '';\n\n            return replies.map(reply => {\n                let replyToHtml = '';\n                if (reply.reply_to_user && reply.reply_to_user.user_name) {\n                    replyToHtml = \\`\n                        <span class=\"reply-to\">回复</span>\n                        <span class=\"reply-to-username\">\\${reply.reply_to_user.user_name}</span>\n                    \\`;\n                }\n\n                let tagsHtml = '';\n                if (reply.user && reply.user.is_author) {\n                    tagsHtml += '<span class=\"comment-tag tag-author\" style=\"margin-left:6px;\">作者</span>';\n                }\n\n                const userName = reply.user?.user_name || '匿名';\n                const userAvatar = reply.user?.user_avatar || '';\n                const avatarHtml = userAvatar \n                    ? \\`<img src=\"\\${userAvatar}\" alt=\"\" onerror=\"this.style.visibility='hidden'\">\\`\n                    : \\`<div class=\"default-avatar small\"><i class=\"fas fa-user\"></i></div>\\`;\n\n                return \\`\n                    <div class=\"reply-item\">\n                        <div class=\"reply-main\">\n                            <div class=\"reply-avatar\">\n                                \\${avatarHtml}\n                            </div>\n                            <div class=\"reply-body\">\n                                <div class=\"reply-header\">\n                                    <span class=\"reply-username\">\\${userName}</span>\n                                    \\${tagsHtml}\n                                    \\${replyToHtml}\n                                </div>\n                                <div class=\"reply-content\">\\${convertEmoji(reply.content || '')}</div>\n                                <div class=\"reply-footer\">\n                                    <span class=\"reply-time\">\\${reply.create_time || ''}</span>\n                                    <div class=\"reply-likes\">\n                                        <i class=\"far fa-heart\"></i>\n                                        <span>\\${reply.like_count || 0}</span>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                \\`;\n            }).join('');\n        }\n\n        async function toggleReplies(uniqueId, commentId) {\n            const container = document.getElementById(\\`replies-\\${uniqueId}\\`);\n            const expandLink = document.querySelector(\\`[onclick*=\"toggleReplies('\\${uniqueId}'\"]\\`);\n            const isExpanded = container.classList.contains('show');\n\n            if (isExpanded) {\n                // 收起\n                container.classList.remove('show');\n                const replyCount = container.querySelectorAll('.reply-item').length;\n                expandLink.innerHTML = \\`展开\\${replyCount}条回复 <i class=\"fas fa-chevron-down\"></i>\\`;\n                expandLink.classList.remove('expanded');\n            } else {\n                // 展开\n                if (container.dataset.loaded === 'true') {\n                    // 已有数据，直接显示\n                    container.classList.add('show');\n                    expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                    expandLink.classList.add('expanded');\n                } else {\n                    // 需要加载\n                    expandLink.innerHTML = '加载中... <i class=\"fas fa-spinner fa-spin\"></i>';\n                    container.classList.add('show');\n\n                    try {\n                        const url = \\`${baser_url}/para_review?book_id=\\${config.bookId}&item_id=\\${config.itemId}&comment_id=\\${commentId}&source=\\${encodeURIComponent(config.source)}\\`;\n                        const response = await fetch(url);\n                        const result = await response.json();\n\n                        if (result.code === 0 && result.data && result.data.replies && result.data.replies.length > 0) {\n                            container.innerHTML = renderRepliesHtml(result.data.replies);\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起回复 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        } else {\n                            container.innerHTML = '<div style=\"padding:16px;color:#999;font-size:13px;text-align:center;\">暂无回复</div>';\n                            container.dataset.loaded = 'true';\n                            expandLink.innerHTML = '收起 <i class=\"fas fa-chevron-down\"></i>';\n                            expandLink.classList.add('expanded');\n                        }\n                    } catch (error) {\n                        console.error('加载回复失败:', error);\n                        container.innerHTML = '<div style=\"padding:16px;color:#ff4d4f;font-size:13px;text-align:center;\">加载失败，点击重试</div>';\n                        container.classList.remove('show');\n                        expandLink.innerHTML = '展开回复 <i class=\"fas fa-chevron-down\"></i>';\n                    }\n                }\n            }\n        }\n\n        function convertEmoji(text) {\n                    if (!text) return '';\n            Object.entries(emojiMap).forEach(([key, src]) => {\n                const regex = new RegExp(key.replace(/[.*+?^\\${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'), 'g');\n                text = text.replace(regex, \\`<img src=\"\\${src}\" class=\"bq\" alt=\"\\${key}\">\\`);\n            });\n            return text;\n        }\n\n        function openCommentModal() {\n            if (config.source !== '番茄') {\n                showToast('当前平台暂不支持评论');\n                return;\n            }\n            document.getElementById('commentModal').classList.add('show');\n            document.getElementById('commentTextarea').focus();\n        }\n\n        function closeCommentModal(event) {\n            if (event && event.target !== document.getElementById('commentModal')) return;\n            document.getElementById('commentModal').classList.remove('show');\n            document.getElementById('emojiPanel').classList.remove('show');\n        }\n\n        function updateCharCount() {\n            const textarea = document.getElementById('commentTextarea');\n            const charCount = document.getElementById('charCount');\n            const length = textarea.value.length;\n            charCount.textContent = \\`\\${length}/500\\`;\n            charCount.classList.toggle('over', length > 500);\n        }\n\n        async function submitComment() {\n            const content = document.getElementById('commentTextarea').value.trim();\n            if (!content) {\n                showToast('请输入评论内容');\n                return;\n            }\n            if (content.length > 500) {\n                showToast('评论内容不能超过500字');\n                return;\n            }\n\n            try {\n                const url = \\`${baser_url}/post_idea_review?ssionid=\\${config.ssionid}\\`;\n                const response = await fetch(url, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application/json' },\n                    body: JSON.stringify({\n                        text: content,\n                        book_id: config.bookId,\n                        item_id: config.itemId,\n                        para: config.currentPara,\n                        para_content: content\n                    })\n                });\n                const result = await response.json();\n\n                if (result.code === 0) {\n                    showToast('发表成功');\n                    closeCommentModal();\n                    document.getElementById('commentTextarea').value = '';\n                    updateCharCount();\n                    config.cursor = '';\n                    config.allComments = [];\n                    config.comments = [];\n                    config.hotComments = [];\n                    loadComments();\n                } else {\n                    showToast(result.msg || '发表失败');\n                }\n            } catch (error) {\n                console.error('发表评论失败:', error);\n                showToast('发表失败，请重试');\n            }\n        }\n\n        function openImagePreview(url) {\n            document.getElementById('previewImage').src = url;\n            document.getElementById('imagePreview').classList.add('show');\n        }\n\n        function closeImagePreview() {\n            document.getElementById('imagePreview').classList.remove('show');\n        }\n\n        function showToast(message) {\n            const toast = document.getElementById('toast');\n            toast.textContent = message;\n            toast.classList.add('show');\n            setTimeout(() => toast.classList.remove('show'), 2000);\n        }\n    </script>\n</body>\n</html>`\n}\n\n\n//按钮切换时改变源变量并刷新发现\nfunction show(m, t) {\n    const {\n        java,\n        source\n    } = this;\n    //源变量为空时刷新发现，重置源变量\n    source.getVariable()==''?java.refreshExplore():'';//\n    var data = JSON.parse(source.getVariable());\n    //java.log(data);\n    data[t] = m;\n    if (t==\"find_tab\"){\n    \tdata[\"find_source\"]=\"番茄\";\n    \t}\n    //java.longToast(JSON.stringify(data));\n    source.setVariable(JSON.stringify(data, null, 2));\n    java.refreshExplore();\n}\n\n/**\n * 创建筛选器配置\n * @param {string} title - 筛选器标题\n * @param {string[]} chars - 选项列表\n * @param {string} defaultVal - 默认值\n * @param {string} paramKey - URL参数名\n * @param {number} size - 布局占比（0-1之间，如0.33表示33%）\n * @returns {Object} 筛选器配置对象\n */\nfunction createFilter(title, chars, defaultVal, paramKey, size) {\n    return {\n        title: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        action: `show(infoMap['${title}'],'${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}",
    "lastUpdateTime": 1783159099166,
    "loginUi": "[{\n        \"name\": \"邮箱\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"密码\",\n        \"type\": \"password\"\n    }, {\n        \"name\": \"♥登录书源\",\n        \"type\": \"button\",\n        \"action\": \"login(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔐注册书源\",\n        \"type\": \"button\",\n        \"action\": \"register()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⛔️清空设置\",\n        \"type\": \"button\",\n        \"action\": \"reCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"✨设置检测\",\n        \"type\": \"button\",\n        \"action\": \"applyCookieSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🔚 退出登录\",\n        \"type\": \"button\",\n        \"action\": \"logout()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"📡 发现页兼容\",\n        \"type\": \"button\",\n        \"action\": \"fxyjr()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🏝用户后台\",\n        \"type\": \"button\",\n        \"action\": \"loginqt()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🗑 清除设备\",\n        \"type\": \"button\",\n        \"action\": \"clearDevice()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🔮 检测登录\",\n        \"type\": \"button\",\n        \"action\": \"checkStatus()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"☕打赏享福利\",\n        \"type\": \"button\",\n        \"action\": \"vip()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"❇️ 更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"==下方配置为书源设置页面==\",\n        \"type\": \"button\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📑更少简介\",\n        \"type\": \"button\",\n        \"action\": \"set_info()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📝段评开关\",\n        \"type\": \"button\",\n        \"action\": \"paracomment('fqpara')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📚 同步书架\",\n        \"type\": \"button\",\n        \"action\": \"set_reading()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♋️ 男/女频道\",\n        \"type\": \"button\",\n        \"action\": \"set_source_type()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"💢 强制搜索全部\",\n        \"type\": \"button\",\n        \"action\": \"disabledSources()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🍅番茄登录\",\n        \"type\": \"button\",\n        \"action\": \"fq_login()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"➿️ 图片显示\",\n        \"type\": \"button\",\n        \"action\": \"closeImg()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📐 使用教程\",\n        \"type\": \"button\",\n        \"action\": \"jc()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🗂当前模式\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📖小说模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('小说')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔊听书模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('听书')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🏞漫画模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('漫画')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🖲短剧模式\",\n        \"type\": \"button\",\n        \"action\": \"set_media('短剧')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎚切换服务器\",\n        \"type\": \"button\",\n        \"action\": \"set_server()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"♻️检测当前服务器\",\n        \"type\": \"button\",\n        \"action\": \"checkNet()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⚕️本地/服务器 \",\n        \"type\": \"button\",\n        \"action\": \"get_proxy()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📌永久发布页📌\",\n        \"type\": \"button\",\n        \"action\": \"api()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"↓↓下方可切换来源用于搜索/发现页↓↓\",\n        \"type\": \"button\",\n        \"action\": \"get_media()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"💖我来推荐\",\n        \"type\": \"button\",\n        \"action\": \"put_book()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"全部\",\n        \"type\": \"button\",\n        \"action\": \"set_source('全部')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('番茄')\",\n        'name': '番茄',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('69书吧')\",\n        'name': '69书吧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('七猫')\",\n        'name': '七猫',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('百度')\",\n        'name': '百度',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('起点')\",\n        'name': '起点(第三方)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得间')\",\n        'name': '得间',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('塔读')\",\n        'name': '塔读',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('书旗')\",\n        'name': '书旗',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('QQ')\",\n        'name': 'QQ',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('猫眼')\",\n        'name': '猫眼',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('搜书神器')\",\n        'name': '搜书神器',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('得奇')\",\n        'name': '得奇',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('伪69')\",\n        'name': '伪69',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('爱下电子书')\",\n        'name': '爱下电子书',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('小米')\",\n        'name': '小米',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('星星小说')\",\n        'name': '星星小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('笔趣阁22')\",\n        'name': '笔趣阁22',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('顶点')\",\n        'name': '顶点',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('幻梦轻小说')\",\n        'name': '幻梦轻小说',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('江湖')\",\n        'name': '江湖',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('歪瑞古德')\",\n        'name': '歪瑞古德漫画',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('知乎')\",\n        'name': '知乎',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('vip')\",\n        'name': '下方为VIP专属书源(点击此处搜所有vip)',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        'action': \"set_source('喜马拉雅')\",\n        'name': '喜马拉雅',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('svip')\",\n            'name': '下方为SVIP专属书源(点击此处搜所有svip)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 1\n            }\n        }, {\n            'action': \"set_source('超会专属短剧')\",\n            'name': '超会专属短剧',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('超会专属小说')\",\n            'name': '超会专属小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        'action': \"set_source('酷我')\",\n        'name': '酷我',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n            'action': \"set_source('台湾小说')\",\n            'name': '台湾小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('3A小说')\",\n            'name': '3A小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('包子漫画')\",\n            'name': '包子漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {       \t  \t\n            'action': \"set_source('QQ阅读')\",\n            'name': 'QQ(会员书籍免费)',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('久久小说')\",\n            'name': '久久小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \t    'action': \"set_source('追更人')\",\n            'name': '追更人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画屋')\",\n            'name': '漫画屋',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('漫画网')\",\n            'name': '漫画网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('52书库')\",\n            'name': '52书库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('腐小说')\",\n            'name': '腐小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('完本小说')\",\n            'name': '完本小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('盐选文库')\",\n            'name': '盐选文库',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {    \t     \t\n            'action': \"set_source('有度中文')\",\n            'name': '有度中文',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('三零读书')\",\n            'name': '三零读书',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('鹿鹿')\",\n            'name': '鹿鹿',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('阅友小说')\",\n            'name': '阅友小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('星空小说')\",\n            'name': '星空小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全免漫画')\",\n            'name': '全免漫画',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('365小说')\",\n            'name': '365小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('冷冷文学')\",\n            'name': '冷冷文学',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('万相书城')\",\n            'name': '万相书城',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n             'action': \"set_source('幻梦轻小说')\",\n            'name': '幻梦轻小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\t\n            'action': \"set_source('独步小说')\",\n            'name': '独步小说',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('福书网')\",\n            'name': '福书网',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('速读谷')\",\n            'name': '速读谷',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n            'action': \"set_source('全本同人')\",\n            'name': '全本同人',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n             }\n        }, {\n        'action': \"set_source('漫客栈')\",\n        'name': '漫客栈',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('河马')\",\n        'name': '河马短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n    \t    'action': \"set_source('极速影视')\",\n        'name': '极速影视',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        'action': \"set_source('旺旺短剧')\",\n        'name': '旺旺短剧',\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {     \n       \n             'action': \"set_source('毒舌影视')\",\n            'name': '毒舌影视',\n            'type': 'button',\n            \"style\": {\n                \"layout_flexGrow\": 1,\n                \"layout_flexBasisPercent\": 0.4\n            }\n        }, {\n        \"name\": \"自定义搜索源(多个用英文,分割)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义服务器(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"自定义评论颜色(可不填)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"段评气泡样式(0-4)\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"手动填写番茄token(可不填)\",\n        \"type\": \"text\"\n    }\n]",
    "loginUrl": "// 当前书源版本号，切勿修改，否则影响更新的识别\nconst localVersion = '5.5.22';\n\nlet controlUrl = host[0];\n\nfunction login(flag) {\n    if (flag == undefined) {\n        result = JSON.parse(source.getLoginInfo())\n    } else {\n        java.longToast(\"\\n\\n💞正在登录中...\")\n        putLoginInfo(JSON.stringify(result))\n    }\n    let base_url = getArgument('server') || host[0]\n    let zdyserver = String(result['自定义服务器(可不填)']);\n    if (zdyserver.includes('http')) {\n        setArgument('server', zdyserver);\n        if (getKey(String(cookie.getCookie(base_url)))) {\n            let cookies = cookie.getCookie(base_url)\n            try {\n                cookie.removeCookie(base_url)\n            } catch (e) {}\n            cookie.setCookie(zdyserver, cookies)\n        }\n        java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n    }\n    let plcolor = String(getArgument('plcolor') || result['自定义评论颜色(可不填)'] || '#000000');\n    if (plcolor) {\n        setArgument('plcolor', plcolor);\n    } else {\n        setArgument('plcolor', '#000000');\n    }\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources) {\n        setArgument('sources', zdysources);\n    };\n    base_url = getArgument('server')\n    let register_email = String(result['邮箱'])\n    let password = String(result['密码'])\n    let key = String(result['密钥'] || '')\n\n    if ((register_email && password || key) && !String(getKey(String(cookie.getCookie(base_url))))) {\n        try {\n            cookie.removeCookie(base_url)\n        } catch (e) {}\n        let deviceKey = '';\n        try {\n            deviceKey = java.deviceID();\n        } catch (e) {\n            deviceKey = java.androidId();\n        };\n        let deviceId = deviceKey;\n        if (register_email && password) {\n            let options = JSON.stringify({\n                method: 'POST',\n                headers: {\n                    'Content-Type': 'application/json'\n                },\n                body: JSON.stringify({\n                    register_email: result['邮箱'],\n                    password: result['密码']\n                })\n            })\n            try {\n                let data = JSON.parse(java.ajax(`${base_url}/login_api,${options}`))\n                if (data.code == 0) {\n                    //java.toast(deviceId)\n                    java.toast(\"\\n\\n✅️登录成功\")\n                    cookie.setCookie(base_url, `qttoken=${data.key};deviceId=${deviceId}`);\n                    for (var _h = 0; _h < host.length; _h++) { try { cookie.setCookie(host[_h], `qttoken=${data.key};deviceId=${deviceId}`); } catch(_e){} }\n                    result['密钥'] = data.key\n                    setArgument('qttoken', data.key);\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    java.toast('\\n\\n💔' + data.msg || \"登录失败，请重试！\")\n                }\n            } catch (e) {\n                java.toast(\"\\n\\n💔登录失败，请重试！\\n\" + e.message)\n            }\n        } else {\n            cookie.setCookie(base_url, `qttoken=${key};deviceId=${deviceId}`)\n            let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n            try {\n                res = JSON.parse(res)\n                if (res.id != undefined) {\n                    setArgument('qttoken', key);\n                    java.toast('\\n\\n密钥登录成功')\n                    result['邮箱'] = res.email\n                    putLoginInfo(JSON.stringify(result))\n                } else {\n                    throw new Error()\n                }\n            } catch (e) {\n                java.log(e)\n                java.toast(\"\\n\\n💔登录失败\")\n            }\n        }\n    } else if (flag && String(getKey(String(cookie.getCookie(base_url))))) {\n        java.toast(\"\\n\\n当前✅️已登录，请🚫退出登录后重新登录\");\n        //checkStatus();\n    } else if (flag) {\n        java.toast(\"\\n\\n⛔️请先填写邮箱和密码\");\n    }\n}\n\nfunction objectToCookieString(obj) {\n    if (!obj || typeof obj !== 'object') {\n        return '';\n    }\n    return Object.entries(obj)\n        .map(([key, value]) => {\n            const stringValue = String(value);\n            const encodedKey = encodeURIComponent(key);\n            const encodedValue = encodeURIComponent(stringValue);\n            return `${encodedKey}=${encodedValue}`;\n        })\n        .join('; ');\n}\n\nfunction control() {\n    controlUrla = getArgument('controlUrl');\n    if (controlUrla) {\n        controlUrla = findFirstAvailableHost([controlUrla]);\n    }\n    if (!controlUrla) {\n        controlUrla = findFirstAvailableHost(host) || controlUrl;\n    }\n    setArgument('controlUrl', controlUrla);\n    try {\n        let open_argument = source.getVariable();\n        open_argument = JSON.parse(open_argument);\n        let control_cookie = objectToCookieString(open_argument);\n        cookie.setCookie(controlUrla, control_cookie);\n    } catch {}\n    //java.toast(cookie.getCookie(controlUrla))\n    java.startBrowserAwait(controlUrla + '/control', '大灰狼小说设置');\n    applyCookieSettings();\n}\n\nfunction applyCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    var cookieStr = String(cookie.getCookie(controlUrla));\n\n    var cookieData = {};\n    if (cookieStr && cookieStr !== 'null' && cookieStr !== 'undefined' && cookieStr !== '') {\n        var pairs = cookieStr.split('; ');\n        for (var i = 0; i < pairs.length; i++) {\n            var pair = pairs[i];\n            var eqIndex = pair.indexOf('=');\n            if (eqIndex > -1) {\n                var key = pair.substring(0, eqIndex).trim();\n                var value = decodeURIComponent(pair.substring(eqIndex + 1).trim());\n                cookieData[key] = value;\n                setArgument(key, value);\n            }\n        }\n    }\n\n    var displayConfig = [{\n            key: 'server',\n            label: '服务器',\n            defaultValue: host[0]\n        },\n        {\n            key: 'proxy',\n            label: '访问模式',\n            defaultValue: '云端'\n        },\n        {\n            key: 'tab',\n            label: '阅读模式',\n            defaultValue: '小说'\n        },\n        {\n            key: 'source_type',\n            label: '阅读频道',\n            defaultValue: '男频'\n        },\n        {\n            key: 'sources',\n            label: '书源选择',\n            defaultValue: '全部'\n        },\n        {\n            key: 'fqpara',\n            label: '段评显示',\n            defaultValue: 'on'\n        },\n        {\n            key: 'disabled_sources',\n            label: '强制搜索',\n            defaultValue: '0'\n        },\n        {\n            key: 'reading',\n            label: '同步书架',\n            defaultValue: '0'\n        },\n        {\n            key: 'info',\n            label: '完整简介',\n            defaultValue: 'on'\n        }\n    ];\n\n    var valueMap = {\n        // 访问模式\n        '本地': '💻 本地',\n        '云端': '☁️ 云端',\n\n        // 开关状态\n        'on': '✅ 开启',\n        'off': '❌ 关闭',\n        '1': '✅ 开启',\n        '0': '❌ 关闭',\n\n        // 频道类型\n        '男频': '👨 男频',\n        '女频': '👩 女频',\n\n        // 内容类型\n        '小说': '📖 小说',\n        '听书': '🎧 听书',\n        '漫画': '🎨 漫画',\n        '短剧': '🎬 短剧',\n\n        // 来源类型\n        'vip': '💎 VIP专属',\n        'svip': '👑 SVIP专属',\n        '推荐': '⭐ 网友推荐',\n        '全部': '📚 全部'\n    };\n\n\n    var displayLines = [];\n\n    for (var i = 0; i < displayConfig.length; i++) {\n        var config = displayConfig[i];\n        var value = cookieData[config.key] || getArgument(config.key) || config.defaultValue;\r\n\n\n        if (!cookieData[config.key]) {\n            setArgument(config.key, config.defaultValue);\n        }\n\n        var displayValue = valueMap[value] || value;\n        if (config.key === 'sources' && displayValue.length > 25) {\n            displayValue = displayValue.substring(0, 25) + '...';\n        }\n\n        displayLines.push(config.label + ': ' + displayValue);\n    }\n\n    // 构建提示模板\n    var template = '✨ 当前配置\\n';\n    template += '━━━━━━━━━━━━━━━━\\n';\n    template += displayLines.join('\\n');\n    template += '\\n━━━━━━━━━━━━━━━━\\n';\n    template += '❤️当前应用的 *⚙️长按书源登录设置* 中的配置哦❤️'\n\n    // 显示提示\n    java.longToast(template);\n\n    return displayLines.length;\n}\n\n\nfunction reCookieSettings() {\n    let controlUrla = getArgument('controlUrl') || controlUrl;\n    cookie.removeCookie(controlUrla);\n    applyCookieSettings();\n\n}\n// 检测服务器\nfunction checkNet() {\n    let url = getArgument('server');\n    java.longToast(`\\n\\n♻️正在检测：${url}\\n请稍等~`);\n    let date1 = new Date().getTime();\n    let html = java.ajax(url + '/health');\n    let date2 = new Date().getTime();\n    let t = date2 - date1;\n    let res = {};\n    try {\n        res = JSON.parse(html);\n    } catch {}\n    let c = res.status != \"healthy\";\n    let code = 1;\n    let time = t / 1000 + 's';\n    let logTime = '【' + url + '】\\n┋┋\\n' + '解析时间：' + time;\n    if (c || t > 5000) {\n        java.longToast('\\n💔【访问失败提示】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♣️当前接口无法访问(可能被墙)♣️\\n┋┋\\n请切换其他接口/切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t < 1000) {\n        java.longToast('\\n💖【网络环境优良】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n❤️延迟低，推荐使用此接口❤️\\n┋┋\\n网络环境优良，请继续保持状态\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 1000 && t < 2000) {\n        java.longToast('\\n💛【网络环境一般】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♦️延迟一般，勉强可使用♦️\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    } else if (t >= 2000 && t < 5000) {\n        java.longToast('\\n💔【网络环境堪忧】\\n' + '┏┅━┅━┅━┅━┅┅━┅━┅┓\\n┋┋\\n' + logTime + '\\n┋┋\\n♠延迟过高，不建议使用♠\\n┋┋\\n请切换其他接口或切换网络环境\\n┋┋' + '\\n┗┅━┅━┅━┅━┅┅━┅━┅┛');\n    }\n}\n\n\nfunction findFirstAvailableHost(hosts) {\n    // 按顺序检测，找到第一个可用的就返回\n    for (var i = 0; i < hosts.length; i++) {\n        var host = hosts[i];\n\n        try {\n            java.longToast(\"🔍 正在检测: \" + host);\n\n            var start = new Date().getTime();\n            var response = java.ajax(host + \"/health\");\n            var end = new Date().getTime();\n            var time = end - start;\n\n            // 检查是否可用\n            if (String(response).indexOf(\"大灰狼\") !== -1 && time <= 5000) {\n                // 显示结果\n                var status = \"✅ 可用\";\n                if (time < 1000) {\n                    status = \"💚 优秀\";\n                } else if (time < 2000) {\n                    status = \"💛 一般\";\n                } else {\n                    status = \"🧡 较慢\";\n                }\n                java.longToast(status + \"\\n主机: \" + host + \"\\n延迟: \" + time + \"ms\");\n                return host; // 直接返回找到的主机\n            }\n        } catch (e) {\n            // 这个主机失败，继续下一个\n        }\n    }\n\n    // 所有主机都不可用\n    java.longToast(\"❌ 没有可用的主机\");\n    return null;\n}\n\nfunction isVips(res) {\n    let isVIP = '';\n    let vipEndTime = res.vip_end_time;\n    let formattedDate = '';\n\n    if (vipEndTime && vipEndTime !== 0) {\n        let date = new Date(vipEndTime * 1000);\n        formattedDate = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;\n        let currentTime = Math.floor(Date.now() / 1000);\n        let remainingDays = Math.ceil((vipEndTime - currentTime) / (24 * 60 * 60));\n        if (currentTime > vipEndTime) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (已过期)`;\n        } else if (remainingDays <= 7) {\n            isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} 剩余${remainingDays}天`;\n        } else {\n            if (vipEndTime < 1912946812) {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"}(${formattedDate})`;\n            } else {\n                isVIP = `${res.vip_level === 1 ? \"VIP\" : \"SVIP\"} (永久)`;\n            }\n        }\n    } else {\n        isVIP = '您尚未开通VIP';\n    }\n    return isVIP;\n}\n\nfunction checkStatus() {\n    java.longToast('\\n\\n♻️检测中...');\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/user_api,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    try {\n        res = JSON.parse(res)\n        if (res.id != undefined) {\n            result['邮箱'] = res.email\n            putLoginInfo(JSON.stringify(result))\n            let devices\n            try {\n                devices = Object.keys(JSON.parse(res.device)).length;\n            } catch (e) {\n                devices = res.device ? 1 : 0;\n            }\n            let isVip = isVips(res);\n            tips = `\n┏┅┅┅┅┅┅┱┄┄┄┄┄┄┄┄┄┄┐\n　 🧢昵称 　　　　${res.nickname.padEnd(20,\"\\t\") || \"未设置\".padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　✉️邮箱　　　　${res.email.replace(/(.{3}).*?@/,\"$1***@\").padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🔑密钥　　　　${(`${res.user_key.substring(0,4)}***${res.user_key.slice(-4)}`).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📅注册时间　　${java.timeFormat(res.register_time*1000).padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🗒️今日阅读　　${(java.timeFormat(new Date()).slice(0,10)==java.timeFormat(res.last_read_time * 1000).slice(0,10)?res.day_read_count:0).toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📚累计阅读　　${res.all_read_count.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🕓最后阅读　　${(res.last_read_time != 0?java.timeFormat(res.last_read_time * 1000):'未阅读').padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📱在线设备　　${devices.toString().padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　👑会员状态　　${isVip.padEnd(20,\"\\t\")}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🚫封禁状态　　${res.is_banned?'已封禁':'正常　'}　　　　　　　\n┗┅┅┅┅┅┅┹┄┄┄┄┄┄┄┄┄┄┘\n`\n            java.log(tips)\n            java.longToast(tips)\n        } else {\n            throw new Error(res.msg)\n        }\n    } catch (e) {\n        //java.log(e)\n        java.toast(\"\\n检测登录失败\\n\" + e.message)\n    }\n}\n\nfunction clearDevice() {\n    let base_url = getArgument('server')\n    let res = java.ajax(`${base_url}/clear,{\"method\":\"POST\",\"headers\":{\"cookie\":\"${cookie.getCookie(base_url)}\"}}`)\n    res = JSON.parse(res);\n    java.toast(res.code == 0 ? \"\\n\\n📴设备清除成功\" : res.msg)\n    Packages.java.lang.Thread.sleep(500)\n    checkStatus()\n}\n// 保存登录UI信息\nfunction putLoginInfo(info) {\n    try {\n        let key = java.androidId()\n        let encodeStr = Packages.android.util.Base64.encodeToString(java.createSymmetricCrypto(\"AES\", key).encrypt(info), 2)\n        cache.put(`userInfo_${source.getKey()}`, encodeStr)\n        return true\n    } catch (e) {\n        java.log(e)\n        return source.putLoginInfo(info)\n    }\n}\n\n// 用户后台\nfunction loginqt() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/user', '大灰狼小说后台');\n    }\n}\n\n// 用户注册\nfunction register() {\n    let base_url = getArgument('server');\n    java.startBrowserAwait(getArgument('server') + '/register', '大灰狼小说注册');\n}\n\n//登录番茄\nfunction fq_login() {\n    try {\n        cookie.removeCookie(\"snssdk.com\");\n        cookie.removeCookie(\"fanqienovel.com\")\n    } catch (e) {}\n    try {\n        java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n    } catch (e) {\n        java.toast(e)\n    }\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user\n    try {\n        user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n            method: \"GET\",\n            headers: {\n                \"Cookie\": cookie_\n            }\n        }))).data.name\n    } catch (e) {\n        java.log(e)\n    }\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"\\n\\n欢迎 \" + user + \"\\n登录成功！\")\n    return true\n}\n\n//退出登录\nfunction logout() {\n    cookie.removeCookie(\"fanqienovel.com\");\n    cookie.removeCookie(\"snssdk.com\");\n    cookie.removeCookie(\"69shuba.com\");\n    /*\n    let servers = host\n    for (let server of servers) {\n    \ttry{removeCookie(server )} catch(e){cookie.removeCookie(server )}\n    }\n    */\n    try {\n        cookie.removeCookie(getArgument('server'))\n    } catch (e) {}\n    java.toast(\"退出登录成功\");\n}\n\n//获取参数\nfunction getArgument(key) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    return open_argument[key];\n}\n\n//设置参数\nfunction setArgument(key, value) {\n    let open_argument = source.getVariable();\n    open_argument = getArguments(open_argument, '');\n    open_argument[key] = value;\n    open_argument = JSON.stringify(open_argument);\n    source.setVariable(open_argument);\n    return open_argument;\n}\n\n// 设置本地or云端访问\nfunction get_proxy() {\n    let proxy = getArgument('proxy');\n    if (proxy == '本地') {\n        setArgument('proxy', '云端');\n        java.longToast('\\n所有数据采用\\n\\n服务器网络访问\\n\\n如果发现用不了，请切换本地网络访问，如69书吧');\n    } else {\n        setArgument('proxy', '本地');\n        java.longToast('\\n所有数据采用\\n\\n本地网络访问\\n\\n如果发现用不了，请开启网络代理，如69书吧');\n    }\n}\n\n\nfunction closeImg() {\n    let close_img = getArgument('close_img');\n    if (close_img == 'on') {\n        setArgument('close_img', 'off');\n        java.longToast('\\n显示文中图片');\n    } else {\n        setArgument('close_img', 'on');\n        java.longToast('\\n不显示文中图片');\n    }\n}\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\nfunction fxyjr() {\n    let fxyjr = getArgument('fxyjr');\n    if (fxyjr != 'on') {\n        setArgument('fxyjr', 'on');\n        java.longToast('\\n显示旧版发现页');\n    } else {\n        setArgument('fxyjr', 'off');\n        java.longToast('\\n显示新版发现页');\n    }\n}\n\n\n//设置男女频\nfunction set_source_type() {\n    let source_type = getArgument(\"source_type\");\n    if (source_type == '女频') {\n        setArgument(\"source_type\", '男频');\n        java.toast(\"\\n发现页已设置为:🙋‍♂️男频\");\n    } else {\n        setArgument(\"source_type\", '女频');\n        java.toast(\"\\n发现页已设置为:🙋‍♀️女频\");\n    }\n\n}\n\nfunction set_reading() {\n    let reading = getArgument(\"reading\");\n    if (reading == '1') {\n        setArgument(\"reading\", '0');\n        java.toast(\"\\n\\n大灰狼书架记录同步已关闭！\");\n    } else {\n        setArgument(\"reading\", '1');\n        java.longToast(\"\\n\\n大灰狼书架记录同步已开启！\\n刷新阅读书架即可将书架书籍同步到大灰狼书架！\");\n    }\n\n}\n\n//首页\n//首页\nfunction api() {\n    java.startBrowserAwait('http://svip.langge.cf', \"首页\");\n}\n\n//打赏\nfunction vip() {\n    let base_url = getArgument('server');\n    let ck = String(cookie.getKey(base_url, \"qttoken\"));\n    if (!ck) {\n        java.longToast('\\n\\n🚫请先登录!')\n    } else {\n        java.startBrowserAwait(getArgument('server') + '/coffee', '大灰狼小说会员开通');\n    }\n}\n\nvar server = getArgument('server');\n\n//设置搜索媒体\nfunction set_media(media) {\n    const mediaConfig = {\n        '喜马拉雅': ['听书'],\n        '番茄': '*',\n        '福利小说': ['小说'],\n        '如漫画': ['漫画'],\n        '包子漫画': ['漫画'],\n        '九妖漫画': ['漫画'],\n        '绅士漫画': ['漫画'],\n        '福利漫画': ['漫画'],\n        '好看漫画': ['漫画'],\n        '六月听书': ['听书'],\n        '海洋听书': ['听书'],\n        '酷我听书': ['听书'],\n        '七猫': ['小说', '听书', '短剧'],\n        '河马': ['短剧'],\n        '超会专属短剧': ['短剧'],\n        '歪瑞古德': ['漫画'],\n        '毒舌影视': ['短剧'],\n        '全部': '*', // 允许所有模式\n        '默认': ['小说']\n    };\n\n    const source = getArgument('sources');\n    const allowedModes = mediaConfig[source] || mediaConfig['默认'];\n    let targetMedia = mediaConfig['默认'][0];\n    let isAllowed = false;\n\n    if (allowedModes === '*' || allowedModes.includes(media)) {\n        targetMedia = media;\n        isAllowed = true;\n    } else if (Array.isArray(allowedModes)) {\n        targetMedia = allowedModes[0];\n    }\n\n    const message = isAllowed ?\n        `\\n\\n已切换至：${targetMedia}\\n请重新搜索书籍！` :\n        `\\n\\n目前${source}：不支持【${media}】模式！\\n已自动切换至：${targetMedia}`;\n\n    setArgument('tab', targetMedia);\n    java.toast(message);\n}\n\n//获取搜索媒体\nfunction get_media() {\n    let media = getArgument('tab');\n    let source = getArgument('sources');\n    if (media == '') {\n        media = '全部';\n    }\n    var tishi = '\\n\\n当前服务器：' + getArgument('server')\n    java.longToast(`\\n\\n当前使用源：${source}-${media}${tishi}`);\n}\n\n\n//设置服务器\nfunction set_server() {\n    putLoginInfo(JSON.stringify(result))\n    let zdyserver;\n    let base_url = getArgument('server')\n    try {\n        zdyserver = String(result['自定义服务器(可不填)']);\n        if (zdyserver.includes('http')) {\n            setArgument('server', zdyserver);\n            if (getKey(String(cookie.getCookie(base_url)))) {\n                let cookies = cookie.getCookie(base_url)\n                try {\n                    cookie.removeCookie(base_url)\n                } catch (e) {}\n                cookie.setCookie(zdyserver, cookies)\n            }\n            java.toast(`\\n\\n当前服务器为自定义服务器\\n${zdyserver}\\n\\n切换服务器请先清空服务器地址中的数据`);\n        } else {\n            zdyserver = '';\n        }\n    } catch (error) {\n        zdyserver = '';\n    }\n    if (!zdyserver) {\n        const servers = host\n        const currentServer = getArgument('server') || '';\n        const currentIndex = servers.indexOf(currentServer);\n\n        const nextIndex = currentIndex >= 0 ? (currentIndex + 1) % servers.length : 0;\n        const nextServer = servers[nextIndex];\n\n        setArgument('server', nextServer);\n        if (getKey(String(cookie.getCookie(currentServer)))) {\n            let cookies = cookie.getCookie(currentServer)\n            try {\n                cookie.removeCookie(currentServer)\n            } catch (e) {}\n            cookie.setCookie(nextServer, cookies)\n        }\n        java.longToast(`\\n\\n服务器【${nextIndex+1}】：${nextServer}`);\n    }\n}\n\n//获取音色\nvar tone_id = getArgument('tone_id');\n\nfunction get_tone_id(arg) {\n    var datadist = {\n        \"0\": \"默认音色\",\n        \"-1\": \"阅读模式\",\n        \"-2\": \"漫画模式\",\n        \"51\": \"多人发音\",\n        \"1\": \"甜美少女\",\n        \"2\": \"清亮青叔\",\n        \"5\": \"开朗青年\",\n        \"6\": \"温柔淑女\",\n        \"4\": \"成熟大叔\",\n        \"74\": \"大叔升级\",\n        \"30\": \"优雅御姐\"\n    };\n    var tone_id = datadist[arg] || arg;\n    var tishi = '\\n\\n当前音色：' + tone_id;\n    java.toast(tishi);\n}\n\n\n//设置来源\nfunction set_source(sources) {\n    let zdysources = String(result['自定义搜索源(多个用英文,分割)'] || '');\n    if (zdysources.length > 1 && zdysources != 'undefined') {\n        java.toast('\\n\\n请先清空自定义源再设置');\n    } else {\n        setArgument('sources', sources);\n        set_media('小说');\n        java.toast(`\\n\\n当前来源已切换为:\\n${sources}\\n\\n切换后请重新搜索`);\n    }\n}\n\n// 设置简介\nfunction set_info() {\n    var info = getArgument('info');\n    if (info == 'off') {\n        setArgument('info', 'on');\n        java.toast('\\n\\n已恢复详情页详细简介');\n    } else {\n        setArgument('info', 'off');\n        java.toast('\\n\\n已精简详情页简介');\n    }\n}\n\n// 番茄段评\nfunction paracomment() {\n    var fqpara = getArgument('fqpara');\n    if (fqpara != 'on') {\n        setArgument('fqpara', 'on');\n        java.longToast(\"\\n\\n段评已开启\\n\\n长按刷新段后面的图片即可\\n\\n如果图片不显示，刷新无反应\\n请更新测试版阅读app\");\n    } else {\n        setArgument('fqpara', 'off');\n        java.longToast('\\n\\n段评已关闭');\n    }\n}\n\n// 强制搜索被禁用的源\nfunction disabledSources() {\n    var disabled_sources = getArgument('disabled_sources');\n    if (disabled_sources == '1') {\n        setArgument('disabled_sources', '0');\n        java.longToast('\\n\\n强制搜索禁用的源已关闭');\n    } else {\n        setArgument('disabled_sources', '1');\n        setArgument('sources', '全部');\n        java.longToast(\"\\n\\n强制搜索禁用的源已开启\\n\\n注意：开启后搜索时间会变长！\");\n    }\n}\n\n// 我要推荐\nfunction put_book() {\n    java.startBrowserAwait(getArgument('server') + '/put_book', '我来推荐');\n}\n\n\n// 使用教程\nfunction jc(){\n\t  let html = `<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>使用教程</title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n        }\n\n        body {\n            background-color: #f5f5f5;\n            padding: 20px;\n        }\n\n        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }\n\n        h1 {\n            text-align: center;\n            color: #333;\n            margin-bottom: 30px;\n            padding-bottom: 10px;\n            border-bottom: 2px solid #4CAF50;\n        }\n\n        .tutorial-card {\n            background-color: white;\n            border-radius: 8px;\n            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);\n            padding: 25px;\n            margin-bottom: 25px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease;\n        }\n\n        .tutorial-card:hover {\n            transform: translateY(-5px);\n            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);\n        }\n\n        .card-title {\n            color: #4CAF50;\n            margin-bottom: 15px;\n            font-size: 1.4em;\n        }\n\n        .card-content {\n            line-height: 1.6;\n            color: #555;\n        }\n\n        .keyword-list {\n            background-color: #f9f9f9;\n            border-left: 4px solid #4CAF50;\n            padding: 15px;\n            margin-top: 15px;\n            border-radius: 0 4px 4px 0;\n            font-family: monospace;\n        }\n\n        .keyword-item {\n            margin-bottom: 8px;\n        }\n    </style>\n</head>\n<body>\n    <div class=\"container\">\n        <h1>使用教程</h1>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">搜索功能</h2>\n            <div class=\"card-content\">\n                <p><strong>1) 基础搜索：</strong>在发现页长按该书源，点击搜索，可直接搜索全部来源的小说。</p>\n                <p><strong>2) 进阶搜索：</strong>在“登陆-书源设置”中选择指定模式或来源，即可搜索指定内容。</p>\n                <p><strong>3) 快捷搜索：</strong>使用特殊关键词进行搜索。</p>\n                <div class=\"keyword-list\">\n                    <p class=\"keyword-item\">x:书名@来源 (例如: x:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">t:书名@来源 (例如: t:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">m:书名@来源 (例如: m:十日终焉@番茄)</p>\n                    <p class=\"keyword-item\">d:书名@来源 (例如: d:十日终焉@番茄)</p>\n                </div>\n                <p>其中，x表示小说（可省略），t表示听书，m表示漫画，d表示短剧。冒号支持中文和英文。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">发现页</h2>\n            <div class=\"card-content\">\n                <p>在书源设置中选择指定模式或者单个来源，然后刷新发现页即可。</p>\n            </div>\n        </div>\n\n        <div class=\"tutorial-card\">\n            <h2 class=\"card-title\">更多使用方式</h2>\n            <div class=\"card-content\">\n                <p>进入书源设置页面应该能一目了然。</p>\n            </div>\n        </div>\n    </div>\n</body>\n</html>`;\n\t  java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源教程');\n\t}\n\n// 书源更新\nfunction renderVersionPage() {\n    let yd = '';\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>书源更新</title>\n  <!-- Font Awesome 图标库 -->\n  <link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\" />\n  <style>\n    :root {\n      --primary-gradient: linear-gradient(135deg, #4e6ef2, #6b2dd8);\n      --latest-gradient: linear-gradient(135deg, #8e2de2 0%, #4a00e0 50%, #d4af37 100%);\n      --success-color: #28c76f;\n      --warning-color: #ff9f43;\n      --error-color: #ea5455;\n      --text-main: #1f2937;\n      --text-secondary: #6b7280;\n      --card-bg: #ffffff;\n      --border-color: #e5e7eb;\n      --light-bg: #f9fafb;\n      --shadow: 0 4px 12px rgba(78, 110, 242, 0.1);\n      --shadow-hover: 0 6px 18px rgba(78, 110, 242, 0.2);\n      --glow-shadow: 0 0 25px rgba(142, 45, 226, 0.5), 0 0 50px rgba(212, 175, 55, 0.3);\n      --modal-bg: rgba(31, 41, 55, 0.8);\n      --modal-content-bg: #ffffff;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n      font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n    }\n\n    body {\n      background: linear-gradient(135deg, #eef2ff, #f5f7ff);\n      color: var(--text-main);\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 16px;\n    }\n\n    /* 加载动画 */\n    .loading-wrapper {\n      text-align: center;\n      animation: fadeIn 0.3s ease;\n    }\n\n    .loading-spinner {\n      width: 50px;\n      height: 50px;\n      border: 4px solid rgba(78, 110, 242, 0.3);\n      border-top-color: #4e6ef2;\n      border-radius: 50%;\n      margin: 0 auto 20px;\n      animation: spin 1s linear infinite;\n    }\n\n    .loading-text {\n      color: var(--text-main);\n      font-size: 16px;\n      font-weight: 500;\n    }\n\n    @keyframes spin {\n      to { transform: rotate(360deg); }\n    }\n\n    @keyframes fadeIn {\n      from { opacity: 0; transform: translateY(20px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(30px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes pulse {\n      0%, 100% { opacity: 1; }\n      50% { opacity: 0.7; }\n    }\n\n    @keyframes gradientAnimation {\n      0% { background-position: 0% 50%; }\n      50% { background-position: 100% 50%; }\n      100% { background-position: 0% 50%; }\n    }\n\n    @keyframes breathe {\n      0%, 100% { \n        transform: scale(1);\n        box-shadow: var(--glow-shadow), var(--shadow);\n      }\n      50% { \n        transform: scale(1.02);\n        box-shadow: 0 0 30px rgba(142, 45, 226, 0.6), 0 0 60px rgba(212, 175, 55, 0.4), var(--shadow);\n      }\n    }\n\n    @keyframes shimmer {\n      0% {\n        background-position: -200% center;\n      }\n      100% {\n        background-position: 200% center;\n      }\n    }\n\n    /* 主容器 */\n    .container {\n      width: 100%;\n      max-width: 420px;\n      background: var(--card-bg);\n      border-radius: 24px;\n      overflow: hidden;\n      box-shadow: var(--shadow);\n      position: relative;\n      z-index: 1;\n      animation: slideIn 0.5s ease;\n      display: none;\n    }\n\n    /* 头部 */\n    .header {\n      background: var(--primary-gradient);\n      color: #ffffff;\n      padding: 24px 16px;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .header::before {\n      content: '';\n      position: absolute;\n      top: -30px;\n      left: -30px;\n      width: 80px;\n      height: 80px;\n      background: rgba(255, 255, 255, 0.15);\n      border-radius: 50%;\n    }\n\n    .header::after {\n      content: '';\n      position: absolute;\n      bottom: -60px;\n      right: -60px;\n      width: 150px;\n      height: 150px;\n      background: rgba(255, 255, 255, 0.1);\n      border-radius: 50%;\n    }\n\n    .header h1 {\n      font-size: 1.4rem;\n      font-weight: 700;\n      margin-bottom: 8px;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header p {\n      font-size: 0.9rem;\n      opacity: 0.9;\n      line-height: 1.4;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header-icon {\n      font-size: 48px;\n      margin-bottom: 10px;\n      display: inline-block;\n      animation: bounce 2s ease infinite;\n    }\n\n    @keyframes bounce {\n      0%, 100% { transform: translateY(0); }\n      50% { transform: translateY(-10px); }\n    }\n\n    /* 版本对比 */\n    .version-comparison {\n      display: flex;\n      flex-wrap: nowrap;\n      gap: 12px;\n      padding: 16px;\n      margin-top: 8px;\n      position: relative;\n      z-index: 10;\n    }\n\n    .version-card {\n      flex: 1;\n      min-width: 45%;\n      background: var(--card-bg);\n      border-radius: 16px;\n      padding: 28px 16px 16px;\n      box-shadow: var(--shadow);\n      text-align: center;\n      position: relative;\n      transition: transform 0.3s ease, box-shadow 0.3s ease;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n    }\n\n    .version-card:hover {\n      transform: translateY(-4px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .version-card.current-version {\n      background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 100%);\n      border: 1px solid rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version:hover {\n      box-shadow: 0 6px 20px rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version h3,\n    .version-card.current-version .version-number,\n    .version-card.current-version .version-date {\n      color: var(--text-main);\n    }\n\n    .version-card.latest-version {\n      background: var(--latest-gradient);\n      background-size: 300% 300%;\n      box-shadow: var(--glow-shadow), var(--shadow);\n      color: #fff;\n      z-index: 2;\n      animation: gradientAnimation 6s ease infinite, breathe 3s ease-in-out infinite;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .version-card.latest-version::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        90deg,\n        transparent,\n        rgba(255, 255, 255, 0.3),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: shimmer 3s infinite;\n    }\n\n    .version-card.latest-version h3,\n    .version-card.latest-version .version-number,\n    .version-card.latest-version .version-date {\n      color: #fff;\n      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n      position: relative;\n      z-index: 1;\n    }\n\n    .version-status {\n      position: absolute;\n      top: 6px;\n      right: 6px;\n      padding: 3px 7px;\n      font-size: 0.65rem;\n      font-weight: 600;\n      border-radius: 6px;\n      color: #fff;\n      line-height: 1.2;\n      white-space: nowrap;\n      z-index: 2;\n    }\n\n    .version-card.latest-version .version-status {\n      background: rgba(255, 255, 255, 0.25);\n      backdrop-filter: blur(5px);\n      border: 1px solid rgba(255, 255, 255, 0.3);\n      color: #fff;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    }\n\n    .status-outdated { background: var(--warning-color); }\n    .status-latest { background: var(--success-color); }\n    .status-invalid { background: var(--error-color); }\n\n    .version-card h3 {\n      font-size: 0.9rem;\n      color: var(--text-secondary);\n      margin-bottom: 8px;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n    }\n\n    .version-number {\n      font-size: 1.25rem;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 8px 0;\n      transition: all 0.3s ease;\n      font-family: 'Courier New', monospace;\n    }\n\n    .version-card.latest-version .version-number {\n      font-size: 1.4rem;\n      transform: scale(1.05);\n      text-shadow: \n        0 2px 4px rgba(0, 0, 0, 0.3),\n        0 0 10px rgba(212, 175, 55, 0.8),\n        0 0 20px rgba(212, 175, 55, 0.5);\n      animation: pulse-glow 2s ease-in-out infinite;\n    }\n\n    @keyframes pulse-glow {\n      0%, 100% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 10px rgba(212, 175, 55, 0.8),\n          0 0 20px rgba(212, 175, 55, 0.5);\n      }\n      50% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 15px rgba(212, 175, 55, 1),\n          0 0 30px rgba(212, 175, 55, 0.7);\n      }\n    }\n\n    .version-date {\n      font-size: 0.8rem;\n      color: var(--text-secondary);\n      margin-top: 4px;\n    }\n\n    /* 版本对比指示器 */\n    .version-indicator {\n      position: absolute;\n      left: 50%;\n      top: 50%;\n      transform: translate(-50%, -50%);\n      z-index: 5;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n      color: white;\n    }\n\n    .version-indicator.update-needed {\n      background: var(--error-color);\n      box-shadow: 0 2px 8px rgba(234, 84, 85, 0.4);\n      animation: pulse-indicator 1.5s infinite;\n    }\n\n    .version-indicator.is-latest {\n      background: var(--success-color);\n      box-shadow: 0 2px 8px rgba(40, 199, 111, 0.4);\n    }\n\n    @keyframes pulse-indicator {\n      0% { transform: translate(-50%, -50%) scale(1); }\n      50% { transform: translate(-50%, -50%) scale(1.1); }\n      100% { transform: translate(-50%, -50%) scale(1); }\n    }\n\n    /* 内容区 */\n    .content-container {\n      padding: 16px;\n    }\n\n    /* 状态提示 */\n    .status-alert {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      padding: 12px 16px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      font-weight: 500;\n      font-size: 14px;\n      animation: slideIn 0.5s ease 0.3s backwards;\n    }\n\n    .status-alert i {\n      font-size: 20px;\n    }\n\n    .status-alert.update-available {\n      background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);\n      color: #d63031;\n      box-shadow: 0 4px 15px rgba(253, 203, 110, 0.4);\n    }\n\n    .status-alert.up-to-date {\n      background: linear-gradient(135deg, #55efc4 0%, #00b894 100%);\n      color: white;\n      box-shadow: 0 4px 15px rgba(0, 184, 148, 0.4);\n    }\n\n    /* 更新容器 */\n    .update-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.4s backwards;\n    }\n\n    .update-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n    }\n\n    .update-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .update-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .update-tag {\n      background: rgba(78, 110, 242, 0.1);\n      color: #4e6ef2;\n      padding: 4px 8px;\n      border-radius: 8px;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .update-content {\n      padding: 16px;\n    }\n\n    .update-date {\n      font-weight: 600;\n      color: #4e6ef2;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      padding: 8px 0;\n      border-bottom: 1px dashed #e0e0e0;\n    }\n\n    .update-text {\n      margin: 8px 0;\n      position: relative;\n      padding-left: 16px;\n      line-height: 1.5;\n      color: var(--text-main);\n      font-size: 0.95rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .update-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      font-weight: bold;\n      color: #4e6ef2;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 历史日志 */\n    .history-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.5s backwards;\n    }\n\n    .history-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n      cursor: pointer;\n      user-select: none;\n    }\n\n    .history-header:hover {\n      opacity: 0.8;\n    }\n\n    .history-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .history-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .toggle-history {\n      background: none;\n      border: none;\n      color: var(--text-secondary);\n      cursor: pointer;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.85rem;\n      transition: color 0.2s ease;\n    }\n\n    .toggle-history:hover {\n      color: #4e6ef2;\n    }\n\n    .history-content {\n      padding: 0 16px;\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 0.4s ease, padding 0.4s ease;\n    }\n\n    .history-content.expanded {\n      max-height: 60vh;\n      overflow-y: auto;\n      padding: 16px;\n      scrollbar-width: thin;\n      scrollbar-color: #4e6ef2 #f0f0f0;\n    }\n\n    .history-content.expanded::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-track {\n      background: #f0f0f0;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb {\n      background: #4e6ef2;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb:hover {\n      background: #3a56d0;\n    }\n\n    .history-item {\n      margin-bottom: 16px;\n      padding-bottom: 16px;\n      border-bottom: 1px dashed var(--border-color);\n    }\n\n    .history-item:last-child {\n      border-bottom: none;\n      margin-bottom: 0;\n      padding-bottom: 0;\n    }\n\n    .history-date {\n      font-weight: 600;\n      color: var(--text-main);\n      margin-bottom: 8px;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.9rem;\n      background: rgba(78, 110, 242, 0.05);\n      padding: 6px 10px;\n      border-radius: 6px;\n    }\n\n    .history-text {\n      margin: 8px 0;\n      padding-left: 16px;\n      line-height: 1.4;\n      color: var(--text-secondary);\n      position: relative;\n      font-size: 0.9rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .history-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      color: #4e6ef2;\n      font-weight: bold;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 按钮组 */\n    .button-group {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-bottom: 16px;\n    }\n\n    .button {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      padding: 14px 28px;\n      text-align: center;\n      font-size: 1rem;\n      border: none;\n      border-radius: 12px;\n      text-decoration: none;\n      background: var(--primary-gradient);\n      color: white;\n      font-weight: 600;\n      transition: all 0.3s ease;\n      box-shadow: var(--shadow);\n      position: relative;\n      overflow: hidden;\n      cursor: pointer;\n    }\n\n    .button i {\n      font-size: 1rem;\n    }\n\n    .button::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: rgba(255, 255, 255, 0.1);\n      transform: rotate(30deg);\n      transition: all 0.6s ease;\n      pointer-events: none;\n    }\n\n    .button:hover {\n      transform: translateY(-3px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .button:hover::after {\n      transform: rotate(30deg) translate(20%, 20%);\n    }\n\n    .button:active {\n      transform: scale(0.95);\n    }\n\n    /* 错误状态 */\n    .error-state {\n      text-align: center;\n      padding: 40px 20px;\n      color: var(--text-main);\n    }\n\n    .error-icon {\n      font-size: 64px;\n      margin-bottom: 20px;\n      color: var(--error-color);\n    }\n\n    .error-text {\n      font-size: 16px;\n      line-height: 1.6;\n      margin-bottom: 20px;\n    }\n\n    .retry-button {\n      background: var(--primary-gradient);\n      color: white;\n      padding: 12px 30px;\n      border-radius: 12px;\n      border: none;\n      font-weight: 600;\n      cursor: pointer;\n      transition: all 0.3s ease;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n\n    .retry-button:hover {\n      transform: translateY(-2px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .retry-button:active {\n      transform: scale(0.95);\n    }\n\n    /* 装饰元素 */\n    .decoration {\n      position: absolute;\n      z-index: 0;\n      pointer-events: none;\n    }\n\n    .decoration.circle {\n      width: 120px;\n      height: 120px;\n      border-radius: 50%;\n      background: rgba(107, 45, 216, 0.05);\n      top: 10%;\n      left: 10%;\n    }\n\n    .decoration.square {\n      width: 80px;\n      height: 80px;\n      transform: rotate(45deg);\n      background: rgba(78, 110, 242, 0.05);\n      bottom: 10%;\n      right: 10%;\n    }\n\n    /* 响应式 */\n    @media (max-width: 768px) {\n      body {\n        padding: 12px;\n      }\n\n      .container {\n        max-width: 100%;\n        border-radius: 20px;\n      }\n\n      .header {\n        padding: 20px 15px;\n      }\n\n      .header h1 {\n        font-size: 1.3rem;\n      }\n\n      .header-icon {\n        font-size: 40px;\n      }\n\n      .version-comparison {\n        flex-direction: row;\n        flex-wrap: nowrap;\n        gap: 10px;\n        padding: 12px;\n        margin-top: 6px;\n        overflow-x: auto;\n      }\n\n      .version-card {\n        min-width: 45%;\n        padding: 26px 12px 12px;\n      }\n\n      /* 移动端减弱呼吸动效 */\n      .version-card.latest-version {\n        animation: gradientAnimation 6s ease infinite;\n      }\n\n      .version-status {\n        top: 5px;\n        right: 5px;\n        padding: 2px 5px;\n        font-size: 0.6rem;\n      }\n\n      .version-number {\n        font-size: 1.1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.2rem;\n      }\n\n      .update-header h2, .history-header h2 {\n        font-size: 0.9rem;\n      }\n\n      .button {\n        padding: 12px 24px;\n        font-size: 0.95rem;\n      }\n\n      .history-content.expanded {\n        max-height: 50vh;\n        -webkit-overflow-scrolling: touch;\n      }\n    }\n\n    @media (max-width: 380px) {\n      .header h1 {\n        font-size: 1.2rem;\n      }\n\n      .version-number {\n        font-size: 1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.1rem;\n      }\n\n      .button {\n        padding: 11px;\n        font-size: 0.9rem;\n      }\n    }\n  </style>\n</head>\n<body>\n  <div class=\"decoration circle\"></div>\n  <div class=\"decoration square\"></div>\n\n  <div id=\"loading\" class=\"loading-wrapper\">\n    <div class=\"loading-spinner\"></div>\n    <div class=\"loading-text\"><i class=\"fas fa-search\"></i> 正在检查更新...</div>\n  </div>\n\n  <div class=\"container\" id=\"container\">\n    <div class=\"header\">\n      <div class=\"header-icon\"><i class=\"fas fa-book\"></i></div>\n      <h1>大灰狼书源更新</h1>\n      <p>推荐使用阅读Sigma版本<br>正式版可能存在兼容性问题-<a href='https://legado.langge.cf'>下载</a></p>\n    </div>\n\n    <div class=\"version-comparison\">\n      <div class=\"version-card current-version\">\n        <div class=\"version-status status-outdated\" id=\"currentStatus\">待检查</div>\n        <h3><i class=\"fas fa-cube\"></i> 当前版本</h3>\n        <div class=\"version-number\" id=\"currentVersion\">-</div>\n        <div class=\"version-date\">您的当前版本</div>\n      </div>\n\n      <div class=\"version-indicator update-needed\" id=\"versionIndicator\" style=\"display: none;\">\n        <i class=\"fas fa-arrow-right\"></i>\n      </div>\n\n      <div class=\"version-card latest-version\">\n        <div class=\"version-status status-latest\" id=\"latestStatus\">最新版本</div>\n        <h3><i class=\"fas fa-star\"></i> 最新版本</h3>\n        <div class=\"version-number\" id=\"latestVersion\">-</div>\n        <div class=\"version-date\">可用最新版本</div>\n      </div>\n    </div>\n\n    <div class=\"content-container\">\n      <div class=\"status-alert\" id=\"statusAlert\" style=\"display: none;\"></div>\n\n      <div id=\"latestLogContainer\" style=\"display: none;\">\n        <div class=\"update-container\">\n          <div class=\"update-header\">\n            <h2><i class=\"fas fa-bolt\"></i> 最新更新</h2>\n            <div class=\"update-tag\">最新发布</div>\n          </div>\n          <div class=\"update-content\">\n            <div class=\"update-date\" id=\"latestLogDate\"></div>\n            <div class=\"update-text\" id=\"latestLogContent\"></div>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"button-group\" id=\"buttonGroup\" style=\"display: none;\"></div>\n\n      <div class=\"history-container\" id=\"logs\" style=\"display: none;\">\n        <div class=\"history-header\" onclick=\"toggleLogs()\">\n          <h2><i class=\"fas fa-history\"></i> 历史更新 <span id=\"historyCount\"></span></h2>\n          <button class=\"toggle-history\" id=\"toggleButton\">\n            <span id=\"toggleText\">展开历史</span>\n            <i class=\"fas fa-chevron-down\" id=\"toggleIcon\"></i>\n          </button>\n        </div>\n        <div class=\"history-content\" id=\"logList\"></div>\n      </div>\n    </div>\n  </div>\n\n  <script>\n  let logsCollapsed = true;\n\n  function toggleLogs() {\n    logsCollapsed = !logsCollapsed;\n    const logList = document.getElementById('logList');\n    const toggleText = document.getElementById('toggleText');\n    const toggleIcon = document.getElementById('toggleIcon');\n    \n    if (logsCollapsed) {\n      logList.classList.remove('expanded');\n      toggleText.textContent = '展开历史';\n      toggleIcon.className = 'fas fa-chevron-down';\n    } else {\n      logList.classList.add('expanded');\n      toggleText.textContent = '收起历史';\n      toggleIcon.className = 'fas fa-chevron-up';\n    }\n  }\n\n  (async function() {\n    const loading = document.getElementById('loading');\n    const container = document.getElementById('container');\n    const currentVersion = document.getElementById('currentVersion');\n    const latestVersion = document.getElementById('latestVersion');\n    const currentStatus = document.getElementById('currentStatus');\n    const latestStatus = document.getElementById('latestStatus');\n    const versionIndicator = document.getElementById('versionIndicator');\n    const statusAlert = document.getElementById('statusAlert');\n    const buttonGroup = document.getElementById('buttonGroup');\n    const latestLogContainer = document.getElementById('latestLogContainer');\n    const latestLogDate = document.getElementById('latestLogDate');\n    const latestLogContent = document.getElementById('latestLogContent');\n    const logsContainer = document.getElementById('logs');\n    const logList = document.getElementById('logList');\n    const historyCount = document.getElementById('historyCount');\n\n    const localVer = '${String(localVersion)}';\n\n    // 统一的服务器配置 - 方便维护\n    const serverConfig = {\n      main: {\n        name: '主线路',\n        icon: 'rocket',\n        baseUrl: 'https://sy.langge.cf',\n        downloadPath: '/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup1: {\n        name: '备用线路1',\n        icon: 'box',\n        baseUrl: 'https://api.langge.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup2: {\n        name: '备用线路2',\n        icon: 'satellite',\n        baseUrl: 'https://20.langge.tk',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup3: {\n        name: '备用线路3',\n        icon: 'link',\n        baseUrl: 'http://219.154.201.122:5006',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup4: {\n        name: '备用线路4',\n        icon: 'bolt',\n        baseUrl: 'https://v2.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup5: {\n        name: '备用线路5',\n        icon: 'globe',\n        baseUrl: 'https://v10.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      },\n      backup6: {\n        name: '备用线路6',\n        icon: 'broadcast-tower',\n        baseUrl: 'https://v4.czyl.cf',\n        downloadPath: '/sy/download/%E5%AE%89%E5%8D%93%E9%98%85%E8%AF%BBapp-%E5%A4%A7%E7%81%B0%E7%8B%BC%E8%9E%8D%E5%90%884.0(vip%E5%AE%8C%E5%85%A8%E7%89%88).json'\n      }\n    };\n\n    // 版本比较函数\n    function compareVersions(vs) {\n      const normalize = (v) => {\n        return v.split('.').map(n => {\n          const num = parseInt(n, 10);\n          return isNaN(num) ? 0 : num;\n        });\n      };\n\n      const parts1 = normalize(localVer);\n      const parts2 = normalize(vs);\n      const maxLength = Math.max(parts1.length, parts2.length);\n      \n      for (let i = 0; i < maxLength; i++) {\n        const num1 = parts1[i] || 0;\n        const num2 = parts2[i] || 0;\n        if (num1 > num2) return 1;\n        if (num1 < num2) return -1;\n      }\n      return 0;\n    }\n\n    async function fetchVersionData() {\n      // 使用统一配置中除主线路外的备用线路进行版本检查\n      const serversToCheck = Object.values(serverConfig).filter(s => s.baseUrl.includes('czyl.cf') || s.baseUrl.includes('219.154'));\n      \n      for (const server of serversToCheck) {\n        try {\n          const response = await fetch(server.baseUrl + '/version', { timeout: 2000 });\n          if (response.ok) {\n            return await response.json();\n          }\n        } catch (e) {\n          console.warn(\\`接口失败：\\${server.baseUrl}\\`, e);\n        }\n      }\n      throw new Error('所有更新接口都请求失败');\n    }\n\n    function showError(message) {\n      loading.innerHTML = \\`\n        <div class=\"error-state\">\n          <div class=\"error-icon\"><i class=\"fas fa-exclamation-triangle\"></i></div>\n          <div class=\"error-text\">\\${message}</div>\n          <button class=\"retry-button\" onclick=\"location.reload()\"><i class=\"fas fa-redo\"></i> 重试</button>\n        </div>\n      \\`;\n    }\n\n    try {\n      const data = await fetchVersionData();\n      const cloudVersion = String(data.version3);\n      const updateLog = data.update_log || {};\n\n      // 显示版本信息\n      currentVersion.textContent = \\`v\\${localVer}\\`;\n      latestVersion.textContent = \\`v\\${cloudVersion}\\`;\n\n      // 处理日志\n      const logEntries = Object.entries(updateLog);\n      if (logEntries.length > 0) {\n        // 显示最新日志\n        const [latestDate, latestContent] = logEntries[0];\n        latestLogDate.innerHTML = \\`<i class=\"fas fa-calendar-alt\"></i> \\${latestDate}\\`;\n        latestLogContent.textContent = latestContent;\n        latestLogContainer.style.display = 'block';\n\n        // 显示历史日志\n        if (logEntries.length > 1) {\n          const historyLogs = logEntries.slice(1);\n          historyCount.textContent = \\`(\\${historyLogs.length}条)\\`;\n          logList.innerHTML = historyLogs.map(([date, content]) => \\`\n            <div class=\"history-item\">\n              <div class=\"history-date\">\n                <i class=\"fas fa-calendar-day\"></i>\n                <span>\\${date}</span>\n              </div>\n              <div class=\"history-text\">\\${content}</div>\n            </div>\n          \\`).join('');\n          logsContainer.style.display = 'block';\n        }\n      }\n\n      // 检查更新状态\n      const compareResult = compareVersions(cloudVersion);\n      \n      // 显示版本指示器\n      versionIndicator.style.display = 'flex';\n      \n      if (compareResult === -1) {\n        // 需要更新\n        currentStatus.textContent = '待更新';\n        currentStatus.className = 'version-status status-outdated';\n        versionIndicator.className = 'version-indicator update-needed';\n        versionIndicator.innerHTML = '<i class=\"fas fa-arrow-right\"></i>';\n\n        // 使用统一配置生成下载按钮\n        buttonGroup.innerHTML = Object.values(serverConfig).map(server => {\n          const fullUrl = server.baseUrl + server.downloadPath;\n          return \\`\n            <a href=\"yuedu://booksource/importonline?src=\\${encodeURIComponent(fullUrl)}\" class=\"button\">\n              <i class=\"fas fa-\\${server.icon}\"></i>\n              <span>\\${server.name}</span>\n            </a>\n          \\`;\n        }).join('');\n        buttonGroup.style.display = 'flex';\n      } else {\n        // 已是最新版本\n        currentStatus.textContent = '最新';\n        currentStatus.className = 'version-status status-latest';\n        versionIndicator.className = 'version-indicator is-latest';\n        versionIndicator.innerHTML = '<i class=\"fas fa-check\"></i>';\n        \n        statusAlert.className = 'status-alert up-to-date';\n        statusAlert.innerHTML = '<i class=\"fas fa-check-circle\"></i> <div>您已是最新版本</div>';\n        statusAlert.style.display = 'flex';\n      }\n\n      // 显示主容器，隐藏加载\n      loading.style.display = 'none';\n      container.style.display = 'block';\n\n    } catch (err) {\n      console.error('版本检查失败：', err);\n      showError('<i class=\"fas fa-exclamation-circle\"></i> 检查更新失败，请稍后重试<br><small>' + err.message + '</small>');\n    }\n  })();\n  </script>\n</body>\n</html>\n`;\n    java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '大灰狼书源更新');\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "1",
      "coverUrl": "$.thumb_url",
      "init": "<js>\nif (String(baseUrl).startsWith(\"data:\")) {\n    let res = JSON.parse(java.hexDecodeToString(result));\n    let book_id = res.book_id;\n    let tab = res.tab;\n    let sources = res.sources;\n    let url = res.url;\n    let html = \"\";\n    let proxy = getArguments(source.getVariable(), \"proxy\");\n    if (url != \"\" && proxy == \"本地\") {\n        if (sources == '69书吧') {\n            let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n            let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };            \n             let op = JSON.stringify({\n                \"headers\": headers\n            });\n            html = java.ajax(`${url},${op}`);\n        } else {\n            html = java.ajax(url);\n        }\n        //java.log(html);\n        if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n            cookie.removeCookie('https://www.69shuba.com');\n            java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n            html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n             java.log(html);\n        }\n    }\n    let base_url = getArguments(source.getVariable(), \"server\");\n    let op = {\n        method: \"POST\",\n        body: {\n            html: html\n        }\n    };\n    op = JSON.stringify(op);\n    let varia = String(book.getVariable('custom'));\n    if (varia == 'null') {\n        varia = '';\n    }\n    varia = JSON.stringify({\n        'custom': varia\n    });\n    //varia = java.base64Encode(varia);\n    java.log(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n    try {\n        result = java.ajax(`${base_url}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n        JSON.parse(result);\n    } catch(_err) {\n        for (var _i = 0; _i < host.length; _i++) {\n            if (host[_i] === base_url) continue;\n            try {\n                result = java.ajax(`${host[_i]}/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\n                JSON.parse(result);\n                setArguments(\"server\", host[_i]);\n                java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n                break;\n            } catch(_e2) { continue; }\n        }\n    }\n}\nresult\n</js>$.data",
      "intro": "<js>\nlet {\n    book_id,\n    source: sources,\n    tab,\n    book_tts,\n    tags,\n    role,\n    last_chapter_title,\n    last_chapter_update_time,\n    word_number,\n    status,\n    score,\n    abstract,\n    copyright_info\n} = result;\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (proxy == \"本地\") {\n    proxy = \"本地网络\";\n} else {\n    proxy = \"服务器网络\";\n}\njava.put(\"book_detail\", JSON.stringify(result));\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet key3 = \"\";\ntry {\n    let cookieValue =\n        String(cookie.getCookie(base_url)) || String(java.getCookie(base_url));\n    key3 = getKey(cookieValue);\n} catch (e) {\n    key3 = \"\";\n}\n\nif (key3 == \"\") {\n    java.log(\"当前服务器未查询到登录状态，尝试查询其他服务器登录状态...\");\n    let cookieValue;\n    for (let h of host) {\n        try {\n            cookieValue = String(cookie.getCookie(h)) || String(java.getCookie(h));\n            key3 = getKey(cookieValue);\n        } catch (e) {\n            key3 = \"\";\n        }\n        if (key3) {\n            java.log(`已在${h}登录，退出查询，正在转移登录状态到当前服务${base_url}`);\n            //java.log(cookieValue)\n            cookie.removeCookie(h);\n            cookie.removeCookie(base_url);\n            cookie.setCookie(base_url, cookieValue);\n            break;\n        }\n    }\n}\n\nif (book.readConfig == null || book.readConfig.useReplaceRule == null) {\n    book.setUseReplaceRule(false);\n}\n\nlet nickname = '账号状态：⚠️ 未登录 | 点击右上角 🔖 登录';\ntry {\n    let opcx = {\n        method: \"GET\",\n        headers: {\n            cookie: 'qttoken=' + key3 + ';'\n        },\n    };\n    opcx = JSON.stringify(opcx);\n    let user_info = JSON.parse(java.ajax(base_url + '/get_avatar,' + opcx));\n    if (user_info.code == 0) {\n        if (user_info.nickname) {\n            nickname = '欢迎回来：' + user_info.nickname\n        } else {\n            nickname = '欢迎回来：' + user_info.email + \"(请前往用户后台设置用户名)\"\n        }\n    }\n} catch (e) {\n    if (key) {\n        nickname = '账号状态：已登录'\n    }\n};\n\nlet loginStatus = nickname;\n\nlet lightDivider = \"❇️───────❇️───────❇️\";\nlet heavyDivider = \"&lrm;\\n&lrm;\";\n\nlet isValid = (value) => String(value).length > 1;\nlet ctitle = book.durChapterTitle || '未开始';\nlet info = `\n    📡 当前服务：${base_url}\n    🔑 ${loginStatus}\n    🏷 数据来源：${sources}\n    🔄 当前模式：${tab}\n    ⚙️ 访问模式：${proxy}\n    📖 阅读至：${ctitle}\n`;\n\nif (tab == \"听书\") {\n    //let toneId = getArguments(source.getVariable(), \"tone_id\");\n    let toneId = String(book.getVariable('custom'));\n    if (toneId == '') {\n    \ttoneId= '4';\n    \t}\n    if (isValid(book_tts)) {\n        info += `${lightDivider}\n    🎵 音色配置：${toneId}\n    ✨ AI音色请点击右上角书籍变量填写相关值，真人听书请重新搜索选择带有主播的书籍\n    ${book_tts}\n`;\n    }\n}\n\nlet basicInfo = \"\";\nlet addBasicInfo = (value, prefix, icon) => {\n    if (isValid(value)) basicInfo += `    ${icon} ${prefix} ${value}\\n`;\n};\n\naddBasicInfo(tags, \"书籍分类：\", \"🌈\");\naddBasicInfo(role, \"书籍主角：\", \"👑\");\naddBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\naddBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\naddBasicInfo(word_number, \"书籍字数：\", \"📊\");\naddBasicInfo(status, \"书籍状态：\", \"🚩\");\naddBasicInfo(score, \"书籍评分：\", \"⭐\");\n\nif (basicInfo) info += `${lightDivider}\\n${basicInfo}`;\n\nif (isValid(abstract)) {\n    let indentedAbstract = abstract\n        .split(\"\\n\")\n        .map((line) => `    ${line}`)\n        .join(\"\\n\");\n    info += `${heavyDivider}\n    📖 书籍简介：\n${indentedAbstract}\n`;\n} else {\n    info += `${heavyDivider}`;\n}\n\nif (isValid(copyright_info)) {\n    info += `${lightDivider}\n    © ${copyright_info}\n`;\n} else {\n    info += `${lightDivider}`;\n}\n\ninfo += `\n${heavyDivider}\n    💠💠💠 数据更新于 ${new Date().toLocaleString()} 💠💠💠\n`;\nlet jjinfo = getArguments(source.getVariable(), \"info\");\n\nif (jjinfo != \"off\") {\n    info = String(info)\n        .split(\"\\n\")\n        .map((line) => line.replace(/^ {4}/, \"\"))\n        .join(\"\\n\");\n} else {\n    basicInfo = \"\";\n    addBasicInfo(last_chapter_title, \"最新章节：\", \"📚\");\n    addBasicInfo(last_chapter_update_time, \"更新时间：\", \"⏳\");\n    addBasicInfo(word_number, \"书籍字数：\", \"📊\");\n    addBasicInfo(status, \"书籍状态：\", \"🚩\");\n    addBasicInfo(score, \"书籍评分：\", \"⭐\");\n    if (isValid(abstract)) {\n        let indentedAbstract = abstract\n            .split(\"\\n\")\n            .map((line) => `    ${line}`)\n            .join(\"\\n\");\n        basicInfo += `\n    \\n&lrm;\n    📖 书籍简介：\n${indentedAbstract}\n`;\n    } else {\n        basicInfo += `${heavyDivider}`;\n    }\n    info = `&lrm;\\n🏷 数据来源：${sources}\\n` + basicInfo;\n}\n</js>",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}} {{$.last_chapter_update_time}}",
      "name": "$.book_name",
      "tocUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || \"小说\";\nlet url = result.toc_url || \"\";\nvar sdtoken;\ntry {\n    var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n    sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n} catch (e) {\n    sdtoken = '';\n}\nvar rawCookie = getFanqieCookie() || sdtoken;\nvar match = rawCookie.match(/sessionid=[^;]+/);\nvar fqcookie = match ? match[0] : '';\nvar fqssionid = '';\nif (fqcookie) {\n    fqssionid = getSessionId(fqcookie);\n};\nsetArguments('fqssionid', fqssionid);\njava.put(\"tab\", tab);\njava.put(\"book_id\", book_id);\nlet qtcatalog = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcatalog = java.base64Encode(JSON.stringify(qtcatalog));\n`data:;base64,${qtcatalog},{\"type\":\"qingtian2\"}`;\n</js>",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "<js>\njava.log(result)\nresult = String(java.hexDecodeToString(result));\nlet res;\nif (result.match(/大灰狼融合/)) {\n    result = result.split(\"大灰狼融合4\");\n    res = {\n        item_id: result[0],\n        tab: result[1],\n        title: result[2],\n        sources: result[3],\n        url: \"\"\n    };\n} else {\n    res = JSON.parse(result);\n}\n\nfunction checkEnv() {\n    let isModified = false;\n    try {\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        isModified = true;\n    } catch (e) {\n        isModified = typeof source.loginUi == 'function' ? false : true;\n    }\n    \n    return isModified;\n}\n\nvar islyc = checkEnv();\ntry {\nif (islyc) {\n\tbook.imageStyle = 'FULL';\n\t} else {\n\t\tbook.imageStyle = 'TEXT';\n\t\t}\n} catch {}\nlet varia1 = String(book.getVariable('custom'));\nif (varia1 == 'null') {\n    varia1 = '';\n}\nlet varia = JSON.stringify({\n    'custom': varia1\n});\n//  varia = java.base64Encode(varia);\nlet book_id = res.book_id;\nlet item_id = res.item_id;\nlet tab = res.tab;\nlet title = res.title;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        java.log(url);\n        java.log(op);\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n    java.log('dddddddddddddddddddddddddddd')\n    java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧' && book.durChapterIndex === chapter.index) {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n        java.log('cscscscs')\n        java.log(html);\n    }\n};\nlet content = \"\";\nlet data;\n//let tone_id = getArguments(source.getVariable(), \"tone_id\");\nlet tone_id = varia1;\nif (tone_id == '') {\n    tone_id = '4';\n}\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet fqpara = getArguments(source.getVariable(), \"fqpara\");\nlet close_img = getArguments(source.getVariable(), \"close_img\");\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nlet qtcookie = cookie.getCookie(base_url);\ntry {\n\t   let device2 = String(cookie.getKey(base_url, \"device\"));\n\t   if (!device2){\n\t   \tdevice2 = device;\n\t   \t}\n    qtcookie = `qttoken=${String(cookie.getKey(base_url, \"qttoken\"))}; deviceId=${device2};`\n} catch (e) {java.log(e)}\n\nvar params = {\n    html: html,\n    item_id: item_id,\n    source: sources,\n    tab: tab,\n    tone_id: tone_id,\n    variable: varia,\n    version: '4.11.5.1'\n};\n\nvar content_url = '/content';\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara && tab == \"小说\") {\n    content_url = '/content?review=1';\n}\n\n//var signInfo = generateComplexSignature('POST', content_url, {}, APP_SECRET, params);\n\n\n//var signedParams = copyObject(params);\n//signedParams.timestamp = signInfo.timestamp;\n//signedParams.nonce = signInfo.nonce;\n//signedParams.sign = signInfo.sign;\n\n\nvar op = {\n    method: \"POST\",\n    body: JSON.stringify(params),\n    headers: {\n        cookie: qtcookie,\n        'Content-Type': 'application/json'\n    }\n};\n\nop = JSON.stringify(op);\njava.log(op);\njava.log(cookie.getCookie(base_url))\ntry {\n    data = java.ajax(base_url + content_url + `,${op}`);\n    JSON.parse(data);\n} catch(_err) {\n    for (var _i = 0; _i < host.length; _i++) {\n        if (host[_i] === base_url) continue;\n        try {\n            data = java.ajax(host[_i] + content_url + `,${op}`);\n            JSON.parse(data);\n            setArguments(\"server\", host[_i]);\n            try { var _oldCk = cookie.getCookie(base_url); if (_oldCk) cookie.setCookie(host[_i], _oldCk); } catch(_ce) {}\n            base_url = host[_i];\n            java.longToast(\"\\n\\n线路故障，已自动切换到：\" + host[_i]);\n            break;\n        } catch(_e2) { continue; }\n    }\n}\ntry {\n    data = JSON.parse(data);\n    if (data.msg) {\n        java.toast(data.msg);\n    }\n} catch (e) {}\ncontent = data.content\n\nif (close_img == 'on') {\n\tcontent = removeAllImgTags(content);\n\t}\n\nif ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\" || sources == \"QQ阅读\" || sources == \"svip_QQ阅读\") && fqpara == \"on\" && tab == \"小说\") {\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    content = content\n        .replace(/ident=\"/g, 'ident=\"' + base_url)\n        .replace(/book_id=/g, 'book_id=' + book_id + '&ssionid=' + fqssionid);\n    if (device_type == \"苹果\") {\n        content = paraForiOS(content, sources);\n    } else {\n        content = paraForAndroid(content, sources,islyc);\n    }\n}\ndata = JSON.stringify({\n    content: content,\n});\nif (device_type == \"安卓\" && (tab == \"短剧\" || tab == \"视频\" || sources.includes('毒舌影视') || sources.includes('NT动漫'))) {\n    data = {\n        content: `【右上角刷新】开启播放(下一集请切换下一章刷新)\\n播放直链：\\n${content}`,\n    };\n    data = JSON.stringify(data);\n    if (book.durChapterIndex === chapter.index) {\n        let video_url = `${base_url}/online_video?book_id=${book_id}&source=${sources}&tab=${tab}`;\n        if (sources.includes('毒舌影视') || sources.includes('NT动漫')) {\n            video_url = content;\n        };\n        java.startBrowser(video_url, title);\n        java.toast(\"正在加载视频...\");\n    }\n\n}\ndata;\n</js>$.content"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.category}}\n{{$.score}}\n{{$.status}}\n{{$.source}}\n{{$.tags}}",
      "lastChapter": "{{$.last_chapter_title}} • {{$.last_update_time}}",
      "name": "$.book_name",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet qtdetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\nqtdetail = java.base64Encode(JSON.stringify(qtdetail));\n`data:;base64,${qtdetail},{\"type\":\"qingtian\"}`\n</js>",
      "checkKeyWord": "我的26岁女房客@番茄",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "<js>\nlet res = JSON.parse(java.hexDecodeToString(result));\nif (res.method) {\n    res = Object.fromEntries(\n        res.body\n        .replace(\"source\", \"sources\")\n        .split(\"&\")\n        .map((query) => query.split(\"=\"))\n    );\n    res.url = \"\";\n}\nlet book_id = res.book_id;\njava.put('book_id', book_id);\nlet tab = res.tab;\nlet sources = res.sources;\nlet url = res.url;\nlet html = \"\";\nlet proxy = getArguments(source.getVariable(), \"proxy\");\nif (url != \"\" && proxy == \"本地\") {\n    if (sources == '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n        \t \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\":  java.getWebViewUA()\n             };\n        let op = JSON.stringify({\n            \"headers\": headers\n        });\n        html = java.ajax(`${url},${op}`);    \n    } else {\n        html = java.ajax(url);\n    }\n    //java.log(html);\n    if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n\n           java.log(html);\n    }\n};\nlet base_url = getArguments(source.getVariable(), \"server\");\nlet op = {\n    method: \"POST\",\n    body: {\n        html: html\n    }\n};\nop = JSON.stringify(op);\nlet varia = String(book.getVariable('custom'));\nif (varia == 'null') {\n    varia = '';\n}\nvaria = JSON.stringify({\n    'custom': varia\n});\n// varia = java.base64Encode(varia);\n//java.log(`${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`);\nlet data = java.ajax(\n    `${base_url}/catalog?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia},${op}`\n);\nlet device, device_type;\ntry {\n    device = java.deviceID();\n    device_type = \"苹果\";\n} catch (e) {\n    try {\n        device = java.androidId();\n        device_type = \"安卓\";\n    } catch (e) {\n        device = \"\";\n        device_type = \"安卓\";\n    }\n}\n\nif (tab == \"小说\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n} else if (tab == \"听书\") {\n    if (device_type == \"安卓\") {\n        book.type = 32;\n    } else {\n        book.type = 1;\n    }\n} else if (tab == \"漫画\") {\n    if (device_type == \"安卓\") {\n        book.type = 64;\n    } else {\n        book.type = 2;\n    }\n} else if (tab == \"短剧\") {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 3;\n    }\n} else {\n    if (device_type == \"安卓\") {\n        book.type = 8;\n    } else {\n        book.type = 0;\n    }\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet reading = getArguments(source.getVariable(), \"reading\");\n\nif (book && book.order != 0 && reading == '1') {\n    try {\n        if (!data || !book.variable || !base_url || !qtcookie) {\n            java.log('缺少必要参数');\n        } else {\n            let parsedData;\n            try {\n                parsedData = JSON.parse(data);\n            } catch (e) {\n                java.log('解析data数据失败:' + e);\n            }\n            \n            if (parsedData && parsedData.data && Array.isArray(parsedData.data) && parsedData.data[book.durChapterIndex]) {\n                let ritem = parsedData.data[book.durChapterIndex];\n                let bookInfoObj;\n                try {\n                    bookInfoObj = JSON.parse(book.variable);\n                } catch (e) {\n                    java.log('解析book.variable失败:' + e);\n                }\n                \n                if (bookInfoObj) {\n                    let book_info;\n                    try {\n                        book_info = JSON.parse(bookInfoObj.book_detail || JSON.stringify(bookInfoObj));\n                    } catch (e) {\n                        java.log('解析book_detail失败:' + e);\n                    }\n                    \n                    if (book_info && typeof book_info === 'object') {\n                        let rurl = base_url + '/add_book_to_book_shelf,';\n                        book_info['read_status'] = 1;\n                        book_info['last_chapter_item_id'] = ritem.item_id || '';\n                        book_info['last_chapter_title'] = ritem.title || '';\n                        let rop = {\n                            method: \"POST\",\n                            headers: {\n                                cookie: qtcookie\n                            },\n                            body: book_info\n                        };\n                        let check_book_url = base_url + '/check_book_in_book_shelf,';\n                        let checkResponse;\n                        \n                        try {\n                            checkResponse = java.ajax(check_book_url + JSON.stringify(rop));\n                        } catch (e) {\n                            java.log('检查书籍请求失败:' + e);\n                        }\n                        \n                        if (checkResponse) {\n                            let check_data;\n                            try {\n                                check_data = JSON.parse(checkResponse).data;\n                            } catch (e) {\n                                java.log('解析检查响应失败:' + e);\n                            }\n                            try {\n                                if (check_data && check_data.id) {\n                                    book_info['id'] = check_data.id;\n                                    let uurl = base_url + '/update_book_shelf,';\n                                    java.ajax(uurl + JSON.stringify(rop));\n                                } else {\n                                    java.ajax(rurl + JSON.stringify(rop));\n                                }\n                            } catch (e) {\n                                java.log('书架操作失败:' + e);\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    } catch (error) {\n        java.log('书籍同步流程异常:' + error);\n        java.longToast('\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。');\n    }\n}\ndata;\n</js>$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet tab = result.tab;\nlet sources = result.source;\nlet title = result.title;\nlet item_id = result.item_id;\nlet book_id = java.get(\"book_id\");\nlet url = result.toc_url || \"\";\nlet qtcontent = {\n    book_id: book_id,\n    item_id: item_id,\n    title: title,\n    sources: sources,\n    tab: tab,\n    url: url,\n};\nqtcontent = java.base64Encode(JSON.stringify(qtcontent));\nif (sources == '卷') {\n    content_url = item_id\n} else if ((sources == \"番茄\" || sources == \"七猫\" || sources == \"塔读\") && tab == \"小说\") {\n    var base_url = getArguments(source.getVariable(), \"server\") || \"\";\n    var sdtoken;\n    try {\n        var loginInfoMap = source.getLoginInfoMap ? source.getLoginInfoMap() : {};\n        sdtoken = String(loginInfoMap['手动填写番茄token(可不填)'] || '');\n    } catch (e) {\n        sdtoken = '';\n    }\n    var rawCookie = getFanqieCookie() || sdtoken;\n    var match = rawCookie.match(/sessionid=[^;]+/);\n    var fqcookie = match ? match[0] : '';\n    var fqssionid = '';\n    if (!fqcookie) {} else {\n        fqssionid = getSessionId(fqcookie)\n    }\n    let sourcess = sources.replace('svip_', '');\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\",\"js\":\"book ? result : '${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&ssionid=${fqssionid}&source=${sourcess}'\"}`;\n} else {\n    content_url = `data:;base64,${qtcontent},{\"type\":\"qingtian3\"}`;\n}\n</js>",
      "updateTime": "$.first_pass_time"
    },
    "searchUrl": "<js>\nlet base_url = getArguments(source.getVariable(), 'server');\nlet media;\nlet sources = getArguments(source.getVariable(), 'sources') || getArguments(source.getVariable(), 'source');\nlet disabled_sources = getArguments(source.getVariable(), 'disabled_sources') || '0';\nif (String(key).startsWith(\"m:\") || String(key).startsWith(\"m：\")) {\n    media = \"漫画\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"t:\") || String(key).startsWith(\"t：\")) {\n    media = \"听书\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"d:\") || String(key).startsWith(\"d：\")) {\n    media = \"短剧\"\n    key = key.slice(2)\n} else if (String(key).startsWith(\"x:\") || String(key).startsWith(\"x：\")) {\n    media = \"小说\"\n    key = key.slice(2)\n} else {\n    media = getArguments(source.getVariable(), 'tab') || getArguments(source.getVariable(), 'media');\n}\nif (key.includes('@')) {\n    var parts = key.split('@');\n    key = parts[0];\n    sources = parts[1] || sources;\n}\nlet qtcookie = cookie.getCookie(base_url);\nlet op = {\n    method: \"GET\",\n    headers: {\n        cookie: qtcookie\n    },\n};\nop = JSON.stringify(op);\n`${base_url}/search?title=${key}&tab=${media}&source=${sources}&page={{page}}&disabled_sources=${disabled_sources},${op}`\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "//By情无羁(yesui.me),25.02.03\n同站\n得奇小说：https://www.deqixs.com\n速读谷：https://www.sudugu.com\n笔趣阁：https://www.bvquge.com\n吞噬星空2：https://www.tunshixingkong2.com\n三叶小说：https://3yexs.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "速读谷",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.sudugu.org",
    "bookUrlPattern": "https://www.sudugu.org/\\d+/",
    "concurrentRate": "20/60000",
    "customButton": false,
    "customOrder": 19,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n// === 粘贴您的分类内容到这里 ===\nvar inputData = `°・*.☆ 全部榜单 ☆.*・°\n最近更新::/zuixin/{{page}}.html\n热门小说::/paihang/{{page}}.html\n连载小说::/lianzai/{{page}}.html\n完结小说::/wanjie/{{page}}.html\n玄幻小说::/xuanhuan/{{page}}.html\n仙侠小说::/xianxia/{{page}}.html\n都市小说::/dushi/{{page}}.html\n历史小说::/lishi/{{page}}.html\n科幻小说::/kehuan/{{page}}.html\n轻小说::/qing/{{page}}.html\n悬疑小说::/xuanyi/{{page}}.html\n游戏小说::/youxi/{{page}}.html\n奇幻小说::/qihuan/{{page}}.html\n诸天无限::/zhutianwuxian/{{page}}.html\n军事小说::/junshi/{{page}}.html\n重生小说::/chongsheng/{{page}}.html\n武侠小说::/wuxia/{{page}}.html\n体育小说::/tiyu/{{page}}.html\n言情小说::/yanqing/{{page}}.html`;\n\nvar categories = [];\nvar lines = inputData.split('\\n').filter(l => l.trim());\nvar items = [];\n\nfor (var i = 0; i < lines.length; i++) {\n    var parts = lines[i].split('::');\n    var title = parts[0] || \"\";\n    var url = (parts[1] || \"\").trim();\n    \n    if (!url) {\n        categories.push({\n            \"title\": title,\n            \"url\": \"\",\n            \"style\": {\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}\n        });\n    } else {\n        items.push({\n            \"title\": title,\n            \"url\": url,\n            \"style\": {\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}\n        });\n    }\n}\n\nfor (var j = 0; j < items.length; j++) {\n    categories.push(items[j]);\n}\n\nvar remainder = items.length % 3;\nif (remainder > 0) {\n    for (var k = 0; k < 3 - remainder; k++) {\n        categories.push({\n            \"title\": \"----------\",\n            \"url\": \"\",\n            \"style\": {\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}\n        });\n    }\n}\n\nJSON.stringify(categories);",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1784483524285,
    "respondTime": 8467,
    "ruleBookInfo": {
      "author": ".itemtxt@p.1@text##作者：",
      "coverUrl": ".item@img@src",
      "intro": ".des@p@text",
      "kind": ".itemtxt@p.0@text",
      "lastChapter": ".itemtxt@ul@li.0@a@text",
      "name": "h1@a@text",
      "wordCount": "h1@i@text"
    },
    "ruleContent": {
      "content": ".con@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{chapter.title}}.*|\\(本章完\\)|最⊥新⊥.*|必.+搜.+日.+最.*\n@js:\nvar r = result\nr=r.replace(/「/gi,'“')\n.replace(/」/gi,'”')"
    },
    "ruleSearch": {
      "author": ".itemtxt@p.1@text##作者：",
      "bookList": ".item",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": "span.1@text",
      "lastChapter": "ul@li.0@a@text",
      "name": "a.1@text||h2@text"
    },
    "ruleToc": {
      "chapterList": "#list@ul@li@a",
      "chapterName": "text##[\\(\\{（｛【].*[首为求更谢乐发推票章盟第补合感订加字KkWw\\/].*[\\)\\}）｝】]",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/i/sor.aspx?key={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "🍅番茄小说源",
    "bookSourceType": 0,
    "bookSourceUrl": "https://novel.cooks.tw",
    "bookUrlPattern": "https?:\\/\\/novel\\.cooks\\.tw\\/api\\/novel\\/detail\\/\\d+.*",
    "customButton": false,
    "customOrder": 20,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": false,
    "eventListener": false,
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Android 11; Mobile; rv:147.0) Gecko/147.0 Firefox/147.0\",\"Accept-Language\":\"zh-CN,zh-TW;q=0.9,zh;q=0.8,en;q=0.6\",\"Referer\":\"https://novel.cooks.tw/\"}",
    "jsLib": "function Base(){return 'https://novel.cooks.tw';}function J(s){try{return JSON.parse(String(s||'{}'));}catch(e){return {};}}function T(v){if(v===null||v===undefined)return '';return String(v).replace(/<br\\s*\\/?>/gi,'\\n').replace(/<p[^>]*>/gi,'\\n').replace(/<\\/p>/gi,'\\n').replace(/<[^>]+>/g,'').replace(/&nbsp;/g,' ').replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&#39;/g,\"'\").replace(/&quot;/g,'\"').trim();}function Cover(id){id=String(id||'').replace(/\\D/g,'');if(!id)return '';return 'https://pic.cooks.tw/'+Math.floor(parseInt(id)/1000)+'/'+id+'/'+id+'s.jpg';}function Clean(c){return String(c||'').replace(/<br\\s*\\/?>/gi,'\\n').replace(/<p[^>]*>/gi,'\\n').replace(/<\\/p>/gi,'\\n').replace(/<[^>]+>/g,'').replace(/&nbsp;/g,' ').replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&#39;/g,\"'\").replace(/&quot;/g,'\"').replace(/\\r/g,'').replace(/[ \\t]+\\n/g,'\\n').replace(/\\n{3,}/g,'\\n\\n').trim();}",
    "lastUpdateTime": 1782213837195,
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.data.author",
      "coverUrl": "$.data.articleid\n<js>Cover(result)</js>",
      "init": "<js>var j=J(result);var d=j.data||j;var id=d.articleid||'';if(!id){var m=String(baseUrl||'').match(/detail\\/(\\d+)/);if(m)id=m[1];}try{cache.putMemory('articleid',String(id));}catch(e){}result;</js>",
      "intro": "$.data.intro",
      "lastChapter": "$.data.lastchapter",
      "name": "$.data.articlename",
      "tocUrl": "<js>var j=J(result);var d=j.data||j;var id=d.articleid||'';if(!id){var m=String(baseUrl||'').match(/detail\\/(\\d+)/);if(m)id=m[1];}try{cache.putMemory('articleid',String(id));}catch(e){}Base()+'/api/chapter/list/'+id+'?lang=zh-CN'</js>",
      "wordCount": "$.data.chapters"
    },
    "ruleContent": {
      "content": "$.data.content\n<js>Clean(result)</js>"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.items[*]",
      "bookUrl": "https://novel.cooks.tw/api/novel/detail/{{$.articleid}}?lang=zh-CN",
      "coverUrl": "$.articleid\n<js>Cover(result)</js>",
      "intro": "$.intro",
      "lastChapter": "$.chapters",
      "name": "$.articlename"
    },
    "ruleToc": {
      "chapterList": "$.data[*]||$.data.items[*]||$.data.list[*]||$.data.chapterlist[*]||$.data.chapterList[*]||$.data.chapters[*]",
      "chapterName": "$.chaptername||$.chapter_name||$.chapterName||$.title||$.name",
      "chapterUrl": "$.chapterid\n<js>var aid='';try{aid=cache.getFromMemory('articleid')||'';}catch(e){}if(!aid){var m=String(baseUrl||'').match(/list\\/(\\d+)/);if(m)aid=m[1];}Base()+'/api/chapter/content/'+aid+'/'+result+'?lang=zh-CN'</js>"
    },
    "searchUrl": "https://novel.cooks.tw/api/novel/search?q={{key}}&page={{page}}&limit=20&lang=zh-CN,{\"headers\":{\"User-Agent\":\"Mozilla/5.0 (Android 11; Mobile; rv:147.0) Gecko/147.0 Firefox/147.0\",\"Accept-Language\":\"zh-CN,zh-TW;q=0.9,zh;q=0.8,en;q=0.6\",\"Referer\":\"https://novel.cooks.tw/\"}}",
    "weight": 0
  },
  {
    "bookSourceComment": "如果是用的官方版阅读，或者低版本阅读，推荐更新阅读以使用新功能，否则很多功能无法使用哦\n软件下载地址：https://legado.gyks.cf\n推荐使用阅读R或者阅读Sigma\n\n\n晴天聚合重构，已适配所有安卓版本阅读\n目前不适配苹果端栖阅(可以正常阅读，发现页无法适配)\n\n更新日志请点击登录，更新书源中查看\n\n基础使用教程：\n1、搜索：\n    1)基础搜索：在发现页长按该书源，点击搜索，直接搜，搜索范围(全部来源小说)\n    2)进阶搜索：在登陆-书源设置中选择指定模式/来源，可搜索指定模式/来源内容\n    3)快捷搜索：使用特殊关键词(x,t,m,d,@)搜索\n         x:书名@来源  如(x:十日终焉@番茄)\n         t:书名@来源  如(t:十日终焉@番茄)\n         m:书名@来源  如(m:十日终焉@番茄)\n         d:书名@来源  如(d:十日终焉@番茄)\n         其中：x表示小说(可省略)，t表示听书，m表示漫画，d表示短剧\n         冒号支持中文英文\n         \n2、发现页：\n    在书源设置中选择指定模式或者单个来源，然后刷新发现页即可\n    \n3、更多使用方式进入书源设置页面应该能一目了然",
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "🔅光遇聚合(26.7.16)",
    "bookSourceType": 0,
    "bookSourceUrl": "光遇聚合",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z0-9-]+(?::\\d+)?\\/detail.*",
    "customButton": false,
    "customOrder": 21,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nlet moreSettings = getVariable('更多设置');\nvar base_url = BaseUrl();\nvar source_type = getVariable('频道') || '男频';\nlet tab = moreSettings && moreSettings['搜索模式'] || '小说';\nlet sources = getVariable(\"发现页来源\") || moreSettings && moreSettings[tab] || '全部';\nlet islyc = checkEnv();\n\nif (islyc != \"苹果\" && islyc != \"安卓\"){\n\ttab = getVariable(\"发现页类型\");\n\t}\n\n\nlet js;\n\njs = getVariable('云端配置');\n//java.longToast(JSON.stringify(js))\nif (!!!js) {\n    getCloudSettings(true);\n    js = getVariable('云端配置');\n }\n\n\nlet source_list = [];\ntry{\nsource_list = js[tab];\n} catch (e) {\n\tjava.longToast(e);\n\t}\n\nlet fqssionid = getFqToken();\nif (!fqssionid && (sources == '番茄' || sources == '全部')) {\n    java.toast('您还未登陆番茄账号，无法同步数据哦！');\n} \nvar fqsjurl = base_url + \"/bookshelf?page={{page}}&ssionid=\" + fqssionid;\nvar fqtjurl = base_url + \"/fqrecommend?page={{page}}&ssionid=\" + fqssionid;\nvar fqlsurl = base_url + \"/fqhistory?page={{page}}&ssionid=\" + fqssionid;\n\n\nvar groupDatas = [];\nvar infoData = [ ];\nif (sources == '番茄' || sources == '全部') {\ninfoData = [{\n        \"title\": \"登录番茄\",\n        \"url\": '{\\{java.startBrowser(\"https://fanqienovel.com/\",\"番茄登录\");}}',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.45\n        }\n    }];\n}\n\nvar hasValidCookie = fqssionid.length > 0;\n\nif (hasValidCookie && (sources == '番茄' || sources == '全部')) {\n    function groupQuery() {\n        try {\n            var url = base_url + \"/group_name?ssionid=\" + fqssionid;\n            var res = java.ajax(url);\n            var response = JSON.parse(res);\n\n            if (!(response && response.data)) {}\n\n            response.data.forEach(function(group) {\n                var keys = Object.keys(group);\n                if (keys.length > 0) {\n                    var key = keys[0];\n                    var value = group[key];\n                    if (value && value.length) {\n                        var option = {\n                            \"method\": \"POST\",\n                            \"body\": {\n                                \"book_ids\": value,\n                                \"page\": \"{{page}}\"\n                            }\n                        };\n                        groupDatas.push({\n                            title: key,\n                            url: base_url + \"/bookshelf,\" + JSON.stringify(option),\n                            style: {\n                                layout_flexGrow: 1,\n                                layout_flexBasisPercent: 0.25\n                            }\n                        });\n                    }\n                }\n            });\n\n            if (groupDatas.length % 2 != 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.25\n                    }\n                });\n            }\n            if (groupDatas.length % 3 != 0) {\n                groupDatas.push({\n                    title: \"--\",\n                    url: \"\",\n                    style: {\n                        layout_flexGrow: 1,\n                        layout_flexBasisPercent: 0.25\n                    }\n                });\n            }\n        } catch (e) {\n            java.longToast(\"番茄登录过期，已隐藏番茄书架\" + fqssionid);\n        }\n    }\n\n    try {\n       java.longToast(\"正在加载番茄分组数据...\");\n        var userUrl = base_url + \"/fquser?ssionid=\" + fqssionid;\n        var userRes = java.ajax(userUrl);\n        var userData = JSON.parse(userRes);\n\n        var userName = (userData && userData.data && userData.data.name) ? userData.data.name : '未知用户';\n        if (!userName.includes('未知用户')) {\n            infoData = [{\n                title: userName+'的番茄',\n                url: '',\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 1\n                }\n            },\n            {\n                title: '番茄书架',\n                url: fqsjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.25\n                }\n            }, \n            {\n                title: \"个性推荐\",\n                url: fqtjurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.25\n                }\n            }, {\n                title: \"历史阅读\",\n                url: fqlsurl,\n                style: {\n                    layout_flexGrow: 1,\n                    layout_flexBasisPercent: 0.25\n                }\n            }];\n        }\n        groupQuery();\n    } catch (e) {\n        java.longToast(\"番茄登录过期，已隐藏番茄书架\");\n    }\n}\n\nvar style_list = [];\ntry {\n    var durl = `${base_url}/discovestyle?source=${sources}&source_type=${source_type}&tab=${tab}`;\n    var res = java.ajax(durl);\n    var result = JSON.parse(res);\n    style_list = result.data || [];\n    if (result.msg) {\n        java.toast(result.msg);\n    }\n} catch (e) {\n    java.toast(\"发现样式获取失败\");\n}\nlet qttoken = getToken();\n//let qtcookie = \"\"\nlet qtop = {\n    method: \"GET\",\n    headers: {\n        cookie: `qttoken=${qttoken}`\n    },\n};\n\n\n\nqtop = JSON.stringify(qtop);\nlet qtsjurl = base_url + '/get_book_shelf,' + qtop;\n\nlet qtsj = [];\n\nif (islyc != \"苹果\" && islyc != \"安卓\") {\n    try {\n        let hostsbk = getVariable('云端配置')['hosts'] || hosts;\n        qtsj.push(createFilter(\n            \"线路\",\n            hostsbk,\n            base_url,\n            \"线路\",\n            1,\n            \"'线路'\"\n        ));\n        qtsj.push(createFilter(\n            \"类型\",\n            [\"小说\", \"听书\", \"短剧\", \"漫画\"],\n            tab,\n            \"发现页类型\",\n            0.4,\n            \"'类型'\"\n        ));\n        qtsj.push(createFilter(\n            \"频道\",\n            [\"男频\", \"女频\"],\n            source_type,\n            \"频道\",\n            0.4,\n            \"'频道'\"\n        ));\n        qtsj.push(createFilter(\n            \"平台\",\n            source_list,\n            sources,\n            \"发现页来源\",\n            1,\n            \"'平台'\"\n        ));\n        let searchKey = getVariable('搜索关键词') || \"\";\n        qtsj.push(createText(\n            '搜索关键词', \n            \"setVariable('搜索关键词',(infoMap['搜索关键词'] || (infoMap.get && infoMap.get('搜索关键词'))))\", \n            searchKey , \n            0.5,\n             \"'搜索书名或作者'\"\n             ));\n             \n  qtsj.push(createButton(\n      '🔍搜索', \n      'exploreSearch()', \n      0.3\n      ));\n\n        qtsj.push({\n        \"title\": \"更新配置\",\n        \"type\": \"button\",\n        \"action\": \"getCloudSettings(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    })\n    qtsj.push({\n        \"title\": \"更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    })\n    qtsj.push({\n        \"title\": \"书源设置\",\n        \"type\": \"button\",\n        \"action\": \"getHtmlSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    })\n       const excludeTitles = ['点击登录可切换来源', '切换后长按刷新即可'];\n       style_list = style_list.filter(item => !excludeTitles.includes(item.title));\n       style_list.forEach(item => {\n  if (item.url && typeof item.url == 'string') {\n    item.url += '&ssionid='+fqssionid;\n  }\n});\n    } catch {}\n} else {\n\tif (islyc == '安卓'){\n\tqtsj.push({\n        \"title\": \"下载阅读Sigma最新测试版\",\n        \"url\": `{\\{java.longToast(\"本书源推荐使用最新版洛娅橙改版阅读Σ\\\\n请安装后重新导入书源\");java.startBrowser(\"https://legado.gyks.cf\",\"下载阅读Sigma最新测试版\");}}`,\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    })}\n\t}\n\nif (qttoken.length > 10) {\nqtsj.push({\n    title: \"晴天书架\",\n    url: qtsjurl,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 1\n    }\n})\n} else {\nqtsj.push({\n    title: \"登录晴天书源\",\n    url: `{\\{java.startBrowser(\"${base_url}/login\",\"登录书源\");}}`,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 1\n    }\n})\n}\n\n\nvar finalData = infoData.concat(groupDatas, style_list);\nfinalData = qtsj.concat(finalData);\nJSON.stringify(finalData);\n</js>",
    "jsLib": "// 当前书源版本号，切勿修改，否则影响更新的识别\nlet localVersion = '26.7.16.1';\n\n// 初始服务器列表\nlet hosts = [\n    'https://v1.gyks.cf',\n    'https://v2.gyks.cf',\n    'https://v3.gyks.cf',\n    'https://v4.gyks.cf',\n    'https://v5.gyks.cf',\n    'https://v6.gyks.cf',\n    'https://v7.gyks.cf',\n    'http://101.35.133.34:8888'\n];\n\n\nfunction isVs (sources) {\n\tlet SOURCES_VIDEO = ['毒舌影视', 'NT动漫'];\n\t return SOURCES_VIDEO.some(src => sources.includes(src));\n\t}\n\n\n\n// 初始化值\nconst defaultConfig = {\n    线路: hosts[0],\n    发现页来源: \"番茄\",\n    发现页类型: \"小说\"\n};\n\n// 获取云端配置\nfunction getCloudSettings(r) {\n    if (r == undefined) r = false;\n    const {\n        java,\n        cache\n    } = this;\n    let c = this.getVariable('云端配置').version;\n    if (r || !c) {\n        java.longToast(`\\n正在更新最新配置`);\n        try {\n            let url = `/static/source_config/config.json`;\n            //\tjava.longToast(url)\n            let js = this.request(url);\n            js = JSON.parse(String(js));\n            let intc = parseInt(c);\n            let intv = parseInt(js['version']);\n            if (intc >= intv) {\n            \t    java.longToast(`\\n已是最新配置：${js['version']}`);\n            \t    return;\n            \t} else if (!intc && intv) {\n            \t\tjava.longToast(`\\n已初始化配置：${intv}`);\n            \t\t} else if (intc < intv || !intc && intv) {\n            java.longToast(`\\n已更新配置：${intc}→${intv}`);\n            } else {\n            java.longToast(`\\n获取配置失败：请切换线路再试试~`);\n            return;\n            }\n            this.setVariable('云端配置', js);\n            \n            return js;\n        } catch (e) {\n            java.longToast(`\\n获取最新配置失败：${e}`);\n        }\n    }\n}\n\n// 统一获取和解析变量\nfunction _getParsedVariable() {\n    const {\n        source,\n        java\n    } = this;\n    let v = source.getVariable();\n    try {\n        return JSON.parse(v);\n    } catch {\n        return defaultConfig;\n    }\n}\n\n// 获取设置变量\nfunction getLoginInfo(k) {\n    const {\n        source,\n        java\n    } = this;\n    let res = source.getLoginInfoMap();\n    if (!res) {\n        res = defaultConfig;\n    }\n    if (res[k] == '❌') {\n        return '0';\n    } else if (res[k] == '✅') {\n        return '1';\n    }\n    return res[k]\n}\n\n// 还原\nfunction deleteVariable() {\n    const {\n        source,\n        java,\n        cache\n    } = this;\n    source.setVariable('');\n    cache.delete('gyksconfig');\n    java.longToast('\\n所有设置已还原到初始化导入状态');\n}\n\n// 获取源变量\nfunction getVariable(k) {\n    if (k == undefined) k = \"\";\n    const { source } = this;\n    let parsed = {}\n    try {\n        parsed = JSON.parse(source.getVariable());\n    } catch {}\n    if (k == \"\") {\n        return parsed;\n    }\n    let value = parsed[k];\n    if (value == undefined) {\n        value = defaultConfig[k];\n    }\n    return value != undefined ? value : \"\";\n}\n\n// 设置源变量\nfunction setVariable(k, v, t) {\n    if (t == undefined) t = true;\n    const {\n        source,\n        java\n    } = this;\n    const vs = this.getVariable();\n    vs[k] = v;\n    source.setVariable(JSON.stringify(vs, null, 4));\n    if (k != '云端配置' && t && k!='搜索关键词') {\n        java.toast(`\\n设置 ${k} 为 ${v}`)\n    }\n}\n\n// 获取正在使用的线路\nfunction BaseUrl() {\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    let h = this.getVariable(\"线路\");\n    if (!h || String(h) == \"undefind\") {\n        h = hostsbk[0]\n    }\n    return h;\n}\n\n// 切换线路\nfunction switchToNextLine(toast) {\n    if (toast == undefined) toast = false;\n    const currentLine = this.BaseUrl();\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    let currentIndex = hostsbk.findIndex(item => item == currentLine);\n    let nextIndex = (currentIndex + 1) % hostsbk.length;\n    const nextLine = hostsbk[nextIndex];\n    this.setVariable(\"线路\", nextLine,false);\n    let switchToast = this.getVariable(\"切换提醒\") || \"false\";\n    if (toast && switchToast  == \"true\") {\n        this.java.longToast(`\\n${toast}\\n自动切换到:${nextLine}`)\n    }\n    return nextLine;\n}\n\n\n// 备用设置方案\nfunction ste(v) {\n    const {\n        java\n    } = this;\n    let moreSettings = this.getVariable(\"更多设置\") || {};\n    let paraSettings = this.getVariable(\"段评设置\") || {};\n    if (v==\"段评\"){\n        if (paraSettings[\"段评开关\"] != \"false\"){\n            paraSettings[\"段评开关\"]= \"false\";\n            java.longToast(\"\\n❌段评已关闭\");\n        }else{\n            paraSettings[\"段评开关\"]= \"true\";\n            java.longToast(\"\\n✅段评已开启\");\n        }\n    }\n    if (v==\"小说\" || v==\"听书\" || v==\"漫画\" || v==\"短剧\"){\n        moreSettings[\"搜索模式\"]=v;\n        java.longToast(`\\n已设置搜索模式为 ${v}`);\n    }\n    if (v==\"图片\"){\n        if (moreSettings[\"显示图片\"] != \"false\"){\n            moreSettings[\"显示图片\"]= \"false\";\n            java.longToast(\"\\n❌已关闭图片显示\");\n        }else{\n            moreSettings[\"显示图片\"]= \"true\";\n            java.longToast(\"\\n✅已开启图片显示\");\n        }\n    }\n    if (v==\"简介\"){\n        if (moreSettings[\"完整简介\"] != \"false\"){\n            moreSettings[\"完整简介\"]= \"false\";\n            java.longToast(\"\\n❌已关闭完整简介\");\n        }else{\n            moreSettings[\"完整简介\"]= \"true\";\n            java.longToast(\"\\n✅已开启完整简介\");\n        }\n    }\n    if (v==\"同步\"){\n        if (moreSettings[\"同步书架\"] != \"false\"){\n            moreSettings[\"同步书架\"]= \"false\";\n            java.longToast(\"\\n❌已关闭同步书架\");\n        }else{\n            moreSettings[\"同步书架\"]= \"true\";\n            java.longToast(\"\\n✅已开启同步书架\");\n        }\n    }\n    if (v==\"强制\"){\n        if (moreSettings[\"强制搜索\"] != \"false\"){\n            moreSettings[\"强制搜索\"]= \"false\";\n            java.longToast(\"\\n❌已关闭强制搜索\");\n        }else{\n            moreSettings[\"强制搜索\"]= \"true\";\n            java.longToast(\"\\n✅已开启强制搜索\");\n        }\n    }\n    if (v==\"目录\"){\n        if (moreSettings[\"目录显示来源\"] != \"false\"){\n            moreSettings[\"目录显示来源\"]= \"false\";\n            java.longToast(\"\\n❌已关闭目录显示来源\");\n        }else{\n            moreSettings[\"目录显示来源\"]= \"true\";\n            java.longToast(\"\\n✅已开启目录显示来源\");\n        }\n    }\n    if (v==\"网络\"){\n        if (moreSettings[\"网络模式\"] != \"服务器\"){\n            moreSettings[\"网络模式\"]= \"服务器\";\n            java.longToast(\"\\n已切换为 服务器 模式\");\n        }else{\n            moreSettings[\"网络模式\"]= \"本地\";\n            java.longToast(\"\\n已切换为 本地 模式\");\n        }\n    }\n    this.setVariable(\"更多设置\", moreSettings, false);\n    this.setVariable(\"段评设置\", paraSettings, false);\n}\n\nfunction parseBadMap(str) {\n    str = str\n        .replace(/^{|}$/g, '');\n\n    const result = {};\n\n    str.split(',').forEach(item => {\n        const parts = item.split('=');\n\n        if (parts.length === 2) {\n            const key = parts[0].trim();\n            const value = parts[1].trim();\n\n            result[key] = value;\n        }\n    });\n\n    return result;\n}\n\nfunction findItemIndex(data, item_id) {\n    if (!data || !Array.isArray(data)) {\n        return 0;\n    }\n    for (let i = 0; i < data.length; i++) {\n        if (data[i] && data[i].item_id == item_id) {\n            return i;\n        }\n    }\n    return 0;\n}\n\n// 判断当前环境\nfunction checkEnv() {\n    const {\n        java,\n        source\n    } = this;\n\n    try {\n        java.qread();\n        return \"轻阅读\";\n    } catch (e) {}\n\n    try {\n        if (typeof java.reLoginView == 'function') {\n            return \"改版\";\n        }\n        new Packages.io.legato.kazusa.utils.TimeoutCancellationException('');\n        return \"改版\";\n    } catch (e) {}\n    try {\n        java.deviceID();\n        return \"苹果\";\n    } catch (e) {}\n\n    if (typeof source.loginUi == 'function') {\n        return \"安卓\";\n    }\n\n    return \"改版\";\n}\n\n// 获取番茄token\nfunction getFqToken() {\n    const {\n        java,\n        cookie\n    } = this;\n\n    try {\n        let cookieValue = String(cookie.getCookie('fanqienovel.com')) || String(java.getCookie('fanqienovel.com'));\n        let parts = cookieValue.split(\";\");\n        for (let part of parts) {\n            if (part.includes(\"sessionid\")) {\n                return part.split(\"=\")[1];\n            }\n        }\n    } catch {}\n    return \"\";\n}\n\n// 获取登陆token\nfunction getToken() {\n    const {\n        java,\n        cookie\n    } = this;\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    try {\n        for (let h of hostsbk) {\n            let cookieValue = String(cookie.getCookie(h)) || String(java.getCookie(h));\n            let parts = cookieValue.split(\";\");\n            for (let part of parts) {\n                if (part.includes(\"qttoken\")) {\n                    return part.split(\"=\")[1];\n                }\n            }\n        }\n    } catch {}\n    return \"\";\n}\n\n// 移除ck\nfunction removeAllCookies() {\n    const {\n        java,\n        cookie\n    } = this;\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    for (let h of hostsbk) {\n        cookie.removeCookie(h);\n    }\n    cookie.removeCookie('fanqienovel.com');\n    java.toast('\\n已退出登陆')\n}\n\n// 设置ck\nfunction setAllCookies(ck) {\n    const {\n        cookie\n    } = this;\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    for (let h of hostsbk) {\n        cookie.setCookie(h, ck);\n    }\n}\n\n// 请求封装\nfunction request(url, method, body, req, index) {\n    if (method == undefined) method = 'GET';\n    if (body == undefined) body = {};\n    if (req == undefined) req = true;\n    if (index == undefined) index = 0;\n\n    let urla = url;\n    if (!url.includes('http')) {\n        urla = this.BaseUrl() + url;\n    }\n\n    const { java } = this;\n    let device = '';\n    try {\n        device = java.androidId();\n    } catch {\n        try {\n            device = java.deviceID();\n        } catch {}\n    }\n\n    let qttoken = this.getToken();\n    let options = {\n        method: method,\n        headers: {\n            'cookie': `qttoken=${qttoken};deviceId=${device};`,\n            'Content-Type': 'application/json'\n        },\n        body: JSON.stringify(body)\n    };\n\n    urla = `${urla},${JSON.stringify(options)}`;\n    java.log(urla);\n\n    if (!req) {\n        return urla;\n    }\n\n    const startTime = new Date().getTime();\n\n    let data;\n    let requestTimedOut = false;\n    let requestFailed = false;\n\n    try {\n        data = java.ajax(urla);\n        JSON.parse(data);\n    } catch (error) {\n        requestFailed = true;\n    } finally {\n        const endTime = new Date().getTime();\n        const duration = endTime - startTime;\n        let timeout = this.getVariable('超时时间') || '10';\n        timeout = parseInt(timeout)*1000\n        if (!requestFailed && duration > timeout ) {\n            requestTimedOut = true;\n        }\n    }\n    if (requestTimedOut) {\n        let timeoutSwitch = this.getVariable('超时自动切换') || 'true';\n        if (timeoutSwitch!= \"false\") {\n             java.log('检测到当前线路较慢，已切换线路');\n            this.switchToNextLine('⚠️当前线路较慢');\n        }\n        return data;\n    }\n    if (requestFailed) {\n        java.log('线路报错，自动切换下一个');\n        let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n        let autoSwitch = this.getVariable('自动切换') || 'true';\n\n        if (hostsbk.length > index && autoSwitch != \"false\") {\n            this.switchToNextLine('❌线路报错');\n            return this.request(url, method, body, req, index + 1);\n        } else {\n            return \"\";\n        }\n    }\n    return data;\n}\n\nfunction parseJsonSafely(str, defaultValue) {\n    if (defaultValue == null) defaultValue = null;\n    try {\n        return JSON.parse(str);\n    } catch (e) {\n        return defaultValue;\n    }\n}\n\n\n//去除图片\nfunction removeAllImgTags(htmlString) {\n    const imgTagRegex = /<img\\b[^>]*>|<\\/img>|<img\\b[^>]*\\/>/gi;\n    return htmlString.replace(imgTagRegex, '');\n}\n\n// 段评气泡生成\nfunction paraForAndroid(content, sources) {\n    let {\n        java,\n        cache,\n        source\n    } = this;\n    const createSvg = this.createSvg.bind(this);\n    const createGod = this.createGod.bind(this);\n     content = content.replace(\n        /<p><img ident=\"([^\"]*)\" src=\"([^\"]*)\"\\s*\\/><\\/p>/g,\n        (match, ident, src) => {\n            return `<p>${createGod(ident, src)}</p>`;\n        }\n    );\n    \n\n    return content.replace(/<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        (match, text, url, count) => {\n            if (url && count) {\n                const click = 0;\n                cache.putMemory(url, click);\n                const encodedUrl = url;\n                return `<p>${text}<img src=\"${createSvg(count, encodedUrl,sources)}\"></p>`;\n            } else {\n                return `<p>${text}</p>`;\n            }\n        }\n    );\n}\n// 创建神评论\nfunction createGod(url,svg) {\n    var jc = 'js';\n    let islyc = this.checkEnv()\n    if (islyc == \"改版\") {\n        jc = 'click'\n    }\n   let cz= `{\"${jc}\":\"showCmt('${url}','段评' )\",\"style\":\"FULL\"}`\n\tlet img = `<img src=\"${svg},${cz}\">`\n\treturn img\n\t}\n\nlet svgs = [\n    \"<svg t='1760002253572' class='icon' viewBox='-150 0 1224 1224' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='1490' width='800' height='800'><g transform='rotate(90 512 512) scale(1 1.2)'><path d='M224 149.333333h576c40.533333 0 74.666667 34.133333 74.666667 74.666667v460.8c0 40.533333-34.133333 74.666667-74.666667 74.666667h-108.8c-40.533333 0-78.933333 17.066667-104.533334 46.933333l-49.066666 55.466667c-4.266667 6.4-14.933333 10.666667-23.466667 10.666667-10.666667 0-19.2-4.266667-25.6-10.666667l-46.933333-55.466667c-25.6-29.866667-64-46.933333-104.533334-46.933333h-110.933333c-40.533333 0-74.666667-34.133333-74.666667-74.666667V224c0-40.533333 34.133333-74.666667 74.666667-74.666667z' fill='$tccolor' p-id='1529'></path><path d='M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z' fill='$color' p-id='1530'></path> </g><text x='460' y='650' font-family='Arial, sans-serif' text-anchor='middle' font-size='400' fill='$fontcolor'>$displayText</text></svg>\",\n\n    \"<svg xmlns='http://www.w3.org/2000/svg' width='100' height='90' viewBox='0 0 25 17' fill='none' style='color: $color; opacity: 1;'><path stroke='currentColor' stroke-width='1.00' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='4.00' style='stroke: $color; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: $tccolor; fill-opacity: 0.5;' d='M 7.5 0.5 L 16.5 0.5 A 7 7 0 0 1 23.5 7.5 L 23.5 7.5 A 7 7 0 0 1 16.5 14.5 L 8.5 14.5 L 5.192 16.5 L 5.5 14.5 A 7 7 30 0 1 0.5 7.5 L 0.5 7.5 A 7 7 0 0 1 7.5 0.5 Z'/><text fill='$fontcolor' font-family='Arial, sans-serif' font-size='10' font-weight='500' text-anchor='middle' dy='0.35em' x='12.00' y='7.50'>$displayText</text></svg>\",\n\n    \"<svg xmlns='http://www.w3.org/2000/svg' width='100' height='90' viewBox='0 0 25 17' fill='none' style='color: $color; opacity: 1;'><path d='M24 14.5v-12a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v7.528a2 2 0 0 1-.211.894l-2.065 4.13a1 1 0 0 0 .894 1.448H22a2 2 0 0 0 2-2z' stroke='currentColor' style='stroke: $color; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: $tccolor; fill-opacity: 0.5;'></path><text x='13.5' y='12' text-anchor='middle' alignment-baseline='auto' font-size='10' fill='currentColor' font-family='Arial, sans-serif' font-weight='500' style='fill: $fontcolor; opacity: 1;'>$displayText</text></svg>\",\n\n\n\n    \"<svg xmlns='http://www.w3.org/2000/svg' width='100' height='90' viewBox='6 10 88 76' style='color: $color; opacity: 1;'><path d='M12,12 L88,12 Q92,12 92,16 L92,68 Q92,72 88,72 L28,72 L12,84 L12,72 Q8,72 8,68 L8,16 Q8,12 12,12 Z' stroke='currentColor' stroke-width='4' stroke-linejoin='round' style='stroke: $color; stroke-opacity: 0.5; stroke-width: 2.5px; stroke-linejoin: round; fill: $tccolor; fill-opacity: 0.5;'></path><text x='50' y='60' font-family='Arial, sans-serif' text-anchor='middle' font-size='45' fill='currentColor' font-weight='500' alignment-baseline='auto' style='fill: $fontcolor; opacity: 1;'>$displayText</text></svg>\",\n\n\n\n    \"<svg xmlns='http://www.w3.org/2000/svg' width='100' height='90' viewBox='0 0 25 17' fill='none' style='color: $color; opacity: 1;'><rect x='0.5' y='0.5' width='24' height='16' rx='2.5' ry='2.5' stroke='currentColor' style='stroke: $color; stroke-opacity: 0.5; stroke-width: 1px; stroke-linejoin: round; fill: $tccolor; fill-opacity: 0.5;'></rect><text x='12.5' y='12' text-anchor='middle' alignment-baseline='auto' font-size='10' fill='currentColor' font-family='Arial, sans-serif' font-weight='500' style='fill: $fontcolor; opacity: 1;'>$displayText</text></svg>\",\n\n\n\n\n     `<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 216 200'>\n  <path fill='#802622' d='M110 0h14l1 1h8v1h4v1h4v1h4v1h3v1h2l1 1h2l1 1h1l1 1h2v1h2v1h2v1h2v1h1v1h2v1h2v1h1v1h1l1 1h1v1h1v1h2v1h1v1h1l1 1v1h2v1h1v1h1v1l1 1h1v1h1v1h1v1h1v2h1v1h1v1h1v1h1v1h1v2h1v1h1v1l1 1v1h1v2h1v1h1v2h1v1l1 1v1l1 1v1h1v2h1v2h1v2h1v3h1v2h1v3a5 5 0 0 0 1 2h1v1h-1v4h1v4h1v5h1v8h1v18h-1v7h-1v5h-1v2h-1l-1 2v3h-1v2l-1 1v3h-1v2h-1v2h-1v2h-1v2h-1v2h-1v2h-1v1l-1 1v1h-1v2h-1v1l-1 1v1h-1v1h-1v1h-1v2h-1l-1 1v1h-1v1h-1v1h-1v1h-1v1h-1v1h-1v1l-1 1h-1v1h-1l-1 1h-1 1v-1h1v-1h1v-1h1a1 1 0 0 1 0-1 2 2 0 0 1 1-1h1v-2h1v-1h1v-1h1v-1h1v-1l1-1v-1h1v-1h1v-1l1-1h1v-2h1v-1l1-1v-1h1v-1l1-1v-1h1v-2h1v-1l1-1v-2h1v-2h1v-2h1v-2h1v-3h1v-5h1v-4l1-1v-6h1v-11h1v-2h-1v-1h1v-1h-1 1v-2h-1v-7h-1v24h-1v3h-1v1h-1v4h-1v4h-1v3h-1v2h-1v3l-1 1v1h-1v2l-1 1-1 2v1h-1v1h-1v2h-1v2h-1v1h-1v2h-1v1h-1v1h-1v1h-1v2h-1v1h-2v2h-1l-1 1v1h-2v1h-1v1h-1v1h-1v1h-1l-1 1-1 1h-2v1h-1v-1h1v-1h2v-1h1v-1h1v-1h1v-1h1v-1h1v-1l1-1h1v-1h1v-1h1v-1h1v-1h1v-1h1v-1h1v-1h1v-1l1-1v-1h1v-1h1v-2l1-1v-1h1v-1h1v-2l1-1v-1h1v-2l1-1v-1h1l-1-1h1v-2h1v-2l1-1v-3h1v-3l1-1v-3h1v-4l1-1v-10h1V98h-1v-9h-1v-4l-1-1v-4l-1-1v-4h-1v-3h-1a6 6 0 0 0 0-3h-1v-1l-1-1v-2h-1v-2h-1v-1h-1v-2h-1v-1h-1v-1l-1-1v-1h-2v-1 2a2 2 0 0 1-1-1v-2h-1v-1h-1v-2h-1v-1l-1-1-1-1v-1h-1v-1h-1v-1h-1v-1h-1v-1h-1v-1l-1-1h-1v-1l-1-1h-1v-1h-1v-1h-1v-1h-1v-1h-1l-1-1v-1h-2v-1h-1v-1h-1v-1h-2v-1a1 1 0 0 1-1 0v-1h-2v-1h-1l-1-1h-1v-1h-2v-1h-2v-1h-2v-1h-1v-1h-4v-1h-1v-1h-2l-1-1h-2v-1h-5v-1a1 1 0 0 1-1-1v1h-1v-1 1h-2l-1-1h-3v-1h-23 1-2v1h-1v-1h-2v1h-4v1h-2v2l1-1h4v-1h4v-1h23v1h6v1h4v1h4v1h3v1h3v1h2l1 1h2l1 1 1 1h1v1h1l2 1h2v1h1v1-1 1h2v1h1v1h2v1h1v1h1v1h1v1h1v1h1l1 1h1v1h1v2h1l1 1 1 1v1h1v1h1v1h1v2l1 1v1h1v1h1v1h1v1h1v2l1 1v1h1v2h1v1l1 1v1h1v2l1 1v2h1v2h1v1l1 2v3h1v4l1 1v5h1v9l1 1v6h-1v8h-1v1-16h-1v-2h1v-2h-1v-5h-1v-4h-1v-3l-1-1v-3a2 2 0 0 1-1-1v-2l-1-1v-1h-1v-3h-1v-1h-1v-2l-1-1v3h1v3h1v4h1v3l1 1v3h1v5h1v25h-1v6h-1v4l-1 1v2h-1v2h-1v3h-1v2h-1v2l-1 1v1h-1v2h-1v2h-1v2h-1v1h-1v2l-1 1-1 1v1h-1v1h-1v2h-1l-1 1v1h-1v1h-1v1h-1v1h-1v1l-1 1-1 1h-1v1h-1v1h-1v1h-1l-1 1h-1v1h-1v-1h1v-1h1v-1l1-1h1v-1l2-1v-1h1v-1l1-1v-1h1v-1h1v-1h1v-2h1v-1l1-1v-1h1v-1l1-1v-2h1v-2h1v-1l1-1v-1h1v-3h1v-2h1v-1h1v-2l1-1v-2h1v-3h1v-5h1v-5h1v5-21h-1v-6h-1v-5h-1v-3h-1v-3h-1v-2h-1v-3h-1v-1l-1-1v-2h-1v-1l-1-3h-1v-1h-1a1 1 0 0 1 0-1v-1h-1v-2h-1v-1h-1v-1l-1-1v-1h-1v-1h-1v-1h-1v-1h-1v-1h-1v-1h-1v-1h-1v-1l-1-1v-1h-2v-1h-1v-1h-1v-1h-1l-1-1h-1v-1h-1v-1h-1l-1-1h-1v-1h-2v-1h-2v-1h-1v-1h-2a2 2 0 0 0-1-1h-1v-1h-2l-1-1h-2v-1h-3v-1h-2l-2-1h-2v-1h-5v-1h-2 3-22v1h-5v1h-4v1h-2l-2 1h-2v1h-2l-1 1h-2v1h-1l-1 1h-1v1h-2v1h-1l-1 1h-1v1h-1l-1 1h-1v1h-1v1h-1l-1 1-1 1-1 1h-1v1h-1v1h-1v1h-1v1h-1v1h-1v2h-1v1h-1v1h-1v1h-1v2h-1v1h-1v1h-1v2h-1v1l-1 1v1h-1v2h-1v2h-1v2h-1v3h-1v3h-1v3l-1 1v3l-1 1v6h-1v12h1v5l1 3v3h1v4h1v3h1v3h1v3h1v2l1 1v1h1v2l1 2v1h1v1l1 1v1h1v1h1v2h1v1h1v2h1v1h1v1h1v1h1v2h1v1h1l1 1h1v1h1v1l1 1h1v1h2v1h1v1h1v1h2v1h2v1h1v1h1v1h2v1h7v1h1v2h1v2h-4l-3-1v1h1a3 3 0 0 1 2 1h1v1-1 1h1v-1h1v2h5v1h1v1h1v1h2v1h-2l1 1v1h-1 1v3h-1v2h-2 1v1h1v1h-1v2h-1 1v3h-1l-1 1h-1v1h-3v1h-2v-1h-1l-1-1h-1v-1 1h-5v1h-4v-1l-1-1h-1v1h-2v-1h-1v-1h-1v2h2v1h2v1h2l1 1h2v1h1v1h2v1h1v1h5v1h1v1h1v1l-1 1h-4v-1h-2v-1h-3v-1h-5v-1h-1v-1h-1v1h-1a1 1 0 0 1 0-1l1-1h1-1v-1h-2a2 2 0 0 0-1-1h-1v-1h-2v-1h-2v-1h-3v-1h-1v-1h-2v-1h-1v-1h-1v-1h-2v-1h-2v-1h-1v-1h-1v-1h-1v-1h-2v-1a2 2 0 0 1-1-1h-1v-1h-1v-1h-1v-1h-1v-1h-1l-1-1v-1h-1v-1h-1v-1h-1a1 1 0 0 1 0-1h-1v-1l-1-1-1-1v-1h-1v-1h-1v-1h-1v-1h-1v-2h-1v-1h-1v-1l-1-1v-1h-1v-2h-1v-1h-1v-2h-1v-1l-1-1v-1h-1v-2h-1v-1h-2v-2a1 1 0 0 1-1 0v-2h-1v-1h-1l-1 1v1h-1v-1h-1l-1-2h1v-5h-1v-4a2 2 0 0 1-1-1v-3H9v-3a2 2 0 0 1-1-1v-2H7v-3H6v-7H5v-1h1v-1h1v-5l-1-2v-7l1-2v-6h1v-1H7h2v1H8v8H7v9h1V91h1v-7h1v-4h1v-1a3 3 0 0 1 0-2h-1v-1h1l1-1-1-1h1v-2h1v-3h1v-6h1v-2h1v-1 1-1h1-1v-1h1v-1h1v-1h-1v-1h1v-1h1-1v-1h1v-2h1v-2h1v-1h-1v2h-1v1h-1v2h-1v-1l1-1v-2h1v-1h1v-1l1-1v-2h1v-1h1v-3h1v-1h2v-1h1v-1h1v-2h1v-1h1v-1h1v-2h1l1-1v-1h1v-1h1v-2h1v-1h1v-1h1v-1h1v-1h1v-1h1v-1h1l1-1h1v-1h1v-1h1v-1h1v-1h1l1-1h1v-1h1l1-1 1-1v1-1h1V8h2V7h1l1-1h1V5h2V4h1l1-1h2V2h2V1h2V0h1v1h-1l-1 1h-1v1h-2v1h-3v1h-1v1h-2v1h-1v1h-2v1h-2v1h-1v1h-1l-1 1-1 1h-1l-1 1h-1v1h-1v1h-1v1h-1v1h-1v1h-1l-1 1h-1v2h-1l-1 1v1h-2v1h-1v2h-1v1h-1v1h-1v1h-1v1l-1 1v1h-1v1h-1v1l-1 1v1h-1v2h-1v1h-1v2h-1v1h1v1h-1v1l-1 1h-1v1h-1v2l-1 1v2h-1v2h-1v2h-1v2h-1v3h-1v3h-1v3h-1v2l-1 1v3h-1v4H9v6H8v6H7v11-5h1v-3l1-2v-3h1v-4h1v-5l1-1v-3h1v-4h1v-3h1v-3h1v-3l1-2h1v-3h1v-1l1-1v-2h1v-1h1v-2h1v-1h1v-1l1-1v-1l1-1v-1h1v-1h1v-1h1v-1h1v-2h1v-1h1v-1h1v-1h1v-1h1v-2h1v-1h1l1-1h1v-1l1-1 1-1h1v-1h1v-1h1v-1h1v-1h1v-1h2v-1h1v-1h1v-1h2v-1h1l1-1v-1h2v-1h1l1-1h1v-1h2v-1h2v-1h2v-1h1l2-1h1V8h2V7h3V6h3V4h6V3h4V2h4l1-1h7V0h8z'/>\n      <text x=\"115\" y=\"130\" font-family=\"Arial, sans-serif\"  text-anchor=\"middle\" font-size=\"80\" font-weight=\"700\" fill='#802632'>$displayText</text>\n</svg>`\n];\n\n\n// 创建svg\nfunction createSvg(number, encodedUrl, sources) {\n    var displayText = number > 99 ? \"99+\" : number.toString();\n    let data = this.getVariable('段评设置');\n    let svgstyle = data['段评样式'] || \"0\";\n    let color = data['段评边框颜色'] || \"#A7A7A7\";\n    let tccolor = data['段评填充颜色'] || \"transparent\";\n    let fontcolor = data['段评字体颜色'] || \"#A7A7A7\";\n    let zdy = svgs[0];\n    try {\n        zdy = data['自定义段评样式'][svgstyle] || svgs[0];\n    } catch {}\n    const styleMap = {\n        \"0\": svgs[0],\n        \"1\": svgs[1],\n        \"2\": svgs[2],\n        \"3\": svgs[3],\n        \"4\": svgs[4],\n        \"5\": svgs[5],\n    };\n    let svg = styleMap[svgstyle] || zdy;\n    svg = svg.replace('$color', color)\n        .replace('$tccolor', tccolor)\n        .replace('$fontcolor', fontcolor)\n        .replace('$displayText', displayText);\n    var jc = 'js';\n    let islyc = this.checkEnv()\n    if (islyc == \"改版\") {\n        jc = 'click'\n    }\n    let style = data['气泡增大'] == \"true\" ? 'TEXT' : 'text';\n    var encodedSvg = this.java.base64Encode(svg);\n    return `data:image/svg+xml;base64,${encodedSvg},{\"${jc}\":\"showCmt('${encodedUrl}', '${sources}' ,'段评')\",\"style\":\"${style}\"}`;\n}\n\n\n\n\n// 显示弹窗\nfunction showCmt(url, sources,ident) {\n    let {\n        java,\n        cache\n    } = this;\n    if (ident == null) ident = '段评';\n    const currentTime = Date.now();\n    const click = cache.getFromMemory(url);\n    let islyc = this.checkEnv()\n    if (click < 1 && islyc == \"安卓\") {\n        cache.putMemory(url, click + 1);\n        return;\n    } else {\n        if (islyc == \"轻阅读\") {\n            java.startBrowserDp(url, sources + ident);\n        } else if (islyc == \"改版\") {\n            let paradata = new Date().toLocaleDateString();\n            let htmlContent = cache.get(paradata+ident+\"new\");\n            if (!htmlContent || String(htmlContent).indexOf(\"评论\") == -1) {\n                java.longToast(`\\n${paradata} 初始化${ident}页面,请稍等~`);\n                try {\n                    htmlContent = java.ajax(url);\n                } catch {\n\n                }\n\n                cache.put(paradata+ident+\"new\", htmlContent);\n                java.longToast(`\\n${paradata} 初始化${ident}页面成功~`);\n            }\n            java.showBrowser(\n                url,\n                htmlContent,\n                `window.java=java;`,\n                JSON.stringify({\n                    \"expandedCornersRadius\": 20,\n                    \"dismissOnTouchOutside\": true,\n                    \"isDraggable\": true,\n                    \"shouldDimBackground\": true,\n                    \"backgroundDimAmount\": 0.5,\n                    \"hardwareAccelerated\": true,\n                    \"isNestedScrollingEnabled\": true,\n                    \"isGestureInsetBottomIgnored\": true,\n                    \"setFitToContents\": true,\n                    \"isHideable\": true,\n                    \"heightPercentage\": 0.8\n                })\n            );\n        } else {\n            java.startBrowser(url, sources + ident);\n        }\n    }\n}\n\n//源阅段评\nfunction paraForiOS(html, sources) {\n\t   let result = html.replace(\n        /<p><img ident=\"([^\"]*)\" src=\"([^\"]*)\"\\s*\\/><\\/p>/g,\n        (match, ident, src) => {\n            return `<div rs-native>${createGod(ident, src)}</div>`;\n        }\n    );\n    result = result.replace(\n        /<p>(.*?)(?:<comment ident=\"([^\"]*)\" count=\"([^\"]*)\" \\/>)?<\\/p>/g,\n        function(match, text, url, count) {\n            if (url && count) {\n                const encodedUrl = url.replace(/&/g, '&amp;');\n                let displayCount = count;\n                const numCount = Number(count);\n                if (!isNaN(numCount) && numCount > 99) {\n                    displayCount = '99';\n                }\n                return `<div rs-native>${text}<comment count=\"${displayCount}\" onPress=\"java.showReadingBrowser('${encodedUrl}','${sources}段评')\"></div>`;\n            } else {\n                return `<div rs-native>${text}</div>`;\n            }\n        }\n    );\n    return result.replace(/&#34;/g, '\"');\n}\n\n\nfunction endclick(url) {\n    var jc = 'js';\n    let islyc = this.checkEnv()\n    if (islyc == \"改版\") {\n        jc = 'click'\n    }\n   return `\"${jc}\":\"showCmt('${url}','番茄','本章说' )\"`\n}\n\n\n//按钮切换时改变源变量并刷新发现\nfunction show(m, t) {\n    const {\n        java,\n        source\n    } = this;\n    let data = {};\n    try {\n        data = JSON.parse(source.getVariable())\n    } catch {}\n    data[t] = m;\n    if (t == \"发现页类型\") {\n        data[\"发现页来源\"] = '番茄';\n    }\n    source.setVariable(JSON.stringify(data, null, 2));\n    java.refreshExplore();\n}\n\nfunction createFilter(title, chars, defaultVal, paramKey, size, viewName) {\n    if (viewName == undefined) viewName = \"'请选择类型'\";\n    return {\n        title: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        \"viewName\": viewName,\n        action: `show(infoMap['${title}'],'${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}\n\nfunction createLoginFilter(title, chars, defaultVal, paramKey, size, viewName) {\n    const {\n        source,\n        java\n    } = this;\n    if (viewName == undefined) viewName = \"'请选择类型'\";\n    \n    let loginMap = source.getLoginInfoMap();\n    //java.longToast(loginMap);\n    return {\n        name: title,\n        type: \"select\",\n        chars: chars,\n        default: defaultVal,\n        \"viewName\": viewName,\n        action: `show('${loginMap[title]}','${paramKey}')`,\n        style: {\n            layout_flexGrow: 1,\n            layout_flexBasisPercent: size\n        }\n    };\n}\n\nfunction createText(title, action, defaultValue, size, viewName) {\n    return {\n      title: title,\n      type: 'text',\n      default: defaultValue || '',\n      action: action,\n      viewName: viewName || title,\n      style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: size\n      }\n    };\n  }\nfunction createButton(title, action, size) {\n    return {\n      title: title,\n      type: 'button',\n      action: action,\n      style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: size\n      }\n    };\n  }\n\nfunction exploreSearch() {\n  let {java,source} = this;\n  var key = this.getVariable('搜索关键词');\n  var tab = this.getVariable('发现页类型') || '小说';\n  var sources = this.getVariable('发现页来源') || '全部';\n  if (!key) {\n    try { java.toast('请输入搜索关键词'); } catch (e) {}\n    return;\n  }\n  if (['t:', 'x:', 'd:', 'm:', 't：', 'x：', 'd：', 'm：'].some(p => key.startsWith(p))) {\n  tab = '';\n}\nif(key.includes('@')) {\n\tsources=\"\";\n\t} else {\n\t\tsources = `@${sources}`\n\t\t}\n  var tabMap = {\n  \t'小说':'x:',\n  \t'漫画':'m:',\n  \t'听书':'t:',\n  \t'短剧':'d:',\n  \t'':''\n  \t}\n  key = `${tabMap[tab]}${key}${sources}`;\n  try {\n    java.searchBook(key, source);\n  } catch (e1) {\n    try { java.open('search', key); } catch (e2) { try { java.toast('搜索失败'); } catch (e3) {} }\n  }\n  java.refreshExplore();\n}\n\n// 书源更新\nfunction renderVersionPage() {\n    let {\n        java\n    } = this;\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    let yd = '';\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>书源更新</title>\n  <!-- Font Awesome 图标库 -->\n  <link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\" />\n  <style>\n    :root {\n      --primary-gradient: linear-gradient(135deg, #4e6ef2, #6b2dd8);\n      --latest-gradient: linear-gradient(135deg, #8e2de2 0%, #4a00e0 50%, #d4af37 100%);\n      --success-color: #28c76f;\n      --warning-color: #ff9f43;\n      --error-color: #ea5455;\n      --text-main: #1f2937;\n      --text-secondary: #6b7280;\n      --card-bg: #ffffff;\n      --border-color: #e5e7eb;\n      --light-bg: #f9fafb;\n      --shadow: 0 4px 12px rgba(78, 110, 242, 0.1);\n      --shadow-hover: 0 6px 18px rgba(78, 110, 242, 0.2);\n      --glow-shadow: 0 0 25px rgba(142, 45, 226, 0.5), 0 0 50px rgba(212, 175, 55, 0.3);\n      --modal-bg: rgba(31, 41, 55, 0.8);\n      --modal-content-bg: #ffffff;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n      font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n    }\n\n    body {\n      background: linear-gradient(135deg, #eef2ff, #f5f7ff);\n      color: var(--text-main);\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 16px;\n    }\n\n    /* 加载动画 */\n    .loading-wrapper {\n      text-align: center;\n      animation: fadeIn 0.3s ease;\n    }\n\n    .loading-spinner {\n      width: 50px;\n      height: 50px;\n      border: 4px solid rgba(78, 110, 242, 0.3);\n      border-top-color: #4e6ef2;\n      border-radius: 50%;\n      margin: 0 auto 20px;\n      animation: spin 1s linear infinite;\n    }\n\n    .loading-text {\n      color: var(--text-main);\n      font-size: 16px;\n      font-weight: 500;\n    }\n\n    @keyframes spin {\n      to { transform: rotate(360deg); }\n    }\n\n    @keyframes fadeIn {\n      from { opacity: 0; transform: translateY(20px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes slideIn {\n      from { opacity: 0; transform: translateY(30px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n\n    @keyframes pulse {\n      0%, 100% { opacity: 1; }\n      50% { opacity: 0.7; }\n    }\n\n    @keyframes gradientAnimation {\n      0% { background-position: 0% 50%; }\n      50% { background-position: 100% 50%; }\n      100% { background-position: 0% 50%; }\n    }\n\n    @keyframes breathe {\n      0%, 100% { \n        transform: scale(1);\n        box-shadow: var(--glow-shadow), var(--shadow);\n      }\n      50% { \n        transform: scale(1.02);\n        box-shadow: 0 0 30px rgba(142, 45, 226, 0.6), 0 0 60px rgba(212, 175, 55, 0.4), var(--shadow);\n      }\n    }\n\n    @keyframes shimmer {\n      0% {\n        background-position: -200% center;\n      }\n      100% {\n        background-position: 200% center;\n      }\n    }\n\n    /* 主容器 */\n    .container {\n      width: 100%;\n      max-width: 420px;\n      background: var(--card-bg);\n      border-radius: 24px;\n      overflow: hidden;\n      box-shadow: var(--shadow);\n      position: relative;\n      z-index: 1;\n      animation: slideIn 0.5s ease;\n      display: none;\n    }\n\n    /* 头部 */\n    .header {\n      background: var(--primary-gradient);\n      color: #ffffff;\n      padding: 24px 16px;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .header::before {\n      content: '';\n      position: absolute;\n      top: -30px;\n      left: -30px;\n      width: 80px;\n      height: 80px;\n      background: rgba(255, 255, 255, 0.15);\n      border-radius: 50%;\n    }\n\n    .header::after {\n      content: '';\n      position: absolute;\n      bottom: -60px;\n      right: -60px;\n      width: 150px;\n      height: 150px;\n      background: rgba(255, 255, 255, 0.1);\n      border-radius: 50%;\n    }\n\n    .header h1 {\n      font-size: 1.4rem;\n      font-weight: 700;\n      margin-bottom: 8px;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header p {\n      font-size: 0.9rem;\n      opacity: 0.9;\n      line-height: 1.4;\n      position: relative;\n      z-index: 2;\n    }\n\n    .header-icon {\n      font-size: 48px;\n      margin-bottom: 10px;\n      display: inline-block;\n      animation: bounce 2s ease infinite;\n    }\n\n    @keyframes bounce {\n      0%, 100% { transform: translateY(0); }\n      50% { transform: translateY(-10px); }\n    }\n\n    /* 版本对比 */\n    .version-comparison {\n      display: flex;\n      flex-wrap: nowrap;\n      gap: 12px;\n      padding: 16px;\n      margin-top: 8px;\n      position: relative;\n      z-index: 10;\n    }\n\n    .version-card {\n      flex: 1;\n      min-width: 45%;\n      background: var(--card-bg);\n      border-radius: 16px;\n      padding: 28px 16px 16px;\n      box-shadow: var(--shadow);\n      text-align: center;\n      position: relative;\n      transition: transform 0.3s ease, box-shadow 0.3s ease;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n    }\n\n    .version-card:hover {\n      transform: translateY(-4px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .version-card.current-version {\n      background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 100%);\n      border: 1px solid rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version:hover {\n      box-shadow: 0 6px 20px rgba(78, 110, 242, 0.15);\n    }\n\n    .version-card.current-version h3,\n    .version-card.current-version .version-number,\n    .version-card.current-version .version-date {\n      color: var(--text-main);\n    }\n\n    .version-card.latest-version {\n      background: var(--latest-gradient);\n      background-size: 300% 300%;\n      box-shadow: var(--glow-shadow), var(--shadow);\n      color: #fff;\n      z-index: 2;\n      animation: gradientAnimation 6s ease infinite, breathe 3s ease-in-out infinite;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .version-card.latest-version::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        90deg,\n        transparent,\n        rgba(255, 255, 255, 0.3),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: shimmer 3s infinite;\n    }\n\n    .version-card.latest-version h3,\n    .version-card.latest-version .version-number,\n    .version-card.latest-version .version-date {\n      color: #fff;\n      text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\n      position: relative;\n      z-index: 1;\n    }\n\n    .version-status {\n      position: absolute;\n      top: 6px;\n      right: 6px;\n      padding: 3px 7px;\n      font-size: 0.65rem;\n      font-weight: 600;\n      border-radius: 6px;\n      color: #fff;\n      line-height: 1.2;\n      white-space: nowrap;\n      z-index: 2;\n    }\n\n    .version-card.latest-version .version-status {\n      background: rgba(255, 255, 255, 0.25);\n      backdrop-filter: blur(5px);\n      border: 1px solid rgba(255, 255, 255, 0.3);\n      color: #fff;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    }\n\n    .status-outdated { background: var(--warning-color); }\n    .status-latest { background: var(--success-color); }\n    .status-invalid { background: var(--error-color); }\n\n    .version-card h3 {\n      font-size: 0.9rem;\n      color: var(--text-secondary);\n      margin-bottom: 8px;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n    }\n\n    .version-number {\n      font-size: 1.25rem;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 8px 0;\n      transition: all 0.3s ease;\n      font-family: 'Courier New', monospace;\n    }\n\n    .version-card.latest-version .version-number {\n      font-size: 1.4rem;\n      transform: scale(1.05);\n      text-shadow: \n        0 2px 4px rgba(0, 0, 0, 0.3),\n        0 0 10px rgba(212, 175, 55, 0.8),\n        0 0 20px rgba(212, 175, 55, 0.5);\n      animation: pulse-glow 2s ease-in-out infinite;\n    }\n\n    @keyframes pulse-glow {\n      0%, 100% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 10px rgba(212, 175, 55, 0.8),\n          0 0 20px rgba(212, 175, 55, 0.5);\n      }\n      50% {\n        text-shadow: \n          0 2px 4px rgba(0, 0, 0, 0.3),\n          0 0 15px rgba(212, 175, 55, 1),\n          0 0 30px rgba(212, 175, 55, 0.7);\n      }\n    }\n\n    .version-date {\n      font-size: 0.8rem;\n      color: var(--text-secondary);\n      margin-top: 4px;\n    }\n\n    /* 版本对比指示器 */\n    .version-indicator {\n      position: absolute;\n      left: 50%;\n      top: 50%;\n      transform: translate(-50%, -50%);\n      z-index: 5;\n      width: 32px;\n      height: 32px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n      color: white;\n    }\n\n    .version-indicator.update-needed {\n      background: var(--error-color);\n      box-shadow: 0 2px 8px rgba(234, 84, 85, 0.4);\n      animation: pulse-indicator 1.5s infinite;\n    }\n\n    .version-indicator.is-latest {\n      background: var(--success-color);\n      box-shadow: 0 2px 8px rgba(40, 199, 111, 0.4);\n    }\n\n    @keyframes pulse-indicator {\n      0% { transform: translate(-50%, -50%) scale(1); }\n      50% { transform: translate(-50%, -50%) scale(1.1); }\n      100% { transform: translate(-50%, -50%) scale(1); }\n    }\n\n    /* 内容区 */\n    .content-container {\n      padding: 16px;\n    }\n\n    /* 状态提示 */\n    .status-alert {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      padding: 12px 16px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      font-weight: 500;\n      font-size: 14px;\n      animation: slideIn 0.5s ease 0.3s backwards;\n    }\n\n    .status-alert i {\n      font-size: 20px;\n    }\n\n    .status-alert.update-available {\n      background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);\n      color: #d63031;\n      box-shadow: 0 4px 15px rgba(253, 203, 110, 0.4);\n    }\n\n    .status-alert.up-to-date {\n      background: linear-gradient(135deg, #55efc4 0%, #00b894 100%);\n      color: white;\n      box-shadow: 0 4px 15px rgba(0, 184, 148, 0.4);\n    }\n\n    /* 更新容器 */\n    .update-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      overflow: hidden;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.4s backwards;\n    }\n\n    .update-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n    }\n\n    .update-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .update-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .update-tag {\n      background: rgba(78, 110, 242, 0.1);\n      color: #4e6ef2;\n      padding: 4px 8px;\n      border-radius: 8px;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .update-content {\n      padding: 16px;\n    }\n\n    .update-date {\n      font-weight: 600;\n      color: #4e6ef2;\n      margin-bottom: 12px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      padding: 8px 0;\n      border-bottom: 1px dashed #e0e0e0;\n    }\n\n    .update-text {\n      margin: 8px 0;\n      position: relative;\n      padding-left: 16px;\n      line-height: 1.5;\n      color: var(--text-main);\n      font-size: 0.95rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .update-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      font-weight: bold;\n      color: #4e6ef2;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 历史日志 */\n    .history-container {\n      background: var(--card-bg);\n      border-radius: 16px;\n      box-shadow: var(--shadow);\n      margin-bottom: 16px;\n      border: 1px solid rgba(120, 130, 240, 0.1);\n      animation: slideIn 0.5s ease 0.5s backwards;\n    }\n\n    .history-header {\n      background: var(--light-bg);\n      padding: 12px 16px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid var(--border-color);\n      cursor: pointer;\n      user-select: none;\n    }\n\n    .history-header:hover {\n      opacity: 0.8;\n    }\n\n    .history-header h2 {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--text-main);\n      display: flex;\n      align-items: center;\n      gap: 8px;\n    }\n\n    .history-header h2 i {\n      color: #4e6ef2;\n    }\n\n    .toggle-history {\n      background: none;\n      border: none;\n      color: var(--text-secondary);\n      cursor: pointer;\n      font-weight: 500;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.85rem;\n      transition: color 0.2s ease;\n    }\n\n    .toggle-history:hover {\n      color: #4e6ef2;\n    }\n\n    .history-content {\n      padding: 0 16px;\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 0.4s ease, padding 0.4s ease;\n    }\n\n    .history-content.expanded {\n      max-height: 60vh;\n      overflow-y: auto;\n      padding: 16px;\n      scrollbar-width: thin;\n      scrollbar-color: #4e6ef2 #f0f0f0;\n    }\n\n    .history-content.expanded::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-track {\n      background: #f0f0f0;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb {\n      background: #4e6ef2;\n      border-radius: 4px;\n    }\n\n    .history-content.expanded::-webkit-scrollbar-thumb:hover {\n      background: #3a56d0;\n    }\n\n    .history-item {\n      margin-bottom: 16px;\n      padding-bottom: 16px;\n      border-bottom: 1px dashed var(--border-color);\n    }\n\n    .history-item:last-child {\n      border-bottom: none;\n      margin-bottom: 0;\n      padding-bottom: 0;\n    }\n\n    .history-date {\n      font-weight: 600;\n      color: var(--text-main);\n      margin-bottom: 8px;\n      display: flex;\n      align-items: center;\n      gap: 4px;\n      font-size: 0.9rem;\n      background: rgba(78, 110, 242, 0.05);\n      padding: 6px 10px;\n      border-radius: 6px;\n    }\n\n    .history-text {\n      margin: 8px 0;\n      padding-left: 16px;\n      line-height: 1.4;\n      color: var(--text-secondary);\n      position: relative;\n      font-size: 0.9rem;\n      white-space: pre-wrap;\n      word-break: break-word;\n    }\n\n    .history-text::before {\n      content: '•';\n      position: absolute;\n      left: 0;\n      color: #4e6ef2;\n      font-weight: bold;\n      font-size: 1.2rem;\n      line-height: 1;\n    }\n\n    /* 按钮组 */\n    .button-group {\n      display: flex;\n      flex-direction: column;\n      gap: 10px;\n      margin-bottom: 16px;\n    }\n\n    .button {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      padding: 14px 28px;\n      text-align: center;\n      font-size: 1rem;\n      border: none;\n      border-radius: 12px;\n      text-decoration: none;\n      background: var(--primary-gradient);\n      color: white;\n      font-weight: 600;\n      transition: all 0.3s ease;\n      box-shadow: var(--shadow);\n      position: relative;\n      overflow: hidden;\n      cursor: pointer;\n    }\n\n    .button i {\n      font-size: 1rem;\n    }\n\n    .button::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: rgba(255, 255, 255, 0.1);\n      transform: rotate(30deg);\n      transition: all 0.6s ease;\n      pointer-events: none;\n    }\n\n    .button:hover {\n      transform: translateY(-3px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .button:hover::after {\n      transform: rotate(30deg) translate(20%, 20%);\n    }\n\n    .button:active {\n      transform: scale(0.95);\n    }\n\n    /* 错误状态 */\n    .error-state {\n      text-align: center;\n      padding: 40px 20px;\n      color: var(--text-main);\n    }\n\n    .error-icon {\n      font-size: 64px;\n      margin-bottom: 20px;\n      color: var(--error-color);\n    }\n\n    .error-text {\n      font-size: 16px;\n      line-height: 1.6;\n      margin-bottom: 20px;\n    }\n\n    .retry-button {\n      background: var(--primary-gradient);\n      color: white;\n      padding: 12px 30px;\n      border-radius: 12px;\n      border: none;\n      font-weight: 600;\n      cursor: pointer;\n      transition: all 0.3s ease;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n\n    .retry-button:hover {\n      transform: translateY(-2px);\n      box-shadow: var(--shadow-hover);\n    }\n\n    .retry-button:active {\n      transform: scale(0.95);\n    }\n\n    /* 装饰元素 */\n    .decoration {\n      position: absolute;\n      z-index: 0;\n      pointer-events: none;\n    }\n\n    .decoration.circle {\n      width: 120px;\n      height: 120px;\n      border-radius: 50%;\n      background: rgba(107, 45, 216, 0.05);\n      top: 10%;\n      left: 10%;\n    }\n\n    .decoration.square {\n      width: 80px;\n      height: 80px;\n      transform: rotate(45deg);\n      background: rgba(78, 110, 242, 0.05);\n      bottom: 10%;\n      right: 10%;\n    }\n\n    /* 响应式 */\n    @media (max-width: 768px) {\n      body {\n        padding: 12px;\n      }\n\n      .container {\n        max-width: 100%;\n        border-radius: 20px;\n      }\n\n      .header {\n        padding: 20px 15px;\n      }\n\n      .header h1 {\n        font-size: 1.3rem;\n      }\n\n      .header-icon {\n        font-size: 40px;\n      }\n\n      .version-comparison {\n        flex-direction: row;\n        flex-wrap: nowrap;\n        gap: 10px;\n        padding: 12px;\n        margin-top: 6px;\n        overflow-x: auto;\n      }\n\n      .version-card {\n        min-width: 45%;\n        padding: 26px 12px 12px;\n      }\n\n      /* 移动端减弱呼吸动效 */\n      .version-card.latest-version {\n        animation: gradientAnimation 6s ease infinite;\n      }\n\n      .version-status {\n        top: 5px;\n        right: 5px;\n        padding: 2px 5px;\n        font-size: 0.6rem;\n      }\n\n      .version-number {\n        font-size: 1.1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.2rem;\n      }\n\n      .update-header h2, .history-header h2 {\n        font-size: 0.9rem;\n      }\n\n      .button {\n        padding: 12px 24px;\n        font-size: 0.95rem;\n      }\n\n      .history-content.expanded {\n        max-height: 50vh;\n        -webkit-overflow-scrolling: touch;\n      }\n    }\n\n    @media (max-width: 380px) {\n      .header h1 {\n        font-size: 1.2rem;\n      }\n\n      .version-number {\n        font-size: 1rem;\n      }\n\n      .version-card.latest-version .version-number {\n        font-size: 1.1rem;\n      }\n\n      .button {\n        padding: 11px;\n        font-size: 0.9rem;\n      }\n    }\n  </style>\n</head>\n<body>\n  <div class=\"decoration circle\"></div>\n  <div class=\"decoration square\"></div>\n\n  <div id=\"loading\" class=\"loading-wrapper\">\n    <div class=\"loading-spinner\"></div>\n    <div class=\"loading-text\"><i class=\"fas fa-search\"></i> 正在检查更新...</div>\n  </div>\n\n  <div class=\"container\" id=\"container\">\n    <div class=\"header\">\n      <div class=\"header-icon\"><i class=\"fas fa-book\"></i></div>\n      <h1>光遇书源更新</h1>\n<p>推荐使用阅读Sigma版本<br>正式版可能存在兼容性问题-<a href='https://legado.gyks.cf' style='text-decoration: none; color: #2D9D78; font-weight: 600;'>下载</a></p>\n    </div>\n\n    <div class=\"version-comparison\">\n      <div class=\"version-card current-version\">\n        <div class=\"version-status status-outdated\" id=\"currentStatus\">待检查</div>\n        <h3><i class=\"fas fa-cube\"></i> 当前版本</h3>\n        <div class=\"version-number\" id=\"currentVersion\">-</div>\n        <div class=\"version-date\">您的当前版本</div>\n      </div>\n\n      <div class=\"version-indicator update-needed\" id=\"versionIndicator\" style=\"display: none;\">\n        <i class=\"fas fa-arrow-right\"></i>\n      </div>\n\n      <div class=\"version-card latest-version\">\n        <div class=\"version-status status-latest\" id=\"latestStatus\">最新版本</div>\n        <h3><i class=\"fas fa-star\"></i> 最新版本</h3>\n        <div class=\"version-number\" id=\"latestVersion\">-</div>\n        <div class=\"version-date\">可用最新版本</div>\n      </div>\n    </div>\n\n    <div class=\"content-container\">\n      <div class=\"status-alert\" id=\"statusAlert\" style=\"display: none;\"></div>\n\n      <div id=\"latestLogContainer\" style=\"display: none;\">\n        <div class=\"update-container\">\n          <div class=\"update-header\">\n            <h2><i class=\"fas fa-bolt\"></i> 最新更新</h2>\n            <div class=\"update-tag\">最新发布</div>\n          </div>\n          <div class=\"update-content\">\n            <div class=\"update-date\" id=\"latestLogDate\"></div>\n            <div class=\"update-text\" id=\"latestLogContent\"></div>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"button-group\" id=\"buttonGroup\" style=\"display: none;\"></div>\n\n      <div class=\"history-container\" id=\"logs\" style=\"display: none;\">\n        <div class=\"history-header\" onclick=\"toggleLogs()\">\n          <h2><i class=\"fas fa-history\"></i> 历史更新 <span id=\"historyCount\"></span></h2>\n          <button class=\"toggle-history\" id=\"toggleButton\">\n            <span id=\"toggleText\">展开历史</span>\n            <i class=\"fas fa-chevron-down\" id=\"toggleIcon\"></i>\n          </button>\n        </div>\n        <div class=\"history-content\" id=\"logList\"></div>\n      </div>\n    </div>\n  </div>\n\n  <script>\n  let logsCollapsed = true;\n\n  function toggleLogs() {\n    logsCollapsed = !logsCollapsed;\n    const logList = document.getElementById('logList');\n    const toggleText = document.getElementById('toggleText');\n    const toggleIcon = document.getElementById('toggleIcon');\n    \n    if (logsCollapsed) {\n      logList.classList.remove('expanded');\n      toggleText.textContent = '展开历史';\n      toggleIcon.className = 'fas fa-chevron-down';\n    } else {\n      logList.classList.add('expanded');\n      toggleText.textContent = '收起历史';\n      toggleIcon.className = 'fas fa-chevron-up';\n    }\n  }\n\n  (async function() {\n    const loading = document.getElementById('loading');\n    const container = document.getElementById('container');\n    const currentVersion = document.getElementById('currentVersion');\n    const latestVersion = document.getElementById('latestVersion');\n    const currentStatus = document.getElementById('currentStatus');\n    const latestStatus = document.getElementById('latestStatus');\n    const versionIndicator = document.getElementById('versionIndicator');\n    const statusAlert = document.getElementById('statusAlert');\n    const buttonGroup = document.getElementById('buttonGroup');\n    const latestLogContainer = document.getElementById('latestLogContainer');\n    const latestLogDate = document.getElementById('latestLogDate');\n    const latestLogContent = document.getElementById('latestLogContent');\n    const logsContainer = document.getElementById('logs');\n    const logList = document.getElementById('logList');\n    const historyCount = document.getElementById('historyCount');\n\n    const localVer = '${String(localVersion)}';\n    let hosts = \\`${hostsbk}\\`;\n    hosts = hosts.split(',');\n    \nconst icons = ['box', 'satellite', 'link', 'bolt', 'globe', 'broadcast-tower'];\n\n// 初始化serverConfig\nconst serverConfig = {\n    main: {\n        name: '主线路导入',\n        icon: 'rocket',\n        baseUrl: 'https://sy.gyks.cf',\n        downloadPath: '/download/光遇聚合.json'\n    }\n};\n\nhosts.forEach((host, index) => {\n    const backupNumber = index + 1;\n    const key =\\`备用线路\\${backupNumber}\\`;\n\n    serverConfig[key] = {\n        name: \\`\\${key}导入\\`,\n        icon: icons[index] || 'broadcast-tower',\n        baseUrl: host,\n        downloadPath: '/sy/download/光遇聚合.json'\n    };\n});\n\n    // 版本比较函数\n    function compareVersions(vs) {\n      const normalize = (v) => {\n        return v.split('.').map(n => {\n          const num = parseInt(n, 10);\n          return isNaN(num) ? 0 : num;\n        });\n      };\n\n      const parts1 = normalize(localVer);\n      const parts2 = normalize(vs);\n      const maxLength = Math.max(parts1.length, parts2.length);\n      \n      for (let i = 0; i < maxLength; i++) {\n        const num1 = parts1[i] || 0;\n        const num2 = parts2[i] || 0;\n        if (num1 > num2) return 1;\n        if (num1 < num2) return -1;\n      }\n      return 0;\n    }\n\nasync function fetchVersionData() {\n  const serversToCheck = Object.values(serverConfig);\n  \n  for (const server of serversToCheck) {\n    try {\n      const apiPath = server.baseUrl.includes('sy.gyks.cf') \n        ? '/fils-groups' \n        : '/get_sy_log';\n      \n      const response = await fetch(server.baseUrl + apiPath, { timeout: 2000 });\n      if (response.ok) {\n        return await response.json();\n      }\n    } catch (e) {\n      console.warn(\\`接口失败：\\${server.baseUrl}\\`, e);\n    }\n  }\n  throw new Error('所有更新接口都请求失败');\n}\n\n\n    function showError(message) {\n      loading.innerHTML = \\`\n        <div class=\"error-state\">\n          <div class=\"error-icon\"><i class=\"fas fa-exclamation-triangle\"></i></div>\n          <div class=\"error-text\">\\${message}</div>\n          <button class=\"retry-button\" onclick=\"location.reload()\"><i class=\"fas fa-redo\"></i> 重试</button>\n        </div>\n      \\`;\n    }\n\n    try {\n      const data = await fetchVersionData();\nconst legadoData = (data.data && data.data.find(item => item.key == 'legado_aggregate')) || {};\nconst cloudVersion = String(legadoData.current_version || '');\nconst updateLog = legadoData.update_log || [];\n\n// 显示版本信息\ncurrentVersion.textContent = \\`v\\${localVer}\\`;\nlatestVersion.textContent = \\`v\\${cloudVersion}\\`;\n\n// 处理日志（update_log 是数组格式）\nif (updateLog.length > 0) {\n// 显示最新日志\nconst latestLog = updateLog[0];\nlatestLogDate.innerHTML = \\`<i class=\"fas fa-calendar-alt\"></i> v\\${latestLog.version}\\`;\nlatestLogContent.innerHTML = latestLog.log;\nlatestLogContainer.style.display = 'block';\n\n// 显示历史日志\nif (updateLog.length > 1) {\nconst historyLogs = updateLog.slice(1);\nhistoryCount.textContent = \\`(\\${historyLogs.length}条)\\`;\nlogList.innerHTML = historyLogs.map(item => \\`\n<div class=\"history-item\">\n    <div class=\"history-date\">\n    <i class=\"fas fa-calendar-day\"></i>\n    <span>v\\${item.version}</span>\n    </div>\n    <div class=\"history-text\">\\${item.log}</div>\n</div>\n\\`).join('');\nlogsContainer.style.display = 'block';\n}\n}\n\n// 检查更新状态\nconst compareResult = compareVersions(cloudVersion);\n\n// 显示版本指示器\nversionIndicator.style.display = 'flex';\n\nif (compareResult === -1) {\n// 需要更新\ncurrentStatus.textContent = '待更新';\ncurrentStatus.className = 'version-status status-outdated';\nversionIndicator.className = 'version-indicator update-needed';\nversionIndicator.innerHTML = '<i class=\"fas fa-arrow-right\"></i>';\n\n// 使用统一配置生成下载按钮\nbuttonGroup.innerHTML = Object.values(serverConfig).map(server => {\nconst fullUrl = server.baseUrl + server.downloadPath;\nreturn \\`\n<a href=\"yuedu://booksource/importonline?src=\\${encodeURIComponent(fullUrl)}\" class=\"button\">\n    <i class=\"fas fa-\\${server.icon}\"></i>\n    <span>\\${server.name}</span>\n</a>\n\\`;\n}).join('');\nbuttonGroup.style.display = 'flex';\n} else {\n// 已是最新版本\ncurrentStatus.textContent = '最新';\ncurrentStatus.className = 'version-status status-latest';\nversionIndicator.className = 'version-indicator is-latest';\nversionIndicator.innerHTML = '<i class=\"fas fa-check\"></i>';\n\nstatusAlert.className = 'status-alert up-to-date';\nstatusAlert.innerHTML = '<i class=\"fas fa-check-circle\"></i> <div>您已是最新版本</div>';\nstatusAlert.style.display = 'flex';\n}\n\n      // 显示主容器，隐藏加载\n      loading.style.display = 'none';\n      container.style.display = 'block';\n\n    } catch (err) {\n      console.error('版本检查失败：', err);\n      showError('<i class=\"fas fa-exclamation-circle\"></i> 检查更新失败，请稍后重试<br><small>' + err.message + '</small>');\n    }\n  })();\n  </script>\n</body>\n</html>\n`;\n    java.startBrowser(`data:text/html;base64,${java.base64Encode(html)}`, '光遇书源更新');\n}\n\n\n\n// 线路设置\nfunction getServerSettings() {\n    const {java} = this;\n    let data = this.getVariable('线路');\n    //java.toast(data)\n    let hostsbk = this.getVariable('云端配置')['hosts'] || hosts;\n    \n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no\">\n<title>光遇小说 - 线路设置</title>\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\">\n<style>\n* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  -webkit-tap-highlight-color: transparent;\n}\n\n:root {\n  --color-primary: #2D9D78;\n  --color-primary-light: #3DB893;\n  --bg-dark: #f5f7fa;\n  --bg-darker: #ffffff;\n  --bg-card: rgba(255, 255, 255, 0.95);\n  --bg-elevated: #f8fafb;\n  --text-primary: #1a1d23;\n  --text-secondary: #6b7280;\n  --border-color: rgba(0, 0, 0, 0.08);\n}\n\n[data-theme=\"dark\"] {\n  --bg-dark: #0A1628;\n  --bg-darker: #050B14;\n  --bg-card: #142235;\n  --bg-elevated: #1A2B42;\n  --text-primary: #FFFFFF;\n  --text-secondary: rgba(255, 255, 255, 0.7);\n  --border-color: rgba(255, 255, 255, 0.1);\n}\n\nhtml, body {\n  width: 100%;\n  min-height: 100vh;\n  font-family: -apple-system, BlinkMacSystemFont, sans-serif;\n  font-size: 16px;\n  color: var(--text-primary);\n  background: var(--bg-darker);\n  overflow-x: hidden;\n}\n\n.container {\n  padding: 16px;\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.main-card {\n  background: var(--bg-card);\n  border-radius: 20px;\n  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1);\n  border: 1px solid var(--border-color);\n  overflow: hidden;\n}\n\n.header {\n  padding: 20px 16px;\n  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));\n  text-align: center;\n}\n\n.header-title {\n  font-size: 18px;\n  font-weight: 700;\n  color: white;\n  margin-bottom: 4px;\n}\n\n.header-desc {\n  font-size: 12px;\n  color: rgba(255, 255, 255, 0.8);\n}\n\n.last-check {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  font-size: 12px;\n  color: var(--text-secondary);\n  padding: 12px 16px;\n  border-bottom: 1px solid var(--border-color);\n}\n\n.last-check i {\n  color: var(--color-primary);\n}\n\n.server-list {\n  padding: 8px;\n}\n\n.server-card {\n  background: var(--bg-elevated);\n  border-radius: 12px;\n  padding: 14px 16px;\n  margin-bottom: 8px;\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  cursor: pointer;\n  transition: all 0.2s ease;\n  border: 2px solid transparent;\n}\n\n.server-card:hover {\n  border-color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.05);\n}\n\n.server-card.selected {\n  border-color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.1);\n}\n\n.server-icon {\n  width: 36px;\n  height: 36px;\n  border-radius: 10px;\n  background: linear-gradient(135deg, rgba(45, 157, 120, 0.15), rgba(61, 184, 147, 0.1));\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 16px;\n  color: var(--color-primary);\n  flex-shrink: 0;\n}\n\n.server-card.selected .server-icon {\n  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));\n  color: white;\n}\n\n.server-info {\n  flex: 1;\n  min-width: 0;\n}\n\n.server-url {\n  font-size: 14px;\n  font-weight: 700;\n  color: var(--text-primary);\n  word-break: break-all;\n  line-height: 1.4;\n}\n\n.server-details {\n  font-size: 11px;\n  color: var(--text-secondary);\n  margin-top: 2px;\n}\n\n.server-status {\n  padding: 4px 12px;\n  border-radius: 16px;\n  font-size: 11px;\n  font-weight: 700;\n  white-space: nowrap;\n  flex-shrink: 0;\n}\n\n.server-status.checking {\n  background: rgba(255, 193, 7, 0.2);\n  color: #f57f17;\n}\n\n.server-status.online {\n  background: rgba(76, 175, 80, 0.2);\n  color: #2e7d32;\n}\n\n.server-status.slow {\n  background: rgba(255, 193, 7, 0.2);\n  color: #f57f17;\n}\n\n.server-status.offline {\n  background: rgba(244, 67, 54, 0.2);\n  color: #c62828;\n}\n\n.server-status.not-support {\n  background: rgba(156, 163, 175, 0.2);\n  color: #6b7280;\n}\n\n.selected-badge {\n  width: 20px;\n  height: 20px;\n  border-radius: 50%;\n  background: var(--color-primary);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-shrink: 0;\n}\n\n.selected-badge i {\n  color: white;\n  font-size: 12px;\n}\n\n.footer {\n  padding: 16px;\n  border-top: 1px solid var(--border-color);\n  text-align: center;\n}\n\n.footer-text {\n  font-size: 12px;\n  color: var(--text-secondary);\n  line-height: 1.5;\n}\n\n.footer-text .highlight {\n  color: var(--color-primary);\n  font-weight: 700;\n}\n\n/* 自动切换开关样式 */\n.auto-switch-section {\n  padding: 14px 16px;\n  border-bottom: 1px solid var(--border-color);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  background: var(--bg-elevated);\n}\n\n.auto-switch-section:hover {\n  background: rgba(45, 157, 120, 0.05);\n}\n\n.auto-switch-info {\n  flex: 1;\n  min-width: 0;\n}\n\n.auto-switch-title {\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--text-primary);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n\n.auto-switch-title i {\n  color: var(--color-primary);\n  font-size: 14px;\n}\n\n.auto-switch-desc {\n  font-size: 11px;\n  color: var(--text-secondary);\n  margin-top: 3px;\n  line-height: 1.4;\n}\n\n/* 开关基础样式 */\n.switch {\n  position: relative;\n  display: inline-block;\n  width: 48px;\n  height: 28px;\n  flex-shrink: 0;\n}\n\n.switch input {\n  opacity: 0;\n  width: 0;\n  height: 0;\n}\n\n.switch-slider {\n  position: absolute;\n  cursor: pointer;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  background-color: #d1d5db;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  border-radius: 28px;\n  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.switch-slider:before {\n  position: absolute;\n  content: \"\";\n  height: 22px;\n  width: 22px;\n  left: 3px;\n  bottom: 3px;\n  background-color: white;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  border-radius: 50%;\n  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n\n.switch input:checked + .switch-slider {\n  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));\n  box-shadow: 0 2px 8px rgba(45, 157, 120, 0.3);\n}\n\n.switch input:checked + .switch-slider:before {\n  transform: translateX(20px);\n  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n}\n\n/* 开关焦点状态 */\n.switch input:focus + .switch-slider {\n  outline: 2px solid var(--color-primary);\n  outline-offset: 2px;\n}\n\n/* 下拉框样式 */\n.timeout-select {\n  padding: 6px 12px;\n  font-size: 13px;\n  font-weight: 600;\n  color: var(--text-primary);\n  background: var(--bg-card);\n  border: 2px solid var(--border-color);\n  border-radius: 10px;\n  cursor: pointer;\n  min-width: 70px;\n  appearance: none;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E\");\n  background-repeat: no-repeat;\n  background-position: right 8px center;\n  background-size: 14px;\n}\n\n.timeout-select:focus {\n  outline: none;\n  border-color: var(--color-primary);\n}\n\n.timeout-select option {\n  background: var(--bg-darker);\n  color: var(--text-primary);\n}\n\n.hidden-settings {\n  display: none;\n}/* 提示文案样式 */\n.tip-alert {\n  background: linear-gradient(135deg, rgba(255, 193, 7, 0.12) 0%, rgba(255, 152, 0, 0.08) 100%);\n  border: 1px solid rgba(255, 193, 7, 0.25);\n  border-radius: 16px;\n  padding: 16px 18px;\n  margin: 20px;\n  display: flex;\n  align-items: flex-start;\n  gap: 14px;\n  box-shadow: 0 4px 16px rgba(255, 193, 7, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.8);\n  position: relative;\n  overflow: hidden;\n}\n\n.tip-alert::before {\n  content: '';\n  position: absolute;\n  top: -50%;\n  right: -20%;\n  width: 100px;\n  height: 100px;\n  background: rgba(255, 193, 7, 0.1);\n  border-radius: 50%;\n}\n\n.tip-alert i {\n  color: #f97316;\n  font-size: 22px;\n  flex-shrink: 0;\n  margin-top: 2px;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert p {\n  font-size: 13px;\n  color: var(--text-secondary);\n  line-height: 1.6;\n  margin: 0;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert .highlight-text {\n  color: #ea580c;\n  font-weight: 700;\n}\n\n@media (max-width: 600px) {\n  .tip-alert {\n    margin: 16px;\n    padding: 14px 16px;\n  }\n}\n</style>\n</head>\n<body data-theme=\"light\">\n<div class=\"container\">\n  <div class=\"main-card\">\n    <div class=\"header\">\n      <div class=\"header-title\">\n        <i class=\"fas fa-server\"></i>\n        <span style=\"margin-left: 8px;\">线路选择</span>\n      </div>\n      <div class=\"header-desc\">选择最快的服务器线路以获得最佳体验</div>\n    </div>\n    \n    <!-- 提示文案 -->\n    <div class=\"tip-alert\">\n      <p>设置完成后请点击右上角的<span class=\"highlight-text\">√</span>应用设置</p>\n    </div>\n    \n    <div class=\"footer\">\n      <div class=\"footer-text\">\n        当前选中: <span class=\"highlight\" id=\"currentServer\">--</span>\n      </div>\n    </div>\n    \n    <div class=\"last-check\">\n      <i class=\"fas fa-clock\"></i>\n      <span id=\"lastCheckTime\">最后检测: --:--:--</span>\n      <button id=\"refreshBtn\" style=\"margin-left: auto; padding: 4px 10px; font-size: 11px; font-weight: 600; color: var(--color-primary); background: rgba(45, 157, 120, 0.1); border: 1px solid var(--color-primary); border-radius: 6px; cursor: pointer;\">\n        <i class=\"fas fa-sync-alt\"></i>\n        刷新\n      </button>\n    </div>\n    \n    <div class=\"auto-switch-section\">\n      <div class=\"auto-switch-info\">\n        <div class=\"auto-switch-title\"><i class=\"fas fa-refresh\"></i>失败自动切换</div>\n        <div class=\"auto-switch-desc\">当前线路失败时自动尝试切换到其他可用线路</div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"autoSwitchToggle\">\n        <span class=\"switch-slider\"></span>\n      </label>\n    </div>\n    \n    <div class=\"auto-switch-section\">\n      <div class=\"auto-switch-info\">\n        <div class=\"auto-switch-title\"><i class=\"fas fa-clock\"></i>超时自动切换</div>\n        <div class=\"auto-switch-desc\">请求超时后自动切换到其他可用线路</div>\n      </div>\n      <div style=\"display: flex; align-items: center; gap: 12px;\">\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"timeoutSwitchToggle\">\n          <span class=\"switch-slider\"></span>\n        </label>\n        <select id=\"timeoutSelect\" class=\"timeout-select\">\n          <option value=\"1\">1秒</option>\n          <option value=\"2\">2秒</option>\n          <option value=\"3\">3秒</option>\n          <option value=\"4\">4秒</option>\n          <option value=\"5\">5秒</option>\n          <option value=\"6\">6秒</option>\n          <option value=\"7\">7秒</option>\n          <option value=\"8\">8秒</option>\n          <option value=\"9\">9秒</option>\n          <option value=\"10\" selected>10秒</option>\n           <option value=\"11\">11秒</option>\n          <option value=\"12\">12秒</option>\n          <option value=\"13\">13秒</option>\n          <option value=\"14\">14秒</option>\n          <option value=\"15\">15秒</option>\n        </select>\n      </div>\n    </div>\n    \n    <div class=\"auto-switch-section\">\n      <div class=\"auto-switch-info\">\n        <div class=\"auto-switch-title\"><i class=\"fas fa-bell\"></i>切换提醒弹窗</div>\n        <div class=\"auto-switch-desc\">线路切换时显示提醒弹窗通知</div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"notifySwitchToggle\">\n        <span class=\"switch-slider\"></span>\n      </label>\n    </div>\n    \n    <div id=\"serverList\" class=\"server-list\"></div>\n    \n    <div class=\"hidden-settings\">\n      <span id=\"serverValue\">${data || hostsbk[0]}</span>\n      <span id=\"autoSwitchValue\">${this.getVariable('自动切换') || 'true'}</span>\n      <span id=\"timeoutSwitchValue\">${this.getVariable('超时自动切换') || 'true'}</span>\n      <span id=\"timeoutValue\">${this.getVariable('超时时间') || '10'}</span>\n      <span id=\"notifySwitchValue\">${this.getVariable('切换提醒') || 'false'}</span>\n    </div>\n  </div>\n</div>\n\n<script>\nconst HOSTS = ${JSON.stringify(hostsbk)};\nlet currentServer = '${data || hostsbk[0]}';\n\nfunction renderServerList() {\n  const serverList = document.getElementById('serverList');\n  serverList.innerHTML = '';\n  \n  HOSTS.forEach((host, index) => {\n    const card = document.createElement('div');\n    card.className = 'server-card' + (currentServer === host ? ' selected' : '');\n    card.dataset.host = host;\n    card.dataset.index = index;\n    \n    card.innerHTML = \\`\n      <div class=\"server-icon\">\n        <i class=\"fas fa-server\"></i>\n      </div>\n      <div class=\"server-info\">\n        <div class=\"server-url\">\\${host}</div>\n        <div class=\"server-details\" id=\"details-\\${index}\">状态: 检测中</div>\n      </div>\n      <span class=\"server-status checking\" id=\"status-\\${index}\">\n        <i class=\"fas fa-spinner fa-spin\"></i>\n        <span>检测中</span>\n      </span>\n      \\${currentServer === host ? '<div class=\"selected-badge\"><i class=\"fas fa-check\"></i></div>' : ''}\n    \\`;\n    \n    card.addEventListener('click', () => {\n      selectServer(host);\n    });\n    \n    serverList.appendChild(card);\n  });\n}\n\nfunction selectServer(host) {\n  currentServer = host;\n  \n  document.querySelectorAll('.server-card').forEach(card => {\n    card.classList.remove('selected');\n    const badge = card.querySelector('.selected-badge');\n    if (badge) badge.remove();\n  });\n  \n  const selectedCard = document.querySelector(\\`[data-host=\"\\${host}\"]\\`);\n  if (selectedCard) {\n    selectedCard.classList.add('selected');\n    const icon = selectedCard.querySelector('.server-icon');\n    icon.style.background = 'linear-gradient(135deg, var(--color-primary), var(--color-primary-light))';\n    icon.style.color = 'white';\n    \n    const statusEl = selectedCard.querySelector('.server-status');\n    const newBadge = document.createElement('div');\n    newBadge.className = 'selected-badge';\n    newBadge.innerHTML = '<i class=\"fas fa-check\"></i>';\n    selectedCard.appendChild(newBadge);\n  }\n  \n  document.getElementById('currentServer').textContent = host;\n  document.getElementById('serverValue').textContent = host;\n}\n\nasync function checkSingleServer(host, index) {\n  const currentProtocol = window.location.protocol;\n  const statusEl = document.getElementById(\\`status-\\${index}\\`);\n  const detailsEl = document.getElementById(\\`details-\\${index}\\`);\n  \n  try {\n    const serverProtocol = new URL(host).protocol;\n    if (currentProtocol === 'https:' && serverProtocol === 'http:') {\n      statusEl.className = 'server-status not-support';\n      statusEl.innerHTML = '<i class=\"fas fa-exclamation-triangle\"></i><span>不支持</span>';\n      detailsEl.textContent = '浏览器安全策略限制';\n      return;\n    }\n    \n    const startTime = performance.now();\n    const controller = new AbortController();\n    const timeout = setTimeout(() => controller.abort(), 5000);\n    \n    const response = await fetch(\\`\\${host}/health?t=\\${Date.now()}\\`, {\n      signal: controller.signal,\n      method: 'GET',\n      mode: 'cors',\n      cache: 'no-cache'\n    });\n    \n    clearTimeout(timeout);\n    const responseTime = Math.round(performance.now() - startTime);\n    \n    if (response.ok) {\n      if (responseTime < 1000) {\n        statusEl.className = 'server-status online';\n        statusEl.innerHTML = \\`<i class=\"fas fa-check-circle\"></i><span>\\${responseTime}ms</span>\\`;\n      } else if (responseTime < 2000) {\n        statusEl.className = 'server-status slow';\n        statusEl.innerHTML = \\`<i class=\"fas fa-exclamation-circle\"></i><span>\\${responseTime}ms</span>\\`;\n      } else {\n        statusEl.className = 'server-status slow';\n        statusEl.innerHTML = '<i class=\"fas fa-exclamation-circle\"></i><span>缓慢</span>';\n      }\n      detailsEl.textContent = '运行正常';\n    } else {\n      statusEl.className = 'server-status offline';\n      statusEl.innerHTML = '<i class=\"fas fa-times-circle\"></i><span>异常</span>';\n      detailsEl.textContent = 'HTTP状态码: ' + response.status;\n    }\n  } catch (error) {\n    statusEl.className = 'server-status offline';\n    statusEl.innerHTML = '<i class=\"fas fa-times-circle\"></i><span>离线</span>';\n    detailsEl.textContent = '连接失败';\n  }\n}\n\nasync function checkServers() {\n  HOSTS.forEach((_, index) => {\n    const statusEl = document.getElementById(\\`status-\\${index}\\`);\n    const detailsEl = document.getElementById(\\`details-\\${index}\\`);\n    if (statusEl && detailsEl) {\n      statusEl.className = 'server-status checking';\n      statusEl.innerHTML = '<i class=\"fas fa-spinner fa-spin\"></i><span>检测中</span>';\n      detailsEl.textContent = '状态: 检测中';\n    }\n  });\n  \n  const promises = HOSTS.map((host, index) => checkSingleServer(host, index));\n  await Promise.all(promises);\n  \n  const now = new Date();\n  document.getElementById('lastCheckTime').textContent = \\`最后检测: \\${now.toLocaleTimeString()}\\`;\n}\n\ndocument.getElementById('refreshBtn').addEventListener('click', checkServers);\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  renderServerList();\n  document.getElementById('currentServer').textContent = currentServer;\n  checkServers();\n  \n  // 初始化自动切换开关\n  const autoSwitchToggle = document.getElementById('autoSwitchToggle');\n  const autoSwitchValue = document.getElementById('autoSwitchValue').textContent;\n  autoSwitchToggle.checked = autoSwitchValue !== 'false';\n  \n  // 监听开关变化\n  autoSwitchToggle.addEventListener('change', (e) => {\n    document.getElementById('autoSwitchValue').textContent = e.target.checked ? 'true' : 'false';\n  });\n  \n  // 初始化超时自动切换开关\n  const timeoutSwitchToggle = document.getElementById('timeoutSwitchToggle');\n  const timeoutSwitchValue = document.getElementById('timeoutSwitchValue').textContent;\n  timeoutSwitchToggle.checked = timeoutSwitchValue !== 'false';\n  \n  // 监听超时自动切换开关变化\n  timeoutSwitchToggle.addEventListener('change', (e) => {\n    document.getElementById('timeoutSwitchValue').textContent = e.target.checked ? 'true' : 'false';\n  });\n  \n  // 初始化超时时间下拉框\n  const timeoutSelect = document.getElementById('timeoutSelect');\n  const timeoutValue = document.getElementById('timeoutValue').textContent;\n  timeoutSelect.value = timeoutValue;\n  \n  // 监听超时时间变化\n  timeoutSelect.addEventListener('change', (e) => {\n    document.getElementById('timeoutValue').textContent = e.target.value;\n  });\n  \n  // 初始化切换提醒弹窗开关\n  const notifySwitchToggle = document.getElementById('notifySwitchToggle');\n  const notifySwitchValue = document.getElementById('notifySwitchValue').textContent;\n  notifySwitchToggle.checked = notifySwitchValue !== 'false';\n  \n  // 监听切换提醒弹窗开关变化\n  notifySwitchToggle.addEventListener('change', (e) => {\n    document.getElementById('notifySwitchValue').textContent = e.target.checked ? 'true' : 'false';\n  });\n});\n</script>\n</body>\n</html>\n    `;\n    let body;\n    try {\n        body = java.startBrowserAwait(`data:text/html;base64,${java.base64Encode(html)}`, '光遇服务器设置', false).body();\n    } catch (e) {\n        let islyc = this.checkEnv()\n        if (islyc == \"安卓\") {\n            this.switchToNextLine();\n        } else {\n            java.longToast(\"\\n请点击页面右上角√才能设置成功哦~\");\n        }\n        return;\n    }\n    \n    let host = hostsbk[0];\n    let autoSwitch = 'true';\n    let timeoutSwitch = 'true';\n    let timeout = '10';\n    let notifySwitch = 'false';\n    try {\n        const getSpanText = (spanId) => {\n            const regex = new RegExp('id=\"' + spanId + '\"\\s*>\\s*([^<]*?)\\s*<\\/span>');\n            const match = body.match(regex);\n            return match ? match[1].trim() : \"\";\n        };\n        host = getSpanText('serverValue') || hostsbk[0];\n        autoSwitch = getSpanText('autoSwitchValue') || 'true';\n        timeoutSwitch = getSpanText('timeoutSwitchValue') || 'true';\n        timeout = getSpanText('timeoutValue') || '10';\n        notifySwitch = getSpanText('notifySwitchValue') || 'false';\n    } catch (e) {\n        host = hostsbk[0];\n        autoSwitch = 'true';\n        timeoutSwitch = 'true';\n        timeout = '10';\n        notifySwitch = 'true';\n    }\n    const settingsText = `线路: ${host}\\n失败自动切换: ${autoSwitch == 'true' ? '开启' : '关闭'}\\n超时自动切换: ${timeoutSwitch == 'true' ? '开启' : '关闭'}\\n超时时间: ${timeout}秒\\n切换提醒弹窗: ${notifySwitch == 'true' ? '开启' : '关闭'}`;\n    java.longToast(\"\\n\" + settingsText);\n    this.setVariable(\"线路\", host, false);\n    this.setVariable(\"自动切换\", autoSwitch, false);\n    this.setVariable(\"超时自动切换\", timeoutSwitch, false);\n    this.setVariable(\"超时时间\", timeout, false);\n    this.setVariable(\"切换提醒\", notifySwitch, false);\n}\n\n\n// 更多设置\nfunction getHtmlSettings() {\n    const {\n        java\n    } = this;\n    let data = this.getVariable('更多设置');\n    let config = this.getVariable('云端配置');\n    if (!config) {\n        try {\n            this.getCloudSettings();\n            config = this.getVariable('云端配置');\n        } catch {}\n    }\n    let html = `\n    <!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no\">\n<title>光遇小说 - 管理中心</title>\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\">\n<style>\n* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  -webkit-tap-highlight-color: transparent;\n}\n\n:root {\n  --color-primary: #2D9D78;\n  --color-primary-light: #3DB893;\n  --color-primary-dark: #1E6F55;\n  --color-accent: #FFB74D;\n  --color-success: #4CAF50;\n  --color-error: #F44336;\n  --color-warning: #FFC107;\n  --color-info: #2196F3;\n  \n  --bg-dark: #f0f3f8;\n  --bg-darker: #e8edf5;\n  --bg-card: rgba(255, 255, 255, 0.98);\n  --bg-elevated: #fafbfc;\n  \n  --text-primary: #1a1d23;\n  --text-secondary: #6b7280;\n  --text-tertiary: #9ca3af;\n  \n  --border-color: rgba(0, 0, 0, 0.06);\n}\n\n[data-theme=\"dark\"] {\n  --bg-dark: #0A1628;\n  --bg-darker: #050B14;\n  --bg-card: #142235;\n  --bg-elevated: #1A2B42;\n  \n  --text-primary: #FFFFFF;\n  --text-secondary: rgba(255, 255, 255, 0.7);\n  --text-tertiary: rgba(255, 255, 255, 0.5);\n  \n  --border-color: rgba(255, 255, 255, 0.08);\n}\n\nhtml, body {\n  width: 100%;\n  min-height: 100vh;\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n  font-size: 16px;\n  color: var(--text-primary);\n  background: linear-gradient(135deg, var(--bg-darker) 0%, var(--bg-dark) 100%);\n  background-attachment: fixed;\n  overflow-x: hidden;\n  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.container {\n  padding: 24px 20px;\n  max-width: 820px;\n  margin: 0 auto;\n  animation: fadeIn 0.5s ease-out;\n}\n\n@keyframes fadeIn {\n  from { opacity: 0; transform: translateY(10px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\n.main-card {\n  background: var(--bg-card);\n  border-radius: 24px;\n  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08), 0 2px 8px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.8);\n  border: 1px solid var(--border-color);\n  overflow: hidden;\n  backdrop-filter: blur(20px);\n}\n\n/* 主Tab切换 */\n.main-tabs {\n  display: flex;\n  background: linear-gradient(180deg, var(--bg-elevated) 0%, rgba(255, 255, 255, 0.5) 100%);\n  border-bottom: 1px solid var(--border-color);\n  position: relative;\n}\n\n.main-tabs::after {\n  content: '';\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  height: 1px;\n  background: linear-gradient(90deg, transparent, var(--border-color), transparent);\n}\n\n.main-tab {\n  flex: 1;\n  padding: 20px 24px;\n  text-align: center;\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--text-secondary);\n  cursor: pointer;\n  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);\n  border-bottom: 3px solid transparent;\n  position: relative;\n  overflow: hidden;\n}\n\n.main-tab::before {\n  content: '';\n  position: absolute;\n  top: 0;\n  left: 50%;\n  transform: translateX(-50%) scaleX(0);\n  width: 60%;\n  height: 3px;\n  background: linear-gradient(90deg, var(--color-primary), var(--color-primary-light));\n  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);\n  border-radius: 0 0 3px 3px;\n}\n\n.main-tab.active {\n  color: var(--color-primary);\n  background: linear-gradient(180deg, rgba(45, 157, 120, 0.06) 0%, transparent 100%);\n}\n\n.main-tab.active::before {\n  transform: translateX(-50%) scaleX(1);\n}\n\n.main-tab:hover {\n  color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.04);\n}\n\n.tab-content {\n  padding: 20px;\n  display: none;\n  animation: slideIn 0.3s ease-out;\n}\n\n.tab-content.active {\n  display: block;\n}\n\n@keyframes slideIn {\n  from { opacity: 0; transform: translateY(8px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\n/* 来源选择子Tab */\n.source-subtabs {\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: 10px;\n  margin-bottom: 20px;\n}\n\n.source-subtab {\n  padding: 14px 10px;\n  text-align: center;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--text-secondary);\n  background: var(--bg-elevated);\n  border-radius: 14px;\n  cursor: pointer;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  border: 2px solid transparent;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 6px;\n}\n\n.source-subtab i {\n  font-size: 18px;\n  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.source-subtab.novel.active {\n  color: white;\n  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);\n  border-color: rgba(239, 68, 68, 0.5);\n  box-shadow: 0 8px 24px rgba(239, 68, 68, 0.35);\n  transform: translateY(-2px);\n}\n\n.source-subtab.audio.active {\n  color: white;\n  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);\n  border-color: rgba(59, 130, 246, 0.5);\n  box-shadow: 0 8px 24px rgba(59, 130, 246, 0.35);\n  transform: translateY(-2px);\n}\n\n.source-subtab.comic.active {\n  color: white;\n  background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%);\n  border-color: rgba(168, 85, 247, 0.5);\n  box-shadow: 0 8px 24px rgba(168, 85, 247, 0.35);\n  transform: translateY(-2px);\n}\n\n.source-subtab.drama.active {\n  color: white;\n  background: linear-gradient(135deg, #f97316 0%, #ea580c 100%);\n  border-color: rgba(249, 115, 22, 0.5);\n  box-shadow: 0 8px 24px rgba(249, 115, 22, 0.35);\n  transform: translateY(-2px);\n}\n\n.source-subtab:hover:not(.active) {\n  border-color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.06);\n  transform: translateY(-1px);\n}\n\n.source-subtab.active i {\n  transform: scale(1.1);\n}\n\n/* 来源选项 */\n.source-options {\n  display: grid;\n  grid-template-columns: repeat(auto-fill, minmax(125px, 1fr));\n  gap: 12px;\n}\n\n.source-option {\n  padding: 14px 16px;\n  background: var(--bg-elevated);\n  border-radius: 12px;\n  text-align: center;\n  font-size: 13px;\n  font-weight: 600;\n  color: var(--text-secondary);\n  cursor: pointer;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  border: 2px solid transparent;\n}\n\n.source-option:hover {\n  border-color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.05);\n  transform: translateY(-2px);\n}\n\n.source-option.selected {\n  background: linear-gradient(135deg, rgba(45, 157, 120, 0.18), rgba(61, 184, 147, 0.08));\n  color: var(--color-primary);\n  border-color: var(--color-primary);\n  box-shadow: 0 4px 16px rgba(45, 157, 120, 0.2);\n  transform: translateY(-2px);\n}\n\n.source-option.all {\n  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n  color: white;\n  box-shadow: 0 4px 16px rgba(102, 126, 234, 0.3);\n}\n\n.source-option.all.selected {\n  background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);\n  box-shadow: 0 6px 24px rgba(102, 126, 234, 0.45);\n  transform: translateY(-3px);\n}\n\n.source-option.all:hover {\n  border-color: transparent;\n  transform: translateY(-3px);\n}\n\n/* 选中状态提示 */\n.selected-info {\n  margin-top: 20px;\n  padding: 16px 18px;\n  background: var(--bg-elevated);\n  border-radius: 12px;\n  font-size: 13px;\n  color: var(--text-secondary);\n  border: 1px solid var(--border-color);\n}\n\n.selected-info span {\n  color: var(--color-primary);\n  font-weight: 700;\n}\n\n/* 设置项样式 */\n.setting-item {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  padding: 20px;\n  background: var(--bg-elevated);\n  border-radius: 16px;\n  margin-bottom: 12px;\n  border: 1px solid var(--border-color);\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n  position: relative;\n  overflow: hidden;\n}\n\n\n.setting-item:hover::before {\n  opacity: 1;\n}\n\n.setting-info {\n  flex: 1;\n  min-width: 0;\n}\n\n.setting-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--text-primary);\n  margin-bottom: 6px;\n}\n\n.setting-desc {\n  font-size: 13px;\n  color: var(--text-secondary);\n  line-height: 1.5;\n}\n\n/* 开关样式 */\n.switch {\n  position: relative;\n  width: 54px;\n  height: 30px;\n  flex-shrink: 0;\n}\n\n.switch input {\n  opacity: 0;\n  width: 0;\n  height: 0;\n}\n\n.slider {\n  position: absolute;\n  cursor: pointer;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  background: linear-gradient(135deg, #e5e7eb 0%, #d1d5db 100%);\n  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);\n  border-radius: 30px;\n  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1), inset 0 -2px 4px rgba(0, 0, 0, 0.05);\n}\n\n.slider:before {\n  position: absolute;\n  content: \"\";\n  height: 24px;\n  width: 24px;\n  left: 3px;\n  bottom: 3px;\n  background: linear-gradient(135deg, #ffffff 0%, #f3f4f6 100%);\n  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);\n  border-radius: 50%;\n  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n\ninput:checked + .slider {\n  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);\n  box-shadow: 0 4px 16px rgba(45, 157, 120, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2);\n}\n\ninput:checked + .slider:before {\n  transform: translateX(24px);\n  background: linear-gradient(135deg, #ffffff 0%, #fefefe 100%);\n  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n\n/* 关键词高亮样式 */\n.highlight {\n  color: var(--color-primary);\n  font-weight: 700;\n  position: relative;\n}\n\n.highlight::after {\n  content: '';\n  position: absolute;\n  bottom: -2px;\n  left: 0;\n  width: 100%;\n  height: 2px;\n  background: linear-gradient(90deg, var(--color-primary), var(--color-primary-light));\n  border-radius: 2px;\n}\n\n.highlight-orange {\n  color: #f97316;\n  font-weight: 700;\n}\n\n.highlight-blue {\n  color: #3b82f6;\n  font-weight: 700;\n}\n\n.highlight-purple {\n  color: #a855f7;\n  font-weight: 700;\n}\n\n.highlight-red {\n  color: #ef4444;\n  font-weight: 700;\n}\n\n/* 选择器样式 */\n.select-wrapper {\n  position: relative;\n  flex-shrink: 0;\n}\n\n.select-wrapper select {\n  appearance: none;\n  -webkit-appearance: none;\n  padding: 10px 34px 10px 14px;\n  font-size: 13px;\n  font-weight: 600;\n  color: var(--text-primary);\n  background: var(--bg-card);\n  border: 2px solid var(--border-color);\n  border-radius: 10px;\n  cursor: pointer;\n  min-width: 110px;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.select-wrapper select:hover {\n  border-color: var(--color-primary);\n}\n\n.select-wrapper select:focus {\n  outline: none;\n  border-color: var(--color-primary);\n  box-shadow: 0 0 0 3px rgba(45, 157, 120, 0.1);\n}\n\n.select-wrapper::after {\n  content: '\\\\f078';\n  font-family: 'Font Awesome 6 Free';\n  font-weight: 900;\n  position: absolute;\n  right: 10px;\n  top: 50%;\n  transform: translateY(-50%);\n  color: var(--text-secondary);\n  pointer-events: none;\n  font-size: 13px;\n  transition: transform 0.3s ease;\n}\n\n.select-wrapper:hover::after {\n  transform: translateY(-50%) rotate(180deg);\n}\n\n/* 提示文案样式 */\n.tip-alert {\n  background: linear-gradient(135deg, rgba(255, 193, 7, 0.12) 0%, rgba(255, 152, 0, 0.08) 100%);\n  border: 1px solid rgba(255, 193, 7, 0.25);\n  border-radius: 16px;\n  padding: 16px 18px;\n  margin: 20px;\n  display: flex;\n  align-items: flex-start;\n  gap: 14px;\n  box-shadow: 0 4px 16px rgba(255, 193, 7, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.8);\n  position: relative;\n  overflow: hidden;\n}\n\n.tip-alert::before {\n  content: '';\n  position: absolute;\n  top: -50%;\n  right: -20%;\n  width: 100px;\n  height: 100px;\n  background: rgba(255, 193, 7, 0.1);\n  border-radius: 50%;\n}\n\n.tip-alert i {\n  color: #f97316;\n  font-size: 22px;\n  flex-shrink: 0;\n  margin-top: 2px;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert p {\n  font-size: 13px;\n  color: var(--text-secondary);\n  line-height: 1.6;\n  margin: 0;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert .highlight-text {\n  color: #ea580c;\n  font-weight: 700;\n}\n\n/* 响应式 */\n@media (max-width: 600px) {\n  .container {\n    padding: 16px 12px;\n  }\n  \n  .main-card {\n    border-radius: 20px;\n  }\n  \n  .tab-content {\n    padding: 16px;\n  }\n  \n  .tip-alert {\n    margin: 16px;\n    padding: 14px 16px;\n  }\n  \n  .source-subtabs {\n    grid-template-columns: repeat(2, 1fr);\n    gap: 8px;\n  }\n  \n  .source-options {\n    grid-template-columns: repeat(auto-fill, minmax(105px, 1fr));\n    gap: 10px;\n  }\n  \n  .setting-item {\n    padding: 16px;\n  }\n  \n  .setting-title {\n    font-size: 15px;\n  }\n  \n  .setting-desc {\n    font-size: 12px;\n  }\n}\n\n::-webkit-scrollbar {\n  width: 6px;\n  height: 6px;\n}\n\n::-webkit-scrollbar-track {\n  background: var(--bg-elevated);\n  border-radius: 3px;\n}\n\n::-webkit-scrollbar-thumb {\n  background: var(--text-tertiary);\n  border-radius: 3px;\n}\n\n::-webkit-scrollbar-thumb:hover {\n  background: var(--text-secondary);\n}\n</style>\n</head>\n<body data-theme=\"light\">\n<div class=\"container\">\n  <div class=\"main-card\">\n    <div class=\"tip-alert\">\n      <p>设置完成后请点击右上角的<span class=\"highlight-text\">√</span>应用设置</p>\n    </div>\n    \n    <div class=\"main-tabs\">\n      <div class=\"main-tab active\" id=\"tabBookSource\">书源设置</div>\n      <div class=\"main-tab\" id=\"tabSource\">搜索设置</div>\n    </div>\n    \n    <div class=\"tab-content active\" id=\"contentBookSource\">\n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">搜索模式</div>\n          <div class=\"setting-desc\">切换后会搜索对应的类型，不推荐手动设置，可以在搜索的时候使用关键词：<span class=\"highlight-orange\">t:书名</span> 搜听书，<span class=\"highlight-blue\">d:书名</span> 搜短剧，<span class=\"highlight-purple\">m:书名</span> 搜漫画</div>\n        </div>\n        <div class=\"select-wrapper\">\n          <select id=\"searchMode\">\n            <option value=\"小说\">小说</option>\n            <option value=\"听书\">听书</option>\n            <option value=\"短剧\">短剧</option>\n            <option value=\"漫画\">漫画</option>\n          </select>\n        </div>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">显示图片</div>\n          <div class=\"setting-desc\">关闭后，文章内的图片将会清除</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"showImageSwitch\" checked>\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">完整简介</div>\n          <div class=\"setting-desc\">关闭后，书籍详情页会精简简介内容</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"fullDescSwitch\" checked>\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">同步书架</div>\n          <div class=\"setting-desc\">开启后，刷新书籍详情页会将书架书籍同步到光遇网站网页端书架</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"syncBookshelfSwitch\">\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n      \n      <div class=\"setting-item\" id=\"syncPopupSection\" style=\"display: none;\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">同步弹窗</div>\n          <div class=\"setting-desc\">弹窗开关可以让您知晓同步状态，关闭后不会弹窗</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"syncPopupSwitch\">\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">网络模式</div>\n          <div class=\"setting-desc\">开启后部分来源会使用本地网络请求，如<span class=\"highlight-orange\">69书吧</span>，可能需要开梯子访问，不推荐开启</div>\n        </div>\n        <div class=\"select-wrapper\">\n          <select id=\"networkMode\">\n            <option value=\"服务器\">服务器</option>\n            <option value=\"本地\">本地</option>\n          </select>\n        </div>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">强制搜索</div>\n          <div class=\"setting-desc\">开启后搜索时会 <span class=\"highlight-red\">强制搜索全部来源</span>，搜索时长会 <span class=\"highlight-orange\">明显增长</span>，若无必要不建议开启</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"forceSearchSwitch\">\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n      \n      <div class=\"setting-item\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">目录显示来源</div>\n          <div class=\"setting-desc\">开启后，目录最后一个章节的标题将显示来源，方便换源的时候开启加载目录可以知道是哪个来源</div>\n        </div>\n        <label class=\"switch\">\n          <input type=\"checkbox\" id=\"showSourceInTocSwitch\" checked>\n          <span class=\"slider\"></span>\n        </label>\n      </div>\n    </div>\n    \n    <div class=\"tab-content\" id=\"contentSource\">\n      <div class=\"source-subtabs\">\n        <div class=\"source-subtab novel active\" id=\"subtabNovel\" data-type=\"小说\">\n          <i class=\"fas fa-book-open\"></i>\n          <span>小说</span>\n        </div>\n        <div class=\"source-subtab audio\" id=\"subtabAudio\" data-type=\"听书\">\n          <i class=\"fas fa-headphones\"></i>\n          <span>听书</span>\n        </div>\n        <div class=\"source-subtab comic\" id=\"subtabComic\" data-type=\"漫画\">\n          <i class=\"fas fa-image\"></i>\n          <span>漫画</span>\n        </div>\n        <div class=\"source-subtab drama\" id=\"subtabDrama\" data-type=\"短剧\">\n          <i class=\"fas fa-video\"></i>\n          <span>短剧</span>\n        </div>\n      </div>\n      <div class=\"selected-info\" style=\"margin-bottom: 10px; background: rgba(45, 157, 120, 0.08); border-color: rgba(45, 157, 120, 0.2);\">\n        推荐选择全部，如需要搜索特定的资源可以搜索的时候使用 <span class=\"highlight\">书名@来源</span> 进行搜索\n      </div>\n      <div id=\"sourceOptions\" class=\"source-options\"></div>\n      <div class=\"selected-info\" id=\"selectedInfo\">\n        当前选中: <span id=\"selectedCount\">0</span> 个来源\n      </div>\n    </div>\n    \n    <div id=\"hiddenSettings\" style=\"display: none;\">\n      <script type=\"application/json\" id=\"settingsJson\">\n        ${JSON.stringify(data || {\"小说\":\"全部\",\"听书\":\"全部\",\"漫画\":\"全部\",\"短剧\":\"全部\",\"搜索模式\":\"小说\",\"显示图片\":\"true\",\"完整简介\":\"true\",\"同步书架\":\"false\",\"同步弹窗\":\"true\",\"网络模式\":\"服务器\",\"强制搜索\":\"false\",\"目录显示来源\":\"true\"})}\n      </script>\n      <div id=\"settingsDiv\">\n        <span id=\"novelSource\">${(data && data.小说) || '全部'}</span>\n        <span id=\"audioSource\">${(data && data.听书) || '全部'}</span>\n        <span id=\"comicSource\">${(data && data.漫画) || '全部'}</span>\n        <span id=\"dramaSource\">${(data && data.短剧) || '全部'}</span>\n        <span id=\"searchModeValue\">${(data && data.搜索模式) || '小说'}</span>\n        <span id=\"showImageSwitchValue\">${(data && data.显示图片) || 'true'}</span>\n        <span id=\"fullDescSwitchValue\">${(data && data.完整简介) || 'true'}</span>\n        <span id=\"syncBookshelfSwitchValue\">${(data && data.同步书架) || 'false'}</span>\n        <span id=\"syncPopupSwitchValue\">${(data && data.同步弹窗) || 'true'}</span>\n        <span id=\"networkModeValue\">${(data && data.网络模式) || '服务器'}</span>\n        <span id=\"forceSearchSwitchValue\">${(data && data.强制搜索) || 'false'}</span>\n        <span id=\"showSourceInTocValue\">${(data && data.目录显示来源) || 'true'}</span>\n      </div>\n    </div>\n  </div>\n</div>\n\n<script>\nconst SOURCES = ${JSON.stringify(config)};\nlet settings = ${JSON.stringify(data)};\nlet currentType = '小说';\n\ndocument.getElementById('tabSource').addEventListener('click', () => {\n  document.getElementById('tabSource').classList.add('active');\n  document.getElementById('tabBookSource').classList.remove('active');\n  document.getElementById('contentSource').classList.add('active');\n  document.getElementById('contentBookSource').classList.remove('active');\n});\n\ndocument.getElementById('tabBookSource').addEventListener('click', () => {\n  document.getElementById('tabBookSource').classList.add('active');\n  document.getElementById('tabSource').classList.remove('active');\n  document.getElementById('contentBookSource').classList.add('active');\n  document.getElementById('contentSource').classList.remove('active');\n});\n\nconst subtabs = document.querySelectorAll('.source-subtab');\nsubtabs.forEach(tab => {\n  tab.addEventListener('click', () => {\n    subtabs.forEach(t => t.classList.remove('active'));\n    tab.classList.add('active');\n    currentType = tab.dataset.type;\n    renderSourceOptions();\n  });\n});\n\nfunction renderSourceOptions() {\n  const optionsContainer = document.getElementById('sourceOptions');\n  const key = \\`搜索\\${currentType}\\`;\n  const sources = SOURCES[key] || [];\n  const savedValue = settings[currentType] || '';\n  const selectedValues = savedValue === '全部' ? ['全部'] : (savedValue ? savedValue.split(',') : []);\n  \n  optionsContainer.innerHTML = '';\n  \n  const allOption = document.createElement('div');\n  allOption.className = \\`source-option all \\${selectedValues.includes('全部') ? 'selected' : ''}\\`;\n  allOption.textContent = '全部';\n  allOption.addEventListener('click', () => selectOption('全部'));\n  optionsContainer.appendChild(allOption);\n  \n  sources.forEach(source => {\n    const option = document.createElement('div');\n    option.className = \\`source-option \\${selectedValues.includes(source) ? 'selected' : ''}\\`;\n    option.textContent = source;\n    option.addEventListener('click', () => selectOption(source));\n    optionsContainer.appendChild(option);\n  });\n  \n  updateSelectedInfo();\n}\n\nfunction updateHiddenSettings() {\n  const jsonEl = document.getElementById('settingsJson');\n  if (jsonEl) {\n    jsonEl.textContent = JSON.stringify(settings);\n  }\n  \n  const typeMap = {\n    '小说': 'novelSource',\n    '听书': 'audioSource',\n    '漫画': 'comicSource',\n    '短剧': 'dramaSource',\n    '搜索模式': 'searchModeValue',\n    '显示图片': 'showImageSwitchValue',\n    '完整简介': 'fullDescSwitchValue',\n    '同步书架': 'syncBookshelfSwitchValue',\n    '同步弹窗': 'syncPopupSwitchValue',\n    '网络模式': 'networkModeValue',\n    '强制搜索': 'forceSearchSwitchValue',\n    '目录显示来源': 'showSourceInTocValue'\n  };\n  \n  Object.keys(typeMap).forEach(type => {\n    const el = document.getElementById(typeMap[type]);\n    if (el) {\n      el.textContent = settings[type] != undefined ? settings[type] : (type.includes('开关') ? 'false' : '全部');\n    }\n  });\n}\n\nfunction setupBookSourceSettings() {\n  document.getElementById('searchMode').addEventListener('change', (e) => {\n    settings['搜索模式'] = e.target.value;\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('showImageSwitch').addEventListener('change', (e) => {\n    settings['显示图片'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('fullDescSwitch').addEventListener('change', (e) => {\n    settings['完整简介'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('syncBookshelfSwitch').addEventListener('change', (e) => {\n    settings['同步书架'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n    \n    const syncPopupSection = document.getElementById('syncPopupSection');\n    const syncPopupSwitch = document.getElementById('syncPopupSwitch');\n    if (e.target.checked) {\n      syncPopupSection.style.display = 'flex';\n      if (settings['同步弹窗'] == undefined) {\n        settings['同步弹窗'] = 'true';\n        syncPopupSwitch.checked = true;\n        updateHiddenSettings();\n      }\n    } else {\n      syncPopupSection.style.display = 'none';\n    }\n  });\n  \n  document.getElementById('syncPopupSwitch').addEventListener('change', (e) => {\n    settings['同步弹窗'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('networkMode').addEventListener('change', (e) => {\n    settings['网络模式'] = e.target.value;\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('forceSearchSwitch').addEventListener('change', (e) => {\n    settings['强制搜索'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  document.getElementById('showSourceInTocSwitch').addEventListener('change', (e) => {\n    settings['目录显示来源'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n}\n\nfunction initBookSourceSettings() {\n  const searchModeEl = document.getElementById('searchMode');\n  if (searchModeEl && settings['搜索模式']) {\n    searchModeEl.value = settings['搜索模式'];\n  }\n  \n  const showImageEl = document.getElementById('showImageSwitch');\n  if (showImageEl) {\n    showImageEl.checked = settings['显示图片'] != 'false';\n  }\n  \n  const fullDescEl = document.getElementById('fullDescSwitch');\n  if (fullDescEl) {\n    fullDescEl.checked = settings['完整简介'] != 'false';\n  }\n  \n  const syncBookshelfEl = document.getElementById('syncBookshelfSwitch');\n  if (syncBookshelfEl) {\n    syncBookshelfEl.checked = settings['同步书架'] === 'true';\n  }\n  \n  const syncPopupSection = document.getElementById('syncPopupSection');\n  const syncPopupSwitch = document.getElementById('syncPopupSwitch');\n  if (syncPopupSwitch) {\n    syncPopupSwitch.checked = settings['同步弹窗'] != 'false';\n  }\n  if (syncPopupSection) {\n    syncPopupSection.style.display = (settings['同步书架'] === 'true') ? 'flex' : 'none';\n  }\n  \n  const networkModeEl = document.getElementById('networkMode');\n  if (networkModeEl && settings['网络模式']) {\n    networkModeEl.value = settings['网络模式'];\n  }\n  \n  const forceSearchEl = document.getElementById('forceSearchSwitch');\n  if (forceSearchEl) {\n    forceSearchEl.checked = settings['强制搜索'] === 'true';\n  }\n  \n  const showSourceInTocEl = document.getElementById('showSourceInTocSwitch');\n  if (showSourceInTocEl) {\n    showSourceInTocEl.checked = settings['目录显示来源'] != 'false';\n  }\n}\n\nfunction selectOption(value) {\n  const key = \\`搜索\\${currentType}\\`;\n  const sources = SOURCES[key] || [];\n  \n  if (value === '全部') {\n    settings[currentType] = '全部';\n    updateHiddenSettings();\n    renderSourceOptions();\n    return;\n  }\n  \n  let currentValue = settings[currentType] || '';\n  \n  if (currentValue === '全部') {\n    currentValue = '';\n  }\n  \n  let values = currentValue ? currentValue.split(',') : [];\n  \n  const index = values.indexOf(value);\n  if (index > -1) {\n    values.splice(index, 1);\n  } else {\n    values.push(value);\n  }\n  \n  if (values.length === 0) {\n    settings[currentType] = '全部';\n  } else {\n    settings[currentType] = values.join(',');\n  }\n  \n  updateHiddenSettings();\n  renderSourceOptions();\n}\n\nfunction updateSelectedInfo() {\n  const key = \\`搜索\\${currentType}\\`;\n  const sources = SOURCES[key] || [];\n  const savedValue = settings[currentType] || '';\n  \n  if (savedValue === '全部') {\n    document.getElementById('selectedCount').textContent = '全部';\n  } else {\n    const count = savedValue ? savedValue.split(',').length : 0;\n    document.getElementById('selectedCount').textContent = count;\n  }\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  let savedSettings = {};\n  try {\n    const jsonEl = document.getElementById('settingsJson');\n    if (jsonEl) {\n      savedSettings = JSON.parse(jsonEl.textContent);\n    }\n  } catch (e) {\n    console.error('读取初始设置失败:', e);\n  }\n  \n  settings = {\n    '小说': savedSettings['小说'] || '全部',\n    '听书': savedSettings['听书'] || '全部',\n    '漫画': savedSettings['漫画'] || '全部',\n    '短剧': savedSettings['短剧'] || '全部',\n    '搜索模式': savedSettings['搜索模式'] || '小说',\n    '显示图片': savedSettings['显示图片'] || 'true',\n    '完整简介': savedSettings['完整简介'] || 'true',\n    '同步书架': savedSettings['同步书架'] || 'false',\n    '同步弹窗': savedSettings['同步弹窗'] || 'true',\n    '网络模式': savedSettings['网络模式'] || '服务器',\n    '强制搜索': savedSettings['强制搜索'] || 'false',\n    '目录显示来源': savedSettings['目录显示来源'] || 'true'\n  };\n  \n  initBookSourceSettings();\n  setupBookSourceSettings();\n  renderSourceOptions();\n});\n</script>\n</body>\n</html>\n    `\n    let body;\n    try {\n        body = java.startBrowserAwait(`data:text/html;base64,${java.base64Encode(html)}`, '光遇书源设置', false).body();\n    } catch (e) {\n        let islyc = this.checkEnv();\n        if (islyc == \"安卓\") {\n            java.longToast(\"\\n当前软件版本过低，请更新软件，或者使用底部备用设置方案~\");\n        } else {\n            java.longToast(\"\\n请点击页面右上角√才能设置成功哦~\");\n        }\n        return;\n    }\n    \n    let settings = {};\n    try {\n        const getSpanText = (spanId) => {\n            const regex = new RegExp('id=\"' + spanId + '\"\\s*>\\s*([^<]*?)\\s*<\\/span>');\n            const match = body.match(regex);\n            return match ? match[1].trim() : \"\";\n        };\n        settings = {\n            '搜索模式': getSpanText('searchModeValue'),\n            '显示图片': getSpanText('showImageSwitchValue'),\n            '完整简介': getSpanText('fullDescSwitchValue'),\n            '同步书架': getSpanText('syncBookshelfSwitchValue'),\n            '同步弹窗': getSpanText('syncPopupSwitchValue'),\n            '网络模式': getSpanText('networkModeValue'),\n            '强制搜索': getSpanText('forceSearchSwitchValue'),\n            '目录显示来源': getSpanText('showSourceInTocValue'),\n            '小说': getSpanText('novelSource'),\n            '听书': getSpanText('audioSource'),\n            '漫画': getSpanText('comicSource'),\n            '短剧': getSpanText('dramaSource'),\n        };\n        const settingsText = Object.keys(settings).map(key => `${key}: ${settings[key]}`).join('\\n');\n        java.longToast(\"\\n\" + settingsText);\n\n    } catch (e) {\n        settings = {\n            '搜索模式': '小说',\n            '显示图片': 'true',\n            '完整简介': 'true',\n            '同步书架': 'false',\n            '同步弹窗': 'true',\n            '网络模式': '服务器',\n            '强制搜索': 'false',\n            '目录显示来源': 'true',\n            '小说': '全部',\n            '听书': '全部',\n            '漫画': '全部',\n            '短剧': '全部',\n        };\n    }\n    this.setVariable(\"更多设置\", settings, false)\n}\n\n\n// 段评设置页面\nfunction getSvgSettings() {\n    const {\n        java\n    } = this;\n    const islyc = this.checkEnv();\n    if (islyc == \"苹果\") {\n        java.longToast(\"\\n当前软件不支持设置段评样式\");\n        return;\n    }\n    let data = this.getVariable('段评设置');\n    let base_url = this.BaseUrl();\n    let qttoken = this.getToken();\n\n    let html = `\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no\">\n<title>光遇小说 - 段评设置</title>\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\">\n<style>\n* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  -webkit-tap-highlight-color: transparent;\n}\n\n:root {\n  --color-primary: #2D9D78;\n  --color-primary-light: #3DB893;\n  --color-primary-dark: #1E6F55;\n  --color-accent: #FFB74D;\n  --color-success: #4CAF50;\n  --color-error: #F44336;\n  --color-warning: #FFC107;\n  --color-info: #2196F3;\n  \n  --bg-dark: #f5f7fa;\n  --bg-darker: #ffffff;\n  --bg-card: rgba(255, 255, 255, 0.95);\n  --bg-elevated: #f8fafb;\n  \n  --text-primary: #1a1d23;\n  --text-secondary: #6b7280;\n  --text-tertiary: #9ca3af;\n  \n  --border-color: rgba(0, 0, 0, 0.08);\n  \n  --font-display: 'Libre Baskerville', serif;\n  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\n}\n\n[data-theme=\"dark\"] {\n  --bg-dark: #0A1628;\n  --bg-darker: #050B14;\n  --bg-card: #142235;\n  --bg-elevated: #1A2B42;\n  \n  --text-primary: #FFFFFF;\n  --text-secondary: rgba(255, 255, 255, 0.7);\n  --text-tertiary: rgba(255, 255, 255, 0.5);\n  \n  --border-color: rgba(255, 255, 255, 0.1);\n}\n\nhtml, body {\n  width: 100%;\n  min-height: 100vh;\n  font-family: var(--font-body);\n  font-size: 16px;\n  color: var(--text-primary);\n  background: var(--bg-darker);\n  overflow-x: hidden;\n}\n\n.container {\n  padding: 20px;\n  max-width: 800px;\n  margin: 0 auto;\n}\n\n.main-card {\n  background: var(--bg-card);\n  border-radius: 20px;\n  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1);\n  border: 1px solid var(--border-color);\n  overflow: hidden;\n}\n/* 提示文案样式 */\n.tip-alert {\n  background: linear-gradient(135deg, rgba(255, 193, 7, 0.12) 0%, rgba(255, 152, 0, 0.08) 100%);\n  border: 1px solid rgba(255, 193, 7, 0.25);\n  border-radius: 16px;\n  padding: 16px 18px;\n  margin: 20px;\n  display: flex;\n  align-items: flex-start;\n  gap: 14px;\n  box-shadow: 0 4px 16px rgba(255, 193, 7, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.8);\n  position: relative;\n  overflow: hidden;\n}\n\n.tip-alert::before {\n  content: '';\n  position: absolute;\n  top: -50%;\n  right: -20%;\n  width: 100px;\n  height: 100px;\n  background: rgba(255, 193, 7, 0.1);\n  border-radius: 50%;\n}\n\n.tip-alert i {\n  color: #f97316;\n  font-size: 22px;\n  flex-shrink: 0;\n  margin-top: 2px;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert p {\n  font-size: 13px;\n  color: var(--text-secondary);\n  line-height: 1.6;\n  margin: 0;\n  position: relative;\n  z-index: 1;\n}\n\n.tip-alert .highlight-text {\n  color: #ea580c;\n  font-weight: 700;\n}\n/* 设置项样式 */\n.setting-item {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  padding: 16px;\n  border-bottom: 1px solid var(--border-color);\n}\n\n.setting-item:last-child {\n  border-bottom: none;\n}\n\n.setting-info {\n  flex: 1;\n  min-width: 0;\n}\n\n.setting-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--text-primary);\n  margin-bottom: 4px;\n}\n\n.setting-desc {\n  font-size: 12px;\n  color: var(--text-secondary);\n  line-height: 1.4;\n}\n\n/* 开关样式 */\n.switch {\n  position: relative;\n  display: inline-block;\n  width: 48px;\n  height: 28px;\n  flex-shrink: 0;\n}\n\n.switch input {\n  opacity: 0;\n  width: 0;\n  height: 0;\n}\n\n.slider {\n  position: absolute;\n  cursor: pointer;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  background-color: #ccc;\n  transition: 0.3s;\n  border-radius: 28px;\n}\n\n.slider:before {\n  position: absolute;\n  content: \"\";\n  height: 22px;\n  width: 22px;\n  left: 3px;\n  bottom: 3px;\n  background-color: white;\n  transition: 0.3s;\n  border-radius: 50%;\n  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n}\n\ninput:checked + .slider {\n  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));\n}\n\ninput:checked + .slider:before {\n  transform: translateX(20px);\n}\n\n/* 选择器样式 */\n.select-wrapper {\n  position: relative;\n  flex-shrink: 0;\n}\n\n.select-wrapper select {\n  appearance: none;\n  -webkit-appearance: none;\n  padding: 8px 32px 8px 12px;\n  font-size: 13px;\n  font-weight: 600;\n  color: var(--text-primary);\n  background: var(--bg-elevated);\n  border: 1px solid var(--border-color);\n  border-radius: 8px;\n  cursor: pointer;\n  min-width: 120px;\n}\n\n.select-wrapper::after {\n  content: '\\\\f078';\n  font-family: 'Font Awesome 6 Free';\n  font-weight: 900;\n  position: absolute;\n  right: 8px;\n  top: 50%;\n  transform: translateY(-50%);\n  color: var(--text-secondary);\n  pointer-events: none;\n  font-size: 12px;\n}\n\n/* 颜色选择器样式 */\n.color-picker-wrapper {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  flex-shrink: 0;\n}\n\n.color-input {\n  width: 40px;\n  height: 40px;\n  border: none;\n  border-radius: 8px;\n  cursor: pointer;\n  background: transparent;\n  padding: 2px;\n}\n\n.color-input::-webkit-color-swatch-wrapper {\n  padding: 0;\n}\n\n.color-input::-webkit-color-swatch {\n  border-radius: 6px;\n  border: 2px solid var(--border-color);\n}\n\n.color-text-input {\n  width: 100px;\n  padding: 8px 10px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--text-primary);\n  background: var(--bg-elevated);\n  border: 1px solid var(--border-color);\n  border-radius: 6px;\n  text-transform: uppercase;\n}\n\n.transparent-btn {\n  padding: 8px 12px;\n  font-size: 11px;\n  font-weight: 600;\n  color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.1);\n  border: 1px solid var(--color-primary);\n  border-radius: 6px;\n  cursor: pointer;\n  transition: all 0.2s ease;\n}\n\n.transparent-btn:hover {\n  background: rgba(45, 157, 120, 0.2);\n}\n\n/* 预览区域 */\n/* 自定义样式容器 */\n.custom-style-container {\n  padding: 0 16px 16px;\n}\n\n.custom-style-container textarea {\n  width: 100%;\n  padding: 12px;\n  font-size: 13px;\n  font-family: monospace;\n  color: var(--text-primary);\n  background: var(--bg-card);\n  border: 1px solid var(--border-color);\n  border-radius: 8px;\n  resize: vertical;\n  min-height: 100px;\n  box-sizing: border-box;\n}\n\n/* 添加样式按钮 */\n.add-style-btn {\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));\n  border: none;\n  color: white;\n  font-size: 16px;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  box-shadow: 0 2px 8px rgba(45, 157, 120, 0.3);\n  transition: all 0.2s ease;\n}\n\n.add-style-btn:hover {\n  transform: scale(1.1);\n  box-shadow: 0 4px 12px rgba(45, 157, 120, 0.4);\n}\n\n.save-style-btn {\n  padding: 8px 16px;\n  border-radius: 8px;\n  background: linear-gradient(135deg, var(--color-accent), #f59e0b);\n  border: none;\n  color: white;\n  font-size: 13px;\n  font-weight: 600;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  box-shadow: 0 2px 8px rgba(251, 146, 60, 0.3);\n  transition: all 0.2s ease;\n}\n\n.save-style-btn:hover {\n  transform: translateY(-1px);\n  box-shadow: 0 4px 12px rgba(251, 146, 60, 0.4);\n}\n\n.more-styles-btn {\n  padding: 8px 12px;\n  border-radius: 8px;\n  background: linear-gradient(135deg, #6366f1, #8b5cf6);\n  border: none;\n  color: white;\n  font-size: 13px;\n  font-weight: 600;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  gap: 6px;\n  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.3);\n  transition: all 0.2s ease;\n}\n\n.more-styles-btn:hover {\n  transform: translateY(-1px);\n  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);\n}\n\n/* 自定义样式区域 */\n.custom-style-section {\n  padding: 0 16px 16px;\n}\n\n.custom-styles-container {\n  margin-top: 12px;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n}\n\n.empty-custom-styles {\n  text-align: center;\n  padding: 20px;\n  color: var(--text-secondary);\n  font-size: 13px;\n  background: var(--bg-elevated);\n  border-radius: 12px;\n  border: 1px dashed var(--border-color);\n}\n\n/* 自定义样式卡片 */\n.custom-style-card {\n  background: var(--bg-elevated);\n  border-radius: 12px;\n  padding: 12px;\n  border: 1px solid var(--border-color);\n}\n\n.custom-style-header {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: 10px;\n}\n\n.style-name-input {\n  flex: 1;\n  padding: 6px 10px;\n  font-size: 13px;\n  font-weight: 600;\n  color: var(--text-primary);\n  background: var(--bg-card);\n  border: 1px solid var(--border-color);\n  border-radius: 6px;\n}\n\n.style-actions {\n  display: flex;\n  gap: 6px;\n}\n\n.style-btn {\n  width: 28px;\n  height: 28px;\n  border: none;\n  border-radius: 6px;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 12px;\n  transition: all 0.2s ease;\n}\n\n.preview-btn {\n  background: rgba(45, 157, 120, 0.1);\n  color: var(--color-primary);\n}\n\n.preview-btn:hover {\n  background: rgba(45, 157, 120, 0.2);\n}\n\n.delete-btn {\n  background: rgba(244, 67, 54, 0.1);\n  color: #f44336;\n}\n\n.delete-btn:hover {\n  background: rgba(244, 67, 54, 0.2);\n}\n\n.style-code-textarea {\n  width: 100%;\n  padding: 10px;\n  font-size: 12px;\n  font-family: monospace;\n  color: var(--text-primary);\n  background: var(--bg-card);\n  border: 1px solid var(--border-color);\n  border-radius: 8px;\n  resize: vertical;\n  min-height: 80px;\n  box-sizing: border-box;\n  margin-bottom: 10px;\n}\n\n.style-preview-small {\n  display: flex;\n  justify-content: center;\n  padding: 10px;\n  background: var(--bg-card);\n  border-radius: 8px;\n}\n\n.preview-svg-container svg {\n  width: 50px;\n  height: 45px;\n}\n\n.preview-section {\n  padding: 20px;\n  background: var(--bg-elevated);\n  border-top: 1px solid var(--border-color);\n}\n\n.preview-title {\n  font-size: 14px;\n  font-weight: 700;\n  color: var(--text-primary);\n  margin-bottom: 16px;\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n\n.preview-title i {\n  color: var(--color-primary);\n}\n\n.preview-container {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  justify-content: center;\n  align-items: center;\n  min-height: 150px;\n}\n\n.preview-item {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 8px;\n  padding: 12px;\n  background: var(--bg-card);\n  border-radius: 12px;\n  border: 1px solid var(--border-color);\n}\n\n.preview-item.selected {\n  border-color: var(--color-primary);\n  background: rgba(45, 157, 120, 0.05);\n}\n\n.preview-item svg {\n  width: 60px;\n  height: 54px;\n  cursor: pointer;\n  transition: transform 0.2s ease;\n}\n\n.preview-item svg:hover {\n  transform: scale(1.1);\n}\n\n.preview-item .preview-label {\n  font-size: 11px;\n  color: var(--text-secondary);\n  text-align: center;\n}\n\n.preview-item.selected .preview-label {\n  color: var(--color-primary);\n  font-weight: 600;\n}\n\n/* 高亮文本 */\n.highlight {\n  color: var(--color-primary);\n  font-weight: 700;\n}\n\n.highlight-red {\n  color: #ef4444;\n  font-weight: 700;\n}\n\n/* Toast提示样式 */\n.toast-container {\n  position: fixed;\n  top: 20px;\n  right: 20px;\n  z-index: 1000;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n}\n\n.toast {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  padding: 14px 18px;\n  border-radius: 12px;\n  background: var(--bg-card);\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);\n  border: 1px solid var(--border-color);\n  min-width: 200px;\n  max-width: 320px;\n  animation: toastSlideIn 0.3s ease-out;\n}\n\n.toast.fade-out {\n  animation: toastFadeOut 0.3s ease-out forwards;\n}\n\n@keyframes toastSlideIn {\n  from {\n    transform: translateX(100%);\n    opacity: 0;\n  }\n  to {\n    transform: translateX(0);\n    opacity: 1;\n  }\n}\n\n@keyframes toastFadeOut {\n  from {\n    opacity: 1;\n    transform: translateX(0);\n  }\n  to {\n    opacity: 0;\n    transform: translateX(20px);\n  }\n}\n\n.toast-icon {\n  width: 32px;\n  height: 32px;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 16px;\n  flex-shrink: 0;\n}\n\n.toast-icon.success {\n  background: rgba(76, 175, 80, 0.1);\n  color: #4CAF50;\n}\n\n.toast-icon.error {\n  background: rgba(244, 67, 54, 0.1);\n  color: #F44336;\n}\n\n.toast-icon.warning {\n  background: rgba(255, 193, 7, 0.1);\n  color: #FFC107;\n}\n\n.toast-icon.info {\n  background: rgba(33, 150, 243, 0.1);\n  color: #2196F3;\n}\n\n.toast-icon.loading {\n  background: rgba(45, 157, 120, 0.1);\n  color: var(--color-primary);\n}\n\n.toast-content {\n  flex: 1;\n  font-size: 14px;\n  color: var(--text-primary);\n  font-weight: 500;\n}\n\n\n\n@keyframes spin {\n  to { transform: rotate(360deg); }\n}\n\n/* 保存按钮加载状态 */\n.save-style-btn.loading {\n  opacity: 0.7;\n  pointer-events: none;\n}\n\n.save-style-btn.loading i {\n  display: none;\n}\n\n.save-style-btn.loading .btn-text {\n  display: none;\n}\n\n\n/* 响应式 */\n@media (max-width: 600px) {\n  .container {\n    padding: 12px;\n  }\n  \n  .main-card {\n    border-radius: 16px;\n  }\n\n  .tip-alert {\n    margin: 16px;\n    padding: 14px 16px;\n  }\n    \n  .setting-item {\n    padding: 14px;\n  }\n  \n  .color-picker-wrapper {\n    flex-direction: column;\n    align-items: flex-end;\n  }\n}\n</style>\n</head>\n<body data-theme=\"light\">\n<div class=\"container\">\n  <div class=\"main-card\">\n    <div class=\"tip-alert\">\n      <p>设置完成后请点击右上角的<span class=\"highlight-text\">√</span>应用设置</p>\n    </div>\n    <!-- 设置项 -->\n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">段评</div>\n        <div class=\"setting-desc\">仅 <span class=\"highlight-red\">番茄</span>、<span class=\"highlight\">七猫</span>、<span class=\"highlight-red\">塔读</span>、<span class=\"highlight\">QQ阅读</span> 支持</div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"duanpingSwitch\" checked>\n        <span class=\"slider\"></span>\n      </label>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">神评论</div>\n        <div class=\"setting-desc\">需要开启段评开关才可生效，仅支持 <span class=\"highlight-red\">番茄</span></div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"shenpingSwitch\" checked>\n        <span class=\"slider\"></span>\n      </label>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">本章说</div>\n        <div class=\"setting-desc\">仅支持 <span class=\"highlight-red\">番茄</span></div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"benzhangSwitch\" checked>\n        <span class=\"slider\"></span>\n      </label>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">气泡增大</div>\n        <div class=\"setting-desc\">开启后，气泡显示会加大一些</div>\n      </div>\n      <label class=\"switch\">\n        <input type=\"checkbox\" id=\"bubbleLargeSwitch\">\n        <span class=\"slider\"></span>\n      </label>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">段评样式</div>\n        <div class=\"setting-desc\">选择段评显示的样式风格，下方可实时预览效果</div>\n      </div>\n      <div class=\"select-wrapper\">\n        <select id=\"duanpingStyle\">\n          <option value=\"0\">起点样式</option>\n          <option value=\"1\">番茄样式</option>\n          <option value=\"2\">精致样式</option>\n          <option value=\"3\">对话样式</option>\n          <option value=\"4\">方框样式</option>\n          <option value=\"5\">圆圈样式</option>\n        </select>\n      </div>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">边框颜色</div>\n        <div class=\"setting-desc\">设置段评边框颜色</div>\n      </div>\n      <div class=\"color-picker-wrapper\">\n        <input type=\"color\" id=\"borderColor\" value=\"#A7A7A7\" class=\"color-input\">\n        <input type=\"text\" id=\"borderColorText\" value=\"#A7A7A7\" class=\"color-text-input\">\n      </div>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">字体颜色</div>\n        <div class=\"setting-desc\">设置段评字体颜色</div>\n      </div>\n      <div class=\"color-picker-wrapper\">\n        <input type=\"color\" id=\"fontColor\" value=\"#A7A7A7\" class=\"color-input\">\n        <input type=\"text\" id=\"fontColorText\" value=\"#A7A7A7\" class=\"color-text-input\">\n      </div>\n    </div>\n    \n    <div class=\"setting-item\">\n      <div class=\"setting-info\">\n        <div class=\"setting-title\">填充颜色</div>\n        <div class=\"setting-desc\">设置段评背景填充颜色</div>\n      </div>\n      <div class=\"color-picker-wrapper\">\n        <input type=\"color\" id=\"fillColor\" value=\"#FFFFFF\" class=\"color-input\">\n        <input type=\"text\" id=\"fillColorText\" value=\"transparent\" class=\"color-text-input\">\n        <button id=\"fillColorTransparent\" class=\"transparent-btn\">透明</button>\n      </div>\n    </div>\n    \n    <!-- 自定义样式管理 -->\n    <div class=\"custom-style-section\">\n      <div class=\"setting-item\" style=\"flex-direction: column; align-items: flex-start; gap: 12px;\">\n        <div class=\"setting-info\">\n          <div class=\"setting-title\">自定义样式管理</div>\n          <div class=\"setting-desc\">点击下方\"+\"添加新的自定义样式，支持自定义名称</div>\n        </div>\n        <div style=\"display: flex; gap: 10px; align-items: center; width: 100%; justify-content: flex-end;\">\n          <button id=\"moreStylesBtn\" class=\"more-styles-btn\">\n            <i class=\"fas fa-external-link-alt\"></i>\n            <span class=\"btn-text\">更多样式</span>\n          </button>\n          <button id=\"saveCustomStyleBtn\" class=\"save-style-btn\">\n            <i class=\"fas fa-save\"></i>\n            <span class=\"btn-text\">保存自定义</span>\n          </button>\n          <button id=\"addCustomStyleBtn\" class=\"add-style-btn\">\n            <i class=\"fas fa-plus\"></i>\n          </button>\n        </div>\n      </div>\n      \n      <div id=\"customStylesContainer\" class=\"custom-styles-container\">\n      </div>\n    </div>\n    \n    <!-- 实时预览区域 -->\n    <div class=\"preview-section\">\n      <div class=\"preview-title\">\n        <i class=\"fas fa-eye\"></i>\n        <span>实时预览</span>\n      </div>\n      <div id=\"previewContainer\" class=\"preview-container\"></div>\n    </div>\n  </div>\n  \n  <!-- 隐藏的设置数据 -->\n  <div id=\"hiddenSettings\" style=\"display: none;\">\n    <div id=\"settingsDiv\">\n      <span id=\"duanpingSwitchValue\">${(data && data.段评开关) || 'true'}</span>\n      <span id=\"shenpingSwitchValue\">${(data && data.神评论开关) || 'true'}</span>\n      <span id=\"benzhangSwitchValue\">${(data && data.本章说开关) || 'true'}</span>\n      <span id=\"bubbleLargeSwitchValue\">${(data && data.气泡增大) || 'false'}</span>\n      <span id=\"duanpingStyleValue\">${(data && data.段评样式) || '0'}</span>\n      <span id=\"borderColorValue\">${(data && data.段评边框颜色) || '#A7A7A7'}</span>\n      <span id=\"fontColorValue\">${(data && data.段评字体颜色) || '#A7A7A7'}</span>\n      <span id=\"fillColorValue\">${(data && data.段评填充颜色) || 'transparent'}</span>\n      <span id=\"baseUrlValue\">${base_url}</span>\n      <span id=\"qttokenValue\">${qttoken}</span>\n    </div>\n    <textarea id=\"customStylesValue\" style=\"display: none;\">{}</textarea>\n  </div>\n  \n  <!-- Toast提示容器 -->\n  <div id=\"toastContainer\" class=\"toast-container\"></div>\n</div>\n\n<script>\n// SVG模板数据\nconst SVG_TEMPLATES = ${JSON.stringify(svgs)};\nconst STYLE_NAMES = ['起点样式', '番茄样式', '精致样式', '对话样式', '方框样式', '圆圈样式'];\n\n// Toast提示函数\nfunction showToast(message, type = 'info', duration = 2500) {\n  const container = document.getElementById('toastContainer');\n  const toast = document.createElement('div');\n  toast.className = 'toast';\n  \n  const icons = {\n    success: '<i class=\"fas fa-check\"></i>',\n    error: '<i class=\"fas fa-times\"></i>',\n    warning: '<i class=\"fas fa-exclamation-triangle\"></i>',\n    info: '<i class=\"fas fa-info-circle\"></i>',\n    loading: '<span class=\"loading-spinner\"></span>'\n  };\n  \n  toast.innerHTML = \\`\n    <div class=\"toast-icon \\${type}\">\\${icons[type] || icons.info}</div>\n    <div class=\"toast-content\">\\${message}</div>\n  \\`;\n  \n  container.appendChild(toast);\n  \n  setTimeout(() => {\n    toast.classList.add('fade-out');\n    setTimeout(() => {\n      container.removeChild(toast);\n    }, 300);\n  }, duration);\n}\n\nfunction showAlert(message) {\n  showToast(message, 'info');\n}\n\nfunction showSuccess(message) {\n  showToast(message, 'success');\n}\n\nfunction showError(message) {\n  showToast(message, 'error');\n}\n\nfunction showConfirm(message, onConfirm) {\n  const confirm = window.confirm(message);\n  if (confirm && onConfirm) {\n    onConfirm();\n  }\n}\n\n// 当前设置\nlet settings = {\n  '段评开关': '${(data && data.段评开关) || 'true'}',\n  '神评论开关': '${(data && data.神评论开关) || 'true'}',\n  '本章说开关': '${(data && data.本章说开关) || 'true'}',\n  '气泡增大': '${(data && data.气泡增大) || 'false'}',\n  '段评样式': '${(data && data.段评样式) || '0'}',\n  '段评边框颜色': '${(data && data.段评边框颜色) || '#A7A7A7'}',\n  '段评字体颜色': '${(data && data.段评字体颜色) || '#A7A7A7'}',\n  '段评填充颜色': '${(data && data.段评填充颜色) || 'transparent'}'\n};\n\n// 自定义样式对象 {\"自定义样式1\": \"<svg>...</svg>\", ...}\nlet customStyles = {};\nfunction initCustomStyles() {\n  customStyles = {};\n}\nfunction fetchCustomStyles() {\n  const baseUrl = document.getElementById('baseUrlValue').textContent;\n  const qttoken = document.getElementById('qttokenValue').textContent;\n  if (!baseUrl || !qttoken) {\n    return;\n  }\n  const url = baseUrl + '/user_settings?set_type=legado_para&qttoken=' + encodeURIComponent(qttoken);\n  fetch(url, {\n    method: 'GET',\n    headers: {\n      'Content-Type': 'application/json'\n    }\n  }).then(response => response.json())\n    .then(data => {\n      if (data && data.data && data.data['自定义段评样式']) {\n        customStyles = data.data['自定义段评样式'];\n      }\n      updateHiddenSettings();\n      renderCustomStyles();\n      updateStyleSelector();\n      renderPreview();\n    })\n    .catch(err => {\n      console.error('获取自定义段评样式失败:', err);\n    });\n}\nfunction saveCustomStyles() {\n  const saveBtn = document.getElementById('saveCustomStyleBtn');\n  const baseUrl = document.getElementById('baseUrlValue').textContent;\n  const qttoken = document.getElementById('qttokenValue').textContent;\n  if (!baseUrl || !qttoken) {\n    showAlert('无法获取配置信息');\n    return;\n  }    \n  const url = baseUrl + '/user_settings?qttoken=' + encodeURIComponent(qttoken);\n  const body = {\n    legado_para: {\n        '段评开关': settings['段评开关'],\n        '神评论开关': settings['神评论开关'],\n        '本章说开关': settings['本章说开关'],\n        '气泡增大': settings['气泡增大'],\n        '段评样式': settings['段评样式'],\n        '段评边框颜色': settings['段评边框颜色'],\n        '段评字体颜色': settings['段评字体颜色'],\n        '段评填充颜色': settings['段评填充颜色'],\n        '自定义段评样式': customStyles\n    }\n  };\n  fetch(url, {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json'\n    },\n    body: JSON.stringify(body)\n  }).then(response => response.json())\n    .then(data => {\n      saveBtn.classList.remove('loading');\n      if (data && data.code === 0) {\n        showSuccess('保存成功');\n      } else {\n        showError('保存失败: ' + (data && data.message || '未知错误'));\n      }\n    })\n    .catch(err => {\n      console.error('保存自定义段评样式失败:', err);\n      showError('保存失败');\n    });\n}\n\n// HTML转义函数\nfunction htmlEscape(str) {\n  if (!str) return str;\n  return str.replace(/&/g, '&amp;')\n            .replace(/</g, '&lt;')\n            .replace(/>/g, '&gt;')\n            .replace(/\"/g, '&quot;')\n            .replace(/'/g, '&#039;');\n}\n\n// HTML反转义函数\nfunction htmlUnescape(str) {\n  if (!str) return str;\n  return str.replace(/&amp;/g, '&')\n            .replace(/&lt;/g, '<')\n            .replace(/&gt;/g, '>')\n            .replace(/&quot;/g, '\"')\n            .replace(/&#039;/g, \"'\");\n}\n\n// 更新隐藏设置\nfunction updateHiddenSettings() {\n  document.getElementById('duanpingSwitchValue').textContent = settings['段评开关'];\n  document.getElementById('shenpingSwitchValue').textContent = settings['神评论开关'];\n  document.getElementById('benzhangSwitchValue').textContent = settings['本章说开关'];\n  document.getElementById('bubbleLargeSwitchValue').textContent = settings['气泡增大'];\n  document.getElementById('duanpingStyleValue').textContent = settings['段评样式'];\n  document.getElementById('borderColorValue').textContent = settings['段评边框颜色'];\n  document.getElementById('fontColorValue').textContent = settings['段评字体颜色'];\n  document.getElementById('fillColorValue').textContent = settings['段评填充颜色'];\n  document.getElementById('customStylesValue').textContent = htmlEscape(JSON.stringify(customStyles));\n}\n\n// 获取下一个自定义样式名称\nfunction getNextStyleName() {\n  let count = 1;\n  while (customStyles['自定义样式' + count]) {\n    count++;\n  }\n  return '自定义样式' + count;\n}\n\n// 添加自定义样式\nfunction addCustomStyle() {\n  const name = getNextStyleName();\n  customStyles[name] = '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"90\" viewBox=\"0 0 25 17\" fill=\"none\"><rect x=\"0.5\" y=\"0.5\" width=\"24\" height=\"16\" rx=\"2.5\" ry=\"2.5\" stroke=\"$color\" style=\"stroke-opacity: 0.5; fill: $tccolor; fill-opacity: 0.5;\"/><text x=\"12.5\" y=\"12\" text-anchor=\"middle\" font-size=\"10\" fill=\"$fontcolor\" font-family=\"Arial, sans-serif\">$displayText</text></svg>';\n  renderCustomStyles();\n  updateHiddenSettings();\n  updateStyleSelector();\n  renderPreview();\n}\n\n// 获取选中的样式名称\nfunction getSelectedStyleName() {\n  const styleValue = settings['段评样式'];\n  // 如果是数字，返回默认样式名称\n  if (!isNaN(styleValue)) {\n    return STYLE_NAMES[parseInt(styleValue)] || styleValue;\n  }\n  // 如果是自定义样式，返回自定义名称\n  return styleValue;\n}\n\n// 删除自定义样式\nfunction deleteCustomStyle(name) {\n  showConfirm('确定删除 \"' + name + '\" 吗？', function() {\n    delete customStyles[name];\n    if (settings['段评样式'] === name) {\n      settings['段评样式'] = '0';\n    }\n    renderCustomStyles();\n    updateHiddenSettings();\n    updateStyleSelector();\n    renderPreview();\n  });\n}\n\n// 更新自定义样式\nfunction updateCustomStyle(name, value) {\n  customStyles[name] = value;\n  updateHiddenSettings();\n  renderPreview();\n}\n\n// 重命名自定义样式\nfunction renameCustomStyle(oldName, newName) {\n  if (!newName || newName.trim() == '') return;\n  if (customStyles[newName] && newName != oldName) {\n    showAlert('名称已存在');\n    return;\n  }\n  customStyles[newName] = customStyles[oldName];\n  delete customStyles[oldName];\n  // 如果当前选中的是旧名称，更新为新名称\n  if (settings['段评样式'] === oldName) {\n    settings['段评样式'] = newName;\n  }\n  renderCustomStyles();\n  updateHiddenSettings();\n  updateStyleSelector();\n  renderPreview();\n}\n\n// 渲染自定义样式列表\nfunction renderCustomStyles() {\n  const container = document.getElementById('customStylesContainer');\n  container.innerHTML = '';\n  \n  if (Object.keys(customStyles).length === 0) {\n    container.innerHTML = '<div class=\"empty-custom-styles\">暂无自定义样式，点击上方\"+\"添加</div>';\n    return;\n  }\n  \n  Object.keys(customStyles).forEach((name, index) => {\n    const styleCard = document.createElement('div');\n    styleCard.className = 'custom-style-card';\n    // 转义SVG代码中的特殊字符\n    const escapedSvg = customStyles[name]\n      .replace(/&/g, '&amp;')\n      .replace(/</g, '&lt;')\n      .replace(/>/g, '&gt;')\n      .replace(/\"/g, '&quot;')\n      .replace(/'/g, '&#039;');\n    \n    styleCard.innerHTML = \\`\n      <div class=\"custom-style-header\">\n        <input type=\"text\" class=\"style-name-input\" value=\"\\${name}\" data-original=\"\\${name}\">\n        <div class=\"style-actions\">\n          <button class=\"style-btn preview-btn\" title=\"预览\">\n            <i class=\"fas fa-eye\"></i>\n          </button>\n          <button class=\"style-btn delete-btn\" title=\"删除\">\n            <i class=\"fas fa-trash\"></i>\n          </button>\n        </div>\n      </div>\n      <textarea class=\"style-code-textarea\" rows=\"4\" placeholder=\"输入SVG代码...\">\\${escapedSvg}</textarea>\n      <div class=\"style-preview-small\">\n        <div class=\"preview-svg-container\"></div>\n      </div>\n    \\`;\n    \n    // 绑定事件\n    const nameInput = styleCard.querySelector('.style-name-input');\n    const codeTextarea = styleCard.querySelector('.style-code-textarea');\n    const deleteBtn = styleCard.querySelector('.delete-btn');\n    const previewBtn = styleCard.querySelector('.preview-btn');\n    \n    nameInput.addEventListener('change', () => {\n      const newName = nameInput.value.trim();\n      const originalName = nameInput.dataset.original;\n      if (newName != originalName) {\n        renameCustomStyle(originalName, newName);\n      }\n    });\n    \n    codeTextarea.addEventListener('input', () => {\n      updateCustomStyle(name, codeTextarea.value);\n      // 更新小预览\n      updateSmallPreview(styleCard.querySelector('.preview-svg-container'), codeTextarea.value);\n    });\n    \n    deleteBtn.addEventListener('click', () => deleteCustomStyle(name));\n    \n    previewBtn.addEventListener('click', () => {\n      // 设置为当前选中样式（使用自定义名称）\n      settings['段评样式'] = name;\n      document.getElementById('duanpingStyle').value = name;\n      updateHiddenSettings();\n      renderPreview();\n    });\n    \n    // 初始化小预览\n    updateSmallPreview(styleCard.querySelector('.preview-svg-container'), customStyles[name]);\n    \n    container.appendChild(styleCard);\n  });\n}\n\n// 更新小预览\nfunction updateSmallPreview(container, svgCode) {\n  try {\n    const preview = svgCode\n      .split('$color').join(settings['段评边框颜色'])\n      .split('$fontcolor').join(settings['段评字体颜色'])\n      .split('$tccolor').join(settings['段评填充颜色'])\n      .split('$displayText').join('99+');\n    container.innerHTML = preview;\n  } catch (e) {\n    container.innerHTML = '<span style=\"color: #999; font-size: 12px;\">解析失败</span>';\n  }\n}\n\n// 渲染预览\nfunction renderPreview() {\n  const container = document.getElementById('previewContainer');\n  container.innerHTML = '';\n  \n  // 添加默认样式\n  SVG_TEMPLATES.forEach((svgTemplate, index) => {\n    const svgContent = svgTemplate\n      .split('$color').join(settings['段评边框颜色'])\n      .split('$fontcolor').join(settings['段评字体颜色'])\n      .split('$tccolor').join(settings['段评填充颜色'])\n      .split('$displayText').join('99+');\n    \n    const item = document.createElement('div');\n    item.className = \\`preview-item \\${settings['段评样式'] === String(index) ? 'selected' : ''}\\`;\n    item.innerHTML = \\`\n      \\${svgContent}\n      <div class=\"preview-label\">\\${STYLE_NAMES[index]}</div>\n    \\`;\n    \n    item.addEventListener('click', () => {\n      settings['段评样式'] = String(index);\n      document.getElementById('duanpingStyle').value = String(index);\n      updateHiddenSettings();\n      renderPreview();\n    });\n    \n    container.appendChild(item);\n  });\n  \n  // 添加自定义样式预览\n  Object.keys(customStyles).forEach((name) => {\n    const svgCode = customStyles[name];\n    let svgContent;\n    try {\n      svgContent = svgCode\n        .split('$color').join(settings['段评边框颜色'])\n        .split('$fontcolor').join(settings['段评字体颜色'])\n        .split('$tccolor').join(settings['段评填充颜色'])\n        .split('$displayText').join('99+');\n    } catch (e) {\n      svgContent = '<svg width=\"60\" height=\"54\" viewBox=\"0 0 60 54\"><text x=\"30\" y=\"27\" text-anchor=\"middle\" fill=\"#999\" font-size=\"10\">解析失败</text></svg>';\n    }\n    \n    const item = document.createElement('div');\n    item.className = \\`preview-item \\${settings['段评样式'] === name ? 'selected' : ''}\\`;\n    item.innerHTML = \\`\n      \\${svgContent}\n      <div class=\"preview-label custom-label\">\\${name}</div>\n    \\`;\n    \n    item.addEventListener('click', () => {\n      settings['段评样式'] = name;\n      document.getElementById('duanpingStyle').value = name;\n      updateHiddenSettings();\n      renderPreview();\n    });\n    \n    container.appendChild(item);\n  });\n}\n\n// 初始化事件监听\nfunction setupEventListeners() {\n  // 段评开关\n  document.getElementById('duanpingSwitch').addEventListener('change', (e) => {\n    settings['段评开关'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  // 神评论开关\n  document.getElementById('shenpingSwitch').addEventListener('change', (e) => {\n    settings['神评论开关'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  // 本章说开关\n  document.getElementById('benzhangSwitch').addEventListener('change', (e) => {\n    settings['本章说开关'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  // 气泡增大开关\n  document.getElementById('bubbleLargeSwitch').addEventListener('change', (e) => {\n    settings['气泡增大'] = e.target.checked ? 'true' : 'false';\n    updateHiddenSettings();\n  });\n  \n  // 段评样式选择\n  document.getElementById('duanpingStyle').addEventListener('change', (e) => {\n    settings['段评样式'] = e.target.value;\n    updateHiddenSettings();\n    renderPreview();\n  });\n  \n  // 边框颜色选择器\n  document.getElementById('borderColor').addEventListener('input', (e) => {\n    const color = e.target.value;\n    settings['段评边框颜色'] = color;\n    document.getElementById('borderColorText').value = color;\n    updateHiddenSettings();\n    renderPreview();\n  });\n  \n  // 边框颜色文本输入\n  document.getElementById('borderColorText').addEventListener('input', (e) => {\n    const color = e.target.value;\n    if (/^#[0-9A-Fa-f]{6}$/.test(color) || /^#[0-9A-Fa-f]{3}$/.test(color)) {\n      settings['段评边框颜色'] = color;\n      document.getElementById('borderColor').value = color;\n      updateHiddenSettings();\n      renderPreview();\n    }\n  });\n  \n  // 字体颜色选择器\n  document.getElementById('fontColor').addEventListener('input', (e) => {\n    const color = e.target.value;\n    settings['段评字体颜色'] = color;\n    document.getElementById('fontColorText').value = color;\n    updateHiddenSettings();\n    renderPreview();\n  });\n  \n  // 字体颜色文本输入\n  document.getElementById('fontColorText').addEventListener('input', (e) => {\n    const color = e.target.value;\n    if (/^#[0-9A-Fa-f]{6}$/.test(color) || /^#[0-9A-Fa-f]{3}$/.test(color)) {\n      settings['段评字体颜色'] = color;\n      document.getElementById('fontColor').value = color;\n      updateHiddenSettings();\n      renderPreview();\n    }\n  });\n  \n  // 填充颜色选择器\n  document.getElementById('fillColor').addEventListener('input', (e) => {\n    const color = e.target.value;\n    settings['段评填充颜色'] = color;\n    document.getElementById('fillColorText').value = color;\n    updateHiddenSettings();\n    renderPreview();\n  });\n  \n  // 填充颜色文本输入\n  document.getElementById('fillColorText').addEventListener('input', (e) => {\n    const color = e.target.value;\n    if (color.toLowerCase() == 'transparent' || /^#[0-9A-Fa-f]{6}$/.test(color) || /^#[0-9A-Fa-f]{3}$/.test(color)) {\n      settings['段评填充颜色'] = color;\n      if (color.toLowerCase() != 'transparent') {\n        document.getElementById('fillColor').value = color;\n      }\n      updateHiddenSettings();\n      renderPreview();\n    }\n  });\n  \n  // 透明按钮\n  document.getElementById('fillColorTransparent').addEventListener('click', () => {\n    settings['段评填充颜色'] = 'transparent';\n    document.getElementById('fillColorText').value = 'transparent';\n    document.getElementById('fillColor').value = '#FFFFFF';\n    updateHiddenSettings();\n    renderPreview();\n  });\n  \n  // 添加自定义样式按钮\n  document.getElementById('addCustomStyleBtn').addEventListener('click', addCustomStyle);\n  \n  // 保存自定义样式按钮\n  document.getElementById('saveCustomStyleBtn').addEventListener('click', saveCustomStyles);\n  \n  // 更多样式按钮\n  document.getElementById('moreStylesBtn').addEventListener('click', () => {\n    const baseUrl = document.getElementById('baseUrlValue').textContent;\n    if (baseUrl) {\n      window.open(baseUrl + '/user?tab=3&btype=1', '_blank');\n    }\n  });\n}\n\n// 初始化UI\nfunction initUI() {\n  // 设置段评开关\n  document.getElementById('duanpingSwitch').checked = settings['段评开关'] != 'false';\n  \n  // 设置神评论开关\n  document.getElementById('shenpingSwitch').checked = settings['神评论开关'] != 'false';\n  \n  // 设置本章说开关\n  document.getElementById('benzhangSwitch').checked = settings['本章说开关'] != 'false';\n  \n  // 设置气泡增大开关\n  document.getElementById('bubbleLargeSwitch').checked = settings['气泡增大'] == 'true';\n  \n  // 设置段评样式\n  document.getElementById('duanpingStyle').value = settings['段评样式'];\n  \n  // 设置边框颜色\n  const borderColorValue = settings['段评边框颜色'];\n  document.getElementById('borderColor').value = borderColorValue === 'transparent' ? '#A7A7A7' : borderColorValue;\n  document.getElementById('borderColorText').value = borderColorValue;\n  \n  // 设置字体颜色\n  const fontColorValue = settings['段评字体颜色'];\n  document.getElementById('fontColor').value = fontColorValue === 'transparent' ? '#A7A7A7' : fontColorValue;\n  document.getElementById('fontColorText').value = fontColorValue;\n  \n  // 设置填充颜色\n  const fillColorValue = settings['段评填充颜色'];\n  document.getElementById('fillColor').value = fillColorValue === 'transparent' ? '#FFFFFF' : fillColorValue;\n  document.getElementById('fillColorText').value = fillColorValue;\n  \n  // 渲染自定义样式列表\n  renderCustomStyles();\n  \n  // 更新段评样式选择器，添加自定义样式选项\n  updateStyleSelector();\n}\n\n// 更新段评样式选择器\nfunction updateStyleSelector() {\n  const select = document.getElementById('duanpingStyle');\n  const currentValue = settings['段评样式'];\n  \n  // 移除所有非默认选项\n  while (select.options.length > 6) {\n    select.remove(6);\n  }\n  \n  // 添加自定义样式选项\n  Object.keys(customStyles).forEach((name) => {\n    const option = document.createElement('option');\n    option.value = name;\n    option.textContent = name;\n    select.appendChild(option);\n  });\n  \n  // 设置当前选中值\n  select.value = currentValue;\n}\n\n// 页面加载完成后初始化\ninitCustomStyles();\ninitUI();\nsetupEventListeners();\nrenderPreview();\nfetchCustomStyles();\n</script>\n</body>\n</html>\n    `;\n    let body;\n    try {\n        body = java.startBrowserAwait(`data:text/html;base64,${java.base64Encode(html)}`, '光遇段评设置', false).body();\n    } catch (e) {\n        if (islyc == \"安卓\") {\n            java.longToast(\"\\n当前软件版本过低，请更新软件，或者使用底部备用设置方案~\");\n        } else {\n            java.longToast(\"\\n请点击页面右上角√才能设置成功哦~\");\n        }\n        return;\n    }\n    \n    let settings = {};\n    try {\n        const getSpanText = (spanId) => {\n            const regex = new RegExp('id=\"' + spanId + '\"\\s*>\\s*([^<]*?)\\s*<\\/span>');\n            const match = body.match(regex);\n            return match ? match[1].trim() : \"\";\n        };\n        const getTextareaValue = (textareaId) => {\n            const regex = new RegExp('<textarea[^>]*id=\"' + textareaId + '\"[^>]*>([\\\\s\\\\S]*?)<\\/textarea>', 'i');\n            const match = body.match(regex);\n            return match ? match[1].trim() : \"\";\n        };\n        const htmlDecode = (str) => {\n            if (!str) return str;\n            return str.replace(/&amp;/g, '&')\n                .replace(/&lt;/g, '<')\n                .replace(/&gt;/g, '>')\n                .replace(/&quot;/g, '\"')\n                .replace(/&#039;/g, \"'\");\n        };\n\n        const customStylesValue = getTextareaValue('customStylesValue') || '{}';\n        const decodedStyles = htmlDecode(customStylesValue);\n\n        settings = {\n            '段评开关': getSpanText('duanpingSwitchValue'),\n            '神评论开关': getSpanText('shenpingSwitchValue'),\n            '本章说开关': getSpanText('benzhangSwitchValue'),\n            '气泡增大': getSpanText('bubbleLargeSwitchValue'),\n            '段评样式': getSpanText('duanpingStyleValue') || '0',\n            '段评边框颜色': getSpanText('borderColorValue') || '#A7A7A7',\n            '段评字体颜色': getSpanText('fontColorValue') || '#A7A7A7',\n            '段评填充颜色': getSpanText('fillColorValue') || 'transparent',\n            '自定义段评样式': JSON.parse(decodedStyles),\n        };\n        const settingsText = Object.keys(settings).map(key => `${key}: ${settings[key]}`).join('\\n');\n        java.longToast(\"\\n\" + settingsText);\n    } catch (e) {\n        settings = {\n            '段评开关': 'true',\n            '神评论开关': 'true',\n            '本章说开关': 'true',\n            '气泡增大': 'false',\n            '段评样式': '0',\n            '段评边框颜色': '#A7A7A7',\n            '段评字体颜色': '#A7A7A7',\n            '段评填充颜色': 'transparent',\n            '自定义段评样式': {},\n        };\n    }\n    this.setVariable(\"段评设置\", settings, false);\n}\n",
    "lastUpdateTime": 1785107431079,
    "loginUi": "[\n     {\n        \"name\": \"🔭 切换线路\",\n        \"type\": \"button\",\n        \"action\": \"getServerSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    },{\n        \"name\": \"⚙️ 书源设置\",\n        \"type\": \"button\",\n        \"action\": \"getHtmlSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },  {\n        \"name\": \"🗨 段评设置\",\n        \"type\": \"button\",\n        \"action\": \"getSvgSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"邮箱\",\n        \"type\": \"text\"\n    }, {\n        \"name\": \"密码\",\n        \"type\": \"password\"\n    }, {\n        \"name\": \"🔅登录账号\",\n        \"type\": \"button\",\n        \"action\": \"login(true)\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🔐注册账号\",\n        \"type\": \"button\",\n        \"action\": \"register()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 🔚 退出登录\",\n        \"type\": \"button\",\n        \"action\": \"logout()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"🏝用户后台\",\n        \"type\": \"button\",\n        \"action\": \"user()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"📴 清理设备\",\n        \"type\": \"button\",\n        \"action\": \"clearDevice()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"🪪 查看信息\",\n        \"type\": \"button\",\n        \"action\": \"checkStatus()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"🌷求打赏\",\n        \"type\": \"button\",\n        \"action\": \"vip()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"🎈永久发布页\",\n        \"type\": \"button\",\n        \"action\": \"fb()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"✳️ 更新配置\",\n        \"type\": \"button\",\n        \"action\": \"_getCloudSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },{\n        \"name\": \"❇️ 更新书源\",\n        \"type\": \"button\",\n        \"action\": \"renderVersionPage()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"📤保存设置到云端\",\n        \"type\": \"button\",\n        \"action\": \"saveSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \" 📨从云端获取设置\",\n        \"type\": \"button\",\n        \"action\": \"getSettings()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"⛔‼️ 清空还原设置\",\n        \"type\": \"button\",\n        \"action\": \"deleteVariable()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"===下方为备用设置方案===\",\n        \"type\": \"button\",\n        \"action\": \"\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"📖搜索小说\",\n        \"type\": \"button\",\n        \"action\": \"ste('小说')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎧搜索听书\",\n        \"type\": \"button\",\n        \"action\": \"ste('听书')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎥搜索短剧\",\n        \"type\": \"button\",\n        \"action\": \"ste('短剧')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"🎨搜索漫画\",\n        \"type\": \"button\",\n        \"action\": \"ste('漫画')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"段评开关\",\n        \"type\": \"button\",\n        \"action\": \"ste('段评')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"图片开关\",\n        \"type\": \"button\",\n        \"action\": \"ste('图片')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"简介开关\",\n        \"type\": \"button\",\n        \"action\": \"ste('简介')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"同步书架\",\n        \"type\": \"button\",\n        \"action\": \"ste('同步')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"强制搜索\",\n        \"type\": \"button\",\n        \"action\": \"ste('强制')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"网络模式\",\n        \"type\": \"button\",\n        \"action\": \"ste('网络')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n        }\n    }, {\n        \"name\": \"目录显示来源开关\",\n        \"type\": \"button\",\n        \"action\": \"ste('目录')\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"发现页来源(支持的平台请前往源变量中查看)\",\n        \"type\": \"text\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"搜索来源(支持的平台请前往源变量中查看,多个来源用英文逗号分割)\",\n        \"type\": \"text\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    }, {\n        \"name\": \"设置发现页来源\",\n        \"type\": \"button\",\n        \"action\": \"setFindSource()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }, {\n        \"name\": \"设置搜索来源\",\n        \"type\": \"button\",\n        \"action\": \"setSearchSource()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    }\n]",
    "loginUrl": "//登陆\nfunction login(flag) {\n    const token = getToken();\n    if (String(token).length > 10) {\n        java.longToast(flag ? '\\n当前✅️已登录，请🚫退出登录后重新登录' : '\\n✅️已登录');\n        return true;\n    }\n    if (flag == undefined) {\n        result = JSON.parse(source.getLoginInfo())\n    } else {\n        java.longToast(\"\\n\\n💞正在登录中...\")\n    }\n    let email = result.邮箱;\n    let pwd = result.密码;\n\n    if (!email || !pwd) {\n        java.longToast('\\n请先输入账号密码！');\n        return false;\n    }\n    if (!email.includes('@')) {\n        java.longToast('\\n请输入正确的邮箱格式！');\n        return false;\n    }\n    try {\n        let data = request('/login_api','POST',{\n                register_email: email,\n                password: pwd\n            })\n        const response = JSON.parse(data);\n        if (response.code == 0) {\n            setAllCookies(`qttoken=${response.key}`);\n            java.longToast(\"\\n✅️登录成功\");\n            return true;\n        } else {\n            let msg = response.msg;\n            if (msg.includes('多次登录失败')) {\n                java.longToast('\\n💔多次登录失败，请检查账号密码，切换线路后重试或等2小时后重试！');\n            } else {\n                java.longToast('\\n💔' + (msg || \"登录失败，请重试！\"));\n            }\n            return false;\n        }\n    } catch (error) {\n        java.longToast('\\n💔登录失败，服务器错误，请更换线路后重试！\\n' + error);\n        return false;\n    }\n}\n\n// 用户注册\nfunction register() {\n    java.startBrowserAwait(BaseUrl() + '/register', '光遇看书注册');\n}\n\n//用户后台\nfunction user() {\n    const token = getToken();\n    if (String(token).length < 10) {\n        java.longToast('\\n🤔请先登陆');\n        return;\n    }\n    java.startBrowserAwait(BaseUrl() + '/user', '光遇看书用户后台');\n}\n\n// 退出登陆\nfunction logout() {\n    removeAllCookies();\n}\n\n// 获取云端配置\nfunction _getCloudSettings() {\n    getCloudSettings(true)\n}\n\n//打赏\nfunction vip() {\n    const token = getToken();\n    if (String(token).length < 10) {\n        java.longToast('\\n🤔请先登陆');\n        return;\n    }\n    java.startBrowserAwait(BaseUrl() + '/coffee', '光遇聚合会员开通');\n}\n\nfunction formatDate(timestamp) {\n    const date = new Date(timestamp * 1000);\n    return `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;\n}\n\nfunction isVips(res) {\n    const vipEndTime = res.vip_end_time;\n    const isVipValue = res.is_vip;\n\n    let vipType;\n    if (isVipValue == 0) {\n        return '普通用户';\n    } else if (isVipValue == 1) {\n        vipType = 'VIP';\n    } else {\n        vipType = 'SVIP';\n    }\n\n    if (!vipEndTime || vipEndTime == 0) {\n        return `${vipType} (已过期)`;\n    }\n\n    const currentTime = Math.floor(Date.now() / 1000);\n    const remainingDays = Math.ceil((vipEndTime - currentTime) / (24 * 60 * 60));\n\n    if (currentTime > vipEndTime) {\n        return `${vipType} (已过期)`;\n    }\n\n    if (remainingDays <= 7) {\n        return `${vipType} 剩余${remainingDays}天`;\n    }\n\n    if (vipEndTime >= 1912946812) {\n        return `${vipType} (永久)`;\n    }\n\n    return `${vipType}(${formatDate(vipEndTime)})`;\n}\n\nfunction checkStatus() {\n    const token = getToken();\n    if (String(token).length < 10) {\n        java.longToast('\\n🤔请先登陆');\n        return;\n    }\n    java.longToast('\\n\\n♻️查询中...');\n\n    try {\n        const res = JSON.parse(request(`/user_api`, 'POST'));\n\n        if (res.id == undefined) {\n            throw new Error(res.msg || '获取用户信息失败');\n        }\n\n        result.邮箱 = res.email;\n        \n        source.putLoginInfo(JSON.stringify(result));\n\n        let devices = 0;\n        try {\n            devices = res.device ? Object.keys(JSON.parse(res.device)).length : 0;\n        } catch (e) {\n            devices = res.device ? 1 : 0;\n        }\n\n        const isVip = isVips(res);\n        const today = java.timeFormat(new Date()).slice(0, 10);\n        const lastReadDate = res.last_read_time ? java.timeFormat(res.last_read_time * 1000).slice(0, 10) : '';\n        const todayReadCount = today == lastReadDate ? res.day_read_count : 0;\n\n        const tips = `\n${BaseUrl()}\n┏┅┅┅┅┅┅┱┄┄┄┄┄┄┄┄┄┄┐\n　 🧢昵称 　　　　${(res.nickname || '未设置').padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　✉️邮箱　　　　${res.email.replace(/(.{3}).*?@/, '$1***@').padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🔑密钥　　　　${(`${res.user_key.substring(0, 4)}***${res.user_key.slice(-4)}`).padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　📅注册时间　　${java.timeFormat(res.register_time * 1000).padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n🗒️今日阅读　　${todayReadCount.toString().padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n📚累计阅读　　${res.all_read_count.toString().padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n🕓最后阅读　　${(res.last_read_time ? java.timeFormat(res.last_read_time * 1000) : '未阅读').padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n📱在线设备　　${devices.toString().padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　👑会员状态　　${isVip.padEnd(20, '\\t')}\n┣┅┅┅┅┅┅╉┄┄┄┄┄┄┄┄┄┄┤\n　🚫封禁状态　　${res.is_banned ? '已封禁' : '正常　'}　　　　　　　\n┗┅┅┅┅┅┅┹┄┄┄┄┄┄┄┄┄┄┘\n`;\n\n        java.log(tips);\n        java.longToast(tips);\n\n    } catch (e) {\n        java.toast(`\\n检测登录失败\\n${e.message}`);\n    }\n}\n\nfunction clearDevice() {\n    const token = getToken();\n    if (String(token).length < 10) {\n        java.longToast('\\n🤔请先登陆');\n        return;\n    }\n    let res = request(`/clear`, \"POST\");\n    res = JSON.parse(res);\n    java.toast(res.code == 0 ? \"\\n\\n📴设备清除成功\" : res.msg)\n    //Packages.java.lang.Thread.sleep(500)\n    //checkStatus()\n}\n\nfunction fb() {\n    java.startBrowser('http://vip.gyks.cf', '光遇看书');\n}\n\nfunction setFindSource() {\n\tlet findSource = result[\"发现页来源(支持的平台请前往源变量中查看)\"];\n\tif (String(findSource)==\"\" || String(findSource) == \"undefined\") {\n\t\tfindSource = \"番茄\";\n\t\t}\n\tsetVariable(\"发现页来源\",findSource);\n java.longToast(`\\n已设置发现页来源为:${findSource}\\n设置后请刷新发现页！`)\n \n\t}\n\t\n\t\nfunction setSearchSource() {\n\tlet searchSource = result[\"搜索来源(支持的平台请前往源变量中查看,多个来源用英文逗号分割)\"];\n\tif (String(searchSource)==\"\" || String(searchSource) == \"undefined\") {\n\t\tsearchSource = '全部';\n\t\t}\n\tlet moreSettings = getVariable(\"更多设置\") || {};\n\tlet tab = moreSettings && moreSettings['搜索模式'] || '小说';\n\tmoreSettings[tab] = searchSource;\n\tsetVariable(\"更多设置\",moreSettings)\n  java.longToast(`\\n已设置搜索来源为:${tab}-${moreSettings[tab]}\\n设置后请重新搜索`)\n\t}\n\nfunction saveSettings() {\n\t  java.longToast(`\\n正在保存~`);\n    let moreSettings = getVariable(\"更多设置\") || {};\n    let body_more = {\n        \"legado_more\":moreSettings\n    }\n\tlet data_more = request('/user_settings','POST',body_more)\n    const response_more = JSON.parse(data_more);\n    let paraSettings = getVariable(\"段评设置\") || {};\n    let body_para = {\n        \"legado_para\":paraSettings\n    }\n\tlet data_para = request('/user_settings','POST',body_para)\n    const response_para = JSON.parse(data_para);\n    java.longToast(`\\n书源设置:${response_more.msg}\\n段评设置:${response_para.msg}`);\n\t}\n    \n    function getSettings() {\n    \tjava.longToast(`\\n正在获取~`);\n        let more = false;\n        let para = false;\n        let data_more = request('/user_settings?set_type=legado_more','GET');\n        const response_more = JSON.parse(data_more);\n        if (response_more.data) {\n            setVariable(\"更多设置\",response_more.data)\n            more = true;\n        }\n        let data_para = request('/user_settings?set_type=legado_para','GET');\n        const response_para = JSON.parse(data_para);\n        if (response_para.data) {\n            setVariable(\"段评设置\",response_para.data)\n            para=true;\n        }\n        java.longToast(`\\n书源设置:${more?'应用成功':'应用失败'}\\n段评设置:${para?'应用成功':'应用失败'}`);\n    }",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "1",
      "coverUrl": "$.thumb_url",
      "init": "<js>\nlet moreSettings = getVariable('更多设置');\n\n\nfunction fetchBookDetail(result) {\n\t  let res = {};\n\t  //java.log(baseUrl)\n\t  //java.longToast(result)\n\t  if (String(baseUrl).startsWith(\"data:\")) {\n    res = JSON.parse(java.hexDecodeToString(result));\n    } else {\n    \treturn result;\n    \t}\n    const book_id = res.book_id;\n    const tab = res.tab;\n    const sources = res.sources || res.source;\n    const url = res.url;\n    let html = \"\";\n    const proxy  = moreSettings && moreSettings['网络模式'] || '服务器';\n\n    if (url && proxy == \"本地\") {\n        html = fetchHtmlWithFallback(url, sources);\n    }\n\n    const varia = getAndFormatCustomVariable();\n    const requestUrl = `/detail?book_id=${book_id}&source=${sources}&tab=${tab}&variable=${varia}`;\n\n    java.log(requestUrl);\n    return request(requestUrl, 'POST', { html: html });\n}\n\nfunction fetchHtmlWithFallback(url, sources) {\n    let html;\n    let ck69 = '';\n    let headers = {};\n    let op = '';\n\n    if (sources == '69书吧') {\n        ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        op = JSON.stringify({ \"headers\": headers });\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n\n    if (html.includes(\"Just a moment...\") && sources == '69书吧') {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n    }\n\n    return html;\n}\n\nfunction getAndFormatCustomVariable() {\n    let varia = String(book.getVariable('custom'));\n    if (varia === 'null') {\n        varia = '';\n    }\n    return JSON.stringify({ 'custom': varia });\n}\nfetchBookDetail(result)\n</js>$.data",
      "intro": "<js>\nconst {\n    source:sources,\n    book_id,\n    tab,\n    book_tts,\n    tags,\n    role,\n    last_chapter_title,\n    last_chapter_update_time,\n    word_number,\n    status,\n    score,\n    abstract,\n    copyright_info,\n    read_count,\n    read_count_all\n} = result;\nlet moreSettings = getVariable('更多设置');\n\n\nconst proxy = (moreSettings && moreSettings['网络模式'] || '服务器') == \"本地\" ? \"本地网络\" : \"服务器网络\";\n\nif ((book.readConfig && book.readConfig.useReplaceRule) == null) {\n    book.setUseReplaceRule(false);\n}\n\nlet nickname = '账号状态：⚠️ 未登录 | 点击右上角 🔖 登录';\nlet qttoken = getToken();\nif (qttoken.length > 10) {\n     nickname = '账号状态：✅已登录';\n}\ntry {\n    const user_info = JSON.parse(request(`/get_avatar`, 'GET'));\n    if (user_info.code === 0) {\n        nickname = user_info.nickname \n            ? `欢迎回来：${user_info.nickname}`\n            : `欢迎回来：${user_info.email}(请前往用户后台设置用户名)`;\n    }\n} catch (e) {\n    \n}\n\nconst loginStatus = nickname;\nconst lightDivider = \"❇️───────❇️───────❇️\";\nconst heavyDivider = \"&lrm;\\n&lrm;\";\n\nconst isValid = (value) => String(value).length > 1;\nlet ctitle =  book.durChapterTitle || '未开始';\n\nconst formatAbstract = (text) => {\n    return text.split(\"\\n\").map(line => `    ${line}`).join(\"\\n\");\n};\n\nconst buildBasicInfo = (items) => {\n    let info = \"\";\n    for (let [value, prefix, icon] of items) {\n        if (isValid(value)) {\n            info += `    ${icon} ${prefix} ${value}\\n`;\n        }\n    }\n    return info;\n};\n\nlet info = `\n    📡 当前服务：${BaseUrl()}\n    🔑 ${loginStatus}\n    🏷 数据来源：${sources}\n    🔄 当前模式：${tab}\n    ⚙️ 访问模式：${proxy}\n    📖 阅读至：${ctitle}\n`;\n\nif (tab == \"听书\") {\n    let toneId = String(book.getVariable('custom')) || '4';\n    if (isValid(book_tts)) {\n        info += `${lightDivider}\n    🎵 音色配置：${toneId}\n    ✨ AI音色请点击右上角书籍变量填写相关值，真人听书请重新搜索选择带有主播的书籍\n    ${book_tts}\n`;\n    }\n}\n\nconst fullBasicInfo = buildBasicInfo([\n    [tags, \"书籍分类：\", \"🌈\"],\n    [role, \"书籍主角：\", \"👑\"],\n    [last_chapter_title, \"最新章节：\", \"📚\"],\n    [last_chapter_update_time, \"更新时间：\", \"⏳\"],\n    [word_number, \"书籍字数：\", \"📝\"],\n    [status, \"书籍状态：\", \"🚩\"],\n    [score, \"书籍评分：\", \"⭐\"],\n    [read_count, \"今阅读人数：\", \"📃\"],\n    [read_count_all, \"总阅读人数：\", \"📈\"]\n]);\n\nif (fullBasicInfo) {\n    info += `${lightDivider}\\n${fullBasicInfo}`;\n}\n\nif (isValid(abstract)) {\n    info += `${heavyDivider}\n    📖 书籍简介：\n${formatAbstract(abstract)}\n`;\n} else {\n    info += heavyDivider;\n}\n\nif (isValid(copyright_info)) {\n    info += `${lightDivider}\n    © ${copyright_info}\n`;\n} else {\n    info += lightDivider;\n}\n\ninfo += `\n${heavyDivider}\n    数据更新于 ${new Date().toLocaleString()}\n`;\n\nconst abstractMode = moreSettings && moreSettings['完整简介'] || 'true';\nif (abstractMode == \"false\") {\n    const simplifiedBasicInfo = buildBasicInfo([\n        [last_chapter_title, \"最新章节：\", \"📚\"],\n        [last_chapter_update_time, \"更新时间：\", \"⏳\"],\n        [word_number, \"书籍字数：\", \"📊\"],\n        [status, \"书籍状态：\", \"🚩\"],\n        [score, \"书籍评分：\", \"⭐\"]\n    ]);\n    \n    info = `\\n&lrm;${isValid(abstract) ? `📖 书籍简介：\\n${formatAbstract(abstract)}\\n${heavyDivider}` : ''}\n🏷 数据来源：${sources}\n${simplifiedBasicInfo}`;\n\n} else {\n    info = info.split(\"\\n\").map(line => line.replace(/^ {4}/, \"\")).join(\"\\n\");\n}\n</js>",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}} {{$.last_chapter_update_time}}",
      "name": "$.book_name",
      "tocUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet book_name = result.book_name;\nlet author = result.author;\nlet abstract = result.abstract;\nlet thumb_url = result.thumb_url;\nlet tab = result.tab || getVariable('类型');\nlet url = result.toc_url || \"\";\nlet gycatalog = {\n\t  book_name,\n\t  author,\n\t  abstract,\n\t  thumb_url,\n    book_id,\n    sources,\n    tab,\n    url,\n};\ngycatalog = java.base64Encode(JSON.stringify(gycatalog));\n`data:;base64,${gycatalog},{\"type\":\"gycatalog\"}`;\n</js>",
      "wordCount": "$.word_number"
    },
    "ruleContent": {
      "content": "<js>\nlet DEFAULT_TONE_ID = '4';\nlet CONTENT_URL = '/content';\nlet CONTENT_URL_WITH_REVIEW = '/content?review=1';\nlet VERSION = localVersion;\nlet SOURCES_WITH_REVIEW = ['番茄', '七猫', '塔读', 'QQ阅读', 'svip_QQ阅读'];\nlet moreSettings = getVariable('更多设置');\nconst proxy  = moreSettings && moreSettings['网络模式'] || '服务器';\nconst reading = moreSettings && moreSettings['同步书架'] || 'false';\nconst reading_toast = moreSettings && moreSettings['同步弹窗'] || 'true';\n\nresult = String(java.hexDecodeToString(result));\nlet res = JSON.parse(result);\nlet { book_id, item_id, tab, title, sources, url } = res;\n\nlet islyc = checkEnv();\ntry {\n    book.imageStyle = islyc == '改版' ? 'FULL' : 'TEXT';\n} catch (e) {\n    \n}\n\nconst syncBookShelf = (book) => {\n    if (!book) {\n        return;\n    }\n    let book_order = book.order;\n    if (book_order!=0) {\n    \t   book_order = 1;\n    \t} else {\n    \t\t//book_order = 2;\n    \t\treturn;\n    \t\t}\n    \n    if (reading != \"true\") {\n        return;\n    }\n\n    try {\n        const ritem = item_id;\n        \nlet book_info = {\n            book_name:book.name,\n            author:book.author,\n            //abstract:book.abstract,\n            thumb_url:book.coverUrl,\n            book_id,\n            tab,\n            source: sources\n        };\n        if (!book_info || typeof book_info != \"object\") {\n            return;\n        }\n        const rurl = `/add_book_to_book_shelf`;\n        book_info.read_status = book_order;\n        book_info.last_chapter_item_id = item_id;\n        book_info.last_chapter_title = chapter.title || \"\";\n        //java.toast(JSON.stringify(book_info));\n       \ttry {\n       \t\tconst check_book_url = `/check_book_in_book_shelf`;\n    checkResponse = request(check_book_url, \"POST\", {book_id,source:sources,tab});\n} catch (e) {\n    java.log(`检查书籍请求失败: ${e}`);\n}\n    \n        const check_data = parseJsonSafely(checkResponse);\n        try {\n            if (check_data.data.id) {\n                book_info.id = check_data.data.id;\n                const uurl = `/update_book_shelf`;\n                let up = request(uurl, \"POST\", book_info);\n                if (reading_toast == \"true\") {\n                \t    java.toast(up)\n                \t}\n                \n            } else {\n                let up = request(rurl, \"POST\", book_info);\n                if (reading_toast == \"true\") {\n                \t    java.toast(up)\n                \t}\n            }\n        } catch (e) {\n            try {\n                let up = request(rurl, \"POST\", book_info);\n                java.toast(up)\n            } catch (e) {\n                if (reading_toast == \"true\") {\n                \t    java.toast(`书架操作失败: ${e}`);\n                \t}\n            }\n\n        }\n    } catch (error) {\n        java.log(`书籍同步流程异常: ${error}`);\n        \n        if (reading_toast == \"true\") {\n                \t    java.longToast(\"\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。\");\n                \t}\n    }\n};\n\n//java.log(book)\n\n\nif (book.durChapterIndex == chapter.index) {\n\ttry {syncBookShelf(book)} catch {}\n\t}\n\n\n\n\nlet varia1 = String(book.getVariable('custom')) || '';\nlet varia = JSON.stringify({ custom: varia1 });\n\n\nlet html = '';\n\nif (url && proxy === '本地') {\n    if (sources === '69书吧') {\n        let ck69 = String(cookie.getCookie('https://www.69shuba.com'));\n        let headers = {\n            Referer: url,\n            Cookie: ck69,\n            'User-Agent': java.getWebViewUA()\n        };\n        let op = JSON.stringify({ headers });\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n    \n    if (html.includes('Just a moment...') && sources == '69书吧' && book.durChapterIndex == chapter.index) {\n        cookie.removeCookie('https://www.69shuba.com');\n        java.longToast('需要真人验证，请进入任意书籍详情页过验证');\n        html = java.startBrowserAwait(url, '需要真人验证，请进入任意书籍详情页过验证').body();\n    }\n}\n\nlet tone_id = varia1 || DEFAULT_TONE_ID;\nlet base_url = BaseUrl();\nlet dpSettings = getVariable('段评设置');\nlet para = dpSettings && dpSettings['段评开关'] || 'true';\nlet godop = dpSettings && dpSettings['神评论开关'] || 'true';\nlet endop = dpSettings && dpSettings['本章说开关'] || 'true';\nlet show_img = moreSettings && moreSettings['显示图片'] || 'true';\n\n\nlet god = false;\n\nif (sources == \"番茄\" && godop == 'true' && tab == \"小说\") {\n\tgod = true\n\t}\nlet params = {\n    html,\n    item_id,\n    source: sources,\n    tab,\n    tone_id,\n    variable: varia,\n    version: VERSION,\n    god\n};\n\nlet hasReview = SOURCES_WITH_REVIEW.includes(sources) && para==\"true\" && tab == '小说';\nlet content_url = hasReview ? CONTENT_URL_WITH_REVIEW : CONTENT_URL;\n\nlet data = request(content_url, 'POST', params);\ntry {\n    data = JSON.parse(data);\n    if (data.msg) {\n        java.toast(data.msg);\n    }\n} catch (e) {\n    //console.error('Parse content data failed:', e);\n}\n\nlet content = data.content || '';\n\nif (show_img == 'false') {\n    content = removeAllImgTags(content);\n}\n\nlet fqssionid = getFqToken();\nlet deviceType = '安卓';\n    try {\n    \tjava.deviceID();\n    \tdeviceType = '苹果'\n    \t} catch {}\nif (hasReview) {\n    content = content\n        .replace(/ident=\"/g, `ident=\"${base_url}`)\n        .replace(/book_id=/g, `book_id=${book_id}&ssionid=${fqssionid}`);\n    \n    content = deviceType == '苹果' \n        ? paraForiOS(content, sources) \n        : paraForAndroid(content, sources);\n}\nif (sources == \"番茄\" && endop == 'true' && tab == \"小说\") {\n   let svg = `${base_url}/chapter_review_svg?book_id=${book_id}&item_id=${item_id}&source=${sources}&ssionid=${fqssionid}`;\n\tlet eurl = `${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&source=${sources}`;\n   if (deviceType == '苹果') {\n     let chapterSvg = java.ajax(svg);\n     svg = 'data:image/svg+xml;base64,'+java.base64Encode(chapterSvg);\n   } else {\n     svg += '&img=1'\n   }\n\tcontent = content+ `\\n<img src=\"${svg},{'type':'qtbzs',${endclick(eurl)},'style':'FULL'}\">`;\n\t}\ndata = JSON.stringify({ content });\n\nlet isVideoSource = isVs(sources);\nlet isVideoTab = tab == '短剧' || tab == '视频';\nif (islyc != '苹果' && (isVideoTab || isVideoSource)) {\n\tjava.log(isVideoSource)\n    if (!java.getAppVariant || isVideoSource) {\n        data = JSON.stringify({\n            content: `【右上角刷新】开启播放(下一集请切换下一章刷新)\\n播放直链：\\n${content}`\n        });\n        if (book.durChapterIndex == chapter.index) {\n            let video_url = `${base_url}/online_video?book_id=${book_id}&source=${sources}&tab=${tab}`;\n            if (isVideoSource) {\n                video_url = content;\n            }\n            //java.openVideoPlayer(content, title)\n            java.startBrowser(video_url, title);\n            java.toast('正在加载视频...');\n        }\n        \n    }\n\n\n}\n//java.log(data)\ndata;\n</js>$.content",
      "title": "@js:\nresult = String(java.hexDecodeToString(result))\nJSON.parse(result)['title'].replace(JSON.parse(result)['sources']+':','')"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet gydetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\ngydetail = java.base64Encode(JSON.stringify(gydetail));\n`data:;base64,${gydetail},{\"type\":\"gydetail\"}`\n</js>",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "<js>\nconst res = JSON.parse(java.hexDecodeToString(result));\nconst {\n    key,\n    tab,\n    sourcesKey,\n    page,\n    disabled_sources\n} = res;\nlet url = `/search?title=${key}&tab=${tab}&source=${sourcesKey}&page=${page}&disabled_sources=${disabled_sources}`;\nrequest(url);\n</js>\n$.data",
      "bookUrl": "<js>\nlet book_id = result.book_id;\nlet sources = result.source;\nlet tab = result.tab || '小说';\nlet url = result.toc_url || '';\n\nlet gydetail = {\n    book_id: book_id,\n    sources: sources,\n    tab: tab,\n    url: url\n}\ngydetail = java.base64Encode(JSON.stringify(gydetail));\n`data:;base64,${gydetail},{\"type\":\"gydetail\"}`\n</js>",
      "checkKeyWord": "我的@番茄",
      "coverUrl": "$.thumb_url",
      "intro": "$.abstract",
      "kind": "{{$.status}},{{$.score}},{{$.tags}},{{$.last_chapter_update_time}}",
      "lastChapter": "{{$.source}} {{$.last_chapter_title}}",
      "name": "$.book_name##（别名：.*?）",
      "wordCount": "$.word_number"
    },
    "ruleToc": {
      "chapterList": "<js>\nconst res = JSON.parse(java.hexDecodeToString(result));\nconst {\n\tbook_name,\n\tauthor,\n\tabstract,\n\tthumb_url,\n    book_id,\n    tab,\n    sources,\n    url\n} = res;\nlet durChapterIndex = book.durChapterIndex;\njava.put('book_id', book_id);\nlet html = \"\";\nlet moreSettings = getVariable('更多设置');\nconst proxy = moreSettings && moreSettings['网络模式'] || '服务器';\nconst showSource = moreSettings && moreSettings['目录显示来源'] || 'true';\nconst gytoken = getToken();\nconst reading = moreSettings && moreSettings['同步书架'] || 'false';\nconst reading_toast = moreSettings && moreSettings['同步弹窗'] || 'true';\n\nif (url && proxy == \"本地\") {\n    if (sources == \"69书吧\") {\n        const ck69 = String(cookie.getCookie(\"https://www.69shuba.com\"));\n        const headers = {\n            \"Referer\": url,\n            \"Cookie\": ck69,\n            \"User-Agent\": java.getWebViewUA()\n        };\n        const op = JSON.stringify({\n            headers\n        });\n        html = java.ajax(`${url},${op}`);\n    } else {\n        html = java.ajax(url);\n    }\n\n    if (html.includes(\"Just a moment...\") && sources === \"69书吧\") {\n        cookie.removeCookie(\"https://www.69shuba.com\");\n        java.longToast(\"需要真人验证，请进入任意书籍详情页过验证\");\n        html = java.startBrowserAwait(url, \"需要真人验证，请进入任意书籍详情页过验证\").body();\n        java.log(html);\n    }\n}\n\n\nconst customVar = String(book.getVariable(\"custom\"));\nconst varia = JSON.stringify({\n    custom: customVar == \"null\" ? \"\" : customVar\n});\n\nconst queryString = `book_id=${encodeURIComponent(book_id)}&source=${encodeURIComponent(sources)}&tab=${encodeURIComponent(tab)}&variable=${encodeURIComponent(varia)}`;\nconst data = request(`/catalog?${queryString}`, \"POST\", {\n    html\n});\n\nconst device_type = checkEnv();\n\nconst typeMap = {\n    \"小说\": {\n        \"苹果\": 0,\n        default: 8\n    },\n    \"听书\": {\n        \"苹果\": 1,\n        default: 32\n    },\n    \"漫画\": {\n        \"苹果\": 2,\n        default: 64\n    },\n    \"短剧\": {\n        \"苹果\": 3,\n        \"备用\": 4,\n        default: java.getAppVariant&&!isVs(sources)?4:8\n    }\n};\nconst currentType = typeMap[tab] || typeMap[\"小说\"];\nbook.type = currentType[device_type] || currentType.default;\n\n\n\nconst syncBookShelf = (data, book, gytoken) => {\n    if (!book) {\n        return;\n    }\n    let book_order = book.order;\n    if (book_order!=0) {\n    \t   book_order = 1;\n    \t} else {\n    \t\tbook_order = 2;\n    \t\t}\n    if (reading != \"true\") {\n        return;\n    }\n\n    try {\n        if (!data || !gytoken) {\n            java.log(\"缺少必要参数\");\n            return;\n        }\n\n        const parsedData = parseJsonSafely(data);\n        if (!parsedData || !parsedData.data || !Array.isArray(parsedData.data) || !parsedData.data[durChapterIndex]) {\n            return;\n        }\n\n        const ritem = parsedData.data[durChapterIndex];\n        \nlet book_info = {\n            book_name,\n            author,\n            abstract,\n            thumb_url,\n            book_id,\n            tab,\n            source: sources\n        };\n        if (!book_info || typeof book_info != \"object\") {\n            return;\n        }\n        const rurl = `/add_book_to_book_shelf`;\n        book_info.read_status = book_order;\n        book_info.last_chapter_item_id = ritem.item_id || \"\";\n        book_info.last_chapter_title = ritem.title || \"\";\n        //java.toast(JSON.stringify(book_info));\n       \ttry {\n       \t\tconst check_book_url = `/check_book_in_book_shelf`;\n    checkResponse = request(check_book_url, \"POST\", {book_id,source:sources,tab});\n} catch (e) {\n    java.log(`检查书籍请求失败: ${e}`);\n}\n    \n        const check_data = parseJsonSafely(checkResponse);\n        try {\n            let chapterIndex = findItemIndex(parsedData.data,check_data.data.last_chapter_item_id)\n            durChapterIndex = chapterIndex;\n            if (book.durChapterIndex < chapterIndex) {\n            \tbook_info.last_chapter_item_id = check_data.data.last_chapter_item_id;\n            \t}\n            \n            if (chapterIndex != 0 && book.durChapterIndex < chapterIndex) {\n                book.durChapterIndex = chapterIndex;\n            }\n            if (check_data.data.id) {\n                book_info.id = check_data.data.id;\n                const uurl = `/update_book_shelf`;\n                if (book_order==1){\n                \tlet up = request(uurl, \"POST\", book_info);\n                   if (reading_toast == \"true\") {\n                \t    java.toast(up)\n                \t  }\n                \t}\n                \n            } else {\n                if (book_order==1){\n                let up = request(rurl, \"POST\", book_info);\n                if (reading_toast == \"true\") {\n                \t    java.toast(up)\n                \t}\n            }}\n        } catch (e) {\n            try {\n                if (book_order==1){\n                let up = request(rurl, \"POST\", book_info);\n                if (reading_toast == \"true\") {\n                \t    java.toast(up)\n                \t}}\n            } catch (e) {\n                if (reading_toast == \"true\") {\n                \t    java.toast(`书架操作失败: ${e}`);\n                \t}\n            }\n\n        }\n    } catch (error) {\n        java.log(`书籍同步流程异常: ${error}`);\n        if (reading_toast == \"true\") {\n                \t    java.longToast(\"\\n同步阅读进度失败，但不影响阅读，可以前往登录关闭书架同步功能。\");\n                \t}\n        \n    }\n};\n\ntry {syncBookShelf(data, book, gytoken);}catch{}\n\n\nfunction processCatalogList(data) {\n    let catalog_list = parseJsonSafely(data).data;\n\n\n    if (catalog_list && catalog_list.length > 0) {\n\n        let lastItem = catalog_list[catalog_list.length - 1];\n\n\n        if (lastItem && typeof lastItem == 'object' && lastItem.source && lastItem.title) {\n\n            lastItem.title = lastItem.source + ':' + lastItem.title;\n        }\n    }\n    return JSON.stringify({\n        'data': catalog_list\n    });\n}\n\nif (showSource == \"true\") {\n    processCatalogList(data);\n} else {\n    data;\n}\n\n</js>$.data",
      "chapterName": "$.title",
      "chapterUrl": "<js>\nlet { tab, source: sources, title, item_id } = result;\nlet book_id = java.get('book_id');\nlet base_url = BaseUrl();\nlet url = result.toc_url || \"\";\n\nlet gycontent = { book_id, item_id, title, sources, tab, url };\nlet encodedGycontent = java.base64Encode(JSON.stringify(gycontent));\n\nlet content_url;\n\nif (sources == '卷') {\n    content_url = item_id;\n} else if (['番茄', '七猫', '塔读'].includes(sources) && tab == \"小说\") {\n    const fqssionid = java.getCookie('fanqienovel.com', 'sessionid');\n    const sourcess = sources.replace('svip_', '');\n    content_url = `data:;base64,${encodedGycontent},${JSON.stringify({\n        type: \"gycontent\",\n        js: `book ? result : '${base_url}/get_review?book_id=${book_id}&item_id=${item_id}&ssionid=${fqssionid}&source=${sourcess}'`\n    })}`;\n} else {\n    content_url = `data:;base64,${encodedGycontent},${JSON.stringify({ type: \"gycontent\" })}`;\n}\n</js>",
      "updateTime": "$.first_pass_time"
    },
    "searchUrl": "<js>\nlet moreSettings = getVariable('更多设置');\n\nlet tab = moreSettings && moreSettings['搜索模式'] || '小说';\n\nlet sourcesKey = moreSettings && moreSettings[tab] || '全部';\n\nlet disabled_sources = moreSettings && moreSettings['强制搜索'] || \"0\";\nif (disabled_sources == \"false\") {\n    disabled_sources = \"0\";\n} else if (disabled_sources == \"true\") {\n    disabled_sources = \"1\";\n}\nlet gysearch = {\n    key: key,\n    tab: tab,\n    sourcesKey: sourcesKey,\n    page: page,\n    disabled_sources:disabled_sources\n}\ngysearch = java.base64Encode(JSON.stringify(gysearch));\n`data:;base64,${gysearch},{\"type\":\"gysearch\"}`;\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "鸣谢，木里佬和辞晨佬的书源技术支持",
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "木里阅读-烂柿子小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://fq.mlds.dpdns.org#烂柿子小说",
    "customButton": false,
    "customOrder": 22,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\njava.toast(source.getLoginHeader())\ncookie.setCookie(\"fanqienovel.com\",source.getLoginHeader())\nlet sort = [];\npush = (title, url, type) => sort.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexBasisPercent: type\n    }\n});\n    push('番茄书架', 'https://fanqienovel.com/reading/bookapi/bookshelf/info/v:version/?aid=1967&iid=0&version_code=57700&update_version_code=57700', 1);\n    push('巅峰榜单', 'https://fanqienovel.com/api/author/misc/top_book_list/v1/?limit=100&offset=0', 0.29);\n    push('出版榜单', 'https://fanqienovel.com/api/node/publication/list?page_index=0&page_count=100', 0.29);\n    push('爆更榜单', 'https://api-lf.fanqiesdk.com/api/novel/channel/homepage/rank/rank_list/v2/?aid=13&limit=50&offset=0&side_type=15&type=1', 0.29);\n    push('黑马榜单', 'https://api-lf.fanqiesdk.com/api/novel/channel/homepage/rank/rank_list/v2/?aid=13&limit=50&offset=0&side_type=13&type=1', 0.29);\n    push('热搜榜单', 'https://api-lf.fanqiesdk.com/api/novel/channel/homepage/rank/rank_list/v2/?aid=13&limit=50&offset=&side_type=12&type=1', 0.29);\t\n    push('每周推荐', 'https://fanqienovel.com/api/rank/recommend/list?type=1&limit=10&offset=0', 0.29);\t\n\t\n\tA=[[\"推荐\",\"10\"],[\"完结\",\"11\"],[\"热搜\",\"12\"]]\t;\n[[\"男频\",\"1\"],[\"女频\",\"0\"]].map([title,id]=>{\n\tpush('❤️'+title+'榜单❤️', null, 1);\n\tif(id==2){ \tA=A.slice(1,A.length-1) }\n\t\tA.map([title,uri]=>{\t\t\t\n\t\t  \turl= `https://novel.snssdk.com/api/novel/channel/homepage/rank/rank_list/v2/?aid=13&app_name=news_article&app_version=9.7.3&channel=tengxun_tt&device_platform=android&os=android&device_type=ProjectTitan&os_api=29&os_version=10&openlive_plugin_status=1&isTTWebViewHeifSupport=0&limit=100&offset={{(page-1)*100}}&side_type=${uri}&type=${id}`;\n\t\t\t\tpush(title, url, 0.29);\t\t\t\n\t\t\t});\n\t});\t\n\ncategory = () => {\n\t\t\tlet category_url = \"https://novel.snssdk.com/api/novel/channel/homepage/new_category/page/data/v1/?aid=13\";\nlet data = cache.get(category_url);\n\nif (data && data != '') return JSON.parse(data).data;\ndata = java.ajax(category_url);\ncache.put(category_url, data);\n//java.toast('加载中...')\nreturn  JSON.parse(data).data;\t\t\n\t\t}\n\t\t  \n  json = (data) => {\n     boy = data.boy_category;\n     girl = data.girl_category;\n     publish = data.publish_category;\n     json = [[\"男频\",\"gender=1\",boy],[\"女频\",\"gender=0\",girl],[\"出版\",\"genre_type=160\",publish]];\n     return JSON.parse(JSON.stringify(json));\n   }\t\n\t\tjson(category()).map([tit1,gender,category]=>{\n\t    push('❤️'+tit1+'❤️', null, 1);\n     category.map(($,index)=>{\n     \tindex++;\n\t    title = $.category_name;\n     \tcid = $.category_id;\n\t    url=  `https://novel.snssdk.com/api/novel/channel/homepage/new_category/book_list/v1/?aid=1967&app_name=news_article&app_version=9.7.3&channel=tengxun_tt&creation_status=9&device_platform=android&enter_from=novel_category&novel_host&novel_version&version_code=973&version_name=9.7.3&word_count=9&os=android&device_type=ProjectTitan&os_api=29&os_version=10&offset={{(page-1)*100}}&limit=100&category_id=${cid}&${gender}`;\n\t\t\t\tpush(title, url, 0.29);\t\n      });\n  });\nJSON.stringify(sort);",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; TAS-AN00 Build/HUAWEITAS-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/114.0.5735.61 Mobile Safari/537.36 Super 4.6.5\"\n}",
    "jsLib": "var MLDS='https://fq.mlds.dpdns.org'\n\nfunction 密钥() {\n    const {java, source, book} = this;\n    let loginInfoMap = source.getLoginInfoMap();\n    let apikey = \"\";\n    if (loginInfoMap && loginInfoMap['密钥'] && loginInfoMap['密钥'] !== \"\") {\n        apikey = loginInfoMap['密钥'];\n    }\n    \n    return apikey;\n}\n\n// ===== 工具函数 =====\nfunction GET(k) {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n  return d[k] || '';\n}\n\nfunction SET(k, v) {\n  const { java, source } = this;\n  var d = {};\n  try { d = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { d = {}; }\n  d[k] = v;\n  source.putVariable(JSON.stringify(d, null, '\\t'));\n}\n// ================\n \n// ===== 段评功能() =====\n\nfunction getComments(content, bookId, itemId) {\n  var java = this.java, cache = this.cache;\n  try {\n    var separator = '\\n';\n    if (/<p>/.test(content)) { content = content.replace('<p>','').replace(/<\\/p>/g, '').replace('\\n', ''); separator = '<p>'; } else { content = content.replace(/\\r/g, '').replace(/\\n$/, ''); }\n    var comcont = content.split(separator);\ncomcont.forEach((item, idx) => {\ncomcont[idx] = item.replace(/[\\r\\n]/g, '').trim();\n});\n    var url = `https://fqdp.mlds.dpdns.org/api/idea/summary?book_id=${bookId}&item_id=${itemId}`;\n    var comments = JSON.parse(java.ajax(url));\n    comments = comments.data;\n\n    var commentList = [];\n\nObject.entries(comments).forEach(([paragraphId, { count }]) => {\n  commentList.push({\n    paragraphId: paragraphId,\n    textCount: count\n  });\n});\n\n    if (commentList.length == 0) { return content; }\n    commentList.forEach(function(x) {\n        if (comcont[x.paragraphId]) {\n            comcont[x.paragraphId] += '<img src=\"' + createSvg.call({source: this.source, java: java, cache: cache}, x.textCount, comcont[x.paragraphId], bookId, itemId, x.paragraphId) + '\">';\n        }\n    }.bind(this));\n    return comcont.join('\\n');\n  } catch (e) { java.log(e); return content; }\n}\nfunction createSvg(number, txt, bookId, itemId, para_index) {\n  var java = this.java, cache = this.cache;\n  var qpyscolor = '#A9A9A9', qpwzcolor = '#A9A9A9';\n  var displayText = number > 99 ? '99' : number;\n  var svg = '<svg t=\"1760002253572\" class=\"icon\" viewBox=\"-150 0 1224 1224\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"1490\" width=\"800\" height=\"800\"><g transform=\"rotate(90 512 512) scale(1 1.2)\"><path d=\"M512 938.666667c-27.733333 0-55.466667-12.8-72.533333-34.133334l-46.933334-55.466666c-14.933333-17.066667-34.133333-25.6-57.6-25.6h-110.933333c-76.8 0-138.666667-61.866667-138.666667-138.666667V224C85.333333 147.2 147.2 85.333333 224 85.333333h573.866667c76.8 0 138.666667 61.866667 138.666666 138.666667v460.8c0 76.8-61.866667 138.666667-138.666666 138.666667h-108.8c-21.333333 0-42.666667 8.533333-55.466667 25.6l-49.066667 55.466666c-17.066667 21.333333-44.8 34.133333-72.533333 34.133334zM224 149.333333C183.466667 149.333333 149.333333 183.466667 149.333333 224v460.8c0 40.533333 34.133333 74.666667 74.666667 74.666667h110.933333c40.533333 0 78.933333 17.066667 104.533334 49.066666l46.933333 55.466667c6.4 6.4 14.933333 10.666667 25.6 10.666667 8.533333 0 19.2-4.266667 23.466667-10.666667l49.066666-55.466667c25.6-29.866667 64-46.933333 104.533334-46.933333h108.8c40.533333 0 74.666667-34.133333 74.666666-74.666667V224C874.666667 183.466667 840.533333 149.333333 800 149.333333h-576z\" fill=\"' + qpyscolor + '\" p-id=\"1530\"></path></g><text x=\"460\" y=\"620\" font-family=\"Arial, sans-serif\" text-anchor=\"middle\" dominant-baseline=\"middle\" font-size=\"400\" fill=\"' + qpwzcolor + '\">' + displayText + '</text></svg>';\n  var encodedSvg = java.base64Encode(svg);\n  var date = Date.now().toString();\n  return 'data:image/svg+xml;base64,' + encodedSvg + ',{\"style\":\"text\",\"type\":\"qd\",\"click\":\"showCmt(\\'' + txt + '\\',\\'' + bookId + '\\',\\'' + itemId + '\\',\\'' + para_index + '\\',\\'' + number + '\\')\"}';\n}\n\nfunction showCmt(txt, bookId, itemId, para_index, _count) {\n  let url = `https://raw.giteeusercontent.com/syiism/legado-source/raw/main/dp.html?book_id=${bookId}&item_id=${itemId}&para_index=${para_index}&offset=0&count=20&api_base=https://muyangmodelscope-fanq1.ms.show&paragraph_tog=1`;\n  this.java.showBrowser(url, this.java.ajax('https://raw.giteeusercontent.com/syiism/legado-source/raw/main/comment-viewer/comment-viewer.html'));\n}\n// =============================\n\nfunction isShowPara() {\n  const { java, source } = this;\n  var v = {};\n  try { v = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { v = {}; }\n  return v.showPara;\n  java.refreshExplore();\n}\n",
    "lastUpdateTime": 1784433763704,
    "loginUi": "[\n{\n    \"name\": \"番茄登录\",\n    \"type\": \"button\",\n    \"action\": \"getFqCookie(true, false)\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1.4\n    }\n    },\n{\n    \"name\": \"登录检测\",\n    \"type\": \"button\",\n    \"action\": \"getFqCookie(false, true)\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1.4\n    }\n    },\n{\n    \"name\": \"段评开关\",\n    \"type\": \"button\",\n    \"action\": \"toggleParaComments()\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1.4\n    }\n    },\n{\n    \"name\": \"🍀 书源更新 🍀\",\n    \"type\": \"button\",\n    \"action\": \"updateSource()\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1.4\n    }\n    },\n    {\n        \"name\": \"密钥\",\n        \"type\": \"text\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    },\n{\n        \"name\": \" 木里阅读密钥申请\",\n        \"type\": \"button\",\n        \"action\": \"密钥申请()\",\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1.4\n        }\n    },\n    {\n        'name': '👥加入群聊 👥',\n        'type': 'button',\n        \"action\":\"http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=6QMFbSP6uTETsgKhSt9BlJhu2U3ZV5PQ&authKey=Uw9pcKheZWSRFoBoxYTSaJz3INISY7Iw5Rilc0fsNehq7LaSTyb5VTqdZzoj%2FT%2Bq&noverify=0&group_code=1080288439\", \n            \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        \"name\": \"投喂(>^ω^<)喵\",\n        \"type\": \"button\",\n        \"action\": \"zz()\",\n        \"style\": {\n          \"layout_flexGrow\": 1,\n          \"layout_flexBasisPercent\": 0.4\n        }\n    },\n    {\n        'name': \"言念君子，温其如玉。\",\n        'type': 'button',\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1.4\n        }\n    }\n]",
    "loginUrl": "if (source.getVariable()==\"\") { \n    source.putVariable('{\"showPara\": true}');\n}\n\nconst version = '1.0.0';\nconst project = '木里阅读-烂柿子小说'\n\nfunction login(){}\n\nfunction 密钥申请() {   \n\tjava.startBrowserAwait('https://fq.mlds.dpdns.org', \"密钥申请\");\n}\n\nfunction login_(openBrowser, checkMode) {\n    // java.removeCookie(\"snssdk.com\")\n    var cookie_ = String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token']\nsource.putLoginHeader(cookie_);\n    //java.toast(cookie_)\n    if (cookie_ && cookie_ != \"\" && !checkMode) {\n        if (!source.variableComment) {\n            java.toast(\"请不要重复登录，请先退出登录！\")\n        } else {\n            java.toast(\"您为填写token登录，请手动移除token后再次登录\")\n        }\n        return false\n    }\n    if (openBrowser) {\n        try {\n            java.startBrowserAwait(\"https://fanqienovel.com/\", \"登录\")\n        } catch (e) {\n            java.toast(e)\n        }\n    }\n    // java.log(\"snssdk cookie: \" + java.getCookie(\"snssdk.com\") + \"will be reomved\")\n    try {\n        cookie.removeCookie(\"snssdk.com\")\n    } catch (e) {}\n    // java.log(cookie)\n    var cookie_ = \"sessionid=\" + (String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) ? String(cookie.getKey(\"fanqienovel.com\", \"sessionid\")) : source.getLoginInfoMap()['手动登录Token'])\n    let user;\n    try {\n      user = JSON.parse(java.ajax(\"https://fanqienovel.com/api/user/info/v2,\" + JSON.stringify({\n        method: \"GET\",\n        headers: {\n          \"Cookie\": cookie_\n        }\n      }))).data.name\n     } catch (e) {java.log(e)}\n    if (!cookie_ || cookie_ == \"sessionid=\" || !user) {\n        java.toast(\"未获取到登录凭据，登录失败\")\n        return false\n    }\n    java.toast(\"欢迎 \" + user + \"\\n登录成功！\")\n    return true\n}\n\nfunction getFqCookie(t,e){ //java.startBrowserAwait('https://fanqienovel.com/', \"番茄登录\");\nlogin_(t, e)\n}\n\nfunction zz() {\n    let url=\"https://ps.ssl.qhimg.com/t0269ae68ef8e71dcae.jpg\"\n    let mes=\"欢迎赞助服务器！\"\n    java.startBrowser(url, \"木里得斯赞助码\")\n       java.longToast(mes);\n       return;\n}\nfunction toggleParaComments() {\n    var v = {};\n    try { v = JSON.parse(source.getVariable() || \"{}\"); } catch (e) { v = {}; }\n    v.showPara = !v.showPara;\n    source.putVariable(JSON.stringify(v));\n    java.toast(v.showPara ? '开' : '关');\n}\n\nfunction updateSource() {\n  let url = 'https://raw.giteeusercontent.com/syiism/legado-source/raw/main/update.html';\n  let verUrl = 'https://raw.giteeusercontent.com/syiism/legado-source/raw/main/version/fq.json';\n  let verInfo = java.ajax(verUrl);\n  \n  // 先转JSON字符串，再双重编码\n  let dataParam = encodeURIComponent(verInfo);\n  let param = `?project=${project}&data=${dataParam}&sourceName=${encodeURIComponent(source.bookSourceName)}&group=${encodeURIComponent(source.bookSourceGroup)}&version=${encodeURIComponent(version)}&sourceUrl=${encodeURIComponent(\"https://pc.sysbbs.com/source/plugin/bphp_clouds/upload/50669/20260619/2cdddd9f13abbed4a847058f9e5a9e6b.json\")}`;\n  \n  java.showBrowser(url + param, java.ajax(url));\n}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$..data[0].author",
      "coverUrl": "$..data[0].detail_page_thumb_url",
      "intro": "<js>\nfunction renderBookInfoHtml(result) {\n    // 解析源数据\n    const raw = JSON.parse(result);\n    const $ = raw.data ? raw.data.data[0] : raw;\n    \n    // ===================== 工具函数（匹配原模板语法）=====================\n    /**\n     * 日期处理 {{$.create_time##T|\\+.*## }} 截取T前日期时间\n     */\n    function formatCreateTime(timeStr) {\n        if (!timeStr) return '';\n        return String(timeStr).split('T')[0] + ' ' + String(timeStr).split('+')[0].split('T')[1] || '';\n    }\n\n    /**\n     * 数组分割 {{$.category##/##,}} 替换分隔符\n     */\n    function splitReplaceStr(str, oldSep, newSep) {\n        if (!str) return '';\n        return String(str).split(oldSep).join(newSep);\n    }\n\n    /**\n     * 角色清洗 {{$.roles##\\[|\\\"|\\]}} 去除[]\" 符号\n     */\n    function cleanRoles(roleStr) {\n        if (!roleStr) return '';\n        return String(roleStr).replace(/\\[|\"|\\]/g, '');\n    }\n\n    /**\n     * 文本截取 {{$.source##，.*|授权发行##}} 匹配 ，截断文本\n     */\n    function cutTextBySep(text, sep) {\n        if (!text) return '';\n        const arr = String(text).split(sep);\n        return arr[0] || text;\n    }\n\n    // ===================== 变量映射 全部{{}}模板转为JS变量 =====================\n    const book_id = $.book_id ?? '';\n    const original_book_name = $.original_book_name ?? '';\n    const book_flight_alias_name = $.book_flight_alias_name ?? '';\n    const creation_status = $.creation_status ?? 0; // 0连载 1完结\n    const create_time = formatCreateTime($.create_time);\n    const last_chapter_update_time = java.timeFormatUTC($.last_chapter_update_time+'000','yyyy-MM-dd HH:mm:ss',8);\n    const word_number = $.word_number ?? 0;\n    const category = splitReplaceStr($.category, '/', '，');\n    const tags = $.tags ?? '';\n    const roles = cleanRoles($.role);\n    const tones = $.tones ?? '';\n    const currentTone = GET(\"tone_cn\") || 'wu';\n    const score = $.score ?? 0;\n    const syms = \"未设置模式\";\n    const sub_info = $.sub_info ?? '';\n    const source = cutTextBySep($.source, '，');\n    const abstract = $.abstract ?? '';\n    const copyright_info = cutTextBySep($.copyright_info, '，');\n    const bookReview = '无';\n\n    // 状态拼接：__status__-连载/完结\n    const statusText = creation_status === 1 ? '正常-完结' : '正常-连载';\n\n    // ===================== 响应式HTML模板 =====================\n    const html = `\n<useweb>\n<style>\n* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n  font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;\n}\n.card-wrap {\n  width: 100%;\n  max-width: 100%;\n  padding: 0 12px;\n}\n:root {\n  --card-bg: #f2f2f2;\n  --card-shadow: rgba(0, 0, 0, 0.1);\n}\nhtml.dark {\n  --card-bg: #1e1e1e;\n  --card-shadow: rgba(0, 0, 0, 0.4);\n}\n\n/* 卡片基础样式 - 高度完全自适应 */\n.book-card,\n.intro-card {\n  width: 100%;\n  max-width: 750px;\n  margin: 12px 0;\n  padding: 16px;\n  border-radius: 12px;\n  background: var(--card-bg);\n  box-shadow: 0 2px 12px var(--card-shadow);\n  /* 关键：高度自适应，无任何固定高度限制 */\n  height: auto;\n  min-height: unset;\n  max-height: none;\n  overflow: visible;\n}\n\n/* 简介卡片独立样式 */\n.intro-card {\n  margin-bottom: 4px;\n}\n\n/* 简介卡片内部：标签和正文分行 */\n.intro-item {\n  display: block;\n  height: auto;\n}\n.intro-item .label {\n  display: block;\n  font-weight: 600;\n  color: #222;\n  margin-bottom: 6px;\n  font-size: 16px;\n  height: auto;\n}\n.intro-item .val {\n  display: block;\n  width: 100%;\n  line-height: 1.7;\n  color: #333;\n  white-space: pre-line;\n  word-break: break-all;\n  font-size: 15px;\n  height: auto;\n  overflow: visible;\n  /* 确保长内容完整显示 */\n}\n\n/* 主卡片内条目样式 - flex 布局 */\n.book-item {\n  display: flex;\n  gap: 8px;\n  padding: 8px 0;\n  align-items: flex-start;\n  flex-wrap: wrap;\n  height: auto;\n}\n.label {\n  font-weight: 600;\n  color: #222;\n  min-width: 90px;\n  flex-shrink: 0;\n  height: auto;\n}\n.val {\n  color: #444;\n  flex: 1;\n  word-break: break-all;\n  height: auto;\n}\n\n/* 移动端适配 */\n@media screen and (max-width:480px) {\n  .card-wrap {\n    padding: 0 12px 1px 12px;\n  }\n  .book-item {\n    padding: 6px 0;\n  }\n  .label {\n    min-width: 70px;\n    font-size: 14px;\n  }\n  .val {\n    font-size: 14px;\n  }\n  .intro-item .label {\n    font-size: 14px;\n  }\n  .intro-item .val {\n    font-size: 14px;\n  }\n}\n</style>\n\n<div class=\"card-wrap\">\n  <!-- 独立简介卡片 -->\n  <div class=\"intro-card\">\n    <div class=\"intro-item\">\n      <span class=\"label\">📜 简介</span>\n      <div class=\"val\">${abstract}</div>\n    </div>\n  </div>\n\n  <!-- 主卡片 -->\n  <div class=\"book-card\">\n    <div class=\"book-item\">\n      <span class=\"label\">🆔 编号：</span>\n      <span class=\"val\">${book_id}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📕 源名：</span>\n      <span class=\"val\">${original_book_name}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📔 别名：</span>\n      <span class=\"val\">${book_flight_alias_name}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📇 状态：</span>\n      <span class=\"val\">${statusText}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">✏️ 开坑：</span>\n      <span class=\"val\">${create_time}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🕰 更新：</span>\n      <span class=\"val\">${last_chapter_update_time}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">⌨️ 字数：</span>\n      <span class=\"val\">${word_number}字</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📎 分类：</span>\n      <span class=\"val\">${category}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🏷️ 标签：</span>\n      <span class=\"val\">${tags}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">👤 主角：</span>\n      <span class=\"val\">${roles}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">⚙️ 当前模式：</span>\n      <span class=\"val\">${syms}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🗣 当前音色：</span>\n      <span class=\"val\">${currentTone}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🔊 可选音色：</span>\n      <span class=\"val\">${tones}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📊 评分：</span>\n      <span class=\"val\">${score}分</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">👁️ 在线：</span>\n      <span class=\"val\">${sub_info}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">🔗 源站：</span>\n      <span class=\"val\">${source}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📝 书评：</span>\n      <span class=\"val\">${bookReview}</span>\n    </div>\n    <div class=\"book-item\">\n      <span class=\"label\">📍 版权：</span>\n      <span class=\"val\">${copyright_info}</span>\n    </div>\n  </div>\n</div>\n</useweb>`;\n\n    return html;\n}\nrenderBookInfoHtml(result);\n</js>\n@js:\nresult.\nreplace(/....名+：\\n/g,\"\").\nreplace(/....数+：\\n/,\"\").\nreplace(/....评+：\\s/,\"📝 书评：无\").\nreplace(/....色+：\\n/,\"\").\nreplace(/....角+：\\n/,\"\").\nreplace(/....数+：0字/,\"\").\nreplace(\"男生2女生\",\"出版\").\nreplace('__status__', (java.getString('$..data[0].book_search_visible') == 'true' ? '正常' : (java.getString('$..data[0].tomato_book_status') == '3' ? '下架' : '小黑屋'))).\nreplace(\"连载4完结\",\"断更\").\nreplace(\"连载-1完结\",\"未知\");",
      "kind": "男生{{$..data[0].gender}}女生\n{{$..data[0].category}}\n连载{{$..data[0].creation_status}}完结\n{{$..data[0].score}}分\n{{java.timeFormatUTC(java.getString(\"$..data[0].last_chapter_update_time\")*1000,'yyyy-MM-dd',8)}} \n##连载0|1完结|男生0|1女生\n@js:result\n.replace(\"男生2女生\",\"出版\")\n.replace(\"连载4完结\",\"断更\")\n.replace(\"连载-1完结\",\"未知\");",
      "lastChapter": "{{$..data[0].last_chapter_title}} • {{java.timeFormat(java.getString(\"$..data[0].last_chapter_update_time\")*1000)}}",
      "name": "$..data[0].original_book_name",
      "tocUrl": "$..data[0].book_id\n@js:\njava.put(\"bookId\", result);\nMLDS+'/api/catalog?book_id='+result",
      "wordCount": "$.data[0].word_number"
    },
    "ruleContent": {
      "content": ".content\n<js>\nlet bookId = java.get(\"bookId\");\nlet itemId = baseUrl.match(/.*item_ids=(\\d+)/)[1];\nif (isShowPara()) result = getComments(result, bookId, itemId);\nresult;\n</js>"
    },
    "ruleExplore": {
      "author": "author##</?em>",
      "bookList": "<js>\njava.log(cookie.getCookie(\"fanqienovel.com\"))\njava.log(result)\nlet list = [];\nlet resultData = JSON.parse(result);\n\nlet targetData = resultData.data || resultData.list || resultData.book_list || \n                resultData.publication_list || resultData.result || resultData;\n                \nif (targetData != null && targetData.book_shelf_info) {\n    let bookIds = targetData.book_shelf_info.map(item => `{\"book_id\": \"${item.book_id}\"}`).join(',');\n    \n    let booksData = java.ajax(\n`https://fanqienovel.com/api/bookshelf/multidetail,{\"method\": \"post\",\"body\": {\"books\":[${bookIds}]}}`\n        );\n    \n    let books = JSON.parse(booksData).data.detail_list;\n    for (let i in books) {\n        let d = books[i];\n        list.push({\n            src: d,\n            book_name: d.book_name,\n            author: d.author,\n            category:d.category,\n            tags:d.tags,\n            word_number:d.word_number,\n            lastChapterTitle: d.last_chapter_title,\n            abstract: d.abstract,\n            book_id: d.book_id,\n        });\n    }\n} else {\n    list = targetData.content || targetData;\n}\n\nJSON.stringify({data: list})\n</js>\ndata.data||data.list||book_list||data.publication_list||data.result||data",
      "bookUrl": "{{MLDS}}/api/detail?book_id={{$.book_id||$.series_id}}",
      "coverUrl": "$.audio_thumb_uri||$.src.audio_thumb_uri||$.thumb_url||$.thumbUri##(\\d+)-tt##6-novel",
      "intro": "$.abstract",
      "kind": "category&&source",
      "lastChapter": "last_chapter_title",
      "name": "book_name||bookName",
      "wordCount": "word_number"
    },
    "ruleSearch": {
      "author": "author##</?em>",
      "bookList": ".book_data[*]||.video_data[*]",
      "bookUrl": "{{MLDS}}/api/detail?book_id={{$.book_id||$.series_id}}",
      "checkKeyWord": "我的26岁女房客",
      "coverUrl": ".audio_thumb_uri",
      "intro": ".abstract",
      "kind": "category&&score",
      "name": "$.original_book_name||$..series_title##（别名：.*?）",
      "wordCount": "连载{{$.creation_status}}完结##连载0|1完结"
    },
    "ruleToc": {
      "chapterList": "data.chapterListWithVolume[*].[*]",
      "chapterName": "$.title",
      "chapterUrl": "{{MLDS}}/api/content?token={{密钥()}}&item_ids={{$.itemId}}",
      "updateTime": "{{$.volume_name}} | {{java.timeFormatUTC(java.getString(\"firstPassTime\") * 1000, 'yyyy-MM-dd HH:mm:ss',28800000)}}\n@js:\nif (result.startsWith(\" |\")) result = result.slice(2)\nif (result.startsWith(\"| \")) result = result.slice(2)\nresult"
    },
    "searchUrl": "{{MLDS}}/api/search?query={{key}}&offset={{(page-1)*10}}&tab_type=3\n@js:\nif (/^\\d+$/.test(key)) {\n  result =  `${MLDS}/api/detail?book_id=` + key\n}\nresult",
    "weight": 0
  },
  {
    "bookSourceComment": "不会写图片，凑合用吧\n地址发布页https://yaolu8.com\n",
    "bookSourceGroup": "🔞",
    "bookSourceName": "69小说吧（起点）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.69xsb.com",
    "bookUrlPattern": "https?://69xsb\\.com/book/\\d+/",
    "customButton": false,
    "customOrder": 23,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort/1/{{page}}/\n武侠::/sort/2/{{page}}/\n都市::/sort/3/{{page}}/\n科幻::/sort/4/{{page}}/\n穿越::/sort/5/{{page}}/\n耽美::/sort/6/{{page}}/\n游戏::/sort/7/{{page}}/\n精品::/sort/8/{{page}}/\n午夜::/sort/9/{{page}}/",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36\"}",
    "lastUpdateTime": 1770170345241,
    "respondTime": 8492,
    "ruleBookInfo": {
      "author": "meta[property=og:novel:author]@content",
      "coverUrl": "p.bookintro img@src",
      "intro": ".intro p@text",
      "kind": "meta[property=og:novel:category]@content",
      "lastChapter": "meta[property=og:novel:lastest_chapter_name]@content",
      "name": "meta[property=og:novel:book_name]@content",
      "tocUrl": "meta[property=og:novel:read_url]@content",
      "wordCount": ".novel_info_title p@text##(\\d+)\\s*万字##$1万字"
    },
    "ruleContent": {
      "content": "#rtext p@text",
      "replaceRegex": "##要撸小说网 www.YaoLuxs.com.*|更多H小说请访问YaoLuxs.com.*|分站地址www.JinMan8.com.*|本站永久域名：|\\www.yaoluku.com|\\要撸小说网 www.YaoLuxs.com|\\免费看不卡AV视频：|\\www.uxxtv.com|有声小说地址|永久地址|更多精彩小说地址|收藏永久地址|最新地址|yaolu8.com|AV视频地址"
    },
    "ruleExplore": {
      "author": "class.author.0@text##作者：",
      "bookList": "div.bookbox",
      "bookUrl": "h4 a@href",
      "coverUrl": "{{\"https://img.h86.net/files/article/image/36/36040/36040s.jpg\"}}",
      "intro": ".update@text",
      "lastChapter": "tag.a.1@text",
      "name": "h4 a@text",
      "wordCount": "class.author.1@text"
    },
    "ruleSearch": {
      "author": "class.author.0@text##作者：",
      "bookList": "div.bookbox",
      "bookUrl": "h4 a@href",
      "coverUrl": "{{\"https://img.h86.net/files/article/image/36/36040/36040s.jpg\"}}",
      "intro": ".update@text",
      "kind": ".img_span span@text&&.s_gray@text##\\s*\\/\\s*|.*字\\s*##,",
      "lastChapter": "tag.a.1@text",
      "name": "h4 a@text",
      "wordCount": ".orange@text"
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/search/,{\n  \"body\": \"searchkey={{key}}&searchtype=all&Submit=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "如果用不了，可以点一下登录，在下搜索框返回刷新。\n爱丽书屋：https://m.ailisw.com\n技术特点：\n1. 正文通过JS加载.dat文件，内容为控制字符压缩的HTML实体+自定义字体反爬\n2. 目录页WAF拦截，通过详情页信息生成章节列表\n3. 正文解码：反向替换控制字符→还原HTML实体→解码Unicode→字体替换\n4. 搜索WAF拦截，loginUrl+loginCheckJs手动验证WAF，cookie保存后POST搜索\n",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱丽书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.ailisw.com",
    "bookUrlPattern": "https?://m\\.ailisw\\.com/[a-zA-Z0-9]+\\.html",
    "concurrentRate": "1000",
    "customButton": false,
    "customOrder": 24,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\": \"书库\", \"url\": \"\", \"style\": {\"layout_flexGrow\": 0, \"layout_flexBasisPercent\": 1}}, {\"title\": \"全部\", \"url\": \"/shuku/0_0_0_{{page}}_0_0_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"都市\", \"url\": \"/shuku/0_0_0_{{page}}_0_1_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"现言\", \"url\": \"/shuku/0_0_0_{{page}}_0_2_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"同人\", \"url\": \"/shuku/0_0_0_{{page}}_0_3_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"幻言\", \"url\": \"/shuku/0_0_0_{{page}}_0_4_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"玄幻\", \"url\": \"/shuku/0_0_0_{{page}}_0_5_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"古言\", \"url\": \"/shuku/0_0_0_{{page}}_0_6_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"网游\", \"url\": \"/shuku/0_0_0_{{page}}_0_7_0.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"男频\", \"url\": \"/shuku/0_0_0_{{page}}_0_0_1.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"女频\", \"url\": \"/shuku/0_0_0_{{page}}_0_0_2.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"排行\", \"url\": \"/shuku/rank_{{page}}.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}, {\"title\": \"完本\", \"url\": \"/shuku/finish_{{page}}.html\", \"style\": {\"layout_flexGrow\": 1, \"layout_flexBasisPercent\": 0.29}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 12) AppleWebKit/537.36 Mobile Safari/537.36\", \"Accept-Language\": \"zh-CN,zh;q=0.9\"}",
    "lastUpdateTime": 1783679208431,
    "loginCheckJs": "var r = source.getKey() + '/';\nvar js = 'setTimeout(function(){window.legado.getHTML(document.documentElement.outerHTML);},5000);';\nvar html = String(java.webView('', r, js));\nif (html.indexOf('wafjs') !== -1 || html.indexOf('loading ailisw') !== -1) {\n    java.startBrowserAwait(r, '请等待页面加载完成后点击返回');\n}\nresult;",
    "loginUrl": "https://m.ailisw.com/",
    "respondTime": 14026,
    "ruleBookInfo": {
      "author": ".author a@text",
      "coverUrl": ".BGsectionOne-top-left img@data-lazy",
      "intro": ".sectionTwo-content p@text",
      "kind": ".category a@text",
      "lastChapter": ".chapter-table a.0@text",
      "name": ".title@text"
    },
    "ruleContent": {
      "content": "<js>\nvar html = String(result);\nvar d = html.match(/initTxt\\(\"([^\"]+)\"/);\nif (!d) '内容加载失败';\nelse {\n    var u = d[1];\n    if (u.indexOf('//') === 0) u = 'https:' + u;\n    var s = String(java.ajax(u));\n    var j = s.match(/_txt_call\\((\\{[\\s\\S]*\\})\\)/);\n    if (!j) '解析失败';\n    else {\n        var c = j[1].match(/\"content\"\\s*:\\s*\"([\\s\\S]*?)\"\\s*,\\s*\"replace\"/);\n        if (!c) c = j[1].match(/\"content\"\\s*:\\s*\"([\\s\\S]*?)\"/);\n        if (!c) '无content';\n        else {\n            var ct = c[1].replace(/\\\\n/g,'\\n').replace(/\\\\r/g,'\\r').replace(/\\\\t/g,'\\t').replace(/\\\\\"/g,'\"').replace(/\\\\\\\\/g,'\\\\');\n            var r = /\"([^\"]+)\"\\s*:\\s*\"((?:\\\\b|\\\\n|[\\s\\S]))\"/g;\n            var m;\n            while ((m = r.exec(j[1])) !== null) {\n                ct = ct.split(m[2]).join(m[1]);\n            }\n            ct = ct.replace(/&#x([0-9a-fA-F]+);/g, function(_, h) { return String.fromCharCode(parseInt(h, 16)) });\n            ct = ct.replace(/&#(\\d+);/g, function(_, d) { return String.fromCharCode(parseInt(d, 10)) });\n            var b = html.match(/ttf;base64,([^\\)]+)/);\n            if (b) try { ct = String(java.replaceFont(ct, java.queryBase64TTF(b[1]), java.queryTTF(\"https://alanskycn.gitee.io/teachme/assets/font/Source Han Sans CN Regular.ttf\"), true)) } catch(e) {}\n            ct = ct.replace(/\\\\n/g, '\\n');\n            ct.split('\\n').filter(function(l) { return l.trim() && !/AILISW|ailisw|温馨提示|加载中/.test(l) }).join('\\n');\n        }\n    }\n}\n</js>",
      "nextContentUrl": "a.next@href"
    },
    "ruleExplore": {
      "author": "p.gray a@text",
      "bookList": "li.list-item",
      "bookUrl": "h3 a@href",
      "lastChapter": "p.gray@text##.*·\\s*##",
      "name": "h3 a@text"
    },
    "ruleSearch": {
      "author": ".sc-title a.green@text",
      "bookList": "<js>\nvar cf = /wafjs|loading ailisw/.test(src) || src.indexOf('search-card') === -1;\nif (cf) {\n    cookie.removeCookie(source.getKey());\n    var x = java.get('url');\n    b = java.startBrowserAwait(x, '请等待页面加载完成后点击返回');\n    result = b;\n}\nresult;\n</js>\n.search-card",
      "bookUrl": ".sc-title a.0@href",
      "lastChapter": ".sc-time span.0@text",
      "name": ".sc-title a.0@text"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar html = String(result);\nvar doc = Packages.org.jsoup.Jsoup.parse(html);\n\n// Extract book URL prefix from baseUrl\n// baseUrl is like https://m.ailisw.com/hqMm.html\n// prefix should be /hqMm/\nvar prefix = '';\nvar baseMatch = String(baseUrl).match(/\\/([a-zA-Z0-9]+)\\.html/);\nif (baseMatch) {\n    prefix = '/' + baseMatch[1] + '/';\n}\n\n// Extract chapter count from .chaptercount text\nvar count = 0;\nvar ccElem = doc.selectFirst('.chaptercount');\nif (ccElem) {\n    var ccText = String(ccElem.text());\n    var cm = ccText.match(/共(\\d+)章/);\n    if (cm) count = parseInt(cm[1]);\n}\n\n// Fallback: try from og metadata\nif (count === 0) {\n    var allMetas = doc.select('meta');\n    for (var mi = 0; mi < allMetas.size(); mi++) {\n        var meta = allMetas.get(mi);\n        if (String(meta.attr('property')) === 'og:novel:latest_chapter_url') {\n            var lcUrl = String(meta.attr('content'));\n            var lcm = lcUrl.match(/\\/(\\d+)\\.html/);\n            if (lcm) count = parseInt(lcm[1]);\n            break;\n        }\n    }\n}\n\n// Generate chapter list\nvar sb = '<html><body><ul>';\nfor (var i = 1; i <= count; i++) {\n    sb += '<li><a href=\"' + prefix + i + '.html\">分节 ' + i + '</a></li>';\n}\nsb += '</ul></body></html>';\nsb;\n</js>\nul li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "@js:\nvar su = source.getKey();\nvar body = 'keyword=' + String(key) + '&submit=搜作品';\nvar postUrl = su + '/search/,' + JSON.stringify({'method': 'POST', 'body': String(body)});\njava.put('url', postUrl);\npostUrl;",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨再漫画💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.zaimanhua.com",
    "bookUrlPattern": "https://.*/app/v1/comic/detail/\\d+",
    "customButton": false,
    "customOrder": 25,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/exploreUrl.js')));\n</js>",
    "header": "<js>\nvar Proxy = Map('代理：').split(\",\");\nheaders={\n    \"User-Agent\": \"Dart/3.4 (dart:io)\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"再漫画\":\"https://qyyuapi.com/sy/js/再漫画/jsLib.js\"}",
    "lastUpdateTime": 1774925344639,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  { name: \"账号：\", type: \"text\" },\n  { name: \"密码：\", type: \"password\" },\n  {\n    name: \"💡登录账号💡\",\n    type: \"button\",\n    action: \"Login()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45}\n  },\n  {\n    name: \"💡源站测试💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  /*{ name: \"༺ˇ»`ʚ  榜单分类切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"t(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"热血\", type: \"button\", action: \"t(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"少年\", type: \"button\", action: \"t(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"搞笑\", type: \"button\", action: \"t(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"少女\", type: \"button\", action: \"t(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"后宫\", type: \"button\", action: \"t(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"四格\", type: \"button\", action: \"t(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },*/\n\n  { name: \"༺ˇ»`ʚ  榜单时间切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"今日\", type: \"button\", action: \"u(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"本周\", type: \"button\", action: \"u(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"本月\", type: \"button\", action: \"u(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"总排行\", type: \"button\", action: \"u(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n\n  { name: \"༺ˇ»`ʚ  标签取向切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"少年\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"少女\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"青年\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"女青\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  标签进度切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"连载\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"完结\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"短篇\", type: \"button\", action: \"p(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n\n  { name: \"༺ˇ»`ʚ  标签地区切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"日本\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"韩国\", type: \"button\", action: \"q(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"欧美\", type: \"button\", action: \"q(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"港台\", type: \"button\", action: \"q(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"内地\", type: \"button\", action: \"q(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"其它\", type: \"button\", action: \"q(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n\n  { name: \"༺ˇ»`ʚ  标签排序切换  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"热门人气\", type: \"button\", action: \"r(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"更新时间\", type: \"button\", action: \"r(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  { name: \"页数：\", type: \"text\" },\n\n  { name: \"༺ˇ»`ʚ  点击评论排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"最新\", type: \"button\", action: \"v(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"最热\", type: \"button\", action: \"v(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n \n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/再漫画/loginUrl.js')));",
    "respondTime": 21428,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "妖神记",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "updateTime": "time"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/再漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceComment": "─────当前版本Pro V50─────\n点击登录即可查看:\n0、书源制作思路\n1、版本更新日志\n2、书源用法展示\n3、相关问题解释\n───────搜索格式────────\n完全格式：书名#作者$网站\n简化格式1：书名$网站\n简化格式2：书名#作者\n简化格式3：书名\n说明：搜索“斗破苍穹#天蚕土豆$www.qidian.com”将在“www.qidian.com”中搜索名为斗破苍穹、作者为天蚕土豆的书籍\n──────前缀设置全体───────\n用法：“单跳逆原动静字图”等字后跟“^”再跟“搜索关键字”，可实现这些字对应的功能。\n范围：本次搜索到的所有书籍都会执行指定的功能。\n示例：“图^斗破苍穹”、“逆静^斗破苍穹#天蚕土豆”、“跳^斗破苍穹$www.qidian.com”。\n─────⤵\n跳：允许目录自动跳转，目录标题说点击跳转时可如此做。\n逆：设置书籍目录章节逆向排序，配合指定网站的搜索方式针对小说全是逆向排序的网站比较方便。\n原：设置书籍不进行净化替换，优点是加载正文快速且不会被误删内容，缺点是需要自己写“替换净化”规则并在正文中启用才能净化网站推广文本。\n动：强制设置正文动态加载(正文默认会进行需要动态加载还是静态加载的判断，然后自动切换模式，若判断失误导致本应切换成动态加载却未切换时，可强制设置正文动态加载)。\n静：强制设置正文静态加载(正文默认会进行需要动态加载还是静态加载的判断，然后自动切换模式，若判断失误导致本应保持静态加载却切换成动态加载而使正文加载时间变长时，可强制设置正文静态加载)。\n图：设置成看图模式(不设置则默认图文模式)，只显示图片，不显示文字。\n字：设置成纯字模式(不设置则默认图文模式)，只显示文本，不显示图片。\n─────⤴\n──────书籍变量设置───────\n用法：\n将“单直跳全逆原图字动静”中任意多个字\n或“[目录url]”或“[正文尾页url]单”\n或“数字#第二页链接#”\n或“[目录尾页url]录”\n放在详情页右上角的书籍变量中，\n确认后点刷新就能触发这些字段对应的功能。\n范围：只控制当前书籍执行指定功能。\n书籍变量格式示范：[http://m.biquku.la/0/425/]全字\n─────⤵\n直：不做目录识别，直接将详情页作为目录页，或以“[目录链接]”格式直接指定目录链接，目录识别错误时可这种做。\n全：直接显示“预览正文”和查询到的所有章节，跳过章节筛选环节，单页文章和部分筛选后章节不全的小说网站可这样做。\n─────⤴\n──目录有分页却无翻页按钮或书籍无目录──\n单：无目录打开即正文但有尾页或下一页按钮的书籍，必须设置为单向模式，这样书源会直接将入口页作为正文第一页，并将第一页及其所有下一页共同构造生成“正文1”、“正文2”…的目录形式来阅读，搜索前缀“单^”、书籍变量“单”。\n录：有目录分页但无目录下一页按钮的书籍，可在书籍变量中直接指定复制到的最后目录页链接为目录链接并添加指令“录”，即可自动生成所有目录分页。\n书籍变量：“[https://m.zuizaoxiaoshuo.com/ml/33280_13]录”\n辅助生成──无目录打开即正文也无尾页和下一页按钮的书籍，需指定章节数量并用第二页链接作为参考链接生成所有分页。\n书籍变量──220#https://wap.yqshuwang.com/2021n/02/14972_2.html#\n效果说明──根据第二页链接“https://wap.yqshuwang.com/2021n/02/14972_2.html”生成220条章节的目录列表。\n单个章节──目录仅一个章节且这个章节正文中无下一页按钮时，可复制那个章节的正文尾页链接并用指令“单”，便可将所有正文分页构造成章节列表。\n书籍变量──[http://www.yulinzhanye.la/20/20733/532447_9.html]单",
    "bookSourceGroup": "免费",
    "bookSourceName": "必应搜书",
    "bookSourceType": 0,
    "bookSourceUrl": "必应搜书",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 26,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36\"}",
    "lastUpdateTime": 1650209800448,
    "loginUrl": "https://gitee.com/no-mystery/shuyuan/",
    "respondTime": 46426,
    "ruleBookInfo": {
      "author": "@get:{x}",
      "canReName": "true",
      "coverUrl": "@js:(s=java.getStringList('img[alt*='+book.name+']@src||meta[property$=image]@content||img[src~=(cover|file|article)[^a-z]|/\\\\d+[/_-]\\\\d+(s?\\\\.|$)]@src||img[data-src~=\\\\S]@data-src||img[src*=/img]@src||img[src~=^(data|https?):|^[^:]+/]@src')).size()?/^data:/.test(s=s.get(0))?java.base64Encode(s):s:null",
      "init": "",
      "intro": "@js:'　　'+java.get(\"g\")",
      "kind": "@js:java.get(\"v\")",
      "lastChapter": "@get:{z}",
      "name": "@js:r=org.jsoup.Jsoup.parse(result);\nr.select(\"script,noscript,style,head>:not(meta),footer,[class~=^foot],[id~=^foot],a:has(>:last-child:matchesOwn(^分类$)),[value]\").remove();\n\nn=String(book.name);\nm=String(r).replace(/(?:&nbsp;)+/g,\" \");\n书=java.get(\"源\");\n\nif(x=(y=r.select('[property$=book_name]')).size()){\ny=y.attr(\"content\");\nu=书.indexOf(y)\n}else for(u=true,c=r.select(\"h1,h2,h3,strong\").eachText();x<c.size();x++)if(\n(y=c.get(x))!=''&&(u=书.indexOf(y),~u&&u<4))break;\nif(!~(y=String(y)).indexOf(n)&&~u)n=y;\n\nif((x=r.select(\"[property$=author]\")\n).size()){\nx=String(x.attr(\"content\")).replace(/^作\\s*[者家][\\s:：]*|(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\")\n}else{\nx=m.match(/>\\s*([^>]+?)(?:\\s*<\\/[a-z]+>\\s*|\\s+)著\\s*<|[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】>《》](?:小说|漫画)?作\\s*者(?![^>]+->)(?:[:：\\s〖【（《［\\[\\(]|<[^it\\/][^>]*>|<\\/[^>]+>)+([^\\s<\">,，/／｜|\\)\\]］》）】〗]+)/);\nx=x?x[1]?x[1]:x[2]:(x=r.select(\"#author,.author\"),x.size()?String(x.first().text()).replace(/(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\"):\"\")}\n\nif(n.indexOf(x)>0&&!~java.get(\"key\").indexOf(n))n=n.split(x)[0];\njava.put(\"x\",x);\n\ny=r.select(\"meta[property~=(category|status)$]\");\nc=y.size()?String(y.eachAttr(\"content\"))\n.slice(1,-1).replace(/(?!^)\\s*[，,./／｜|]\\s*/,\",\"):(y=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)(?:[分大]\\s*类|类\\s*[型别])(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&y[1];\nif(c)java.put(\"v\",c);\n\ny=r.select(\"meta[property~=latest_chapter_name$]\");\n\nc=y.size()?y.attr(\"content\"):(y=m.match(/>(?:\\s*[更最]\\s*[新近])+(?:\\s*章\\s*节)?(?:[:：\\s\\[]|<[^>]+>)+(?!\\s*(?:-|&gt;)\\s*<|[:：\\s0-9T年月日时分秒*-]{5,}<|[^:：]+[^章\\s]\\s*[:：]\\s*<|更新(?:时间)?[:：])([^<\"/／｜|\\]>]+)/))&&y[1];\nif(c)java.put(\"z\",c);\n\n正=true;\nif((key=String(java.get(\"custom\"))).length){\nif(~key.indexOf(\"全\"))java.put(\"全\",1);\nif((\nu=key.match(/[^\\[\\]]+(?=\\])/),\nc=~key.indexOf(\"录\"),\ny=~key.indexOf(\"单\"),\nbaseUrl=u?u[0]:baseUrl,\n(c||u)&&(baseUrl=c||y?(baseUrl=String((c=baseUrl.match(/(.+[^\\d])(\\d+)([^\\d]*)$/))[1]+1+c[3]),\nc=c[2]+'🌕'+c[1]+'🌕'+2+'🌕'+c[3],\nbaseUrl):baseUrl)\n)||~key.indexOf(\"直\")\n)java.put(\"目\",1),正=1;\nif(~key.indexOf(\"录\"))java.put(\"录\",c),正=1;\nif(y||~key.indexOf(\"#\")){\nif(!u){\nif((网=key.match(/(\\d+)#([^#]+)/))\n&&(尾=网[1],网=网[2].match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n||(尾=r.select('a[href~=\\\\d[^/?\\\\d]*$]:matches(^(尾|末|最后一)[頁页篇章回节節话話]$)')).size()\n&&(网=r.select('a:matches(^2$)')).size()\n&&(网=String(网.first().attr('href')).match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n&&(尾=String(尾.first().attr('href')).match(/\\d+(?=[^/?\\d]*$)/)[0])){\nc=尾+'🌕'+网[1]+'🌕'+网[2]+'🌕'+网[3]\n}else if((c=r.select('a:matches(^(\\\\d+|…+|\\\\.+)$)')).size()){\nif((网=String(c).split(/<a[^>]+>[^\\d<]+<\\/a>/)).length==2){\nfor(c=网[0],尾=网[1],x=+网[1].match(/>([^<]+)/)[1],网=网[0].match(/href=\"([^\"]*[^\\d])(\\d+)([^/?\\d\"]*)\"[^>]*>([^<]+)<[^<]+$/),j=+网[4],i=+网[2]-j;j<x;j++)c+=\"<a href='\"+网[1]+(j+i)+网[3]+\"'>\"+j+\"</a>\";\nc+=尾}\n}else c=1}\njava.put(\"单\",c),正=false}\nif(~key.indexOf(\"跳\"))java.put(\"跳\",1);\nif(~key.indexOf(\"逆\"))book.setReverseToc(true);\nelse book.setReverseToc(false);\nif((u=~key.indexOf(\"图\"))||~key.indexOf(\"原\"))java.put(\"原\",1);\nif(~key.indexOf(\"动\"))java.put(\"动\",',{\"webView\":true}');\nelse if(~key.indexOf(\"静\"))java.put(\"静\",1);\nif(u||~key.indexOf(\"字\"))java.put(\"文\",u?1:2)\n}else book.setReverseToc(false);\n\ny=r.select(\"meta[property$=description][content~=\\\\S]\");\nc=y.size()?y.get(y.size()-1).attr(\"content\"):(r.select(':matchesOwn([\\\\u4e00-\\\\u9fa5]{2,})>:not(br),:not(body,br,:matchesOwn([\\\\s\\\\S]{50}),:has(body,:matchesOwn([\\\\s\\\\S]{50})))').remove(),r.select(\":matchesOwn(\\\\S)\").text());\n\njava.put(\"g\",String(c!=\"\"?c:book.intro).replace(/[\\snbsp;]*(?:&nbsp;|\\s){2,}|\\s*([？！。]+[”」』\\]\\}\\)）｝】〗〕〉]?)\\s*/g,\"$1　　\").replace(/(?=　　)/g,\"\\n\"));\n\nif(正==1)m=java.ajax(baseUrl);\njava.setContent(m,baseUrl);\n\nif(正){\nzl=java.getStringList(\"[property$=latest_chapter_url]@content||:matches(^最新章节)>a:only-child:not([href~=^$|#|javascript:])@href||a:matches(^正文\\\\s*[\\\\d第一二三四五六七八九十〇零百千]|^[【《]?(\"+n+\")?[\\\\s》】（\\\\u0028:：＿_－-]*(第[\\\\s0〇零]*[一1]\\\\s*[\\\\u4e00-\\\\u9fa5]|([\\\\u4e00-\\\\u9fa5]{2}阅读[（\\\\u0028:：＿_－-]?)?(0*1([）\\\\u0029.、:：_-]|$)|[〇零]*一([）\\\\u0029\\\\s.、:：_-]|$)))):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:|\"+(bas=baseUrl.replace(/\\/+$|\\.[a-zA-Z]+$/,'')).match(/[^?/]+$/)[0].replace(/([*$|?+\\\\\\^\\[\\](){}])/g,'\\\\$1')+\"(?:[/_-]1)?(?:\\\\/|\\\\.[a-zA-Z]+)?$])@href||a:matches(^[^\\\\u4e00-\\\\u9fa5]*(免费|在线|开始|立即|全文|正文|从头)+[试阅]读[^\\\\u4e00-\\\\u9fa5]*$):not([href~=^$|#|javascript:])@href||a:matches(^0*1[^\\\\d]):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:])@href\");\n\nif(zl.size()&&(ck=String(zl.get(0)).match(/^(.*\\/\\/[^/]+)?([/?]?[^/].+[?&/_-])[^&/_-]+\\/?$/)))(jd=ck[1])&&(h=baseUrl.lastIndexOf('/',baseUrl.indexOf(jd.match(/(?:\\.[^.]+){2,}$|[^./]+\\.[^.]+$/)[0])))>8&&(\nq=baseUrl.indexOf(':'),\n(bas=java.get(baseUrl=baseUrl.slice(0,q+2)+baseUrl.slice(h),{})).statusCode()==200&&java.setContent(bas.body(),baseUrl)\n),java.put(\"ck\",ck[2])}\nn",
      "tocUrl": "@js:if(java.get(\"单\")==''){\nif(java.get(\"录\")==java.get(\"目\")){\nr=org.jsoup.Jsoup.parse(result);\n\nscript=r.select(\":matchesOwn(^$)>a[href^=javascript:]:matches(全文|章[節节]|目[錄录]):not(:matches(最新))\");re=false;\n\nif(!script.size()){\nba=(bas=baseUrl.replace(/\\/$|\\.[a-zA-Z]+$/,'')).match(/(http....[^/?]+)(?:([?/])(.*))?$/);b=ba[1];v=ba[3];\n\nr.select(\"a[href~=[^a-z]page[^a-z]]:not(:matches([反正顺順逆倒]序|[全正]文|更多|全部|所有|章[節节]|作品|目[錄录]|列表)),a:not([href~=^(?!//)[^#:]+$|\"+b.split(':')[1]+\"]),:matchesOwn(\\\\S)>a,a[href~=javascript:|#],a:matches(^\\\\S{1,4}$):not(:matches([反正顺順逆倒]序|[阅閱][讀读]|查看|展[开開]|进入|[全正]文|更多|完整|全部|所有|目[錄录]|列表|章[節节]):not(:contains(分类)))\").remove();\n\ny=r.select(\"a[href~=(?i)catalog|contents|chapters|mulu|(^|[^a-z])ml|showchapter|(^|chapter[/_-]?|\"+v.replace(/(.+)((\\/\\d\\d)\\d+)$/,\"$1$3$2\")+\"[/_-])(more|list|all)|sort[/=_-]asc]\");\n\nif(!y.size()){b3='';\n\nif(ba[2]==\"?\"){\nb3='[href~=^[^?]+$],'\n}else if(ba[3]){\nb3=ba[3].replace(/[*$|?+\\\\\\^\\[\\](){}]/g,'\\\\$0');\n\nb3=\"[href~=\"+b3+\"(\\\\.[^.]+|/\\\\d+(\\\\.[^.]+|/)?)?$],[href~=[/?]\"+b3.replace(/[&/_-][^/_-]+$/,'')+\".*$]:not([href~=[/?]\"+b3.replace(/[/_-]/g,'[/_-]')+\"]),\"}\n\ny=r.select(\"a:not(\"+b3+\"[href~=(?i)(^|[^/])[?/].*((book|[^a-z])(info|case)[^a-z]|(cid|buy)[^a-z]|desc|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/chapter|/index/|/d/],:matches((?i)^$|[0-9零〇一二三四五六七八九十百千万、，：；？！。…‘’“”（）()]|[票榜:：.]|推荐|排行|等级|说明|收藏|书评|简介|分[类卷]|简介|作者|手机|软件|应用|安装|客户|移动|pc|电脑|安卓|苹果|下载|最新|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub))\")}\n\nif(y.size()){\nys=y.select(\"a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|read|all]:matches([反正顺順逆倒]序|全文|章[節节]|目[錄录]):not(:matches(阅读)),a[href~=(?i)catalog|contents|chapter|(^|[^a-z])ml|mulu|read]:matches(更多|列表),a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|all]:matches(^$),a:matches(^[^\\\\u4e00-\\\\u9fa50-9]*([反正顺順逆倒]序|全文(免[費费])?[阅閱][讀读]|(点击|查看|展[开開]|进入|返?回到?)*([全正]文|(更多|完整|全部|所有)?(章[節节]|(作品)?目[錄录])+)+(列表)?(\\\\s*(查看|展开)?更多)?)[^\\\\u4e00-\\\\u9fa50-9]*$)\");zt=false;\n\nif(!ys.size()){\nba=bas.match(/(\\?(?:[^=]+=)+)(.+)$/)||bas.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/index[^/]*)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/))id=xi[1];\nif(ba[1])if(xi=ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=/^\\d$/.test(id)||!xi[1].indexOf(id)?xi[1]:\"(\"+id+\"|\"+xi[1]+\")\";\n\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?\"+id+\"([?_-][a-z=_-]*0|\\\\.[^.]+|[/?]([^\\\\d]*|[^/\\\\d]*/?|(list|more|all)([=_-][a-z]*)?\\\\d+[^\\\\d]*)?)?(&.+)?$]:not(:contains(\"+(bs=String(book.name)[0])+\"))\");\n\nif(!ys.size()){zt=true;\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?(\\\\d+/\"+id+\"[_-]\\\\d+[^\\\\d]*|\"+id+\"[_-][a-z_-]*1[^\\\\d]*)$]:not(:matches(阅读|\"+bs+\"))\")}}\n\nif(ys.size()){\nif((re=ys.select(\"[href~=(/|^)[^.]+$]\")).size())ys=re;\nre=String(ys.first().attr(\"href\"));\n\nfor(x=1;x<ys.size();x++)if((xs=String(ys.get(x).attr(\"href\"))).length>re.length)re=xs;\n\nif(/(?:[2-9]\\d*|1\\d+)[^\\d]*$/.test(re)){\nif(!zt&&(q=re.match(/^(.*[^/])?[&?/].*(?:catalog(ue)?|contents|(?:show)?chapters?|mulu|ml|more|all|list|page)(?:[=_-][a-z]*)?\\d+[^\\d]*$/i))&&v==(q[1]||'').replace(/^http....[^/?]+/,''))zt=true;\nif(zt)re=re.replace(/\\d+(?=[^\\d]*$)/,\"☯1\")}\n\n}}}\n\nre=String(!re?baseUrl:(java.put(\"基\",baseUrl),/^\\/[^/]/.test(re)?b+re:/^https?:/.test(re)?re:/^\\/\\//.test(re)?b.split('//')[0]+re:String(baseUrl).replace(/[^/]*$/,'')+re))}else re=baseUrl;\n\nr=re.replace(/(?:[☯?&/_-][^\\d?/&_-]*[01])+[^\\d]*$/,\"\");\njava.put(\"ba\",r);\nre=re.replace(\"☯\",\"\")}else re=baseUrl;\n\njava.get(\"跳\")==1?re+',{\"webView\":true}':re",
      "wordCount": "{{baseUrl}}##//([^/]+)##$1##"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr).replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{n=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr",
      "imageStyle": "FULL",
      "nextContentUrl": "@js:if((r=java.getStringList((nx=java.get(\"next\"))+\"a:matches(第二[頁页]|下[一\\\\s]*[頁页]):not([href~=^javascript:|^#])@href||a:matches(下[一\\\\s]*[篇章回节節话話]):not([href~=^javascript:|^#])@href||a[href~=[_-]\\\\d+(/|\\\\.[a-z]+)?$]:has(i,img):not(:matches(\\\\S),[href~=^javascript:|^#])@href\")).size()){\nif(~String(book.tocUrl+(nextChapterUrl||'')).indexOf(r=String(r.get(r.size()-1)))||~r.indexOf(nextChapterUrl||String(book.tocUrl).replace(/.+(?=_\\d+\\/$)/,'')))r=null\n}else r=null;\nif(r){if(nx!='')chapter.putVariable(\"next\",(n=r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1))==r?'':'a[href=\"'+n+'\"]@href||');\nr+java.get(\"动\")}",
      "replaceRegex": "@js:if(java.get(\"原\")==1){result}else{\nresult=result.replace(/⚙️([^\\u4e00-\\u9fa5⚙️]+|[零〇一二三四五六七八九十百千万\\s]+|(?!第[零〇一二三四五六七八九十])[\\u4e00-\\u9fa5]+)⚙️/g,'$1').split('📑');\nl=result.length-1;\nwhile(l)if(r=result[--l].match(/^(\\n+(?:[^\\n]{1,30}\\n+){1,3})([\\S\\s]+)$/))result[l]=r[1]+r[2].replace(/⚙️/g,'');\nresult.join('📑')\n.replace(/—/g,\"─\")\n.replace(/[·۰•・]/g,\"・\")\n.replace(/\\s*(?:︴[^\\n　]+\\s+)*📑\\s*|^\\s*(︴[^\\n　]+\\s+)*|\\s*(?:　　|\\n)(?:[\\s&#a-zA-Z0-9]*;)?[\\s　?]*/g,\"☯\")\n.replace(/(?:︴[^☯]*☯)+(?=︴)|☯(?:温馨|[^a-zA-Z0-9\\u4e00-\\u9fa5☯]+)提示.?[:：][^☯]+|☯[^☯]+字体不会安装.?请百度[^☯]+|☯.{0,2}正版订阅在阅文旗下的起点和QQ书城，可以第一时间看到最新章节.{0,2}(?=☯)|︴\\s*第?[〖【『「（《〈〔［｛\\[{(][^☯]+(?=☯)|☯第\\s*[（(][^（()）]+[)）][頁页](?=☯)|[^☯]*(?:关注|[微vVＶｖ][^\\u4e00-\\u9fa5A-Za-z0-9]*[信xXｘＸ]|公[^\\u4e00-\\u9fa5]*众[^\\u4e00-\\u9fa5]*号){2,}[^☯]*|(?:&#?[a-z0-9]*;?)+(?=;|☯);*|read[sx][；;?？]+/g,\"\")\n.replace(/\\s+/g,\" \")\n.replace(/☯[ ☯]*/g,\"\\n\")\n.replace(/(\\n[〖【『「（《〈〔［｛\\[{(]?)([pPＰｐ][SsｓＳ]+(?=[ ：:;；，,、。.─\\d\\u4e00-\\u9fa5])[^\\n]+)/g,\"$1🌕$2\")\n.replace(/\\[\\[\\[[^\\[\\]]+http:file2.qidian.comchapters(.{5,6})(..)([^\\[\\]]{35})\\]\\]\\]/g,'<img src=\"http://file2.qidian.com/chapters/$1/$2/$3\">')\n.replace(/(<img )[^>]*(src=\"[^\"]+\")[^>]*(>)|((?: ?[＋+－-]?[0-9０-９]+(?:[．.／/][0-9０-９]+)?[％%:：]?[a-zA-Z]*)+ ?|[ _＿－-]?[a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９]+)/g,\"$1$2$3☯$4☯\")\n.replace(/☯[・。](?=☯)/g,\"☯.\")\n.replace(/,\\n/g,\"，\")\n.replace(/!(?=\\n)/g,\"！\")\n.replace(/\\?(?=\\n)/g,\"？\")\n.replace(/(<[^<]+)☯☯/g,\"⚙️$1⚙️\\n\")\n.replace(/(?:\\n[^āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─🌕︴\\n]+|([。？！…”』」】〗])[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─☯︴\\n]+[\\u4e00-\\u9fa5]+)?[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─⚙️☯︴\\n]+(?=\\n)|[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*☯([a-zA-ZＡ-Ｚａ-ｚ]*[āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ][a-zA-ZＡ-Ｚａ-ｚ]*)☯[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*/g,\"$1$2\")\n.replace(/[^!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜<（〈〔［｛({\\[\\]})｝］〕〉）>＞’”》」』】〗︴🌕]*(?:☯[^.．!(),\\n\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗⚙️]+|([^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘<＜（〈〔［｛({\\[\\]})｝］〕〉）＞>’”》」』】〗⚙️])(?!\\1)|☯(?=[^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗][!(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗])|[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}]){4,}|[^；;％%～~?？!！\"'”’。…─\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}](?:[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=[)｝］〕〉》）」』】〗\\]}]))?/g,\"📑\")\n.replace(/([；;％%～~?？!！\"'”’。…─])📑(?=[)｝］〕〉》）」』】〗\\]}])/g,'$1')\n.replace(/(?:([\\n。？！])[^\\n。？！]{1,10})?[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑|🌕)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})](?:[^。]{0,5}(?:[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})]|[^📑!,()\\s\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]+))*(?:(?:[^\\n]{1,10}|(?:[\\u4e00-\\u9fa5]{0,5}[，、])*[\\u4e00-\\u9fa5]+[！。]?)(?=\\n))?/g,\"$1\")\n.replace(/((?:[请請][记記]住)?[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]*(?:(?:[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、：，；？！。…─「」‘’“”（）《》〖〗【】]+[*(), \\u4e00-\\u9fa5、，:：；？！。…─「」‘’“”（）《》〖〗【】]{1,3})*[^*︴📑☯⚙️🌕\\s&;(),āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜa-zA-ZＡ-Ｚａ-ｚ0-9０-９\\u4e00-\\u9fa5、,，:：;；?？!！。…～~─'\"‘’“”【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}％%・/／＝=_＿.．＋+－-]+(?!(?:[^>]+>)?⚙️)|☯[^☯\\n]+☯\\.☯[^☯\\n]+☯|本[文书](?:首发|来自)|(?:章节不完整.?|完整章节)?请.{2,6}(?:搜索|百度|引擎|关键[词字])+|(?:[阅閱][讀读]|访问|訪問|[網网地][站址]|链接|鏈接|[\\u4e00-\\u9fa50-9a-zA-Z]{0,4}(?:文学|中文|[網网]))+[:：]|[\\u4e00-\\u9fa50-9a-zA-Z]{0,6}(?:[網网地][站址]|链接|鏈接)为|.{2,4}文[学學][網网]|[请請].{2,4}收藏(?:.{0,2}推[荐薦])?|(?:天才)一秒[記记]住|，?請?訪問|(?:[更最][快新]|[快高]速|热门|(?:[阅閱][讀读])?完整|本|(?:官[網网]|本站).{0,2})(?:章[節节]|小说|更新|[網网地][址站][:：]?|快速)|更新(?:速度)?[最更]?快|(?:(?:无错)?小说|正版|免费|全[文本]|在线|访问|訪問|txt|TXT|继续|各种|推[荐薦]|收藏|分享|交流|你?喜欢的)+(?:全文|免费|在线|[阅閱]?[讀读]|下载|章[節节]|小说|好书)|章[節节](?:目录|列表)|小说[網网](?:更新)?|手打全文|[纯全](?:手打|文字)|手机看书|手机版|笔趣阁|(?:本站|[網网]站|站内|看)?无(?:任何)?(?:广告|弹窗|防盗)(?:章节)?|不弹窗|(?:(?:請|请|或者?)?(?:訪問|访问|[電电手][腦脑机機]|[網网][址站]|用[户戶]|浏览|瀏覽|閱讀|阅读|看小说|看漫画)){2,}|看小说|看漫画|(?:用[^\\n]{2,6})?(?:[追看]书|小说)(?:就用|软件|☯[^☯]+☯)，?|用[^\\n]{2,6}[追看]书|(?:..的)?(?:最佳选择|阅读体验)|(?:推[荐薦]|收藏|分享)(?:本站|我们)|小说..版|文章质量更好|谢谢各位(?:读者|书友)支持|水印广告测试|本章未完|请翻页|点击下一页|领.{0,2}红包|同步更新《[^《》]+》|关注[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+[)｝］〕〉》）」』】〗\\]}])(?:[* (),\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]{0,3}[^⚙️📑*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]+|[….。!！]+(?=\\n))*|⚙️(?!<)[^⚙️\\n]+⚙️)/g,\"\\n⚙️$1⚙️\\n\")\n.replace(/⚙️(<[^<>]+>)⚙️\\n|[〖【『「（《〈〔［｛\\[{(](?:[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}\\n⚙️(?!\\s*\\S\\s*⚙️).+⚙️\\n*)+[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}[)｝］〕〉》）」』】〗\\]}]|(🌕)\\s*⚙️|⚙️\\n[^\\u4e00-\\u9fa5]{0,5}\\n⚙️|\\n⚙️\\s*(\\S)\\s*⚙️\\n(?![^⚙️]{1,3}⚙️)|(⚙️\\n)|([，、；])[\\s,，。、…:：;；?？!！`’]*[,，。、…:：;；?？!！`’](?!⚙️)|\\n[\\s,，。、…:：;；?？!！`’]*(?=[,，。、:：;；?？!！])|([：？！。…─])(?:[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=\\n)|[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+)|☯/g,\"$1$2$3$4$5$6\")\n.replace(/([)）？！?!…」』”\\s。])(?:[^\\n（(🌕)）”』」’。]{0,5}(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n”』」。]{0,5}📑)[^（()）\\n。]{0,5}(?:\\n⚙️.+⚙️(?:\\n(?=\\n⚙️|[^（()）\\n]{1,5}\\n))?|[^（()）\\n。]{0,5}📑(?:[^📑]{1,5}(?=\\n⚙️))?)+(?:[^（()）\\n]{1,5}(?=\\n))?|(?:(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n。]{0,5}📑)[^（()）\\n]{0,5}){2,}|[^（(🌕)）”』」’\\n。]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|同步|下载|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度|[插说]一?[下句]话?，[\\u4e00-\\u9fa5]{0,5})[^（()）\\n]{0,5})*(?:📑|\\n⚙️[^\\n]+⚙️\\n)[^（()）\\n]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|下载|同步|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度)[^（()）\\n]{0,5})*|[^（(🌕)）\\n”』」’。]{0,3}\\n⚙️.+⚙️\\n[^（()）\\n。]{0,3})(?:[\\u4e00-\\u9fa5]+[！。]?|[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]+)?(?=\\n)))+|\\n⚙️[^\\u4e00-\\u9fa5]+⚙️\\n|📑|\\s*︴\\s*|\\n?⚙️\\n?|\\n[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]{2,}\\n[^🌕a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n“《‘【〖『「]*/g,\"$1\")\n.replace(/(?:(?:\\n🌕[^\\n]*)+(?:\\n+[^\\n]+){0,4}|\\n(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|[^\\n]*起点(?:原创|中文)[^\\n]*|[〖【『「（《〈〔［｛\\[{(]?未完待续[^\\n]*)[^\\u4e00-\\u9fa5<>]*$|^\\s*(?:(?:[^\\n]+\\n+){0,4}(?:🌕[^\\n]*\\n?)+|(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|，[^\\n]+)\\n|(?:^|\\n)[^a-z0-9A-Z\\u4e00-\\u9fa5]*(?=\\n)|🌕|\\n\\s*[a-zA-Z]+\\s*$/g,\"\")}"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "intro": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "@get:{au}",
      "bookList": "@js:jsoup=org.jsoup.Jsoup.parse;\nfor(i=0,r=jsoup(src);i<100;i++){\ner=r.select(\".b_algo:not(:has(:matches(^(广告|推广|手游)$)))\");\nif(er.size()){break\n}else r=jsoup(java.ajax(baseUrl));\n}er",
      "bookUrl": "h2 a@href",
      "coverUrl": "",
      "intro": "p@text",
      "kind": "@js:java.get(\"类\")",
      "lastChapter": "h2 a@href##[^/]+//",
      "name": "h2 a@text\n@js:re=String(src).replace(/\\s*(?:&nbsp;)+\\s*/g,\" \").replace(/\\s*<\\/?(?:strong|i)>\\s*/g,\"\");\nif(类=re.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)(?:[分大]\\s*类|类\\s*[型别])(?:[:：\\s]|<[^>]+>)+([^\\s<\"./／｜|>]+)/))java.put(\"类\",类[1]);\nkey=java.get(\"key\");\nax=java.get(\"aut\");\njava.put(\"源\",r=(r=result.match(/(.{0,2})《([^《》]+)》(.{0,3})/))&&r[3]!=\"作品集\"&&!r[1].match(/新[书作]/)?r[2]:result);\n\nr=r.replace(/^(简介页|详情页|目录页|正版|全本|免费阅读|[\\s。.,_/|《「『【〖（(\\[\\])）〗】』」─—-]+)+/,\"\").replace(/(?!^)[^\\u4e00-\\u9fa5a-zA-Z0-9]*(?:笔趣阁|思路客|燃文|小说|漫画|手机)?(?:[.|,_/\\s「『【〖（(\\[\\])）〗】』」。─—-]|(?:人工|机器|电脑)?校正|精校|完[整结]|加料|番外|未删节|简介|全[文本集]|下载|(?:小说|漫画|大全|正版(?:小说|漫画)?|免费|免费小说|免费漫画|免费全[文本]|在线|最[新快]|全部|手机|电脑)(?:全[文本集部]|大全|免费|在线|阅读|下载|章节|小说|更新|漫画|\\.)|([^a-zA-Z0-9])(?:azw|mobi|epub|txt)(?![a-zA-Z0-9])|(?:最全)?(?:章节|目录|列表){2,}|更新章节最快|无广告|(?::顶点)?无弹窗|无防盗|小说网|手打全文|[纯全](?:手打|文字)|\\s*by\\s*(?=[\\u4e00-\\u9fa5]))[\\S\\s]*/i,\"$1\");\n\nif(ax==\"#\"||!~re.indexOf(ax)){\nax=re.match(/《([^《》]+)》作品集|[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】《》>]作\\s*者(?:[:：\\s“\"'(（]|<[^it\\/][^>]*>|<\\/[^>]+>)+(?![^\\s<(《“（）”》)>\\/\\[\\];?!,、，；？！。…─［］〖〗【】]*\\.{3}<)([^\\s<(《“（\"'）”》)>\\[\\];?!,、，；？！。…─［］〖〗【】/／｜|:：]+?)(?=(?:其[他它]|小说|[更最][快新]|\\.\\s*)?..[:：]|所?写?的《|[\\s<(《“（\"'）”》)>\\[\\];?!,、，；？！。─［］〖〗【】/／｜|])/);\nif(!ax){\nax=re.match(new RegExp(r+\"[^a-z0-9A-Z\\\\u4e00-\\\\u9fa5]*([^\\\\s]+?)\\\\s+著|(?:由|原创)(?:(?:原创|网络)?作[家者])?(?![\\\\u4e00-\\\\u9fa5a-zA-Z0-9_-]*(?:[书网]友|网)所?提供)([\\\\u4e00-\\\\u9fa5a-zA-Z0-9_-]+?)(?:为大家)?(?:所作|所?(?:(?:[精倾]心)?[创著]作|提供|写?的(?:《|\"+r+\")))\"));\nif(!ax)ax=result.match(/[^.|,_/\\s\\[\\]（()）【〖〗】。-]+[（(](?![^\\s]+[\\s、：；？！…─“‘《〖【，。:;?!\"'】〗》’”][^(（）)]+|(?:连载中?|完本|大结局|上|中|下|[\\s.一二三四五六七八九十百千万〇零0-9]+)[）)])([^（()）]+?)(?:(?:\\s+|所)?著|的?新书|[/／｜|][^)）]+)?[)）]/)}\nax=ax?ax[1]||ax[2]:\"\"}\n\nif(!ax.length&&~re.indexOf(key)&&!~r.indexOf(key))ax=key;\n\nif(r.indexOf(ax)>0&&!~key.indexOf(r))r=r.split(ax)[0].replace(/[:：]$/,'');\n\nzt=[(小说=key.indexOf(\"小说\"))&&小说^(长=key.length-2),(有声=key.indexOf(\"有声\"))&&有声^长];\nif(zt[0]&&zt[1]){\nrez=\"(?!^)(有声|小说|有声小说)$|^(有声|小说|有声小说)(?!$)\"\n}else if(zt[1]){\nrez=\"(?!^)有声$|^有声(?!$)\"\n}else if(zt[0]){\nrez=\"(?!^)小说$|^小说(?!$)\"\n}else rez=\"☯\";\nif((漫画=key.indexOf(\"漫画\"))&&漫画^长)rez+=\"|(?!^)漫画$|^漫画(?!$)\";\n\nix=r.replace(new RegExp(rez),\"\").split(/[：:]/);i=0;\nwhile(i<ix.length){x=ix[i];\nif(~x.indexOf(key)||~key.indexOf(x))break;i++}\nif(i==ix.length)i=0;\n\njava.put(\"au\",ax);\njava.put(\"bb\",ix.slice(i,i+2).join(\":\"))",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "@js:if(java.get(\"单\")==''){\nsrc=org.jsoup.Jsoup.parse(src);\n\nif((result=java.get(\"录\"))==\"\"){if(页=(result=src.select('a[href~=\\\\S]:matches(下[一\\\\s]*[页頁]|下[一二三四五六七八九十百千万〇零0-9]{2,}章):not([href~=^#|javascript:])')).size())result=result.first().attr('href')\n}else{网=String(result).split(\"🌕\");\nfor(i=3,页=+网[0],result=网[1]+2+网[3];i<=页;i++)result+='\\n'+网[1]+i+网[3];\nresult=String(result)}\n\nif(页)java.put(\"页\",/,/.test(book.tocUrl)?result.split('\\n').join(',{\"webView\":true}\\n')+',{\"webView\":true}':result);\n\n嗅=()=>String(src).match(/[\\[(]([\"'])<[a-z]+[ >][^\\[\\]()]+<\\/a>(?:[^\\[\\],()]*<\\/[a-z]+>)?\\1[\\])]/);\n转=it=>it.replace(/\\\\[Uu]([0-9a-zA-Z]{4})/g,(_,it)=>String.fromCharCode(parseInt('0x'+it)));\n兜=()=>src.select(':matchesOwn(^$|[0-9〇一二三四五六七八九十])>a:matches(\\\\S):not(:has(*>*>:not(span)),[href~=(?i)passport|\\\\.aspx$|\\\\.php$|^https://[^/]+(/|index\\\\.[a-z]+)?$|(^|[^/])[?/].*((book|[^a-z])(info|case|page|reg|Game|Play)[^a-z]|buy[^a-z]|SystemInfo|hot|sort|desc|asc|top|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/list\\\\d*([/_-][^/_-]+/?)?$|\\\\d+_\\\\d+_\\\\d+|target=iframe|https%],:matches((?i)^((点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)[\\\\s.端版]*(?=$|点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)|[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?返回.*(简介|书页|目录)[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?|[<>-]+|\\\\d+-\\\\d+章|书页|目录|简介|[上下首尾]([一\\\\s]*[页頁]|[\\\\s\\\\d零〇一二三四五六七八九十百]*章)|[↑\\\\[]?[倒正反逆顺順]序[↓\\\\]]?)$))');\n\nif((zt=java.get(\"嗅\"))!=''){\nif(zt>0&&(嗅=嗅())){\nsrc=嗅[0];\nif(zt==2)src=转(src);\nsrc=org.jsoup.Jsoup.parse(src)}\nsrc.select(java.get(\"除\")).remove();\nif(java.get(\"兜\")==1)src=兜();\nsrc=src.select(java.get(\"查\"))\n\nif(!页){for(首=String(java.get(\"首\")).split('\\n'),ss=src.size(),i=0;i<ss;i++)if(首[i]!=src.get(i)){\nif(i>1)src.subList(1,i).clear();break;}}\n\n}else{\nbook.putVariable(\"除\",除=\"meta,link,a:has(img),\"+((zt=java.get(\"全\")!=1)?\"a[href$=\"+String(book.tocUrl).replace(/,\\{\"webView\":true\\}|^.{8}[^/]*/g,'')+\"],\":\"\")+(基=String(java.get(\"基\")),基==''?'':\"a[href$=\"+基.replace(/^.{8}[^/]*/,'')+\"],\")+\"a[href~=javascript:|#|[a-z]+[A-Z][a-z]+Id[=_-]|[^/][/?&]sub[A-Z]|action=list],a:matches(^$|最新章节$|^[^\\\\u4e00-\\\\u9fa5A-Z0-9]*(正文|.{0,2}书架|(免费|在线|开始|立即|全文|从头|点击|正文)+[试阅]读|[^\\\\s\\\\d外内楔前后卷篇章]*(更新调整|[两一二三四五六七八九十]+连更|作者[:：给要有]|双倍月票|感言|推书|推[a-z0-9A-Z_\\\\u4e00-\\\\u9fa5-]+书|[求个请投点下张](月?票|收藏|订阅|推荐)|(感谢|作者)[^\\\\s]*(读者|书友|大家|各位)|[书点]评[^\\\\s]*活动|[没有空]更新|没时间更新|请个?假|关于本书|关于更新|打赏名单|起点活动)[^\\\\s]*)[^\\\\u4e00-\\\\u9fa5A-Z0-9]*$)\");\n\nbook.putVariable(\"嗅\",(基=嗅())?(src=org.jsoup.Jsoup.parse((zt=/\\\\[Uu]([0-9a-zA-Z]{4})/.test(基=基[0]))?转(基):基),zt)?2:1:0);\nsrc.select(除).remove();\n\nif(zt=java.get(\"全\")!=1){\n找=ll=null;\n$=it=>(qc=ll,查=找,ll=src.select(找=it)).size()>14&&(查=it,src=re=ll);\n\nif(!(((ck=java.get(\"ck\"))!=\"\"&&$(\"[href~=\"+ck+\"(?!index(/|\\.[a-z]+)?$)[^.?/_-][^&/_-]*/?$|/[vV][iI][pP][_-]?([Rr]ead|[Cc]hapter|action=article)|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&]*$]\"))||$(\"[href~=^[a-z0-9]+(/|\\\\.[^./]+)?$]\"))){\nif(qc&&qc.size()>ll.size())找=查,ll=qc;\n\n$=it=>(re=src.select(it)).size()&&(查=it,src=re);\n\nif(!($(\"[data-cid]\")||$(\"[href~=(?i)(^|[/_-])(chapter|read)+([_-]?id)?/[^/_-]+[/_-][^/_-]+]\")||$(\"[href~=(?i)(^|[&?/_-](book|novel|comic|manhua|mh?)?)(chapter|read)+([_-]?id)?[?/=]]\")||$(\"[href~=(?i)[&?/_-]cid[&?/_=-]]\")||$(\"[data-href]\"))){\nsrc=兜();\nbook.putVariable(\"兜\",1);\n\nba=(ba=String(java.get(\"ba\"))).match(/(\\?(?:[^=]+=)+)(.+)$/)||ba.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/|\\/index[^/]*|\\.[^/.]+)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/)||ba[1]&&ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=xi[1];\n\n$(\"[href~=([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\\\\d+]:not([href~=\"+id+\"[^\\\\d]*$]),[href~=/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[a-zA-Z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?]*$|([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\"+id+\"(/|\\\\.[^.]+|&.+)?$]\")||$(\"[title]\")||$(\"[href~=/view/\\\\d+\\\\.[a-zA-Z]+$]\")}\nif(re.size()<ll.size())查=找,src=ll}}\n\nif(!(zt&&re.size()))src=src.select('a'),查='a';\nif(查)book.putVariable(\"查\",查);\nif(页)java.put(\"首\",src)}\n\nsrc}else if((list=java.get(\"单\"))!=1){\n\nif((网=String(list).split(\"🌕\")).length>1){\nfor(i=+网[2],x=+网[0],j=2,list=\"<a href='\"+baseUrl+\"'>正文1</a>\";i<=x;i++,j++)list+=\"<a href='\"+网[1]+i+网[3]+\"'>正文\"+j+\"</a>\"}\n\norg.jsoup.Jsoup.parse(list).select('a')\n\n}else org.jsoup.Jsoup.parse(\"<a href='\"+baseUrl+\"'>正文</a>\").select('a')",
      "chapterName": "text",
      "chapterUrl": "href@js:chapter.putVariable(\"next\",'a[href~=(?:^|[?/])'+(r=result.trim().replace(/([*$|?+(){}\\[\\]\\^\\\\])/g,'\\\\$1')).match(/[^?/=.]+(?:=(?![01]$)[^=]+)*(?=\\/*$|\\.[^?/.]+$|=[01]$)/)[0]+'[=/_-]2(?:\\\\/|\\\\.[^?/.]+)? *$]@href||a[href~=(?:^|[?/])'+r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1)+' *$]@href||');result+java.get(\"动\")",
      "nextTocUrl": "@js:java.get(\"页\")"
    },
    "searchUrl": "https://cn.bing.com/search?first={{(page-1)*10+1}}&q={{\nkey=key.trim();aut=\"#\";\nif(ke=key.match(/^([单跳逆动静字图]+)\\^([\\S\\s]+)/))key=ke[2],java.put(\"custom\",ke[1]);\nz=key.lastIndexOf(\"#\")+1;\ns=key.lastIndexOf(\"$\");\nif(/\\$[a-zA-Z0-9/._-]+$/.test(key))key=key.slice(0,s).concat(\" site:\",key.slice(s+1));\ns=s+1?s:key.length;\nas=key.slice(z?z:s,s);\nif(!/^\\s*$/.test(as)){\naut=as.match(/[^\\s\"]+/)[0];\nkey=key.slice(0,z-1).concat(\" \",key.slice(z))}\njava.put(\"aut\",aut);\njava.put(\"key\",key.match(/[^\\s\"]+/)[0]);\nkey}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨热辣漫画💞",
    "bookSourceType": 2,
    "bookSourceUrl": "https://mapi.hotmangasd.com",
    "bookUrlPattern": "https://.*/api/v3/comic2/.*_update=.*",
    "customButton": false,
    "customOrder": 27,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/exploreUrl.js')));\n</js>",
    "header": "<js>\nvar Proxy = Map('代理：').split(\",\");\nheaders={\n    \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 EdgA/127.0.0.0\",\n    \"version\": \"2024.04.28\",\n    \"platform\": \"3\",\n    \"webp\": \"1\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0]\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"热辣漫画\":\"https://qyyuapi.com/sy/js/热辣漫画/jsLib.js\"}",
    "lastUpdateTime": 1747867204940,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  { name: \"账号：\", type: \"text\" },\n  { name: \"密码：\", type: \"password\" },\n  {\n    name: \"💡　　 账　　 号　　 登　　 录　　 💡\",\n    type: \"button\",\n    action: \"Login()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换源站  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"①热辣漫画❶\", type: \"button\", action: \"$(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"②热辣漫画❷\", type: \"button\", action: \"$(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"③热辣漫画❸\", type: \"button\", action: \"$(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"④热辣漫画❹\", type: \"button\", action: \"$(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"⑤热辣漫画❺\", type: \"button\", action: \"$(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"⑥热辣漫画❻\", type: \"button\", action: \"$(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"⑦热辣漫画❼\", type: \"button\", action: \"$(7)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"⑧热辣漫画❽\", type: \"button\", action: \"$(8)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  { name: \"༺ˇ»`ʚ  点击切换分类  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"日本\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"韩国\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"欧美\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"热门人气\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"更新时间\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  { name: \"页数：\", type: \"text\" },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/loginUrl.js')));",
    "respondTime": 87425,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "秘密",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "nextTocUrl": "@js:\nvar num = Math.floor(java.get(\"total\") / 500); \nvar res = String(baseUrl).match(/(.*offset=)\\d+(.*)/) || ['',''];\nvar data = [];\nfor(i = 1;i <= num; i++){\n    data.push(res[1] + (i*500) + res[2]);\n}\ndata;",
      "preUpdateJs": "if (!String(book.bookUrl).includes(Get('url'))) {\n    book.bookUrl = String(book.bookUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    book.tocUrl = String(book.tocUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    java.refreshTocUrl();\n}",
      "updateTime": "time"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/热辣漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceComment": "25-04-05 靈狐 制\n25-08-18 修复正文解密\n部分书详情页封面无法访问可使用搜索封面规则",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "3A小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.aaawz.cc",
    "customButton": false,
    "customOrder": 28,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "@js:JSON.stringify({\n  'Accept': \"application/json, text/plain, */*\",\n  'origin': source.key,\n  'referer': source.key+\"/\",\n  'accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "jsLib": "function decompressFromBase64(input) {\n    if (input == null) return '';\n    if (input === '') return null;\n\n    const base64Alphabet = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n    const lookup = {};\n    for (let i = 0; i < base64Alphabet.length; i++) {\n        lookup[base64Alphabet.charAt(i)] = i;\n    }\n    function getValue(char) {\n        return lookup[char];\n    }\n\n    function decompress(length, resetValue, getNextValue) {\n        const dictionary = [];\n        let dictSize = 4;\n        let bits = 3;\n        let result = [];\n        let data = { val: getNextValue(0), position: resetValue, index: 1 };\n\n        // 读取初始控制代码（2 位）\n        let res = 0;\n        let maxPower = Math.pow(2, 2);\n        let power = 1;\n        while (power != maxPower) {\n            let bit = data.val & data.position;\n            data.position >>= 1;\n            if (data.position == 0) {\n                data.position = resetValue;\n                if (data.index > length) return '';\n                data.val = getNextValue(data.index++);\n            }\n            res |= (bit > 0 ? 1 : 0) * power;\n            power <<= 1;\n        }\n\n        let next;\n        switch (res) {\n            case 0: // 8 位字符\n                res = 0;\n                maxPower = Math.pow(2, 8);\n                power = 1;\n                while (power != maxPower) {\n                    let bit = data.val & data.position;\n                    data.position >>= 1;\n                    if (data.position == 0) {\n                        data.position = resetValue;\n                        if (data.index > length) return '';\n                        data.val = getNextValue(data.index++);\n                    }\n                    res |= (bit > 0 ? 1 : 0) * power;\n                    power <<= 1;\n                }\n                next = String.fromCharCode(res);\n                break;\n            case 1: // 16 位字符\n                res = 0;\n                maxPower = Math.pow(2, 16);\n                power = 1;\n                while (power != maxPower) {\n                    let bit = data.val & data.position;\n                    data.position >>= 1;\n                    if (data.position == 0) {\n                        data.position = resetValue;\n                        if (data.index > length) return '';\n                        data.val = getNextValue(data.index++);\n                    }\n                    res |= (bit > 0 ? 1 : 0) * power;\n                    power <<= 1;\n                }\n                next = String.fromCharCode(res);\n                break;\n            case 2: // 结束\n                return '';\n        }\n\n        // 初始化字典\n        dictionary[0] = '';\n        dictionary[1] = '';\n        dictionary[2] = '';\n        dictionary[3] = next;\n        let w = next;\n        result.push(next);\n\n        // 主解压循环\n        while (data.index <= length) {\n            let code = 0;\n            maxPower = Math.pow(2, bits);\n            power = 1;\n            while (power != maxPower) {\n                let bit = data.val & data.position;\n                data.position >>= 1;\n                if (data.position == 0) {\n                    data.position = resetValue;\n                    if (data.index > length) break;\n                    data.val = getNextValue(data.index++);\n                }\n                code |= (bit > 0 ? 1 : 0) * power;\n                power <<= 1;\n            }\n\n            if (data.index > length && code === 0) break;\n\n            switch (next = code) {\n                case 0: // 新 8 位字符\n                    res = 0;\n                    maxPower = Math.pow(2, 8);\n                    power = 1;\n                    while (power != maxPower) {\n                        let bit = data.val & data.position;\n                        data.position >>= 1;\n                        if (data.position == 0) {\n                            data.position = resetValue;\n                            if (data.index > length) return result.join('');\n                            data.val = getNextValue(data.index++);\n                        }\n                        res |= (bit > 0 ? 1 : 0) * power;\n                        power <<= 1;\n                    }\n                    dictionary[dictSize++] = String.fromCharCode(res);\n                    next = dictSize - 1;\n                    break;\n                case 1: // 新 16 位字符\n                    res = 0;\n                    maxPower = Math.pow(2, 16);\n                    power = 1;\n                    while (power != maxPower) {\n                        let bit = data.val & data.position;\n                        data.position >>= 1;\n                        if (data.position == 0) {\n                            data.position = resetValue;\n                            if (data.index > length) return result.join('');\n                            data.val = getNextValue(data.index++);\n                        }\n                        res |= (bit > 0 ? 1 : 0) * power;\n                        power <<= 1;\n                    }\n                    dictionary[dictSize++] = String.fromCharCode(res);\n                    next = dictSize - 1;\n                    break;\n                case 2: // 结束\n                    return result.join('');\n            }\n\n            if (dictSize - 1 >= Math.pow(2, bits) - 1) bits++;\n\n            let entry;\n            if (dictionary[next]) {\n                entry = dictionary[next];\n            } else if (next === dictSize) {\n                entry = w + w.charAt(0);\n            } else {\n                return null;\n            }\n\n            result.push(entry);\n            dictionary[dictSize++] = w + entry.charAt(0);\n            w = entry;\n\n            if (dictSize - 1 >= Math.pow(2, bits) - 1) bits++;\n        }\n\n        return result.join('');\n    }\n\n    return decompress(input.length, 32, (index) => getValue(input.charAt(index)));\n}",
    "lastUpdateTime": 1756047901346,
    "loginCheckJs": "let url = result.url()\nlet body = result.body()\nif(url.includes('-chapter-')){\n let data = java.base64DecodeToByteArray(body)\n let iv = data.slice(0,16)\n let x = java.createSymmetricCrypto('AES/CBC/PKCS7Padding',java.strToBytes('123#2^0@0vm@08.b5%$1[A]1&4115s(('), iv)\n body = x.decryptStr(data.slice(16, data.length))\n}\nPackages.io.legado.app.help.http.StrResponse(url, decompressFromBase64(String(body).replace(/\\s/g,'')))",
    "respondTime": 2028,
    "ruleBookInfo": {
      "author": "author",
      "coverUrl": "imgurl",
      "intro": "intro",
      "kind": "lastupdate@js:java.timeFormat(result[0]*1000)",
      "lastChapter": "{{$.lastchapter}}·{{java.timeFormat(java.getString('$.lastupdate')*1000)}}",
      "name": "articlename",
      "tocUrl": "/api-chapterlist-{{$.tid}}-{{$.siteid}}"
    },
    "ruleContent": {
      "content": "@js:result"
    },
    "ruleSearch": {
      "author": "author##<\\/?em>",
      "bookList": "data.books",
      "bookUrl": "/api-info-{{$.tid}}-{{$.siteid}}",
      "coverUrl": "tid@js:let sid = java.getString('siteid');\n'/bookimg/'+sid+'/'+result%100+'/'+result+'.jpg'",
      "kind": "lastupdate",
      "lastChapter": "lastchapter&&lastupdate##\\n##·",
      "name": "articlename##<\\/?em>"
    },
    "ruleToc": {
      "chapterList": "*",
      "chapterName": "title",
      "chapterUrl": "{{baseUrl.replace('list-','-')}}-{{$.cid}}",
      "updateTime": "{{java.timeFormat(java.getString('$.update')*1000)}}更新 {{$.wordNum}}字"
    },
    "searchUrl": "/api-search,{\n  \"method\": \"POST\",\n  \"body\": 'keyword={{key}}&page={{page}}&size=10'\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨Komiic漫画💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://komiic.com",
    "bookUrlPattern": "https://.*/api/query,.*comicById.*",
    "concurrentRate": "10/5000",
    "customButton": false,
    "customOrder": 29,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"Cookie\": cache.get(java.md5Encode16(Get('url') + \"token\")) || \"\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"Komiic漫画\":\"https://qyyuapi.com/sy/js/Komiic漫画/jsLib.js\"}",
    "lastUpdateTime": 1740298471749,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  { name: \"账号：\", type: \"text\" },\n  { name: \"密码：\", type: \"password\" },\n  {\n    name: \"💡登录账号💡\",\n    type: \"button\",\n    action: \"Login()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45}\n  },\n  {\n    name: \"💡源站测试💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"q(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击收藏排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"最新加入\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"最近更新\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  { name: \"༺ˇ»`ʚ  点击标签排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"更新\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"爱心\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"热门\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/loginUrl.js')));",
    "respondTime": 39947,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "鬼畜英雄",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "isVolume": "vol",
      "updateTime": "time"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/Komiic漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨MYCOMIC💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://mycomic.com",
    "bookUrlPattern": "https://.*/comics/\\d+",
    "customButton": false,
    "customOrder": 30,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"Accept-Language\": \"\",\n    \"sec-ch-ua\": \"\",\n    \"Cookie\": cache.get(Get('url') + 'ck') || \"\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"MYCOMIC\":\"https://qyyuapi.com/sy/js/MYCOMIC/jsLib.js\"}",
    "lastUpdateTime": 1760080607399,
    "loginCheckJs": "var res = result;\nurl = java.ruleUrl;\nif(res.body().includes('cf_chl')){\n    result = java.connect(url + ',{\"webView\": true}');\n    if(result.body().includes('cf_chl')){\n        cookie.removeCookie(Get('url'));\n        result = java.startBrowserAwait(url,\"验证\");\n    }\n    ck = cookie.getCookie(Get('url'));\n    cache.put(Get('url') + 'ck',ck);\n}\nresult;",
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  {\n    name: \"💡　　 源　　 站　　 测　　 试　　 💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换受众  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"少女\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"少年\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"青年\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"儿童\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"通用\", type: \"button\", action: \"o(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换地区  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"日本\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"港台\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"欧美\", type: \"button\", action: \"p(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"内地\", type: \"button\", action: \"p(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"韩国\", type: \"button\", action: \"p(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"其他\", type: \"button\", action: \"p(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"q(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击标签排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"上架\", type: \"button\", action: \"r(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"更新\", type: \"button\", action: \"r(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"人气\", type: \"button\", action: \"r(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换年份  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"t(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2025\", type: \"button\", action: \"t(20)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2024\", type: \"button\", action: \"t(19)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2023\", type: \"button\", action: \"t(18)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2022\", type: \"button\", action: \"t(17)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2021\", type: \"button\", action: \"t(16)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2020\", type: \"button\", action: \"t(15)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2019\", type: \"button\", action: \"t(14)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2018\", type: \"button\", action: \"t(13)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2017\", type: \"button\", action: \"t(12)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2016\", type: \"button\", action: \"t(11)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2015\", type: \"button\", action: \"t(10)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2014\", type: \"button\", action: \"t(9)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2013\", type: \"button\", action: \"t(8)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2012\", type: \"button\", action: \"t(7)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2011\", type: \"button\", action: \"t(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"2010\", type: \"button\", action: \"t(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"00年代\", type: \"button\", action: \"t(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"90年代\", type: \"button\", action: \"t(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"80年代\", type: \"button\", action: \"t(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"更早\", type: \"button\", action: \"t(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/loginUrl.js')));",
    "respondTime": 24139,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/ruleContent.js')));\n</js>",
      "imageStyle": "FULL",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "妖神记",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "preUpdateJs": "if (!String(book.bookUrl).includes(Get('url'))) {\n    book.bookUrl = String(book.bookUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    book.tocUrl = String(book.tocUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    java.refreshTocUrl();\n}"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/MYCOMIC/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨包子漫画💞",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.baozimh.com",
    "bookUrlPattern": "https:\\/\\/.*\\/baozimhapp\\/comic\\/.*",
    "customButton": false,
    "customOrder": 31,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/exploreUrl.js')));\n</js>",
    "header": "<js>\nvar Proxy = Map('代理：').split(\",\");\nheaders={\n    \"User-Agent\": \"baozimh_android/1.0.29/cn/adset\",\n    \"Referer\": Get('url') + \"/\",\n    \"app-id\": \"com.taoymall.taohuatan.bzmh\",\n    \"app-version\": \"1.0.29\",\n    \"device-code\": \"9c8d16ae7ae4203d2f4083161b3dbf3c\",\n    \"device-id\": \"PQ3B.190801.04251116\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"包子漫画\":\"https://qyyuapi.com/sy/js/包子漫画/jsLib.js\"}",
    "lastUpdateTime": 1761391554463,
    "loginCheckJs": "var res = result;\nurl = java.ruleUrl;\nif(res.body().includes('cf_chl')){\n    result = java.connect(url + ',{\"webView\": true}');\n    if(result.body().includes('cf_chl')){\n        cookie.removeCookie(Get('url'));\n        result = java.startBrowserAwait(url,\"验证\");\n    }\n    ck = cookie.getCookie(Get('url'));\n    cache.put(Get('url') + 'ck',ck);\n}\nresult;",
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换源站  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"①包子①\", type: \"button\", action: \"$(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"②包子②\", type: \"button\", action: \"$(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"③包子③\", type: \"button\", action: \"$(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"④包子④\", type: \"button\", action: \"$(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑤包子⑤\", type: \"button\", action: \"$(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑥包子⑥\", type: \"button\", action: \"$(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑦包子⑦\", type: \"button\", action: \"$(7)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑧包子⑧\", type: \"button\", action: \"$(8)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑨包子⑨\", type: \"button\", action: \"$(9)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑩包子⑩\", type: \"button\", action: \"$(10)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑪包子⑪\", type: \"button\", action: \"$(11)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑫包子⑫\", type: \"button\", action: \"$(12)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换地区  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"国漫\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"日本\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"韩国\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"欧美\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"q(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击字母筛选  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"ABCD\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"EFGH\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"IJKL\", type: \"button\", action: \"p(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"MNOP\", type: \"button\", action: \"p(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"QRST\", type: \"button\", action: \"p(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"UVW\", type: \"button\", action: \"p(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"XYZ\", type: \"button\", action: \"p(7)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"0-9\", type: \"button\", action: \"p(8)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/loginUrl.js')));",
    "respondTime": 33088,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL",
      "nextContentUrl": "@css:a:contains(下一页), a:contains(下一頁)@href"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "妖神记",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "preUpdateJs": "if (!String(book.bookUrl).includes(Get('url'))) {\n    book.bookUrl = String(book.bookUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    book.tocUrl = String(book.tocUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    java.refreshTocUrl();\n}"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/包子漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔下文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.bequmo.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 32,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732518007220,
    "loginUrl": "",
    "respondTime": 4673,
    "ruleBookInfo": {
      "intro": "",
      "tocUrl": "@js:baseUrl.replace(/binfo/,'b').replace(/(\\d)\\.htm.*/,'$1/')"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tr:has(.odd):lt(6)",
      "bookUrl": "tag.td.0@a@href",
      "coverUrl": "tag.td.0@a@href@js:result.replace(/binfo/,'image').replace(/\\/(\\d+).htm/,'/$1/$1s.jpg')",
      "kind": "tag.td.5@text&&tag.td.3@text@js:result+'字'",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@text"
    },
    "ruleToc": {
      "chapterList": "+@js:\nvar reg=new RegExp(/<dd(.).+?\"(\\d+\\.html)\">(.*?)<\\/a>/g);\nvar list1=[];\nvar list2=[];\nvar tmp,url,name;\nvar i=-1;\nwhile((tmp=reg.exec(result))){\nurl=tmp[2];\nname=tmp[3];\nif(tmp[1].match(/>/)){\ni=i+1;\nlist1.push({name:name,url:url});\n}\nelse\nlist2.push({name:name,url:url});\n\nif(i==1){\ni=-1;\nlist1=list1.concat(list2.reverse());\nlist2=[];\n}\n}\nlist1;",
      "chapterName": "name",
      "chapterUrl": "url"
    },
    "searchUrl": "/cse/search?q={{key}}&submit=搜索",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨漫画台💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.manhuatai.com",
    "bookUrlPattern": "https://.*/comic-api/v2/comic/getcomicmaindata?comic_id=\\d+&young_mode=0&from_page=other&platformname=android&productname=mht,.*",
    "concurrentRate": "10/5000",
    "customButton": false,
    "customOrder": 33,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/exploreUrl.js')));\n</js>",
    "header": "<js>\nvar Proxy = Map('代理：').split(\",\");\nheaders={\n    \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 EdgA/127.0.0.0\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"漫画台\":\"https://qyyuapi.com/sy/js/漫画台/jsLib.js\"}",
    "lastUpdateTime": 1741400304378,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  {\n    name: \"💡　　 源　　 站　　 测　　 试　　 💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"人气\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"更新\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"评分\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"收藏\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/漫画台/loginUrl.js')));",
    "respondTime": 23028,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "妖神记",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "updateTime": "time"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画台/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceComment": "原作者：嘻嘻不兮兮\n1.更换了源，修复正文请求失败的问题\n2.完善发现页",
    "bookSourceGroup": "🔞",
    "bookSourceName": "八叉书库",
    "bookSourceType": 0,
    "bookSourceUrl": "https://bcshuku.com/",
    "customButton": false,
    "customOrder": 34,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "\n[\n{\"title\":\"排序\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最近更新\",\"url\":\"/latest/index{{page - 1 == 0 ? '': '_'+page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.20}},                            \n{\"title\":\"最新入库\",\"url\":\"/release/index{{page - 1 == 0 ? '': '_'+page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.20}}, \n{\"title\":\"热门排行\",\"url\":\"/popular/index{{page - 1 == 0 ? '': '_'+page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.20}},\n{\"title\":\"完本小说\",\"url\":\"/completed//index{{page - 1 == 0 ? '': '_'+page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.20}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"长篇\",\"url\":\"/booklist1/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"历史\",\"url\":\"/booklist4/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"玄幻\",\"url\":\"/booklist6/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"其他\",\"url\":\"/booklist8/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"综合\",\"url\":\"/booklist2/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市\",\"url\":\"/booklist5/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"现代\",\"url\":\"/booklist9/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠\",\"url\":\"/booklist3/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"女生\",\"url\":\"/booklist7/{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "\"accept\": \"application/json, text/javascript, */*; q=0.01\",\n    \"accept-language\": \"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6\",\n    \"cache-control\": \"no-cache\",\n    \"content-type\": \"application/x-www-form-urlencoded; charset=UTF-8\",\n    \"origin\": \"https://bcshuku.com\",\n    \"pragma\": \"no-cache\",\n    \"priority\": \"u=1, i\",\n    \"sec-ch-ua\": \"\\\"Microsoft Edge\\\";v=\\\"143\\\", \\\"Chromium\\\";v=\\\"143\\\", \\\"Not A(Brand\\\";v=\\\"24\\\"\",\n    \"sec-ch-ua-mobile\": \"?0\",\n    \"sec-ch-ua-platform\": \"\\\"Windows\\\"\",\n    \"sec-fetch-dest\": \"empty\",\n    \"sec-fetch-mode\": \"cors\",\n    \"sec-fetch-site\": \"same-origin\",\n    \"user-agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 Edg/143.0.0.0\",\n    \"x-requested-with\": \"XMLHttpRequest\"\n",
    "lastUpdateTime": 1769044403240,
    "respondTime": 16190,
    "ruleBookInfo": {
      "author": "//div[@class=\"info-chitiet\"]/span/a[@itemprop=\"author\"]/text()",
      "coverUrl": "//div[@class=\"book\"]/img/@src",
      "intro": "//div[@itemprop=\"description\"]/text()",
      "kind": "//div[@class=\"info-chitiet\"]/span/a[@itemprop=\"genre\"]/text()",
      "name": "//div[@class=\"col-xs-12 col-sm-8 col-md-8 desc\"]/h3/text()"
    },
    "ruleContent": {
      "content": "@js:\nvar regex = /\\{\"url\"\\s*:\\s*\"[^\"]+\"\\s*,\\s*\"mobile\"\\s*:\\s*\"\\d\"\\s*,\\s*\"isk\"\\s*:\\s*\"\\d\"\\s*,\\s*\"novel\"\\s*:\\s*\"\\d+\"\\s*,\\s*\"chapter\"\\s*:\\s*\"\\d+\"\\}/;\nvar match = result.match(regex);\njava.log(\"refer = \");\r\njava.log(baseUrl);\r\n\nif (match) {\n    try {\n        var jsonObj = JSON.parse(match[0]); \n        // 拼接全部参数（含 novel、chapter）\n        var params = \"url=\" + encodeURIComponent(jsonObj.url) + \n                     \"&mobile=\" + encodeURIComponent(jsonObj.mobile) + \n                     \"&isk=\" + encodeURIComponent(jsonObj.isk) +\n                     \"&novel=\" + encodeURIComponent(jsonObj.novel) +\n                     \"&chapter=\" + encodeURIComponent(jsonObj.chapter);\n        java.log(params);\n\n        let response = java.post(\"https://bcshuku.com/conapi.php\", params, {\n    \"accept\": \"application/json, text/javascript, */*; q=0.01\",\n    \"accept-language\": \"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6\",\n    \"cache-control\": \"no-cache\",\n    \"content-type\": \"application/x-www-form-urlencoded; charset=UTF-8\",\n    \"origin\": \"https://bcshuku.com\",\n    \"pragma\": \"no-cache\",\n    \"priority\": \"u=1, i\",\n    \"referer\": baseUrl,\n    \"sec-ch-ua\": \"\\\"Microsoft Edge\\\";v=\\\"143\\\", \\\"Chromium\\\";v=\\\"143\\\", \\\"Not A(Brand\\\";v=\\\"24\\\"\",\n    \"sec-ch-ua-mobile\": \"?0\",\n    \"sec-ch-ua-platform\": \"\\\"Windows\\\"\",\n    \"sec-fetch-dest\": \"empty\",\n    \"sec-fetch-mode\": \"cors\",\n    \"sec-fetch-site\": \"same-origin\",\n    \"user-agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 Edg/143.0.0.0\",\n    \"x-requested-with\": \"XMLHttpRequest\"\n});\n        if (response && response.body()) {\n            var content = JSON.parse(response.body())[\"content\"];\n            java.log(content);\n        } else {\n            java.log(\"响应体为空\");\n        }\n    } catch (e) {\n        java.log(\"运行异常: \" + e.message);\n    }\n} else {\n    java.log(\"未匹配到目标 JSON 字符串\");\n}\n"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "//div[@class=\"one-row\"]/div[@class=\"col-md-3 col-sm-6 col-xs-6 home-truyendecu\"]",
      "bookUrl": "//div[@class=\"each_truyen\"]/a/@href",
      "coverUrl": "//div[@class=\"each_truyen\"]/a/img/@src",
      "name": "//h3[@itemprop=\"name\"]/text()"
    },
    "ruleToc": {
      "chapterList": "//div[@id='list-chapter']//ul[@class='list-chapter']//li/a",
      "chapterName": "//span[@class=\"chapter-text\"]/text()",
      "chapterUrl": "@js:\nvar doc = org.jsoup.Jsoup.parse(result);\nvar link = doc.select(\"a\").first();\n'https://bcshuku.com' + link.attr(\"href\");",
      "nextTocUrl": "//div[@id=\"pagination\"]//li[last()-1]/a/@href"
    },
    "searchUrl": "@js:\nlet new_url = java.get('https://bcshuku.com/e/search/index.php?keyboard='+key+'&show=title%2Cwriter%2Cbyr&searchget=1',{\n    \"accept\": \"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7\",\n    \"accept-language\": \"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6\",\n    \"cache-control\": \"no-cache\",\n    \"pragma\": \"no-cache\",\n    \"priority\": \"u=0, i\",\n    \"referer\": \"https://bcshuku.com\",\n    \"sec-ch-ua\": \"\\\"Microsoft Edge\\\";v=\\\"143\\\", \\\"Chromium\\\";v=\\\"143\\\", \\\"Not A(Brand\\\";v=\\\"24\\\"\",\n    \"sec-ch-ua-mobile\": \"?1\",\n    \"sec-ch-ua-platform\": \"\\\"Android\\\"\",\n    \"sec-fetch-dest\": \"document\",\n    \"sec-fetch-mode\": \"navigate\",\n    \"sec-fetch-site\": \"same-origin\",\n    \"sec-fetch-user\": \"?1\",\n    \"upgrade-insecure-requests\": \"1\",\n    \"user-agent\": \"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Mobile Safari/537.36 Edg/143.0.0.0\"\n});\nlet url = 'https://bcshuku.com/e/search/'+ new_url.header(\"location\");\nurl+'page='+page;",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨如漫画💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.rumanhua.com",
    "bookUrlPattern": "https?:\\/\\/[^\\/]+\\/[^\\/]+\\/",
    "customButton": false,
    "customOrder": 36,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"如漫画\":\"https://qyyuapi.com/sy/js/如漫画/jsLib.js\"}",
    "lastUpdateTime": 1760175765924,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  {\n    name: \"💡　　 源　　 站　　 测　　 试　　 💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换地区  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"国产\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"日本\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"韩国\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"欧美\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"热门人气\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"更新时间\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/如漫画/loginUrl.js')));",
    "respondTime": 21227,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "我的",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/如漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨读漫屋💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.dumanwu.com",
    "bookUrlPattern": "https?:\\/\\/[^\\/]+\\/[^\\/]+\\/",
    "customButton": false,
    "customOrder": 37,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"读漫屋\":\"https://qyyuapi.com/sy/js/读漫屋/jsLib.js\"}",
    "lastUpdateTime": 1760175777272,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  {\n    name: \"💡　　 源　　 站　　 测　　 试　　 💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换地区  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"国产\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"日本\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"韩国\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"欧美\", type: \"button\", action: \"o(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"p(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"p(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"p(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换排序  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"热门人气\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n  { name: \"更新时间\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.45} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/loginUrl.js')));",
    "respondTime": 22378,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "我的",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/读漫屋/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨漫画客💓",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.yumanhua.com",
    "bookUrlPattern": "https?:\\/\\/[^\\/]+\\/[^\\/]+\\/",
    "customButton": false,
    "customOrder": 38,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"漫画客\":\"https://qyyuapi.com/sy/js/漫画客/jsLib.js\"}",
    "lastUpdateTime": 1765756464629,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  {\n    name: \"💡　　 源　　 站　　 测　　 试　　 💡\",\n    type: \"button\",\n    action: \"test(1)\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(-1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/漫画客/loginUrl.js')));",
    "respondTime": 21613,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "我的",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/漫画客/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨皮皮漫画💞",
    "bookSourceType": 2,
    "bookSourceUrl": "http://www.pipimanhua.net",
    "bookUrlPattern": "https://.*/book/\\d+",
    "customButton": false,
    "customOrder": 39,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/exploreUrl.js')));\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/127.0.0.0 Safari/537.36 Edg/127.0.0.0\",\n    \"proxy\": Proxy.some(value => parseInt(value, 10) == parseInt(Get('ci0'), 10)) ? '' : Proxy[0],\n}\ncache.put(java.md5Encode16(Get('url') + \"headers\"),JSON.stringify(headers));\nJSON.stringify(headers);\n</js>",
    "jsLib": "{\"皮皮漫画\":\"https://qyyuapi.com/sy/js/皮皮漫画/jsLib.js\"}",
    "lastUpdateTime": 1735706129545,
    "loginUi": "[\n  { name: \"代理：\", type: \"text\" },\n  { name: \"查看当前\", type: \"button\", action: \"look(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"查看历史\", type: \"button\", action: \"look(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"恢复默认\", type: \"button\", action: \"test(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁体搜索\", type: \"button\", action: \"search_TC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"繁简转换\", type: \"button\", action: \"TC_to_SC()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"目录整理\", type: \"button\", action: \"settle()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换源站  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"①皮皮❶\", type: \"button\", action: \"$(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"②皮皮❷\", type: \"button\", action: \"$(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"③皮皮❸\", type: \"button\", action: \"$(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"④皮皮❹\", type: \"button\", action: \"$(4)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑤皮皮❺\", type: \"button\", action: \"$(5)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"⑥皮皮❻\", type: \"button\", action: \"$(6)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  { name: \"༺ˇ»`ʚ  点击切换地区  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"o(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"国漫\", type: \"button\", action: \"o(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"日本\", type: \"button\", action: \"o(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n  { name: \"韩国\", type: \"button\", action: \"o(3)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.2} },\n\n  { name: \"༺ˇ»`ʚ  点击切换进度  ɞ´«ˇ༻\", type: \"button\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n  { name: \"全部\", type: \"button\", action: \"q(0)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"连载\", type: \"button\", action: \"q(1)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n  { name: \"完结\", type: \"button\", action: \"q(2)\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 0.25} },\n\n  {\n    name: \"清除网站Cookie缓存\",\n    type: \"button\",\n    action: \"deleteCookie()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  },\n\n  { name: \"清除远程代码标识\", type: \"button\", action: \"DeleteYckey()\", style: {layout_flexGrow: 1, layout_flexBasisPercent: 1} },\n\n  {\n    name: \"💡　　 源　　 站　　 打　　 印　　 💡\",\n    type: \"button\",\n    action: \"test()\",\n    style: {layout_flexGrow: 1, layout_flexBasisPercent: 1}\n  }\n]",
    "loginUrl": "eval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/loginUrl.js')));",
    "respondTime": 29260,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "reName",
      "coverUrl": "cover",
      "downloadUrls": "durl",
      "init": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/ruleBookInfo.js')));\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": "word"
    },
    "ruleContent": {
      "content": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/ruleContent.js')));\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/ruleExplore.js')));\n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/ruleSearch.js')));\n</js>",
      "bookUrl": "url",
      "checkKeyWord": "秘密",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "word"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/ruleToc.js')));\n</js>",
      "chapterName": "title",
      "chapterUrl": "link",
      "preUpdateJs": "if (!String(book.bookUrl).includes(Get('url'))) {\n    book.bookUrl = String(book.bookUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    book.tocUrl = String(book.tocUrl).replace(/.*\\/\\/[^\\/]+/, Get('url'));\n    java.refreshTocUrl();\n}"
    },
    "searchUrl": "<js>\neval(String(Reload('https://qyyuapi.com/sy/js/皮皮漫画/searchUrl.js')));\n</js>",
    "variableComment": "JspHXCgzmq549cSvxZRk3cLpSPaGuQLbg5lpyYtUIR+RqJFDr2uF/FJe5vAQGhqRet7EY8U/uwLNxCsYq1NeEJEaITVbG72Peo/P9BwKSaDxKtZPiDN2QsTjeKC8jHCAbIF9r7f3ut1ngtyz8ICBfLERQv/Zt7qzx4ilBXsdVAjiP9kzDh4MPQ5pxdzDmyUp7SB64Fz1puDj3MizmD+RJU+w7BAPUkzT0P35uwSIS5Ib7peDWaTEVRss83dnuCkXEWI92DQC6pFRtNICOObIbZOS+0M5TQfIVYbVObgHPjI37+PK/cRbeoj9DMoYesJ4FKoc0yE86VpBUwepp6m+d0Li05ownII75sWIsOzTOBxxy3c5QFipfw2laUfypVHsnJib266RZu3jYZN2oqX1lSNSHFoBvxSjPtLqFmrmwUIite/CYCzZdmplxOoGaeD/tJqLacLx2sDQk0KO8gqyC83XnqLiRHJyhCkMQKUyabyfm6EdBcECj51DyPVkYCz7GNQZNs0AOnZnrMIdw3I0/tqgJjSN0CCt1uiHihItdEUrD8q/rhh7r06zj989HOQOzaX0e5eQfjzFLldpXl6VwttZR35pVFT3c8OoWQp8ytnxr5X/cOysLt+/912K6Z6Q3dD5sXuQYBPXfRO4bYP9RRN2AKQS55ugBMOAcBZOvjwVNHLhqPP6sDII6n9aXHR0IRWLqXn5XYY21Ghbmv8/PPax07th0kK2BWBVMaSAj7ZfaD8BbCQf1n+K+X03Gbv+lvyrPSYad6lkuh5GQt9amA5px2tnT438sodCBx4MTS8MwsPMJ4uqkn5urtQy88YrrBFb5ArU70r33zbrqAiH724VrH9uywqIyg9SVofxEmHuoy039qSTRXoFjHrClQw6uGCf/81q83QLfZZ7Rih0S99VNXEL307MYq5zMDGwT+thulI5ufERE9a17SGRsnDci8XO4jNkiJ3S8MC5yXSwDcvNfZHSHayja7ixeZL/AC39g0QRQGLv8jL4I8Ch69b6VPggaOWcNcad76FrRaN/L4UDOjOUgWKd6AxtldlNjXJh6Dyt4MoGQbDYw3Qsha/3y9SRlRDy350oJFCHav80B4izSFEk02hp8stnUI/EsJDwVmVkjMjTHRWz9Dz08vUrUFnN0AG2ML3S4q/X8LeqmuRDFzKkZdqxzHWEV35R0umc3g2bUItaGf9p9b3pDKyIQzq96Nd23klgDXxn3QNJAhyuSSNghQ6DfmvBzAVRr8BVyVEeLaHEallDgdZfPVguGDvIbss/uep3UybUD+9DZKk5kgfe6iBZWCDDyP8hBiGWevlXmO49Qaasr+yq/u/4K8gAISdVjkNslYBlubdsun/clKiJHjcaGaZrQkscopoAOa+ww8n5/dgVNHknbsp+6ar7X8+qXvMgHEMraS+70dPUBRHlaxFzyJtwial+fHchbGCmPBPEzGnLJMkC1qlyh3bGNWBta+OVuv5ZMVQH6xad8QNM7gNurML05I9yR8jQ2RsuvqGZA4kpbwGAvkGyUE6FWafVPrlyzjhAvM62NTgRIvj34hF+986MlIxeqCRXNNOo75uog2OYDWyucQPmZEX54gjbePWyWgADaAhK6N0BYSZJ9hAqDpsDeGmHX3Z90paE7+PJKC1SbvtDU/gCpO2XL2BlWMeA4wZZTkVd6fJ9+YrEmlmVTgaameIgczdg00kl1sYenLmBH92tRDXCZh8ff8Squ0qOJMapMkicvDUD+8oo9IGVDP+yBNQYRA2I4GCaKPRE4govmX1mpKBuCwVZac8zHWo0/Kg4d8ov+HQhmbBUWf7hibTiKQ6S/1dmHx9/xKq7So4kxqkySJy8NQP7yij0gZUM/7IE1BhEDcKXJq4sdzuNXrQ6FkURLjmfznb4rxl/aNRsDzL64NcoIkz2uzJNquMYCUrk5pkQ6nyDZPFTo18JPImZrv7g0OaTLsUI0F3Khln0tf/f9+MOpkPzlrIxmVARodyFiRJ5IBqH2MeQd7Sp6dv1pqbcGtG3bYeYmteAHMSp7sPJJlSu1/14uK0mYVumAClib/nR06lGouY9s8Mintn5UDO30gQ0mF9ntEM+LueiRGg6rYdJEnY3KhbfwMfT4m20i3piopFyq/hGsbmF4/aFLSkPqyXQhFUexMNJeBD5IAFILlPOr1v94t73AEkxc10X91YhTER295zGifE/tzN1/FVUKIO3W/ux+nMFuFrB6nc6MuZDzrOIA4/+vwthbD8VT+J14FyTDiO2uTAh9JEENA2dpzKXr6krC0AOCsZApTseqyesgs4+wPVWCH0TVaW/FFEd/HlvFNAToVUBJxSDgkw5muEG54IPsuQcqs0pedoEwycAqjWfldTc/mMqkbtp848F0FF8U0gQgbjRrmLYURZvACuFEHJ2SmrqgcMPXmXLdNMvHbHHC1VpqshR4EvGIsS7Quy2L9N8A8Yl35BeV0j9i7rFMX3ZgDefMTVgRFCsafgC9rEn0aCujes+LBq8fniNBkR9GB/zYv4FsUej645wTBlbUTQ6LV9wSKcsXtknGuNM4l+V4z4QrvgztIjFBaeWNQW6IRYYe2oPQK8GnYSec8HwHRPHtAMX0wumVEj6KhbsipokMJgs7hCUKhv6+ClcG1CTs2VBIR/yiz33aYPuCD25rFAaC40W1hRvOicZ/F1PGh7Kvz7JXw6jb1TsSsM1onosbs1BVBrPl7Mj3mXkgWvo3jFyH+YxZJvaOW/BGCpY4sy3I4S+ytkVLSFZgDNlDBXy/3HcOAnn6VlXpMkApF8qCiLgVR56tujz1Wj9/R0VQRTdeEz3pBbNgwjDkjLV21nTJCfaVkMtrlfJy7pEFhibbFyxikC4ISiYt+3YDwai0r1Q+67yXpUq/xesSTw5Q5jYloyOtLHk8OMHY5e+TKBUDHJQnFKA0GSbRLTb+VyU7uZ5CpHYgLN1tsnE+EvYvCTNbyYBtMBLMtgoiBX7xf3YUehs8vZwVM82y+vbP/NqnBQ5eGp0feAXfF1kjatBgWGOo6fw2Gk7L5uBFmpkAoqZXeKquYnFvDzdn1miX9tKRLPE0Iaj+GWnXm/paDFyX8686WqIv3vaUgtVDLSg/JJNscXgRzDhnxUsOCdZb0XprzRLmaNga49Ip+w1pgY6TTjtEFTljwjS5O55EOvuKqsaLI/XKdoFCDmR6Y2xFLYyQPbYJQMxXDvKUMcyrkbVqQSAnj8gXtA4a4qDJm4tcF4lpx7Bg9EpJfb2HqkkYS0fmNiWjI60seTw4wdjl75MoLfokNcKhMiPJ9eO8WTdAv847RBU5Y8I0uTueRDr7iqrBSVQ+KuzLRPYTvibLFRB57gErJmmMvZt9BtRpgXODzQhRlcipszsgb62VBaXsP8opb6yDElligzGh/PcHOiE3WMQFOgS0vKI36K+ItG5wRaKmiQwmCzuEJQqG/r4KVwbmgo6wy86SBGvogm95+4LUkYH6iTVf+ouZaelqGI2qm3WHzo8WXjrES/k1JicB8T2quBTp1DRs2cKNogBK/tg+cb6T5o7Go+MnxwSMvPUaOG4W30SN5zTZOL143gt9ToGM1INCcNreFUzbBV5GjhZ+cZxV9wzYIx+yAutGmwG8x+9FsVCBe/19CjhO8jZPuKFPn4BDhMyuQIxalAY8GPlkSBpRvQon8uEw880lQw3V2hn8D+pvfEstGEvq4nq8X+JGc5zPy/bdgil7YojGmMie2mvVmnSbsBysYY4aoN7Sbz81iqtHRh1B+zEDf9u5d2RlrdAHyefRDbKm1fb/r56iXNqGwOm1kMoBK8O9bpHD0eD/bHbn+a/yjfTTQBTF0am4XGBohXTiW+HSrFKIL+y7OBRkOfeUPJ6HP8R36ncozEJMpF6oi/Lq6/AWsScG6F12uL9v5r5TDlsi7ItIcrCvvpaPlJfuWUJG8ItDsDb770P4D9LklNrCSMvK5++//E0Jv1Zaofbk6OHl9/eKdm6CjsXryWBwI0qyfd6/BSNmA0AdUonhALucnHR+J9YVVHUl4OwnvwH/7OMMbsozpkhxTm9YL3wk3Mvg46sNpZjDP9v+BjJLuXfAuoG5xdS3HbE01G5JfNK2iVlDKyCpg6Y1Txo2r7LCuNx4+naoZcjXjjJpxAYuqiBkamyKhb2t2z0YbpxhMkAPkBOfjG/akvuhMy9EAFvRuynoTg/WZKWf9v2mlCX57PL+6l4eJczAIT1UgP7s6S6MXYT1GRJHioWh8id6S/ZaK7wCL93sknCxyWcA/9MgIi2EOP9/fZFO/D/9TDUUreg6+xSNGXZ3JzwXk5OZ1Oq+vBRFZIuERBdFfd/dVETOEm4kI4MgJ/KJ9gUTcPxI4Vg5XX2Zyt7FrjZEm2oeRH9kGL4ybzusq7jHtF3rvLmueUxi0QD2e/ILtNaXF11W73LBz4s3ggImGSOeyN0wxIrNMAlsWqhwW0mHXUZC00mqKn2o9fJU5PmDyky0/rsV33emcvzzANQ3cRNdqcmeaLac2SxzNI6T0i/T8Z1jVHkANz0BPtvAQHukBqfxq5IjWsBE0JiStK353USoz8725URic4nxnYPKW1yXlJoPuYLazwk6uoOgpxvOGpGmgI6854twG15ZoR1QXhTgdB0AkvfOGslSuVqQnGJeFI834+NWugkBJGEuAS83v/EuxeNbv7ZyMG9DXP7plvUpendmzoqLkHDuJD+fid5oICLiJ0x5JJKYcbj803gWwb/CDsuKozf324aCBqCsD5noXLnuoSuKsJlCh9bsGDkbqwOO0PybSlLmTjtxdCu32qSz1skLrxWoTgGbWAISm3gnwzE/05k2tNN5DMQNcb1RNuOXVLhezzRJqUxXpI7/KVyCpgayFde7eByMwwUVfcAquesEuRBZQxsjMTFz1ILM033PpCY9hR8THi3u8i9phsFuRx4ErMrwaHaEvwg4lTWx0j/OVRsmu69EVUidnAK34ucXw1vNgF6vvtS4oFKj3xYr1bOzWbQjlgStsof4JIzqsg+fSUk0V5nDIZi9uuThOXxihE7LSaXVvRf2D+jGCQGpCjwOyUmFRsrOtP/c9FBUUiB3587cqLWqHNjZzxde+JDysHAcuZxRHk9ScJLyfOv+hWywwnipAOadcrABE2TtLWTzks0R+3TQ/X0sVRiZgnZIFMlx+BRFa8BHWst/MYaoeR609ume+eVjl57z3KMHBcwjjWOM0fwvf03kEl5PutN+2HdXkNqfHlB+/kWTPchbrd50+bLkDym7kv/G8C1NYmWM10anC7PfNMxFipls28lB8dDhT4bOO/r6PpgrmlLO8jkz44jc8O63fulUUTFHegvboTytTrohJRU5PbK04tRT35U5EUjQn6SQ/U7YSZ82ciaw1GVpJfJeZtr551Rj2t3xX/aziYcoYY0i8mM6Ylqb3gXyB1Ha/QUsxzhzqDnhBO/D0bvGTojIqVe/M77tUfLK8EL3xMYZhMF37BfPrhLpMiyu7AmD20jYDFtIpU1qQzRfyDlOn9URlXKZrab45bGEdmSNLrFcAM/PHUd0HPT8Qbq5KGSyLMJaEnn7GVquJ369G0Qd0Q4FRfL5trliZ1GIByq+FbjY/0A7Ki+etghSqjAGGr92My2KV68+nmOL/aAL7A1SQ2mwYS8Pkh3nZ4shTo7seo1C8GpS7xhKmyhxZH89UH8dgO/Axts3HnZdOE0+N4m4A739eCVBqKgS1XZoIIy/ldI2TzWLZiP7Ul37LXEc1bdUQ1iFOX+uJKQOit7RSyimehES16Uo7J5WlqP+rPdTMM7G1x5LroKKYo6CyWHVXsURK5HDx3nyS4HdamwjX00NLnU/8zZlC8EcCfVNIfMZ7FJoZi97a/nRyOtCkEfiG83+67WDpkxhDIhB8Z5laaYJvOsqmFSvpKgPVqb1eMQC0Hkw3Hj9qFy7IAI9uB4ej1UC8IABqsAaMDnN0YZNwV25KuUrYYykiKd6I545Rg1Rdm+WnxpzRUQjrTr6QFezUNjNAU4ZveaXO5dcx1BhqdOjdIbiuMrHX94s532WUToV7bVybXrcgBTiqblwIBy7AbKkxCraqXNrnvvu5WMzdD+/Q4WohVJ77oMwWTjK/WnxDDOaxKb2Z0VKoWLH9dHbGvh6XVvKFY6N1q1x0aDqEWHfRMDNOZfgdZBYa8uv7EFsW13ZnC03lZ9QH8RPrMPgmhKAqrhN+8NqEKtAEMw3WnpsXIA1ZJ9wXrItOBBPge3Iz8IAJCK00L3Gi9RliIMCsyOWrdGY7XxnDvgmvEYTG8E/Nmsvcp1MOl6kPFslMTd4+AyETmp80zSxEuZWJ9+a9Gj9/5yNeMMCBEPgi6EIDVKAbWqAPvPEgmM2V/9tjEm37Dh4iC0G5Vc6zrpsYVMNIwBSXLBhD4Byzfl/fuZmO3BONpBPextGHyAv8Nm5W7Zd9zeu0IK5r7UVs90rs68uILasP5ov7+JHEHS4ipToFcvjt2lYwrC4nF6fGvMrEFmPHG5vJHSexcFbzVBAomibZL5WIodaSAuucEekuRdPLKIEJ/u8AbqkZwdopI2lSxZ2Vh7kJBHQHO9GsZELJKlagljNbuKjzGjD1/jgy1cH/1pODWERyocVX3jjxnTv2DlwImbHvIPgjXmKt7Ips1Ske6JVFxIlqMUcnibME2nKS5fjte+TFBsgzyvv/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpcQpBQKZd4QQk78newTmvBAJ5g/unwnyjU8shrS1zXXPWlyo2ih6exaaw74IbzFPYC4nfr0bRB3RDgVF8vm2uWJsfTtWVBRnu8nXRVzMcvmWxnO7esLi21peEyLRIDroyePvCfdOZ+kKaeRZ34K4psSwn9l/rNxYXBp1P5YR/Ptkh79zt/PdjWbb86sLZ1A/cAIsKwnobJ6FOSns5XLi7m13y8bxKESuEdBEnpR4WowGuME0gH3nUyT72TF1/kxVjAZJDrFmbON7NxqSMORscvZ8/dTe+MXNXqgZ02uw0L7L5I2lSxZ2Vh7kJBHQHO9GsZMI92iRhaw/aRB9h9qqno6zKjpaC65P/9HAsYqBvQjsQ38fH7zeQNEZX8xgm8LCXP9cizaZgoU9UNJBC2zv+kXXkIyXFRhZ/LcfppY+bHsSqrgU6dQ0bNnCjaIASv7YPnG+k+aOxqPjJ8cEjLz1GjhZBwTK8vMA2R4roK0VBbJ3sWwxp6NNrbKbiMRJ7RXFqbQqhv+byyWBHbJLBZgak6Ew3jC++5vV1Nh+KTCJiXdn+pRIdZ5bhdtJ0+kEBNO7YXu2Wa/WV3xldCfbATHKsm6OivLXhQpkJONyW4tOmrTklo5GFM+3LfUXPzi/CWs1YiBapBZMC4nAuhyalZv5Ptcrg1w5LECN/zNaENsWtu4cPgRf1silOAyIvD4mMr9lTpnb+OGpymNgnZTQJrb1nQiXWcevf/gurH+WaDhI8Fba/8z2nP5Vz2Xce4jAgMUiFTLC0cExA1Zf7GQ5MXdokcPTSMfl5QJ/CZIrpSn6IGrk6w7INZ8ZPCnu0uqHSsAjpdMZR8WuEAu9+dwxM/enTt5MkWAQ53vU7BKuVx/TgxQ9QpTfYXaivi8niNJoV6DCemNZTeVRtNkbe0tGrIEeUkXRklvvYDv2fErurconuiC2gWg8PRcUIP0I+I38RcamYHq1bQzoyPTrLQL+Y+MK5aaQMAGUrroAnG4mloUDJ4G07Jp40/AsVNS4Q8n0jxJV2H0N/Ks8WNPKPzsZDuNmIHP06G49IGoU+4IwrlOyoKkn5OvyRgICP6eqjRcDBEE1SQ08Wnrqgcah5nz2LRD+QxGivLwiUftLsKqYxb0qi/JTDjtEFTljwjS5O55EOvuKqsno3PWaYqWlnf/SXGlntUQ5/OVInesu02urA97PLB0VVZCrZDiMoM5mdvIjANFkk7AtyavpRZAR/wfd2cWh596/zKG96pTsaHTQGbps6E5sKB1BTs4bCoc5ezCawA5gwr9+5mY7cE42kE97G0YfIC/jAG4SvX74ZsiLqr79O9D3DhzqTDHJLbChAN5f+3vZ2I+rxSQQGyxzKfo1hW5ADAiFEoW/TrUdbbuncDVORdMGMNsbMxCdMSYAD5fD+bJaJ9uKaIEz5qsMkZpIveCBR2j5ChxQO2vKwHkL9t5imcygPTd8dVRapsGAnubwEKDcloJHqc7U+9NuGojwi3JUjQF5arguDrQXmS44DM3HMqpBIvAf3Wge0DXLX+kmzBFeF8VyRCWIdlFoYekI5Y5Sl1B",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "笔趣阁[boquku.com].MU",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.boquku.com/",
    "customButton": false,
    "customOrder": 40,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:s=[];t=[-1,1,.476,.298,.215,.165,.131,.106,.089,.075];push=(t,u,x,y)=>s.push({title:t,url:u,style:{layout_flexBasisPercent:x,layout_flexGrow:y}});[[\"玄幻\",\"xuanhuanxiaoshuo\"],[\"奇幻\",\"qihuanxiaoshuo\"],[\"修真\",\"xiuzhenxiaoshuo\"],[\"都市\",\"dushixiaoshuo\"],[\"言情\",\"yanqingxiaoshuo\"],[\"历史\",\"lishixiaoshuo\"],[\"同人\",\"tongrenxiaoshuo\"],[\"武侠\",\"wuxiaxiaoshuo\"],[\"科幻\",\"kehuanxiaoshuo\"],[\"游戏\",\"youxixiaoshuo\"],[\"军事\",\"junshixiaoshuo\"],[\"竞技\",\"jingjixiaoshuo\"],[\"灵异\",\"lingyixiaoshuo\"],[\"商战\",\"shangzhanxiaoshuo\"],[\"校园\",\"xiaoyuanxiaoshuo\"],[\"官场\",\"guanchangxiaoshuo\"],[\"职场\",\"zhichangxiaoshuo\"],[\"其他\",\"qitaxiaoshuo\"]].map(([s,r])=>push(s,`/${r}/{{page}}.htm`,t[4]));JSON.stringify(s);",
    "lastUpdateTime": 1755405304914,
    "respondTime": 23504,
    "ruleBookInfo": {
      "author": "p.0@text",
      "coverUrl": "img.0@src",
      "init": ".novel-detail",
      "intro": "p.5@text##^[\\u4e00-\\u9fa5]{2,4}：|\\[收起\\]",
      "kind": "p.1:2@text##^[\\u4e00-\\u9fa5]{2,4}：",
      "lastChapter": "p.3@text##^[\\u4e00-\\u9fa5]{2,4}：",
      "name": "dt@text",
      "tocUrl": ".a_link@href"
    },
    "ruleContent": {
      "content": "#cContent p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@ownText##　?/　",
      "bookList": "li",
      "bookUrl": "a@href",
      "checkKeyWord": "明克街",
      "intro": "span@text",
      "kind": "i@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "a[href^=\"/wapbook\"]",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.尾页@href##-(\\d+)##$1###\n<js>\nArray.from(\n    { length: Number(result[0]) - 1 },\n    (_, i) => baseUrl.replace(/1\\.html/g, (i + 2) + '.html')\n)\n</js>"
    },
    "searchUrl": "/search.htm?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "┍　　　　书源作者：萌  新　　　　┒\n├───┬────────────┤\n│！免责│本书源只提供代码进行技术│\n│！声明│交流，请于２４小时后删除│\n└────────────────┘\n交流群610296345",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "全本小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://quanben-xiaoshuo.com",
    "customButton": false,
    "customOrder": 41,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻\",\"url\":\"https://quanben-xiaoshuo.net/category/xuanhuanxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"奇幻\",\"url\":\"https://quanben-xiaoshuo.net/category/qihuanxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"科幻\",\"url\":\"https://quanben-xiaoshuo.net/category/kehuanxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"武侠\",\"url\":\"https://quanben-xiaoshuo.net/category/wuxiaxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"https://quanben-xiaoshuo.net/category/xianxiaxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"网游\",\"url\":\"https://quanben-xiaoshuo.net/category/wangyouxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"推理\",\"url\":\"https://quanben-xiaoshuo.net/category/tuilixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"灵异\",\"url\":\"https://quanben-xiaoshuo.net/category/lingyixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"恐怖\",\"url\":\"https://quanben-xiaoshuo.net/category/kongbuxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"https://quanben-xiaoshuo.net/category/lishixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"军事\",\"url\":\"https://quanben-xiaoshuo.net/category/junshixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"都市\",\"url\":\"https://quanben-xiaoshuo.net/category/dushixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"言情\",\"url\":\"https://quanben-xiaoshuo.net/category/yanqinxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"架空\",\"url\":\"https://quanben-xiaoshuo.net/category/jiakongxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"耽美\",\"url\":\"https://quanben-xiaoshuo.net/category/danmeixiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"青春\",\"url\":\"https://quanben-xiaoshuo.net/category/qingchunxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"校园\",\"url\":\"https://quanben-xiaoshuo.net/category/xiaoyuanxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"生活\",\"url\":\"https://quanben-xiaoshuo.net/category/shenghuoxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"古书\",\"url\":\"https://quanben-xiaoshuo.net/category/gudianshuji-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"古小\",\"url\":\"https://quanben-xiaoshuo.net/category/gudianxiaoshuo-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"其它\",\"url\":\"https://quanben-xiaoshuo.net/category/qitashuji-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "lastUpdateTime": 1755681005313,
    "respondTime": 8257,
    "ruleBookInfo": {
      "author": ".info p.0@span@text",
      "coverUrl": ".pic img@src",
      "intro": ".info p.2@span@text",
      "kind": ".info p.1@span@text",
      "name": ".info h1@text",
      "tocUrl": "text.开始阅读@href##$##,{'webView': true}"
    },
    "ruleContent": {
      "content": "#articlebody p@textNodes"
    },
    "ruleExplore": {
      "bookList": ".list2 li",
      "bookUrl": "a@href",
      "name": "span@text"
    },
    "ruleSearch": {
      "author": "p span@textNodes",
      "bookList": ".book",
      "bookUrl": "h1 a@href",
      "intro": ".description p@text",
      "kind": "p a@text",
      "name": "h1@a@text"
    },
    "ruleToc": {
      "chapterList": ".list li",
      "chapterName": "a span@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/?c=book&a=search&keyword={{key}},{'webView': true}",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "漫蛙",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.manwaku.com/",
    "customButton": false,
    "customOrder": 45,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.1.0; JKM-AL00b Build/HUAWEIJKM-AL00b; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044807 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1756300420628,
    "respondTime": 6589,
    "ruleBookInfo": {
      "author": ".comic-meta a>span@text",
      "coverUrl": "",
      "kind": ".comic-tags-more>a:nth-child(1)>span@text",
      "name": ".comic-info h2@text"
    },
    "ruleContent": {
      "content": "$..url<js>\nresult.split('\\n').map(x=>`<img src=\"${x}\">`).join('\\n');\n</js>",
      "title": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.list",
      "bookUrl": "$.url",
      "checkKeyWord": "鬼灭之刃",
      "coverUrl": "$.cover",
      "intro": "",
      "kind": "$.tags",
      "name": "$.title"
    },
    "ruleToc": {
      "chapterList": "#chapter-grid-container a",
      "chapterName": "@data-title",
      "chapterUrl": "@href@js:a=result.split(\"/\")[3];b=`https://www.manwaku.com/api/comic/image/${a}?count=true`"
    },
    "searchUrl": "/api/search?type=mh&page={{page}}&pageSize=20&keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//本来是在找某部作品信息的，意外发现网站也提供在线观看，赶紧加工加点做源。\n//致轻友们\n//2024.1.13",
    "bookSourceGroup": "轻小说",
    "bookSourceName": "轻说百科（优++）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://lnovel.tw",
    "customButton": false,
    "customOrder": 48,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"🍁全部文库🍁\",\"url\":\"/books?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=3\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"爱情\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=1\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"冒险\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=6\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"搞笑\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=10\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"奇幻\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=15\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"魔法\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=2\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"异界\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=17\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"侦探\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=8\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=18\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=4\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"神鬼\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=5\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"后宫\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=12\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"其他\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=9\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"格斗\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=11\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=7\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"战争\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=16\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=20\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"异能\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=14\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"治愈\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=21\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"机战\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=19\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"励志\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=23\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=13\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"历史\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=22\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=24\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"🎈状态分类🎈\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"连载中\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=15&q%5Bstatus_eq%5D=ongoing\",\"style\":{\"layout_flexBasisPercent\":0.3,\"layout_flexGrow\":1}},\n{\"title\":\"已完结\",\"url\":\"/books?page={{page}}&q%5Bgenres_id_eq%5D=15&q%5Bstatus_eq%5D=completed\",\"style\":{\"layout_flexBasisPercent\":0.3,\"layout_flexGrow\":1}},\n]",
    "lastUpdateTime": 1759349069650,
    "respondTime": 3123,
    "ruleBookInfo": {
      "author": ".text-body-tertiary.0@text",
      "coverUrl": "https://lnovel.tw{{@@class.w-100 h-100.0@src}}",
      "intro": "&nbsp;\n🎁：{{@@.card-body@p@text}}",
      "kind": "{{@@dd.1@a@text}},{{@@dd.2@a@text}}",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "class.card-body.0@html##{{title}}"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.col-6 col-md-4 col-md-3 col-lg-6 col-xl-4",
      "bookUrl": "href",
      "coverUrl": "img@src",
      "name": "text"
    },
    "ruleToc": {
      "chapterList": ".accordion-item@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/books?page={{page}}&q%5Bname_cont%5D={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁s",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.biquges.com",
    "bookUrlPattern": "http://www.biquges.com/\\d+_\\d+",
    "customButton": false,
    "customOrder": 49,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1702226619225,
    "loginUrl": "",
    "respondTime": 1468,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书首发域名：|.net。|顶点小说手机版阅读网址："
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquges.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquges.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.biquge345.com",
    "customButton": false,
    "customOrder": 50,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732148119546,
    "loginCheckJs": "",
    "respondTime": 2367,
    "ruleBookInfo": {
      "coverUrl": "img@src@js:url=\"https://m.biquge345.com\"+result",
      "intro": ".jianjie@p@text",
      "kind": ".p2@li[1:2:3]@text##(类型|状态|更新)："
    },
    "ruleContent": {
      "content": "#txt@html",
      "nextContentUrl": "text下一页@href",
      "replaceRegex": "##一秒记住【.*】|.*更新快，无弹窗！"
    },
    "ruleSearch": {
      "author": "span[1]@text",
      "bookList": ".liebiao2 li",
      "bookUrl": "a@href",
      "checkKeyWord": "斗罗大陆",
      "name": "span[0]@text"
    },
    "ruleToc": {
      "chapterList": ".mululist ul li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/waps.php,{\n  \"body\": \"s={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n新御书屋 https://m.yswnovel.com\n 肉宅屋    https://m.rouzhaiwu.info\n寂寞书库 http://m.jimoshuku.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "PO18文学⑥",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.po18vip.me/#🚀",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 51,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "[{\"title\":\"🎖🎖排  行🎖🎖\",\"url\":\" \",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"男点击\",\"url\":\"/top/rank.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"收藏榜\",\"url\":\"/top/collect.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"推荐榜\",\"url\":\"/top/vote.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"女点击\",\"url\":\"/top/nrank.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"🍀🍀书  库🍀🍀\",\"url\":\" \",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"更新时间\",\"url\":\"/shuku/0/0/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"入库时间\",\"url\":\"/shuku/0/0/0/0/0/0/postdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"编辑推荐\",\"url\":\"/shuku/0/0/0/0/0/0/toptime/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总点击\",\"url\":\"/shuku/0/0/0/0/0/0/allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周点击\",\"url\":\"/shuku/0/0/0/0/0/0/weekvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月点击\",\"url\":\"/shuku/0/0/0/0/0/0/monthvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐\",\"url\":\"/shuku/0/0/0/0/0/0/allvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周推荐\",\"url\":\"/shuku/0/0/0/0/0/0/weekvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐\",\"url\":\"/shuku/0/0/0/0/0/0/monthvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总鲜花\",\"url\":\"/shuku/0/0/0/0/0/0/allflower/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周鲜花\",\"url\":\"/shuku/0/0/0/0/0/0/weekflower/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月鲜花\",\"url\":\"/shuku/0/0/0/0/0/0/monthflower/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总月票\",\"url\":\"/shuku/0/0/0/0/0/0/allvipvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"收藏数\",\"url\":\"/shuku/0/0/0/0/0/0/goodnum/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻奇幻\",\"url\":\"/shuku/0/1/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/shuku/0/2/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市生活\",\"url\":\"/shuku/0/3/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/shuku/0/4/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"/shuku/0/5/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻未来\",\"url\":\"/shuku/0/6/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖悬疑\",\"url\":\"/shuku/0/7/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"二次元\",\"url\":\"/shuku/0/8/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/shuku/0/9/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代言情\",\"url\":\"/shuku/0/10/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"幻想奇缘\",\"url\":\"/shuku/0/11/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"浪漫青春\",\"url\":\"/shuku/0/12/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网络情缘\",\"url\":\"/shuku/0/13/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻空间\",\"url\":\"/shuku/0/14/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"规格灵异\",\"url\":\"/shuku/0/15/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"N次元\",\"url\":\"/shuku/0/16/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情美文\",\"url\":\"/shuku/0/17/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他类型\",\"url\":\"/shuku/0/18/0/0/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新书上传\",\"url\":\"/shuku/0/0/0/0/0/1/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情节展开\",\"url\":\"/shuku/0/0/0/0/0/2/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精彩纷呈\",\"url\":\"/shuku/0/0/0/0/0/3/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"接近尾声\",\"url\":\"/shuku/0/0/0/0/0/4/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"已经完本\",\"url\":\"/shuku/0/0/0/0/0/5/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数\",\"url\":\"/shuku/0/0/0/0/0/0/words/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"30万以下\",\"url\":\"/shuku/0/0/0/1/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"30-50万\",\"url\":\"/shuku/0/0/0/2/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"50-100万\",\"url\":\"/shuku/0/0/0/3/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"100-200万\",\"url\":\"/shuku/0/0/0/4/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"200万以上\",\"url\":\"/shuku/0/0/0/5/0/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"三日内\",\"url\":\"/shuku/0/0/0/0/1/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"七日内\",\"url\":\"/shuku/0/0/0/0/2/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"半月内\",\"url\":\"/shuku/0/0/0/0/3/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"一月内\",\"url\":\"/shuku/0/0/0/0/4/0/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "",
    "lastUpdateTime": 1721298797234,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 5555,
    "ruleBookInfo": {
      "author": "class.xq_bookne@tag.div.2@text",
      "canReName": "",
      "coverUrl": "class.bookimg@img@src",
      "init": "",
      "intro": "class.bookintro@text",
      "kind": "class.xq_bookne@tag.div.3@text&&class.xq_bookne@tag.div.4@text##类别：|状态：",
      "lastChapter": "id.newlist@tag.ul@tag.li.0@tag.a@text",
      "name": "class.one@text",
      "tocUrl": "class.btn_book@tag.a.3@href",
      "wordCount": "class.xq_bookne@tag.div.5@text##字数："
    },
    "ruleContent": {
      "content": "id.YiJianZhan@html##本章未完.*继续阅读|上一章|目录|下一页|上一页|下一章",
      "imageStyle": "",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##(‘’)##\\\"",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.book_other@textNodes",
      "bookList": "id.sitebox@dl",
      "bookUrl": "tag.a@href",
      "coverUrl": "img@src",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span@text##\\|",
      "lastChapter": "",
      "name": "h3@tag.a.0@text",
      "wordCount": "class.tag-small blue@text"
    },
    "ruleSearch": {
      "author": "class.book_other@textNodes",
      "bookList": "id.sitebox@dl",
      "bookUrl": "tag.a@href",
      "coverUrl": "img@src",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span@text##\\|",
      "lastChapter": "",
      "name": "h3@tag.a.0@text",
      "wordCount": "class.tag-small blue@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.ul@tag.li",
      "chapterName": "a@text##\\>",
      "chapterUrl": "a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "text.下一页@href||option@value",
      "updateTime": ""
    },
    "searchUrl": "/modules/article/search.php,{\n'charset':'utf-8',\n'method':'POST',\n'body':'searchkey={{key}}'\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n杂交书 https://www.zajiaoshu.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "肉文NP②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.rouwennp.org/#🚀",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 52,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "                                 榜    单                                 \n总点击榜::/top_allvisit/{{page}}.html\n月点击榜::/top_monthvisit/{{page}}.html\n总推荐榜::/top_allvote/{{page}}.html\n月推荐榜::/top_monthvote/{{page}}.html\n总月票榜::/top_allvipvote/{{page}}.html\n总鲜花榜::/top_allflower/{{page}}.html\n月勤更榜::/top_monthwords/{{page}}.html\n  收藏榜  ::/top_goodnum/{{page}}.html\n  字数榜  ::/top_size/{{page}}.html\n最新入库::/top_postdate/{{page}}.html\n最近更新::/top_lastupdate/{{page}}.html\n                                 分    类                              \n玄幻奇幻::/xuanhuan/{{page}}.html\n武侠仙侠::/wuxia/{{page}}.html\n都市生活::/dushi/{{page}}.html\n历史军事::/lishi/{{page}}.html\n游戏竞技::/youxi/{{page}}.html\n科幻未来::/kehuan/{{page}}.html\n恐怖悬疑::/kongbu/{{page}}.html\n  二次元  ::/erciyuan/{{page}}.html\n古代言情::/guyan/{{page}}.html\n幻想奇缘::/huanxiang/{{page}}.html\n浪漫青春::/langman/{{page}}.html\n网络情缘::/wangluo/{{page}}.html\n科幻空间::/kongjian/{{page}}.html\n鬼怪灵异::/lingyi/{{page}}.html\n  N 次元  ::/nciyuan/{{page}}.html\n言情美文::/yanqing/{{page}}.html\n其他类型::/qita/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1721299066404,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2237,
    "ruleBookInfo": {
      "author": "class.g_col_8 pr@tag.strong.0@text",
      "canReName": "",
      "coverUrl": "",
      "init": "",
      "intro": "class.det-abt@html",
      "kind": "class.mb15 ell _tags pt2@tag.span!0@text",
      "lastChapter": "class.fs16 c_strong@a@text",
      "name": "class.g_col_8 pr@h1@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.TextContent@html",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "tag.span.0@text",
      "bookList": "class.lst-item",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@_src",
      "intro": "tag.a.-1@text",
      "kind": "tag.span.1@text",
      "lastChapter": "",
      "name": "h2@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "tag.em@tag.span.1@text",
      "bookList": "class.ser-ret@li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@_src",
      "intro": "tag.p.0@text",
      "kind": "tag.em@tag.span.0@text",
      "lastChapter": "tag.p.-1@a@text",
      "name": "h3@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "id.chapterList@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search.html,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "其他源的小说内容错误，然后自己手写",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "ryw笔趣阁78",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge78.cc",
    "customButton": false,
    "customOrder": 53,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1759304196420,
    "respondTime": 1633,
    "ruleBookInfo": {
      "author": "p.booktag@a@text",
      "intro": "p.bookintro@text",
      "kind": "ol.breadcrumb@li.1@text",
      "lastChapter": "a.bookchapter@text",
      "name": "h1.booktitle@text",
      "tocUrl": "div.list-chapterAll@dd@a@href",
      "wordCount": "p.booktag@span.0@text"
    },
    "ruleContent": {
      "content": "class.readcontent@tag.p@html",
      "nextContentUrl": "id.linkNext@href"
    },
    "ruleSearch": {
      "author": "div.author.0@text",
      "bookList": "div.bookbox",
      "bookUrl": "a.del_but@href",
      "checkKeyWord": "借剑",
      "intro": "div.update@text",
      "lastChapter": "div.cat@text",
      "name": "h4.bookname@text"
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll@dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "preUpdateJs": ""
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search/,{\n\"method\": \"POST\",\n  \"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "魔法书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.molizw.com/##1",
    "customButton": false,
    "customOrder": 55,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732529127071,
    "respondTime": 10324,
    "ruleBookInfo": {
      "author": "p.0@text",
      "coverUrl": "img@src",
      "intro": "class.m-desc xs-show@text##简介: ##",
      "kind": "p.1@text##类 别：##",
      "lastChapter": "p.5@text##最新章节：##",
      "name": "h1.1@text"
    },
    "ruleContent": {
      "content": "class.content@html",
      "imageStyle": "",
      "nextContentUrl": "text.下一页@href##$##,{\"webView\":true}",
      "replaceRegex": "##最新网址.*|\\（本章未完.*|第(.*?)章.*|.*\\(第\\d\\/\\d页\\)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.3@text",
      "bookList": "class.txt-list txt-list-row5@li!0",
      "bookUrl": "a.0@href##$##,{\"webView\":true}",
      "checkKeyWord": "我的",
      "coverUrl": "a@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "intro": "",
      "kind": "span.0@text##\\[|\\]",
      "lastChapter": "span.2@text",
      "name": "li@span.1@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href##$##,{\"webView\":true}",
      "nextTocUrl": "option@value||text.下一页@href##$##,{\"webView\":true}"
    },
    "searchUrl": "http://www.molizw.com/so.html?keyWord={{key}},{\n  \"webView\":true\n  }",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "第一版主网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.diyibanzhu2.online/",
    "customButton": false,
    "customOrder": 60,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"最近更新\",\n    \"url\": \"book/15672_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0,\n      \"layout_flexShrink\": 1,\n      \"layout_alignSelf\": \"auto\",\n      \"layout_flexBasisPercent\": -1,\n      \"layout_wrapBefore\": false\n    }\n  }\n]",
    "lastUpdateTime": 1761464200364,
    "respondTime": 6642,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "id.nr1@html",
      "nextContentUrl": "class.chapterPages@tag.a@href",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text||class.info@ownText##作者：",
      "bookList": "class.mod block book-all-list@class.bd@tag.li@class.right",
      "bookUrl": "class.name@href",
      "intro": "tag.span.0@text",
      "lastChapter": "class.update@text",
      "name": "class.name@text"
    },
    "ruleToc": {
      "chapterList": "class.mod block update chapter-list@class.bd@class.list@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "class.pagelistbox@class.nextPage@href"
    },
    "searchUrl": "search_top_{{key}}_691_{{page}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "BY:溪",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔仙阁子",
    "bookSourceType": 0,
    "bookSourceUrl": "https://209.74.107.162",
    "bookUrlPattern": "https://209.74.107.162/\\w.+/\\d+",
    "customButton": false,
    "customOrder": 61,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "————————🧊分类小说🧊————————\n都市言情::/dsyq/<,index_{{page}}.html>\n武侠修真::/wxxz/<,index_{{page}}.html>\n玄幻奇幻::/xhqh/<,index_{{page}}.html>\n穿越架空::/cyjk/<,index_{{page}}.html>\n科幻竞技::/khjj/<,index_{{page}}.html>\n鬼话悬疑::/ghxy/<,index_{{page}}.html>\n军事历史::/jsls/<,index_{{page}}.html>\n官场商战::/guanchang/<,index_{{page}}.html>\n乡土风情::/xtfq/<,index_{{page}}.html>\n耽美小说::/dmtr/<,index_{{page}}.html>\n同人小说::/trxs/<,index_{{page}}.html>\n精品小说::/jqxs/<,index_{{page}}.html>\n排行榜::/sort/<,index_{{page}}.html>",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10;  Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1732996610305,
    "loginCheckJs": "cookie.removeCookie(source.getKey())\nresult",
    "respondTime": 2301,
    "ruleBookInfo": {
      "author": ".descTip@span.2@text",
      "coverUrl": "img@src",
      "intro": ".descInfo@p@text",
      "kind": ".descTip@span.0:1:3@text##.*：|.*：|.*：",
      "name": ".desc@h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "class.content@p@html",
      "nextContentUrl": "text.下一节@href"
    },
    "ruleExplore": {
      "author": ".tips@span.0@text",
      "bookList": ".clearfix@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".descript@a@text",
      "kind": ".tips@span.1:2@text",
      "name": ".title@a@text"
    },
    "ruleSearch": {
      "bookList": ".clearfix@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": ".descript@a@text",
      "kind": ".tips@span.0:1@text##[大小：时间：]",
      "name": ".title@a@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://209.74.107.162/e/search/indexpage.php,{\n  \"body\": \"keyboard={{key}}&show=title&classid=0\",\n  \"method\": \"POST\",\n  \"charset\": \"GBK\"\n}\n@js:\nso = String(result).replace(\"{{key}}\", key);\nvar url = java.connect(so)\n.raw().request().url();\nString(url).replace(/result.*searchid/,\n\t\"result/index.php?page={{page-1}}&searchid\");",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "💠 女生文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wenxuem.com",
    "customButton": false,
    "customOrder": 62,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "周榜::/book/topweekvisit/0/{{page}}.html\n月榜::/book/topmonthvisit/0/{{page}}.html\n总榜::/book/topallvisit/0/{{page}}.html\n周推::/book/topweekvote/0/{{page}}.html\n月推::/book/topmonthvote/0/{{page}}.html\n总推::/book/topallvote/0/{{page}}.html\n站推::/book/toptoptime/0/{{page}}.html\n收藏::/book/topgoodnum/0/{{page}}.html\n字数::/book/topsize/0/{{page}}.html\n原创::/book/topauthorupdate/0/{{page}}.html\n转载::/book/topmasterupdate/0/{{page}}.html\n入库::/book/toppostdate/0/{{page}}.html\n近更::/book/toplastupdate/0/{{page}}.html\n玄幻::/book/sort1/0/{{page}}.html\n修真::/book/sort2/0/{{page}}.html\n言情::/book/sort3/0/{{page}}.html\n历史::/book/sort4/0/{{page}}.html\n推理::/book/sort5/0/{{page}}.html\n网游::/book/sort6/0/{{page}}.html\n科幻::/book/sort7/0/{{page}}.html\n恐怖::/book/sort8/0/{{page}}.html\n都市::/book/sort9/0/{{page}}.html\n其他::/book/sort10/0/{{page}}.html\n经部::/book/sort11/0/{{page}}.html\n史书::/book/sort12/0/{{page}}.html\n子部::/book/sort13/0/{{page}}.html\n集部::/book/sort14/0/{{page}}.html\n古典::/book/sort16/0/{{page}}.html\n诗歌::/book/sort17/0/{{page}}.html",
    "lastUpdateTime": 1751009369288,
    "respondTime": 2358,
    "ruleBookInfo": {
      "intro": "{{@@##<!--开始-->([^<]+)##$1###}}{{@@id.tuijian.0@ownText}}@js:result.replace(/.*简介.*著\\,|【展开】|【收起】/g,\"\")##(^|[。！？]+[”」）】]?)##$1<br>",
      "lastChapter": ".novel_list[-1]@a.-1@text||tbody.0@a.-2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "tocUrl": ".ulrow@a.0@href"
    },
    "ruleContent": {
      "content": "id.clickeye_content@textNodes",
      "replaceRegex": "##.女生文学.*\\)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "td.1@text##简介.|正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": ".novel_list@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//搜索字数6-20个字符之间",
    "bookSourceGroup": "免费",
    "bookSourceName": "💠 手机看书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.sjks88.com",
    "customButton": false,
    "customOrder": 63,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最新::/latest/<,index_{{page}}.html>\n排行::/ranking/<,index_{{page}}.html>\n鬼话::/Direct1/<,index_{{page}}.html>\n情感::/Direct2/<,index_{{page}}.html>\n玄幻::/xuanhuan/<,index_{{page}}.html>\n奇幻::/Direct3/<,index_{{page}}.html>\n商道::/Direct4/<,index_{{page}}.html>\n军事::/Direct5/<,index_{{page}}.html>\n历史::/Direct6/<,index_{{page}}.html>\n传记::/zhuanji/<,index_{{page}}.html>\n言情::/Direct7/<,index_{{page}}.html>\n都市::/ds/<,index_{{page}}.html>\n耽美::/danmei/<,index_{{page}}.html>\n同人::/erciyuan/<,index_{{page}}.html>\n武侠::/wuxia/<,index_{{page}}.html>\n修真::/xiuzhen/<,index_{{page}}.html>\n官场::/guanchang/<,index_{{page}}.html>\n网游::/wangyou/<,index_{{page}}.html>\n科幻::/kehuan/<,index_{{page}}.html>\n穿越::/chuanyue/<,index_{{page}}.html>\n悬疑::/Suspense/<,index_{{page}}.html>\n纪实::/jishi/<,index_{{page}}.html>\n精品::/xiaoshuo/<,index_{{page}}.html>\n乡土::/xt/<,index_{{page}}.html>",
    "lastUpdateTime": 1734430832079,
    "respondTime": 3270,
    "ruleBookInfo": {
      "author": ".autor2[0]@text",
      "intro": ".desc@html",
      "kind": ".autor2[2:1]@text##.*：",
      "name": ".box-artic@h1@text##（.*|\\(.*"
    },
    "ruleContent": {
      "content": ".content@html"
    },
    "ruleExplore": {
      "author": "span.0@text##\\_.*",
      "bookList": ".list@li",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "p@text",
      "kind": ".pubdate@text",
      "name": "b@text##（.*|\\(.*"
    },
    "ruleSearch": {
      "bookList": ".box@ul@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "洪荒：",
      "intro": "p@text",
      "kind": "a.1@text&&span@textNodes",
      "name": "a.0@text##（.*|\\(.*"
    },
    "ruleToc": {
      "chapterList": ".list@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/e/search/index.php,{\n  \"charset\": \"gb2312\",\n  \"method\": \"post\",\n  \"body\": \"keyboard={{key}}&show=title&classid=0\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 香书小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xbiqugu.la",
    "customButton": false,
    "customOrder": 65,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/fenlei/1_{{page}}.html\n修真::/fenlei/2_{{page}}.html\n都市::/fenlei/3_{{page}}.html\n穿越::/fenlei/4_{{page}}.html\n网游::/fenlei/5_{{page}}.html\n科幻::/fenlei/6_{{page}}.html\n其他::/fenlei/7_{{page}}.html",
    "lastUpdateTime": 1751014905388,
    "respondTime": 977,
    "ruleBookInfo": {
      "author": "id.info@p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@p!0@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".con_top@a.-1@text&&id.info@p.2@text##小说|.*：|\\s..:.*",
      "lastChapter": "id.info@a.-1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": ".s5@text",
      "bookList": ".l@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": ".s3@textNodes##\\(|\\)",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "a.0@href",
      "checkKeyWord": "长生",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.3@text",
      "lastChapter": "a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "五六中文",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.56zw.com/#喜静",
    "customButton": false,
    "customOrder": 67,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1733304610155,
    "respondTime": 5296,
    "ruleBookInfo": {
      "author": "p.0@text",
      "coverUrl": "class.synopsisArea_detail@tag.img@src",
      "init": "class.synopsisArea_detail",
      "intro": ".review@text",
      "kind": "p.1@text",
      "lastChapter": "a@text",
      "name": ""
    },
    "ruleContent": {
      "content": "#chaptercontent@textNodes",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##第.*章.*第(.*)页|继续阅读。|第(.*)页"
    },
    "ruleExplore": {
      "author": "p.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": "p.2@text",
      "name": "p.0@text"
    },
    "ruleSearch": {
      "author": "p.1@text##(.*)\\| 作者：",
      "bookList": "class.recommend mybook@a",
      "bookUrl": "href",
      "kind": "p.1@text##\\| 作者：(.*)",
      "lastChapter": "p.2@text##.*连载 \\| \\更新：|",
      "name": "p.0@text"
    },
    "ruleToc": {
      "chapterList": "class.directoryArea.1@p a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "class.right@href||text.下一页@href"
    },
    "searchUrl": "https://m.56zw.com/s.php,{\n  \"body\": \"keyword={{key}}&t=1\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\",\n  \"webView\": true\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "💠 文桑小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wensang.net",
    "customButton": false,
    "customOrder": 68,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "奇幻玄幻::/xuanhuan/page_{{page}}.html\n武侠仙侠::/xiuzhen/page_{{page}}.html\n都市言情::/dushi/page_{{page}}.html\n历史军事::/lishi/page_{{page}}.html\n网游竞技::/wangyou/page_{{page}}.html\n科幻悬疑::/kehuan/page_{{page}}.html\n女生小说::/nvpin/page_{{page}}.html\n青春校园::/qingchun/page_{{page}}.html\n耽美同人::/bl/page_{{page}}.html\n乡村小说::/xiangcun/page_{{page}}.html\n其它小说::/qita/page_{{page}}.html\n文桑视界::/wensang/page_{{page}}.html",
    "lastUpdateTime": 1751008959392,
    "respondTime": 1628,
    "ruleBookInfo": {
      "author": ".field@a.0@text",
      "coverUrl": "id.bookCover@img@src",
      "intro": ".desc-short@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".field@span.1:2:5@text##.*：|\\s..:.*",
      "lastChapter": ".logs@a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".infos@h1@text"
    },
    "ruleContent": {
      "content": "id.BookText@textNodes"
    },
    "ruleExplore": {
      "author": ".d1@ownText",
      "bookList": ".filter-ret@li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".d2@text",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": "span.1@text",
      "bookList": "id.sitebox@dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "kind": "span.3:2:0@text##\\s.*",
      "lastChapter": "a.4@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".chapter@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/home/search?type=action&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "天天的鸟蛋蛋 2025/9/30",
    "bookSourceGroup": "漫画",
    "bookSourceName": "学外漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.xwmanhua.com",
    "customButton": false,
    "customOrder": 69,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "jsLib": "var unpack = function(p, a, c, k, e, d) {\n    e = function(c) {\n        return c.toString(36);\n    };\n    if (!''.replace(/^/, String)) {\n        while (c--) {\n            d[e(c)] = k[c] || e(c);\n        }\n        k = [function(e) {\n            return d[e];\n        }];\n        e = function() {\n            return '\\\\w+';\n        };\n        c = 1;\n    }\n    while (c--) {\n        if (k[c]) {\n            p = p.replace(new RegExp('\\\\b' + e(c) + '\\\\b', 'g'), k[c]);\n        }\n    }\n    return p;\n};",
    "lastUpdateTime": 1778811297068,
    "respondTime": 705,
    "ruleBookInfo": {
      "author": ".shuxin@dd.0@text",
      "coverUrl": "img@src",
      "init": "#setnmh-bookms",
      "intro": "《{{@@.bookname@text}}》\n标签：{{@@.tags@a@text##\\s##,}}\n{{@@.shuxin@dd@html}}\n简介：\n{{@@.ms@html}}",
      "kind": ".tags@a@text",
      "name": ".bookname@text"
    },
    "ruleContent": {
      "content": "<js>\nvar evalStr=src.match(/(eval.*\\)\\))/)[1]\nvar match = evalStr.match(/eval\\(function\\(p,a,c,k,e,d\\)\\{.*?\\}\\('(.*?)',(\\d+),(\\d+),'(.*?)'\\.split\\('\\|'\\)/);\n    var p = match[1];        \n    var a = parseInt(match[2]);\n    var c = parseInt(match[3]); \n    var k = match[4].split('|');     \n    var result = unpack(p, a, c, k, undefined, {});\n    eval(result);\n    var imgTags = picTree.map(item => `<img src=\"${item}\">`).join('\\n');\nimgTags;\n    </js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".col-lg-2",
      "bookUrl": "a@href",
      "checkKeyWord": "爸妈来自二次元",
      "coverUrl": "img@data-original",
      "name": "a@text"
    },
    "ruleToc": {
      "chapterList": "-#ul_chapter1@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search?types=comic&searhword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "💠 玄幻阁网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xuanyge.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 70,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort1/{{page}}/\n武侠::/sort2/{{page}}/\n都市::/sort3/{{page}}/\n历史::/sort4/{{page}}/\n言情::/sort5/{{page}}/\n穿越::/sort6/{{page}}/\n科幻::/sort7/{{page}}/\n恐怖::/sort8/{{page}}/\n校园::/sort9/{{page}}/\n异界::/sort10/{{page}}/\n全本::/quanben/{{page}}/",
    "lastUpdateTime": 1734432800549,
    "loginUrl": "",
    "respondTime": 5865,
    "ruleBookInfo": {
      "author": "id.count@span.0@text",
      "coverUrl": "id.bookimg@img@src",
      "intro": "id.bookintro@p.0@text##(^|[。！？]+[”」）】]?)##$1<br>@js:result.replace(/最新.*关于：/g,\"\")",
      "kind": "id.count@span.1:2:3@text##\\s..:.*",
      "lastChapter": ".new@a.0@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".booktitle@h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "imageStyle": "",
      "replaceRegex": "##随机推荐.*|.*精华书阁.*|为您提供.*好书签.|.*免费阅读.|.*最快更新.*|\\(本章未完.*\\)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.1@text",
      "bookList": "id.sitebox@dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "dd.3@text",
      "kind": "span.2:0@text",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text",
      "wordCount": "span.3@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?s={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "18笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.bqgns.com",
    "customButton": false,
    "customOrder": 73,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1763201330387,
    "respondTime": 7773,
    "ruleBookInfo": {
      "author": "//p[@class='author']/text()",
      "name": "//div[@class='detail_rt']/h1/text()"
    },
    "ruleContent": {
      "content": "//div[@class='text']/text()"
    },
    "ruleSearch": {
      "author": "$..author",
      "bookList": "$..list[*]",
      "bookUrl": "/book/{$..id}",
      "checkKeyWord": "成功",
      "coverUrl": "$..imgUrl",
      "intro": "",
      "name": "$..title"
    },
    "ruleToc": {
      "chapterList": "div.v-sheet div a",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "//div[@class='seo_page']/a[text()='下一页']/@href"
    },
    "searchUrl": "/api/query/search?keyword={{key}}&size=50",
    "weight": 0
  },
  {
    "bookSourceComment": "●⚐ ♛轻之文库 #一程",
    "bookSourceGroup": "轻小说",
    "bookSourceName": "輕之文庫（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.linovel.net#♤yc",
    "customButton": false,
    "customOrder": 74,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"重推周榜\",\"url\":\"/hub/getTopBooks?unit=zt&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"佳作周榜\",\"url\":\"/hub/getTopBooks?unit=jz&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月票周榜\",\"url\":\"/hub/getTopBooks?unit=ticket&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"轻币周榜\",\"url\":\"/hub/getTopBooks?unit=coin&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"墨水周榜\",\"url\":\"/hub/getTopBooks?unit=ink&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"应援周榜\",\"url\":\"/hub/getTopBooks?unit=supp&time=week&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重推月榜\",\"url\":\"/hub/getTopBooks?unit=zt&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"佳作月榜\",\"url\":\"/hub/getTopBooks?unit=jz&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月票月榜\",\"url\":\"/hub/getTopBooks?unit=ticket&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"轻币月榜\",\"url\":\"/hub/getTopBooks?unit=coin&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"墨水月榜\",\"url\":\"/hub/getTopBooks?unit=ink&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"应援月榜\",\"url\":\"/hub/getTopBooks?unit=supp&time=month&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重推新人\",\"url\":\"/hub/getTopBooks?unit=zt&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"佳作新人\",\"url\":\"/hub/getTopBooks?unit=jz&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"轻币新人\",\"url\":\"/hub/getTopBooks?unit=coin&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"墨水新人\",\"url\":\"/hub/getTopBooks?unit=ink&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"应援新人\",\"url\":\"/hub/getTopBooks?unit=supp&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月票新人\",\"url\":\"/hub/getTopBooks?unit=ticket&time=new&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"精选\",\"url\":\"/cat/2000.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"全部\",\"url\":\"/cat/-1.html?sort=hot&sign=-1&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"幻想\",\"url\":\"/cat/1.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"战斗\",\"url\":\"/cat/2.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恋爱\",\"url\":\"/cat/3.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"异界\",\"url\":\"/cat/4.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"搞笑\",\"url\":\"/cat/5.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"日常\",\"url\":\"/cat/6.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/cat/7.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"后宫\",\"url\":\"/cat/8.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/cat/10.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"治愈\",\"url\":\"/cat/11.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"超能\",\"url\":\"/cat/12.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"节操\",\"url\":\"/cat/13.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"妖怪\",\"url\":\"/cat/14.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/cat/15.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"妹控\",\"url\":\"/cat/16.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"伪娘\",\"url\":\"/cat/17.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"魔法\",\"url\":\"/cat/18.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"乙女\",\"url\":\"/cat/19.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"同人\",\"url\":\"/cat/20.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/cat/21.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"偶像\",\"url\":\"/cat/22.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/cat/104.html?page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0\"\n}",
    "lastUpdateTime": 1759387211552,
    "loginUrl": "https://www.linovel.net/",
    "respondTime": 5746,
    "ruleBookInfo": {
      "author": ".name a@text",
      "coverUrl": ".book-cover img@src",
      "intro": "🏷️   {{@.book-cats@text}}{{'\\n'+'​'}}\n{{@.about-text@html}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".book-data span.-2@text&&.book-last-update@text##更新于|\\s.*",
      "lastChapter": ".recent-update a.0@text",
      "name": "h1@text",
      "wordCount": ".book-data span.0@text"
    },
    "ruleContent": {
      "content": ".article-text@html",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": ".book-extra@text||author##\\s*丨.+$",
      "bookList": ".rank-book||$.data.books[*]",
      "bookUrl": "a.0@href||https://www.linovel.net/book/{$.id}.html",
      "coverUrl": "img@src||coverUrl",
      "intro": ".book-intro@text||about",
      "kind": ".book-extra@text&&.book-tag@text&&cat[*]##^[^丨]+丨\\s*|\\s.*",
      "lastChapter": "p.-1@text||lastVolName",
      "name": "a.0@text||name",
      "wordCount": "words"
    },
    "ruleSearch": {
      "author": "div.-1@text##\\s*丨.+$",
      "bookList": ".rank-book-list a",
      "bookUrl": "href",
      "coverUrl": "img@src",
      "intro": "div.-2@text",
      "kind": "div.-1@text&&.book-tag@text##^[^丨]+丨\\s*|\\s.*",
      "name": "div.4@text"
    },
    "ruleToc": {
      "chapterList": ".chapter",
      "chapterName": "@js:\nvar title = result.parentNode().parentNode().parentNode().parentNode().parentNode();\nresult = title.select('h2').text() +'：'+ result.text()",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/search/?kw={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "源作者:qaz1749，该书源无发现功能，网站目前暂时不需要梯子，也没有机器人验证和登录要求",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "新笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquges123.com",
    "bookUrlPattern": "https://www.biquges123.com\\d+",
    "customButton": false,
    "customOrder": 75,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759264712653,
    "respondTime": 2464,
    "ruleBookInfo": {
      "author": "class.info_ct@tag.div.2@text",
      "coverUrl": "class.info_lt@tag.img@src",
      "init": "tag.main",
      "intro": "class.des@tag.span@text",
      "kind": "class.bread@tag.a.1@text",
      "lastChapter": "class.ud@tag.a@text",
      "name": "class.info_title@text"
    },
    "ruleContent": {
      "content": "class.article@html",
      "nextContentUrl": "class.text_btn@tag.a.2@href",
      "title": "class.text@tag.h1@text"
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": "class.hot_4@tag.li",
      "bookUrl": "class.hot_4_item@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.hot_des@text",
      "name": ".hot_name@text"
    },
    "ruleToc": {
      "chapterList": "class.list@tag.li",
      "chapterName": "tag.a@title",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/search?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "繁体字",
    "bookSourceGroup": "轻小说",
    "bookSourceName": "恩施轻语（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.esjzone.one",
    "customButton": false,
    "customOrder": 77,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最新更新\",\"url\":\"/list-01/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最新上架\",\"url\":\"/list-02/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最高评分\",\"url\":\"/list-03/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多观看\",\"url\":\"/list-04/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多文章\",\"url\":\"/list-05/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多讨论\",\"url\":\"/list-06/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多收藏\",\"url\":\"/list-07/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多字数\",\"url\":\"/list-08/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"原創\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最新更新\",\"url\":\"/list-21/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最新上架\",\"url\":\"/list-22/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最高评分\",\"url\":\"/list-23/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多观看\",\"url\":\"/list-24/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多文章\",\"url\":\"/list-25/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多讨论\",\"url\":\"/list-26/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多收藏\",\"url\":\"/list-27/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多字数\",\"url\":\"/list-28/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"日輕\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最新更新\",\"url\":\"/list-11/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最新上架\",\"url\":\"/list-12/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最高评分\",\"url\":\"/list-13/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多观看\",\"url\":\"/list-14/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多文章\",\"url\":\"/list-15/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多讨论\",\"url\":\"/list-16/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多收藏\",\"url\":\"/list-17/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多字数\",\"url\":\"/list-18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"韓輕\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最新更新\",\"url\":\"/list-31/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最新上架\",\"url\":\"/list-32/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最高评分\",\"url\":\"/list-33/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多观看\",\"url\":\"/list-34/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多文章\",\"url\":\"/list-35/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多讨论\",\"url\":\"/list-36/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多收藏\",\"url\":\"/list-37/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多字数\",\"url\":\"/list-38/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"R18\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"最新更新\",\"url\":\"/tags-01/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最新上架\",\"url\":\"/tags-02/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最高评分\",\"url\":\"/tags-03/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多观看\",\"url\":\"/tags-04/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多文章\",\"url\":\"/tags-05/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多讨论\",\"url\":\"/tags-06/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多收藏\",\"url\":\"/tags-07/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"最多字数\",\"url\":\"/tags-08/R18/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "lastUpdateTime": 1759522999976,
    "loginUrl": "https://www.esjzone.zone/my/profile.html",
    "respondTime": 7339,
    "ruleBookInfo": {
      "author": "ul.list-unstyled@li.1@a@text",
      "canReName": "1",
      "coverUrl": ".product-gallery@img@src",
      "intro": "<br>{{@@section.m-t-20@a.tag@text##(^|[\\n])##🏷️}}\n{{'&lrm;'}}\n{{@@div.description@html}}",
      "kind": "{{@@ul.list-unstyled@li.0@text##類型.\\s}},{{@@ul.list-unstyled@li.-2@text##更新日期.\\s}},{{@@.hidden-xs@div.display-3@text##$##分}}",
      "lastChapter": "#chapterList@a.-1@p@text&&.list-unstyled@li.-2@text##更新日期.\\s",
      "name": "h2@text",
      "wordCount": "span#txt@text##\\D"
    },
    "ruleContent": {
      "content": "div.forum-content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".card-author@a@text",
      "bookList": "div.col-lg-3",
      "bookUrl": ".card-title@a@href",
      "checkKeyWord": "勇者",
      "coverUrl": "div.lazyload@html##.*\"(.*)\".*##$1",
      "kind": "{{@@div.card-other.1@div.2@text##\\D}}个收藏,{{@@div.card-other.2@div.2@text##\\D}}条留言",
      "lastChapter": ".card-ep@a@text",
      "name": ".card-title@a@text",
      "wordCount": "div.card-other.0@div.column.1@text##\\D"
    },
    "ruleToc": {
      "chapterList": "#chapterList@a[data-title], p.non, summary",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVolume": "p.non@text||summary@text"
    },
    "searchUrl": "/tags-01/{{key}}/{{page}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🎉 笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xbiqusa.info",
    "customButton": false,
    "customOrder": 78,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 2126,
    "ruleBookInfo": {
      "coverUrl": ".synopsisArea_detail img@src",
      "init": "",
      "intro": ".review@textNodes",
      "tocUrl": ".btn a@href"
    },
    "ruleContent": {
      "content": ".ReadAjax_content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##『章节.*举报』|天才一秒记住本站地址.*最快更新！无广告！|（本章.*阅读）|『加入.*阅读』|.*\\(第.*/3页\\)|"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": ".author a.1@text",
      "bookList": ".hot_sale",
      "bookUrl": ".hot_sale @a@href",
      "lastChapter": ".author a.2@text",
      "name": ".title@text"
    },
    "ruleToc": {
      "chapterList": ".directoryArea@p!0",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://m.xbiqusa.info/SearchBook.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "新笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.paoshuzw.com/",
    "customButton": false,
    "customOrder": 79,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733579946043,
    "respondTime": 2737,
    "ruleBookInfo": {
      "coverUrl": "class.fmimg@tag.img@src",
      "intro": "id.intro@tag.p!0@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.a.0@href",
      "kind": "tag.td.-1@text",
      "lastChapter": "tag.a.1@text",
      "name": "tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "源社区：@Mengteen  2025.11.22原创\n二传二创或者是其它问题请联系我。\n我邮箱:[xxxmgqxxx@vip.qq.com]\n我QQ:99737563(备注来意)\n1.不需要挂🪜子,不排除个别地方网络加载可能有点慢或者是需要挂🪜子才能访问，别急！\n2.发现是按我个人喜欢,你也可以自行创建你个人喜欢的。",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "😍轻写真",
    "bookSourceType": 2,
    "bookSourceUrl": "http://www.635k.com/##@Mengteen",
    "customButton": false,
    "customOrder": 80,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"首页\",\"url\": \"http://www.635k.com/\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"绅士摄影\",\"url\": \"/shenshiSHENSHIjinjiqihua_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"SSA丝社\",\"url\": \"/ssasishe_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"Ligui丽柜\",\"url\": \"/liguiligui_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"异思趣向\",\"url\": \"/IESSyisiquxiang_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"丝慕SMOU\",\"url\": \"/simusmou_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"克拉女神\",\"url\": \"/kelanvshenKelagirls_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"丝意SIEE\",\"url\": \"/siyiSIEE_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"丝袜套图\",\"url\": \"/siwataotu_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"慕丝女郎\",\"url\": \"/musinvlang_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"梦丝女神\",\"url\": \"/mengsinvshen_{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}}\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 13; 2211133C Build/TKQ1.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1763776653287,
    "respondTime": 1821,
    "ruleBookInfo": {
      "kind": "span@text",
      "tocUrl": ".all-page@a@href"
    },
    "ruleContent": {
      "content": "@js: \nlet pics=java.getString('img@src'); \nlet p=String(pics).split(\"\\n\").map(i=>`<img src=\"${i}\">`).join(\"\\n\");\np;",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".item-meta@text",
      "bookList": "#post_list_box@li",
      "bookUrl": "h2@a@href",
      "checkKeyWord": "写真",
      "coverUrl": "img@src",
      "intro": "<br>🌟\n<br>📆{{@@.ltim@text}} 发布\n<br>{{\"🏄Mengteen ©2025\"}}",
      "name": "h2@a@text"
    },
    "ruleToc": {
      "chapterList": "ul@li",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search/{{page}}_2.html",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🎃笔趣阁🎃#80",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge55.net#🎃",
    "bookUrlPattern": "https://www.biquge55.net/book/info\\d+/",
    "customButton": false,
    "customOrder": 82,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1720344774207,
    "loginUrl": "",
    "respondTime": 2885,
    "ruleBookInfo": {
      "author": "class.fix@tag.p.0@text##作者：",
      "coverUrl": "class.imgbox@tag.img@src",
      "intro": "class.m-desc@text",
      "kind": "class.fix@tag.p.4@text&&\nclass.fix@tag.p.1@text&&\nclass.fix@tag.p.2@text##类 别：|状 态：|最后更新：",
      "lastChapter": "class.section-box.0@tag.li.0@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.top@tag.h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html##章节错误.*并刷新页面。|最快更新.*最新章节！",
      "nextContentUrl": "text.下一页.1@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.txt-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "",
      "kind": "class.s1@text&&\nclass.s5@text##\\[|\\]",
      "lastChapter": "class.s3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.s2@a@text"
    },
    "ruleToc": {
      "chapterList": "class.section-box.1@li",
      "chapterName": "tag.a.0@text",
      "chapterUrl": "tag.a.0@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://www.biquge55.net/search/,{\r\n  \"method\": \"POST\",\r\n  \"body\": \"searchkey={{key}}&Submit=%E6%90%9C%E7%B4%A2\"\r\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "error:搜索内容为空并且没有发现\n",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🎉笔趣阁⑥①",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge.tv/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 84,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1615536389709,
    "loginUrl": "",
    "respondTime": 912,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.biquge.tv/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquge.tv/modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.biquluo.com/",
    "bookUrlPattern": "http://www.biquluo.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 85,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1721465239981,
    "loginUrl": "",
    "respondTime": 1935,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |卷1 ",
      "name": "id.info@tag.h1@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##一秒记住.*无弹窗免费阅读！|笔趣阁.*最新章节！|一秒记住【笔趣阁　】|手机用户请浏.*阅读体验。|天才一秒记住本.*无广告！|章节错误.*请耐心等待。"
    },
    "ruleExplore": {
      "author": "class.s4@tag.a@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquluo.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@tag.a@text",
      "name": "class.s2@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.novelslist2@tag.li",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquluo.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s1@text&&\nclass.s7@text",
      "lastChapter": "class.s3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节|卷1",
      "name": "class.s2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text##【求收藏！】|（.*）",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquluo.com/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.7.17 by夜明空\n//源社区：https://taoba.cf\n//添加网址仅支持电脑站（www开头）",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁2345-夜明空",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge2345.com",
    "bookUrlPattern": "https://www.biquge.*/xiaoshuo/\\d+.*",
    "customButton": false,
    "customOrder": 88,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"最近更新\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻魔法\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠修真\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游动漫\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖灵异\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"全本小说\",\"url\":\"/sort/9_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36\"}",
    "lastUpdateTime": 1752746251880,
    "respondTime": 4404,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "&nbsp;\n📕 书名：{{@@[property=\"og:novel:book_name\"]@content}}\n👤 作者：{{@@[property=\"og:novel:author\"]@content}}\n🕰 最新：{{@@.fen_3@li.0@text}}\n⏳ 状态：{{@@.hang_1@a.1@text##状态：}}\n🔖 类型：{{@@.hang_1@a.0@text##类型：}}\n🎯 点击：{{@@.hang_2_a2.0@text}}\n❤️ 收藏：{{@@.hang_2_a2.1@text}}\n💡 推荐：{{@@.hang_2_a2.2@text}}\n📝 简介：{{@@.hang_3@a@text}}",
      "kind": "{{@@.hang_1@a.1@text##状态：}},{{@@.hang_1@a.0@text##类型：}}",
      "lastChapter": ".fen_3@li.0@text",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "#txt@textNodes",
      "replaceRegex": "##第.*章.*|[（(]本章未完.*[）)]"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".zuo@text",
      "bookList": "<js>\nif(src.match(/搜索间隔/)){\n\tjava.toast(\"\\n🚫 网站有限制，请勿频繁搜索\")}else{\n\t\tjava.getElement(\".lastupdate@ul@li\")\n\t\t}\n</js>\n<js>\nif (result.length===0){\n\tjava.toast('\\n🔍 该搜索词没有结果');\n\tresult;\n\t}\nresult\t\n</js>",
      "bookUrl": ".name@a@href",
      "checkKeyWord": "鸣龙",
      "kind": ".time@text&&.lei@text##\\[|\\]",
      "lastChapter": ".jie@text",
      "name": ".name@text"
    },
    "ruleToc": {
      "chapterList": ".fen_4@li@a\n<js>\nif (result.length===0){\n\tjava.toast('\\n🔍 该书籍没有目录');\n\tresult;\n\t}\nresult\t\n</js>",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.7.22 ◎夜泽川◎",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "完本小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.finalbooks.work",
    "bookUrlPattern": "https?:\\/\\/www\\.finalbooks\\.work\\/book\\/\\d+\\/?",
    "customButton": false,
    "customOrder": 89,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\nvar push = (title, url, size) => result.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: size\n    }\n});\n\nvar tags = org.jsoup.Jsoup.parse(java.ajax(source.key + \"/category/\"))\n    .select('.CGsectionTwo-left a')\n    .toArray()\n    .map(tag => {\n        let text = [String(tag.text()).trim(), String(tag.attr('href')).match(/(\\d+)/)[1]];\n        return String(tag.text()).trim() ? text :  null;\n    })\n    .filter(item => item !== null);\n\n[\n    [\"༺ˇ»`ʚ  分类  ɞ´«ˇ༻\", \"/category/\"],\n    [\"༺ˇ»`ʚ  排行榜  ɞ´«ˇ༻\", null],\n    [\"༺ˇ»`ʚ  总榜  ɞ´«ˇ༻\", \"/rank/all/\"],\n    [\"༺ˇ»`ʚ  周榜  ɞ´«ˇ༻\", \"/rank/\"],\n    [\"༺ˇ»`ʚ  月榜  ɞ´«ˇ༻\", \"/rank/month/\"],\n    [\"༺ˇ»`ʚ  全本  ɞ´«ˇ༻\", \"/category/finish/\"]\n].forEach(item => {\n    push(item[0], null, 1);\n    if (item[1]) {\n        tags.forEach((tag, index) => {\n            let url = item[1] + tag[1] + \"/{{page}}.html\";\n            push(tag[0], url, (index ? 0.2 : 1));\n        });\n    }\n});\nJSON.stringify(result);",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "jsLib": "function decrypt(encryptedTxt, keySeed) {\n    const { java } = this;\n    let result;\n    try {\n        const fullKey = java.md5Encode(keySeed);\n        const ivBytes = java.strToBytes(fullKey.substring(0, 16));\n        const keyBytes = java.strToBytes(fullKey.substring(16));\n\n        const Cipher = java.createSymmetricCrypto(\n            \"AES/CBC/Pkcs7Padding\",\n            keyBytes,\n            ivBytes\n        );\n\n        result = Cipher.decryptStr(java.base64DecodeToByteArray(encryptedTxt));\n    } catch (e) {\n        java.log(e.message);\n        result = \"解密失败\";\n    }\n    return result;\n}",
    "lastUpdateTime": 1753164782957,
    "respondTime": 7007,
    "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\":\"[property$=image]@content\",\n\"o\":\"[property$=description]@content\",\n\"g\":\"[property$=update_time]@content\",\n\"m\":\".BGsectionOne-bottom@li.1@a@href\"\n}",
      "intro": "@get:{o}",
      "kind": "@get:{t}",
      "lastChapter": "@get:{l}◎@get:{g}",
      "name": "@get:{n}",
      "tocUrl": "@get:{m}"
    },
    "ruleContent": {
      "content": "@js:\nlet data = src.match(/d\\(\"([^\\)]+)/)[1].replace(/\"|\\s/g, \"\").trim().split(\",\");\ndecrypt(data[0], data[1]);"
    },
    "ruleExplore": {
      "author": "a[href^=\"/writer/\"]@text",
      "bookList": "[class$=\"unit\"]",
      "bookUrl": "a[href^=\"/book/\"]@href",
      "kind": "p.-1@text",
      "name": "a[href^=\"/book/\"][0]@text"
    },
    "ruleSearch": {
      "author": "a[href^=\"/writer/\"]@text",
      "bookList": ".SHsectionThree-middle > p",
      "bookUrl": "a[href^=\"/book/\"]@href",
      "kind": "a[href^=\"/category/\"]@text",
      "name": "a[href^=\"/book/\"]@text"
    },
    "ruleToc": {
      "chapterList": "ol > li\n<js>\nlet Regex_ = /(data-[a-zA-Z0-9]+)/g;\nlet label = result.select('li')[0].outerHtml().match(Regex_)[1];\nresult.sort((a, b) => +a.attr(label) - +b.attr(label));\nchapterList = result.select('a').toArray().map(e => {\n    let labeln = e.outerHtml().match(Regex_);\n    return {\n        title: String(e.attr(labeln[0])).trim() || e.text(),\n        url: java.base64Decode(String(e.attr(labeln[1])))\n    }\n});\nJSON.stringify(chapterList);\n</js>\n$[*]",
      "chapterName": "$.title",
      "chapterUrl": "$.url",
      "nextTocUrl": "@js:\nvar pages = [];\nvar endPage = String(java.getString('#end@href'));\nvar num = +endPage.match(/(\\d+)/g)[1];\nfor (let i = 2; i <= num; i++) {\n      pages.push(String(book.tocUrl).replace(/$/, i + \".html\"));\n}\npages;"
    },
    "searchUrl": "/search/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "壬二酸 目录下一页by辞暮🍏",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "po18文学壬二酸",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.po18co.com/",
    "customButton": false,
    "customOrder": 90,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1743605514477,
    "respondTime": 2970,
    "ruleBookInfo": {
      "author": "class.xx@tag.ul@tag.li.2@tag.a@text",
      "canReName": "",
      "coverUrl": "class.xsfm@tag.img@src",
      "intro": "class.jianjie bk@text",
      "kind": "class.xx@tag.ul@tag.li.1@tag.a@text",
      "lastChapter": "class.xx@tag.ul@tag.li.3@tag.a@text",
      "name": "class.xx@tag.ul@tag.li.0@text",
      "tocUrl": "text.查看更多章节@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.nr@textNodes",
      "imageStyle": "full"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "class.fk@tag.li",
      "bookUrl": "tag.a.1@href",
      "checkKeyWord": "不死不灭",
      "coverUrl": "",
      "intro": "",
      "kind": "tag.a.0@text",
      "name": "tag.a.1@text##在线阅读",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.lb fk@tag.li!-1",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "voltype",
      "nextTocUrl": ".showpage a@href",
      "preUpdateJs": "",
      "updateTime": "info"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"submit=&type=articlename&s={{key}}\",\n  \"method\": \"POST\",\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "齐鲁文学(修复正文下一页)",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.qiluwx.com#测试",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 91,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"x-requested-with\": \"XMLHttpRequest\",\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; SK) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1742533907861,
    "loginUrl": "",
    "respondTime": 6197,
    "ruleBookInfo": {
      "author": "[property$=og:novel:author]@content",
      "coverUrl": "[property$=og:image]@content",
      "downloadUrls": ".addbookcase@href",
      "init": "",
      "intro": "[property$=og:description]@content",
      "kind": "[property$=og:novel:category]@content&&[property$=og:novel:status]@content&&[property$=og:novel:update_time]@content",
      "lastChapter": "[property$=og:novel:latest_chapter_name]@content",
      "name": "[property$=og:title]@content",
      "tocUrl": "[property$=og:url]@content@js:result.replace(\"_\",\"/\")",
      "wordCount": ".visible-xs.1@text##字数："
    },
    "ruleContent": {
      "content": "#booktxt@html##<script[^>]*>.*?</script>",
      "imageStyle": "",
      "nextContentUrl": "<js>\n(function(){\n    // 使用正则检测分页标签\n    const hasNextLink = /<a\\s+rel=\\\"next\\\"\\s+class=\\\"next\\\"[^>]*>下—页<\\/a>/i.test(result);\n    if (!hasNextLink) return '';\n    \n    try {\n        // 动态生成分页URL（适配数字型URL）\n        let url = baseUrl;\n        const pageMatch = url.match(/(\\d+)(?:_(\\d+))?\\.html$/);\n        if (!pageMatch) return '';\n        \n        const [_, baseId, currentPage] = pageMatch;\n        const pageNum = currentPage ? parseInt(currentPage) : 1;\n        \n        // 安全限制（最大3页）\n        if (pageNum > 2) return ''; // 第3页后停止\n        \n        // 生成新URL（如 /123_2.html → /123_3.html）\n        return url.replace(/(\\d+)(?:_(\\d+))?\\.html$/, `${baseId}_${pageNum + 1}.html`);\n    } catch(e) {\n        return '';\n    }\n})()\n</js>",
      "replaceRegex": "##(请记住.*?域名|最新章节！|请收藏本站)"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": ".btm@a@title",
      "bookList": "#hotcontent@.item",
      "bookUrl": "a@href@js:try{var r=String(result);r.charAt(0)==='/'?r:'/'+r}catch(e){'/'}",
      "checkKeyWord": "副本需要我这样的人才",
      "coverUrl": ".lazy@src",
      "intro": "dl@dd@text",
      "kind": ".blue@text",
      "lastChapter": "",
      "name": "dt@a@text",
      "wordCount": ".orange@text"
    },
    "ruleToc": {
      "chapterList": "#content_1@a",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href@js:try{var u=String(result);u.indexOf('/')===0?u:'/'+u}catch(e){'/'}",
      "nextTocUrl": "text.下一页@href@js:try{var p=String(result);p.substring(0,1)==='/'?p:'/'+p}catch(e){''}"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\nhttps://www.qiluwx.com/search/,{\n  \"body\": \"keyword={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "火高小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.00shu.com/",
    "bookUrlPattern": "http://www.00shu.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 94,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734385470454,
    "respondTime": 5753,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {
      "author": "class.s5@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href@js:\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.00shu.com/'+iid+'/'+id+'/'",
      "coverUrl": "class.s2@a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.00shu.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.s3@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tr!0",
      "bookUrl": "tag.td.0@a@href",
      "coverUrl": "tag.td.0@a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.00shu.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.1@a@text",
      "name": "tag.td.0@a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.00shu.com/modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge55.net#",
    "bookUrlPattern": "https://www.biquge55.net/book/info\\d+/",
    "customButton": false,
    "customOrder": 96,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734989323220,
    "loginUrl": "",
    "respondTime": 555,
    "ruleBookInfo": {
      "author": "class.fix@tag.p.0@text##作者：",
      "coverUrl": "class.imgbox@tag.img@src",
      "intro": "class.m-desc@text",
      "kind": "class.fix@tag.p.4@text&&\nclass.fix@tag.p.1@text&&\nclass.fix@tag.p.2@text##类 别：|状 态：|最后更新：",
      "lastChapter": "class.section-box.0@tag.li.0@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.top@tag.h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html##章节错误.*并刷新页面。|最快更新.*最新章节！",
      "nextContentUrl": "text.下一页.1@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.txt-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "",
      "kind": "class.s1@text&&\nclass.s5@text##\\[|\\]",
      "lastChapter": "class.s3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.s2@a@text"
    },
    "ruleToc": {
      "chapterList": "class.section-box.1@li",
      "chapterName": "tag.a.0@text",
      "chapterUrl": "tag.a.0@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://www.biquge55.net/search/,{\r\n  \"method\": \"POST\",\r\n  \"body\": \"searchkey={{key}}&Submit=%E6%90%9C%E7%B4%A2\"\r\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "*By_聆听月与悦-2025/1/24\n*By_\n//这里提供部分接口\n*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-\nhttp://api.myweipin.com\nhttp://api.lfdapengu.com\nhttp://api.jmlldsc.com\nhttp://api.lemiyigou.com\nhttp://api.lfdapengu.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "猫眼看书（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.lfdapengu.com",
    "customButton": false,
    "customOrder": 97,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\": \"💮        ཽ 猫眼阅读 ཽ        💮\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"↓    ༺ 男频榜单 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"必读榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=1&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"潜力榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=5&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完本榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=2&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"更新榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=3&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"搜索榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=4&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"评论榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=6&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 男频全部 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=lejRej\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=nel5aK\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mbk5ez\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=vbmOeY\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=penRe7\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=xbojag\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mep2bM\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=zbq2dp\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=YerEdO\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 男频完结 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=lejRej&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=nel5aK&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mbk5ez&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=vbmOeY&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=penRe7&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=xbojag&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mep2bM&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=zbq2dp&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=YerEdO&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 男频连载 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=lejRej&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=nel5aK&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mbk5ez&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=vbmOeY&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=penRe7&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=xbojag&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=mep2bM&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=zbq2dp&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=YerEdO&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 女频榜单 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"必读榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=1&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"潜力榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=5&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完本榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=2&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"更新榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=3&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"搜索榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=4&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"评论榜\",\"url\": \"{{source.bookSourceUrl}}/module/rank?type=6&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 女频全部 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9avmeG\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=DdwRb1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=7ax9by\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=Pdy7aQ\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=kazYeJ\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9aAOdv\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 女频完结 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9avmeG&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=DdwRb1&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=7ax9by&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=Pdy7aQ&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=kazYeJ&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9aAOdv&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"↓    ༺ 女频连载 ༻    ↓\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9avmeG&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=DdwRb1&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=7ax9by&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=Pdy7aQ&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=kazYeJ&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"{{source.bookSourceUrl}}/novel?sort=1&page={{page}}&categoryId=9aAOdv&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}}]",
    "header": "{\n\"User-Agent\": \"okhttp/4.9.2\",\n\"client-device\": \"0cdeb38dd0f2a381b06c0a02926ee317\",\n\"client-brand\": \"vivo\",\n\"client-version\": \"2.3.0\",\n\"client-name\": \"app.maoyankanshu.novel\",\n\"client-source\": \"android\",\n\"Authorization\": \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkuanhndHp4Yy5jb21cL2F1dGhcL2xvZ2luYnltb2JpbGUiLCJpYXQiOjE3MzU2MTQ3NzEsImV4cCI6MTgyODkyNjc3MSwibmJmIjoxNzM1NjE0NzcxLCJqdGkiOiI1VEdjdXpoOHNSNVk5WlNjIiwic3ViIjo4MTEzMzQsInBydiI6ImExY2IwMzcxODAyOTZjNmExOTM4ZWYzMGI0Mzc5NDY3MmRkMDE2YzUifQ.-dT55vUMI-JJyfl3a9__Ii-DjxbyvnlOMoXWdG1c8JA\"\n}",
    "lastUpdateTime": 1751452123707,
    "loginUrl": "http://api.lfdapengu.com/auth/me",
    "respondTime": 9033,
    "ruleBookInfo": {
      "author": "$.authorName",
      "canReName": "true",
      "coverUrl": "$.cover",
      "downloadUrls": "http://api.jxgtzxc.com/",
      "init": "$.data",
      "intro": "&nbsp;&nbsp;\n📕书名：{{$.novelName}}\n✏️作者：{{$.authorName}}\n🔥热度：{{$.hotInfo}}，{{$.readInfo}}人在读\n💮更新：共{{$.chapterNum}}章\n📃最新章节：{{$.lastChapter.chapterName}}\n⏳更新时间：{{$..decTime}}\n📖简介：{{$.summary##(^|[。！？]+[”」）】]?)##$1<br>}}",
      "kind": "$..className",
      "lastChapter": "{{$.lastChapter.chapterName}}•{{$.lastUpdatedAt}}",
      "name": "$.novelName",
      "tocUrl": "{{source.bookSourceUrl}}/novel/{{$.novelId}}/chapters",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "$.content",
      "replaceRegex": "##一秒记住.*精彩阅读。|7017k"
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$.data[*]",
      "bookUrl": "{{source.bookSourceUrl}}/novel/{{$.novelId}}?isSearch=1,{\n  \"js\": \"java.toast('正在加载详情页，请稍等！')\"\n}",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "{{source.bookSourceUrl}}/novel/{{$.novelId}}?isSearch=1<js>java.ajax(result)</js>$..className",
      "name": "$.novelName"
    },
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "$.data[*]",
      "bookUrl": "{{source.bookSourceUrl}}/novel/{{$.novelId}}?isSearch=1",
      "checkKeyWord": "开局圣人修为，女帝成了前妻",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "{{$.averageScore}}分\n{{$..className}}\n连载中{{$.status}}已完结\n{{$.lastChapter.decTime||$.createdAt##\\s.*}}\n##连载中2|1已完结|连载中已完结",
      "name": "$.novelName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "$.data.list[*]",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.path\n@js:java.aesBase64DecodeToString(result,\"f041c49714d39908\",\"AES/CBC/PKCS5Padding\",\"0123456789abcdef\");",
      "updateTime": "{{$.updatedAt}} | {{$.wordNum}}字"
    },
    "searchUrl": "{{source.bookSourceUrl}}/search?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2024.11.25",
    "bookSourceGroup": "免费",
    "bookSourceName": "天悦小说（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xtyxsw.org",
    "bookUrlPattern": "https:\\/\\/www\\.xtyxsw\\.org\\/read\\/\\d+\\/",
    "customButton": false,
    "customOrder": 98,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部🏷分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻\",\"url\":\"/sort/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"奇幻\",\"url\":\"/sort/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠\",\"url\":\"/sort/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市\",\"url\":\"/sort/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"历史\",\"url\":\"/sort/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"军事\",\"url\":\"/sort/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"悬疑\",\"url\":\"/sort/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"游戏\",\"url\":\"/sort/8/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻\",\"url\":\"/sort/9/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "{'User-Agent':'Mozilla/5.0 (Linux; Android 14; V2304A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36',\n\"Referer\":\"https://www.20xs.org/\"}",
    "lastUpdateTime": 1759080990815,
    "respondTime": 6417,
    "ruleBookInfo": {
      "author": "em@text",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": ".top@span.2:3@text##小说状态：|更新时间：",
      "lastChapter": "p.2@a.0@text",
      "name": "h1@text",
      "wordCount": ".top@span.1@text##全文字数："
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*大家收藏.*|.*点击下一页.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": "#alistbox",
      "bookUrl": "h2@a@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "lastChapter": ".sys@a@text",
      "name": "h2@a@text"
    },
    "ruleToc": {
      "chapterList": "dl@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "<js>\nlet ul = source.getKey() + \"/search.html\";\nlet headers = {\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\",\n  \"cookie\": \"1\"\n};\nlet cc = java.post(ul, `searchkey=${key}`, headers).header(\"Location\");\nlet next = String(cc).replace(/1\\.html$/, `${page}.html`);\nresult = source.key + next;\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "👍 笔趣阁¹",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.666biquge.com",
    "customButton": false,
    "customOrder": 99,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1726507717452,
    "respondTime": 1546,
    "ruleBookInfo": {
      "author": "p:nth-child(4) > a@text",
      "coverUrl": "#fmimg > img@src",
      "intro": "#intro > p@text",
      "kind": "p:nth-child(5) > a@text&&\np:nth-child(6)@text##状态：",
      "lastChapter": "dd:nth-child(2)@text",
      "name": "h2 > a@text",
      "tocUrl": "text.查看目录@href"
    },
    "ruleContent": {
      "content": "#content@html",
      "replaceRegex": "##[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A]+\\.[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A0-9\\uFF10-\\uFF19-]+\\.[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A]{2,}.*|{{chapter.title}}|第[0-9一二两三四五六七八九十百千万]{1,9}章.*|[(（]?本章未?完[）)]?.*|\\(第.+页\\)|.?加入书签.*|.*下一页继续阅读.*|.*退出阅读模式.*|.*点击下载{{book.name}}.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a:nth-child(3)@text",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "kind": "a:nth-child(1)@text##\\[|\\]",
      "lastChapter": ".even > a@text",
      "name": ".blue@text",
      "wordCount": ".even:nth-child(4)@text"
    },
    "ruleToc": {
      "chapterList": ".chapter > li > a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page > a:nth-child(1)@href"
    },
    "searchUrl": "{{java.connect(source.getKey()).raw().request().url()}}modules/article/waps.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本同人（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.qbtr.me/",
    "customButton": false,
    "customOrder": 100,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "同人小说::/tongren/<,index_{{page}}.html>\n常规小说::/changgui/<,index_{{page}}.html>\n同人榜单::/hot/<,index_{{page}}.html>",
    "lastUpdateTime": 1758571899699,
    "respondTime": 5160,
    "ruleBookInfo": {
      "author": ".date span@text##.*：",
      "coverUrl": ".pic img@src",
      "intro": ".infos p@html",
      "kind": ".menNav a.1@text&&.date@textNodes##.*：|小说",
      "lastChapter": ".book_list a.-1@text",
      "name": ".infos h1@text##\\(\\S+"
    },
    "ruleContent": {
      "content": ".read_chapterDetail@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".booknews@ownText##.*：",
      "bookList": ".bk",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p@text##简介.",
      "kind": "label@text",
      "lastChapter": "h3@text##\\S+\\(|\\)",
      "name": "h3@text##\\(\\S+"
    },
    "ruleToc": {
      "chapterList": ".book_list a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/e/search/index.php,{\n  \"charset\": \"gb2312\",\n  \"method\": \"POST\",\n  \"body\": \"keyboard={{key}}&show=title&classid=0\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 顶点中文④",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ddsge.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 102,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko, By Black Prism) Chrome/99.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1608793862641,
    "loginUrl": "",
    "respondTime": 3846,
    "ruleBookInfo": {
      "coverUrl": "class.picborder@tag.img@src",
      "intro": "id.centerm@tag.tr.3@text##【作品简介】："
    },
    "ruleContent": {
      "content": "id.content@textNodes##天才一秒.*最快更新\\!无广告\\!"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.a.0@href@js:String(result).replace(/\\/wapbook\\//g,'https\\:\\/\\/www.dingdianku.com\\/book\\/')",
      "name": "class.even@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.dccss",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.ddsge.com/modules/article/search.php?searchkey={{key}},{\n  \"charset\": \"utf-8\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "蚂蚁阅读（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.imayitxt.com",
    "customButton": false,
    "customOrder": 103,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "\n 点  击  榜 ::/top/monthvisit/{{page}}.html\n 推  荐  榜 ::/top/monthvote/{{page}}.html\n\n玄幻::/sort/1/{{page}}.html\n仙侠::/sort/2/{{page}}.html\n都市::/sort/3/{{page}}.html\n历史::/sort/4/{{page}}.html\n军事::/sort/5/{{page}}.html\n灵异::/sort/6/{{page}}.html\n科幻::/sort/7/{{page}}.html\n游戏::/sort/8/{{page}}.html\n现言::/sort/9/{{page}}.html\n古言::/sort/10/{{page}}.html\n穿越::/sort/11/{{page}}.html\n青春::/sort/12/{{page}}.html\n豪门::/sort/14/{{page}}.html\n耽美::/sort/15/{{page}}.html\n其他::/sort/13/{{page}}.html",
    "lastUpdateTime": 1759348594001,
    "respondTime": 7290,
    "ruleBookInfo": {
      "author": "class.book_inf@tag.p.0@text",
      "canReName": "true",
      "coverUrl": "img@src.0",
      "intro": "class.h3_rf creat_time@text&&class.book_desc@text",
      "kind": "class.book_inf@tag.p.1@text##类别：",
      "lastChapter": "class.h3_rf new_time.0@tag.a@text",
      "name": "class.book_inf@h3@text",
      "tocUrl": "class.more-chapter@href",
      "wordCount": "class.book_inf@tag.p.2@text##总字数："
    },
    "ruleContent": {
      "content": "class.textarticle@html",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##最新网址.*|一秒记住.*，更新快，，免费读！|>>本章未完，继续下章阅读|免费小说，无弹窗小说网，.*下载，请记住蚂蚁阅读网.*|\\s*.*第.*章.*\\s*|一秒记住【花小说网】，为您提供精彩小说阅读。"
    },
    "ruleExplore": {
      "author": "class.listbook-info@tag.p.0@text",
      "bookList": "class.onefourbox@a",
      "bookUrl": "@href",
      "coverUrl": "class.listbook-cove@tag.img@src",
      "intro": "class.listbook-info@tag.p.1@text",
      "kind": "class.book-tag@tag.span@text",
      "name": "class.listbook-info@tag.h3@text"
    },
    "ruleSearch": {
      "author": "p@text",
      "bookList": "class.onefourbox@tag.a",
      "bookUrl": "tag.a@href",
      "coverUrl": "img@src",
      "kind": "span@text",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "class.mulu_uld@li",
      "chapterName": "h3@text##>",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://wap.imayitxt.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "20230905更新网址，修复正文By_zhbyjm7783",
    "bookSourceGroup": "免费",
    "bookSourceName": "顶点中文[修复]",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.ddsk.org/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 104,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko, By Black Prism) Chrome/99.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1694193448062,
    "loginUrl": "",
    "respondTime": 1444,
    "ruleBookInfo": {
      "coverUrl": "class.picborder@tag.img@src",
      "intro": "id.centerm@tag.tr.3@text##【作品简介】："
    },
    "ruleContent": {
      "content": ".ReadAjax_content@textNodes"
    },
    "ruleSearch": {
      "author": "class.author.0@tag.p@text##.*作者：",
      "bookList": "class.hot_sale",
      "bookUrl": "tag.a.0@href@js:String(result).replace(/\\/wapbook\\//g,'https\\:\\/\\/www.dingdianku.com\\/book\\/')",
      "kind": "class.author.0@tag.p@text##\\|.*",
      "lastChapter": "class.author.1@tag.p@text##.*更新：",
      "name": "class.title@tag.p.0@text"
    },
    "ruleToc": {
      "chapterList": ".directoryArea@p!0",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://wap.ddsk.org/s.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "双零电子（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wrlwx.com",
    "customButton": false,
    "customOrder": 105,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✱　　　　　　✱  榜    单  ✱　　　　　　✱\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"总排行榜\",\"url\":\"/paihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"月排行榜\",\"url\":\"/mpaihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"周排行榜\",\"url\":\"/wpaihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"最  新\",\"url\":\"/new/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"封  推\",\"url\":\"/fengtui/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"推  荐\",\"url\":\"/tuijian/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"金牌推荐\",\"url\":\"/jinpaituijian/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱  分    类  ✱　　　　　　✱\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/wuxia/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/yanqing/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"耽美小说\",\"url\":\"/danmei/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/xuanhuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春校园\",\"url\":\"/xiaoyuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游竞技\",\"url\":\"/wangyou/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"灵异推理\",\"url\":\"/kongbu/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"纪实文学\",\"url\":\"/jishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事历史\",\"url\":\"/lishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/kehuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"管理哲学\",\"url\":\"/zhexue/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"学习资料\",\"url\":\"/xuexi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1759348508747,
    "respondTime": 5800,
    "ruleBookInfo": {
      "author": "class.block_txt2@tag.p.2@text##作者：",
      "coverUrl": "img@src",
      "kind": "class.block_txt2@tag.p.2@a@text",
      "lastChapter": "class.block_txt2@tag.p.6@a@text",
      "name": "class.block_txt2@h2@a@text",
      "tocUrl": "class.block_txt2@tag.a.0@href##-(\\d+).html##http://www.wrltxt.com/read/$1/###"
    },
    "ruleContent": {
      "content": "id.content@textNodes##请记住本书.*",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "class.s@text##大小.*",
      "bookList": "//div[5]/div[2]/div/ul/li",
      "bookUrl": "class.red@href",
      "intro": "class.u@text",
      "kind": "class.s@textNodes##作者.*|大小：|星级：|更新：",
      "lastChapter": "tag.div.-1@text##最新章节：",
      "name": "tag.a.0@text##txt.*"
    },
    "ruleSearch": {
      "author": "tag.td.3@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "tag.a.0@href",
      "lastChapter": "tag.td.2@text",
      "name": "tag.td.1@text"
    },
    "ruleToc": {
      "chapterList": "//div[5]/div/div[3]/div[2]/ul/li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.wrlwx.com/so.html?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//正文下页修复 by: 游客",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔趣小说（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.bqgcn.net",
    "bookUrlPattern": "https?://m.bqgcn.net/[\\d_]+/",
    "customButton": false,
    "customOrder": 106,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/xuanhuanxiaoshuo/<,?page={{page}}>\n仙侠::/xiuzhenxiaoshuo/<,?page={{page}}>\n都市::/dushixiaoshuo/<,?page={{page}}>\n历史::/lishixiaoshuo/<,?page={{page}}>\n网游::/wangyouxiaoshuo/<,?page={{page}}>\n科幻::/kehuanxiaoshuo/<,?page={{page}}>\n恐怖::/kongbuxiaoshuo/<,?page={{page}}>\n全本::/wanben/<,?page={{page}}>\n阅读记录::/bookcase/<,?page={{page}}>",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9; MIX 2 Build/PKQ1.190118.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1759348482044,
    "respondTime": 10181,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property~=las?test_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}##简介：|《.*》推荐！",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#nr1.content-div@html",
      "nextContentUrl": "text.下一页@class\n@js:\nif(result){\n\tnext = src.match(/eval(.function.*)/)||[];\n var url = next && eval(next[1]);\n //java.log(url)\n url && eval(url.replace(/var/,\"\"))\n\t}",
      "replaceRegex": "##\\s*本章未完.*\\s*|\\s*.*牢记网址.*\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s3@text",
      "bookList": ".lis dl",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "a@href##(\\d+)_(\\d+)##http://img.bqgcn.com/$1/$2/$2s.jpg###",
      "kind": ".s1@text##\\[|\\]",
      "name": "a@text"
    },
    "ruleToc": {
      "chapterList": "ul.chapter.1@li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search\n@js:\nvar html = java.ajax(baseUrl),\ntoken = org.jsoup.Jsoup.parse(html).\nselect('input[name=_token]').attr('value');\nbody = `kw=${key}<,&page=${page}>&_token=${token}`;\nresult + \",\" + \n\tJSON.stringify({\n  \"body\": String(body),\n  \"method\": \"POST\"\n});",
    "weight": 0
  },
  {
    "bookSourceComment": "2025/6/24\nby天天的鸟蛋蛋 正文解密无需webView",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "全本小说quanben",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.quanben.io",
    "customButton": false,
    "customOrder": 109,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/c/xuanhuan_{{page}}.html\n都市::/c/dushi_{{page}}.html\n言情::/c/yanqing_{{page}}.html\n穿越::/c/chuanyue_{{page}}.html\n青春::/c/qingchun_{{page}}.html\n仙侠::/c/xianxia_{{page}}.html\n灵异::/c/lingyi_{{page}}.html\n悬疑::/c/xuanyi_{{page}}.html\n历史::/c/lishi_{{page}}.html\n军事::/c/junshi_{{page}}.html\n游戏::/c/youxi_{{page}}.html\n竞技::/c/jingji_{{page}}.html\n科幻::/c/kehuan_{{page}}.html\n职场::/c/zhichang_{{page}}.html\n官场::/c/guanchang_{{page}}.html\n现言::/c/xianyan_{{page}}.html\n耽美::/c/danmei_{{page}}.html\n其它::/c/qita_{{page}}.html",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; Android 13; OPPO Reno7 5G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/300.0.0.0 Mobile Safari/537.36 Edg/106.0.1370.42 Firefox/102.0 OPR/68.0.3618.104 Version/13.0 SamsungBrowser/16.0 UCBrowser/13.4.1.1250 QQBrowser/10.5.3739.400 SE 2.X MetaSr 1.0 QIHU 360EE HeyTapBrowser/40.8.30.3 okhttp/4.11.0\"}",
    "jsLib": "function base64(_str){var staticchars=\"PXhw7UT1B0a9kQDKZsjIASmOezxYG4CHo5Jyfg2b8FLpEvRr3WtVnlqMidu6cN\";var encodechars=\"\";for(var i=0;i<_str.length;i++){var num0=staticchars.indexOf(_str[i]);if(num0==-1){var code=_str[i]}else{var code=staticchars[(num0+3)%62]}var num1=parseInt(Math.random()*62,10);var num2=parseInt(Math.random()*62,10);encodechars+=staticchars[num1]+code+staticchars[num2]}return encodechars}\nfunction s(str) {\n  let arr = [];\n  for (let i = 0; i < str.length; i++) {\n    var r = str.charCodeAt(i);\n    if (r >= 0 && r <= 127) {\n      arr.push('&#' + r + ';');\n    } else {\n      arr.push('&#' + (r - 1) + ';');\n    }\n  }\n  return arr.join('');\n}\nfunction processHTML(html) {\n  var pRegex = /<p\\b[^>]*>.*?<\\/p>/gis;\n  var pTags = html.match(pRegex) || [];  \n  for (let i = 10; i < pTags.length; i++) {\n    if (i === 10 || i === 11) {\n      pTags[i] = pTags[i].replace(/(<p\\b[^>]*>).*?(<\\/p>)/, '$1...$2');\n    } else if (i % 2 === 0) {\n      var contentMatch = pTags[i].match(/<p\\b[^>]*>(.*?)<\\/p>/s);\n      if (contentMatch) {\n        var originalContent = contentMatch[1];\n        var processedContent = s(originalContent);\n        pTags[i] = pTags[i].replace(\n          /<p\\b[^>]*>.*?<\\/p>/s, \n          `<p${pTags[i].match(/<p\\b([^>]*)>/s)?.[1] || ''}>${processedContent}</p>`\n        );\n      }\n    }\n  }\n  var lastIndex = 0;\n  var result = '';\n  const tempHtml = html.replace(pRegex, () => {\n    const replacement = pTags[lastIndex] || '';\n    lastIndex++;\n    return replacement;\n  });\n  return tempHtml;\n}",
    "lastUpdateTime": 1750725274519,
    "respondTime": 3775,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "#content p@html\n<js>\nprocessHTML(result);\n</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "[itemprop=\"author\"]@text",
      "bookList": ".box>.row",
      "bookUrl": "h3@a@href",
      "coverUrl": "img@src",
      "intro": "[itemprop=\"description\"]@text",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar r1=java.getString(\".list3.0@html\",src)\nvar r3=java.getString(\".list3.1@html\",src)\nvar callback=src.match(/var callback\\='(.*)';/)[1];\nvar book_id=src.match(/load_more\\('(\\d+)'\\)/)[1];\nvar callback_base64= base64(callback)\nvar head = JSON.stringify({\n  headers: {\n\"Referer\": \"https://www.quanben.io/n/wodenushen/list.html\"\n  }\n});\nvar url=\"https://www.quanben.io/index.php?c=book&a=list.jsonp&callback=\"+callback+\"&book_id=\"+book_id+\"&b=\"+callback_base64+\",\"+head\nvar url_src=java.ajax(url)\n//java.log(url_src)\nvar url_src_match=`${callback}\\((.*)\\)`\njava.log(url_src_match)\nvar url_src_json=url_src.match(url_src_match)[1];\nurl_src_json1=url_src_json.match(/\\((.*)\\)/)[1];\n//java.log(url_src_json1)\nvar url_src_json_data = JSON.parse(url_src_json1);\nvar r2=url_src_json_data.content\nvar r=r1+r2+r3\n//java.log(r)\n//java.log(JSON.stringify(url_src_json_data))\nr;\n</js>\n.list3@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/index.php?c=book&a=search&keywords={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "番茄🍅",
    "bookSourceName": "番茄小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.zym888.com",
    "customButton": false,
    "customOrder": 110,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"📖全部分类📖\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻小说\",\n    \"url\": \"/fenlei1/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"武侠小说\",\n    \"url\": \"/fenlei2/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"都市小说\",\n    \"url\": \"/fenlei3/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"历史小说\",\n    \"url\": \"/fenlei4/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"网游小说\",\n    \"url\": \"/fenlei5/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"科幻小说\",\n    \"url\": \"/fenlei6/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"其他小说\",\n    \"url\": \"/fenlei7/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"📖热门排行📖\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周点击\",\n    \"url\": \"/top/weekvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月点击\",\n    \"url\": \"/top/monthvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总点击\",\n    \"url\": \"/top/allvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"日推荐\",\n    \"url\": \"/top/dayvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"周推荐\",\n    \"url\": \"/top/weekvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"月推荐\",\n    \"url\": \"/top/monthvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"总推荐\",\n    \"url\": \"/top/allvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"总收藏榜\",\n    \"url\": \"/top/goodnum/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"总字数榜\",\n    \"url\": \"/top/size/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"最新入库\",\n    \"url\": \"/top/postdate/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"📖全本排行📖\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周点击\",\n    \"url\": \"/quanben/weekvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月点击\",\n    \"url\": \"/quanben/monthvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总点击\",\n    \"url\": \"/quanben/allvisit/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"日推荐\",\n    \"url\": \"/quanben/dayvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"周推荐\",\n    \"url\": \"/quanben/weekvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"月推荐\",\n    \"url\": \"/quanben/monthvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"总推荐\",\n    \"url\": \"/quanben/allvote/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"总收藏榜\",\n    \"url\": \"/quanben/goodnum/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"总字数榜\",\n    \"url\": \"/quanben/size/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"最新入库\",\n    \"url\": \"/quanben/postdate/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  }\n]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1780885555472,
    "respondTime": 8115,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=last_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "#text@html"
    },
    "ruleExplore": {
      "author": "p.0@text##作者：",
      "bookList": "article",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.1@text##简介：",
      "name": "h2@text"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.search[*]",
      "bookUrl": "$.book_list_url",
      "coverUrl": "$.cover",
      "intro": "$.intro",
      "kind": "$.cate_name",
      "lastChapter": "$.status_str",
      "name": "$.book_name"
    },
    "ruleToc": {
      "chapterList": "-.chapter@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "<js>\ncookie.removeCookie(source.getKey());\nurl = \"https://m.zym888.com/api/search\";\nr = java.ajax(baseUrl);\ns = r.match(/var\\s\\w+\\s*=\\s*\"\\w+\";/g).join('');\neval(s);\n//java.log(s)\nvar bd = {\n  \"method\": \"POST\",\n  \"body\": `q=${key}&vw=${vw}&abw=${abw}&ru=${ru}&jrt=${jrt}&van=${van}&fw=${fw}&cwl=${cwl}&gpr=${gpr}&uyoo=${uyoo}&tz=${tz}&euu=${euu}&tsn=${tsn}&eju=${eju}&um=${um}&fp=${fp}&dvm=${dvm}&jpk=${jpk}&deblkx=${deblkx}&ht=${ht}&azy=${azy}&sna=${sna}&wqx=${wqx}&fpp=${fpp}&rup=${rup}&jwj=${jwj}&bgt=${bgt}&qp=${qp}&yf=${yf}&cw=${cw}&wq=${wq}&sign=${sign}`\n};\n\nbjson = JSON.stringify(bd);\nurl + ',' + bjson;\n</js>\n",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.4.16 by.◎辞晨◎",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "MANHUA18",
    "bookSourceType": 2,
    "bookSourceUrl": "https://manhwa18.cc/",
    "customButton": false,
    "customOrder": 112,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"All Webtoons\",`https://manhwa18.cc/webtoons/{{page}}`,1,0.39)\npush(\"Manhwa Raw\",`https://manhwa18.cc/raw/{{page}}`, 1, 0.39);\npush(\"18+ Content\",`https://manhwa18.cc/webtoon-genre/adult/{{page}}`, 1, 0.39);\npush(\"Completed\",`https://manhwa18.cc/completed/{{page}}`, 1, 0.39);\n\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "lastUpdateTime": 1745603462684,
    "respondTime": 2927,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "img@data-src\n<js>\nlet headers = JSON.stringify({\"headers\":{\"Referer\":baseUrl}});\nresult.split('\\n').map(x=>`<img src=\"${x},${headers}\">`).join('\\n');\n</js>"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "bookList": ".manga-lists@.bsx",
      "bookUrl": "h3@a@href",
      "coverUrl": "img@data-src",
      "kind": "{{@@span.0@text}},{{@@.item-rate@span@text}},{{@@.chapter-item@span@text}}",
      "name": "h3@a@text"
    },
    "ruleToc": {
      "chapterList": "-#chapterlist@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isVolume": "https://manhwa18.cc/api/check-bookmark?manga_id=1730"
    },
    "searchUrl": "/search?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "https://www.longtimebook.com\nhttps://www.myfeishu.com\n25.4.17 修复目录乱序_明月",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 深夜看书/蓝海",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.longtimebook.com",
    "customButton": false,
    "customOrder": 114,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n\t{\"title\":\"默认\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"全部\",\"url\":\"/category/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"原创小说\",\"url\":\"/category/3789627551813/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人衍生\",\"url\":\"/category/3789627568198/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"耽美\",\"url\":\"/category/3468358279237/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"言情\",\"url\":\"/category/3468358291526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人\",\"url\":\"/category/3468358336585/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"综合\",\"url\":\"/category/3468360114248/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"PO18\",\"url\":\"/category/3843818709061/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"古言\",\"url\":\"/category/12194619924552/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现言\",\"url\":\"/category/12194619514950/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"都市\",\"url\":\"/category/12194619465798/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"科幻\",\"url\":\"/category/12194619387973/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"玄幻\",\"url\":\"/category/12194619539526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"仙侠\",\"url\":\"/category/12194619486278/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"轻小说\",\"url\":\"/category/12194619441222/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"幻情\",\"url\":\"/category/12194619592774/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"游戏\",\"url\":\"/category/12194619478086/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"历史\",\"url\":\"/category/12194619564103/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"悬疑\",\"url\":\"/category/12194619699270/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"青春\",\"url\":\"/category/12194619846726/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现实\",\"url\":\"/category/12194620330054/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"武侠\",\"url\":\"/category/12194619519048/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"体育\",\"url\":\"/category/12194619605064/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"奇幻\",\"url\":\"/category/12194619560008/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"军事\",\"url\":\"/category/12194620354630/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"短篇\",\"url\":\"/category/12194619932744/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"其它分类\",\"url\":\"/category/12194628931656/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"纯爱\",\"url\":\"/category/12194683387974/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\n\t{\"title\":\"完本\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"全部\",\"url\":\"/category/finish/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"原创小说\",\"url\":\"/category/finish/3789627551813/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人衍生\",\"url\":\"/category/finish/3789627568198/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"耽美\",\"url\":\"/category/finish/3468358279237/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"言情\",\"url\":\"/category/finish/3468358291526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人\",\"url\":\"/category/finish/3468358336585/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"综合\",\"url\":\"/category/finish/3468360114248/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"PO18\",\"url\":\"/category/finish/3843818709061/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"古言\",\"url\":\"/category/finish/12194619924552/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现言\",\"url\":\"/category/finish/12194619514950/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"都市\",\"url\":\"/category/finish/12194619465798/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"科幻\",\"url\":\"/category/finish/12194619387973/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"玄幻\",\"url\":\"/category/finish/12194619539526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"仙侠\",\"url\":\"/category/finish/12194619486278/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"轻小说\",\"url\":\"/category/finish/12194619441222/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"幻情\",\"url\":\"/category/finish/12194619592774/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"游戏\",\"url\":\"/category/finish/12194619478086/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"历史\",\"url\":\"/category/finish/12194619564103/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"悬疑\",\"url\":\"/category/finish/12194619699270/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"青春\",\"url\":\"/category/finish/12194619846726/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现实\",\"url\":\"/category/finish/12194620330054/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"武侠\",\"url\":\"/category/finish/12194619519048/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"体育\",\"url\":\"/category/finish/12194619605064/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"奇幻\",\"url\":\"/category/finish/12194619560008/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"军事\",\"url\":\"/category/finish/12194620354630/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"短篇\",\"url\":\"/category/finish/12194619932744/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"其它分类\",\"url\":\"/category/finish/12194628931656/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"纯爱\",\"url\":\"/category/finish/12194683387974/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\n\t{\"title\":\"总榜\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"全部\",\"url\":\"/rank/all/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"原创小说\",\"url\":\"/rank/all/3789627551813/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人衍生\",\"url\":\"/rank/all/3789627568198/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"耽美\",\"url\":\"/rank/all/3468358279237/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"言情\",\"url\":\"/rank/all/3468358291526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人\",\"url\":\"/rank/all/3468358336585/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"综合\",\"url\":\"/rank/all/3468360114248/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"PO18\",\"url\":\"/rank/all/3843818709061/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"古言\",\"url\":\"/rank/all/12194619924552/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现言\",\"url\":\"/rank/all/12194619514950/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"都市\",\"url\":\"/rank/all/12194619465798/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"科幻\",\"url\":\"/rank/all/12194619387973/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"玄幻\",\"url\":\"/rank/all/12194619539526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"仙侠\",\"url\":\"/rank/all/12194619486278/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"轻小说\",\"url\":\"/rank/all/12194619441222/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"幻情\",\"url\":\"/rank/all/12194619592774/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"游戏\",\"url\":\"/rank/all/12194619478086/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"历史\",\"url\":\"/rank/all/12194619564103/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"悬疑\",\"url\":\"/rank/all/12194619699270/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"青春\",\"url\":\"/rank/all/12194619846726/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现实\",\"url\":\"/rank/all/12194620330054/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"武侠\",\"url\":\"/rank/all/12194619519048/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"体育\",\"url\":\"/rank/all/12194619605064/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"奇幻\",\"url\":\"/rank/all/12194619560008/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"军事\",\"url\":\"/rank/all/12194620354630/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"短篇\",\"url\":\"/rank/all/12194619932744/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"其它分类\",\"url\":\"/rank/all/12194628931656/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"纯爱\",\"url\":\"/rank/all/12194683387974/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\n\t{\"title\":\"月榜\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"全部\",\"url\":\"/rank/month/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"原创小说\",\"url\":\"/rank/month/3789627551813/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人衍生\",\"url\":\"/rank/month/3789627568198/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"耽美\",\"url\":\"/rank/month/3468358279237/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"言情\",\"url\":\"/rank/month/3468358291526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人\",\"url\":\"/rank/month/3468358336585/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"综合\",\"url\":\"/rank/month/3468360114248/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"PO18\",\"url\":\"/rank/month/3843818709061/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"古言\",\"url\":\"/rank/month/12194619924552/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现言\",\"url\":\"/rank/month/12194619514950/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"都市\",\"url\":\"/rank/month/12194619465798/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"科幻\",\"url\":\"/rank/month/12194619387973/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"玄幻\",\"url\":\"/rank/month/12194619539526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"仙侠\",\"url\":\"/rank/month/12194619486278/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"轻小说\",\"url\":\"/rank/month/12194619441222/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"幻情\",\"url\":\"/rank/month/12194619592774/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"游戏\",\"url\":\"/rank/month/12194619478086/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"历史\",\"url\":\"/rank/month/12194619564103/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"悬疑\",\"url\":\"/rank/month/12194619699270/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"青春\",\"url\":\"/rank/month/12194619846726/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现实\",\"url\":\"/rank/month/12194620330054/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"武侠\",\"url\":\"/rank/month/12194619519048/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"体育\",\"url\":\"/rank/month/12194619605064/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"奇幻\",\"url\":\"/rank/month/12194619560008/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"军事\",\"url\":\"/rank/month/12194620354630/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"短篇\",\"url\":\"/rank/month/12194619932744/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"其它分类\",\"url\":\"/rank/month/12194628931656/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"纯爱\",\"url\":\"/rank/month/12194683387974/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\n\t{\"title\":\"周榜\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"全部\",\"url\":\"/rank/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\t{\"title\":\"原创小说\",\"url\":\"/rank/3789627551813/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人衍生\",\"url\":\"/rank/3789627568198/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"耽美\",\"url\":\"/rank/3468358279237/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"言情\",\"url\":\"/rank/3468358291526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"同人\",\"url\":\"/rank/3468358336585/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"综合\",\"url\":\"/rank/3468360114248/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"PO18\",\"url\":\"/rank/3843818709061/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"古言\",\"url\":\"/rank/12194619924552/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现言\",\"url\":\"/rank/12194619514950/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"都市\",\"url\":\"/rank/12194619465798/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"科幻\",\"url\":\"/rank/12194619387973/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"玄幻\",\"url\":\"/rank/12194619539526/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"仙侠\",\"url\":\"/rank/12194619486278/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"轻小说\",\"url\":\"/rank/12194619441222/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"幻情\",\"url\":\"/rank/12194619592774/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"游戏\",\"url\":\"/rank/12194619478086/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"历史\",\"url\":\"/rank/12194619564103/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"悬疑\",\"url\":\"/rank/12194619699270/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"青春\",\"url\":\"/rank/12194619846726/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"现实\",\"url\":\"/rank/12194620330054/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"武侠\",\"url\":\"/rank/12194619519048/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"体育\",\"url\":\"/rank/12194619605064/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"奇幻\",\"url\":\"/rank/12194619560008/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"军事\",\"url\":\"/rank/12194620354630/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"短篇\",\"url\":\"/rank/12194619932744/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"其它分类\",\"url\":\"/rank/12194628931656/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t{\"title\":\"纯爱\",\"url\":\"/rank/12194683387974/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "{\n\"User-Agent\": \"Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Mobile/15E148 Snapchat/10.77.5.59 (like Safari/604.1)\"\n}",
    "lastUpdateTime": 1751195896545,
    "respondTime": 6819,
    "ruleBookInfo": {
      "author": ".author@span@a@text",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": ".BGsectionTwo-bottom@html",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": ".newestChapter@span@a@text",
      "name": ".title@text",
      "tocUrl": "text.查看全部章节@href"
    },
    "ruleContent": {
      "content": "@js:\ntry {\n\t// Aes解密\n\tmatchResult = src.match(/html\\(d\\(['\"](.+)['\"],\\s+['\"](.+)['\"]\\)\\);/);\n\tstring = matchResult[1];\n\tcode = java.md5Encode(matchResult[2]);\n\tiv = code.substring(0, 16);\n\tkey = code.substring(16);\n\tresult = java.createSymmetricCrypto(\"AES/CBC/PKCS7Padding\", key, iv).decryptStr(string);\n} catch (err) {\n\t//解密失败使用webView加载重新获取内容\n\tsrc = java.ajax(baseUrl + ',{\"webView\": true}');\n\tresult = java.getString('#C0NTENT@html', src);\n}\nresult"
    },
    "ruleExplore": {
      "author": "p.1@span@a@text",
      "bookList": ".sectionTwo-content@li||.CGsectionTwo-right-content-unit",
      "bookUrl": "p.0@a.0@href||.book_img_name@a@href",
      "intro": "p.2@text",
      "name": "p.0@a.0@text||.book_img_name@a@text"
    },
    "ruleSearch": {
      "author": "tag.span.-1@a@text",
      "bookList": ".SHsectionThree-middle@p",
      "bookUrl": "tag.span.1@a@href",
      "kind": "tag.span.0@a@text",
      "name": "tag.span.1@a@text"
    },
    "ruleToc": {
      "chapterList": "@js:\nfunction isBase64(t){return\"string\"==typeof t&&0!==t.length&&/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}\nfunction parse(html, ys, num) {\n    let a = org.jsoup.Jsoup.parse(html);\n    let b = Array.from(a.selectFirst(ys).attributes());\n    return b[num - 1]?.toString().match(/\"(.+)\"/)?.[1];\n}\n(() => {\n    let od, sd;\n    x = Array.from(java.getElements(\"class.BCsectionTwo-top-chapter\"));\n\n    od = src.match(/originalOrder = (\\[.+?\\])/);\n    sd = x.map((c) => {\n        return parse(c, \"li\", 3);\n    });\n    if (od || sd) {\n        if (od) {\n            od = JSON.parse(od[1]).reduce((arr, item) => {\n                arr.push(item + 1);\n                return arr;\n            }, []);\n            x = x.map((item) => ({\n                title:\n                    item.select(\"a\").attr(\"data-real\") != \"\"\n                        ? item.select(\"a\").attr(\"data-real\")\n                        : item.select(\"a\").text(),\n                href: item.select(\"a\").attr(\"href\")\n            }));\n        } else if (sd) {\n            x = x.map((item) => {\n                _3 = parse(item, \"li>a\", 3);\n                _4 = parse(item, \"li>a\", 4);\n                title = isBase64(_3) === true ? _4 : _3;\n                href = isBase64(_3) === true ? _3 : _4;\n                return {\n                    title: title,\n                    href: java.base64Decode(href)\n                };\n            });\n        }\n        sot = od || sd;\n        return x.sort((a, b) => {\n            ia = x.indexOf(a);\n            ib = x.indexOf(b);\n            return sot[ia] - sot[ib];\n        });\n    }\n\n    return x.map((item) => ({\n        title: item.select(\"a\").text(),\n        href: item.select(\"a\").attr(\"href\")\n    }));\n})();",
      "chapterName": "title",
      "chapterUrl": "href",
      "nextTocUrl": "text.尾页@href@js:\ntry {\n\tmaxPage = 0\n\ttempUrl = String(result[0]).replace(/\\/(\\d+)\\.html$/, (_match, _$1) => {\n\t\tmaxPage = _$1\n\t\treturn '/$page.html'\n\t})\n\tresult = []\n\tfor (let i = 2; i <= maxPage; i++) {\n\t\tresult.push(tempUrl.replace(/\\$page/, i))\n\t}\n\tresult\n} catch (err) {\n\t[]\n}"
    },
    "searchUrl": "search/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "@MR.无名",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "酷酷看书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.kuku3.com/",
    "customButton": false,
    "customOrder": 116,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js: var result = [];\njava.toast(\"🔥动态获取发现中……\");\nvar push=(title,url,size)=>result.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\nvar top = java.ajax(\"https://www.kuku3.com/rank\");\nvar tag = java.ajax(\"https://www.kuku3.com/quanban/sort/\")\nif (top&&tag) {\na=org.jsoup.Jsoup.parse(top).select(\".sortChannel_nav a\");\nb=org.jsoup.Jsoup.parse(tag).select(\".sortChannel_nav a\");\npush(\"排行榜\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.4;\n  //url=String(url).replace(\"1\",\"{{page}}\")\n        push(title,url,size)\n    };\n    push(\"分类\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n        size=0.25\n        if (url.endsWith(\"sort/\")) {\n            url=url+\"1\"\n            url=String(url).replace(\"1\",\"{{page}}\")\n            push(title,url,size)\n        } else if (url.endsWith(\"sort/1/1/\")) {\n            url=String(url).replace(url,\"sort/1/{{page}}\")\n            push(title,url,size)\n        } else {\n            url=String(url).replace(\"1\",\"{{page}}\")\n            push(title,url,size)\n    }}\n      } else { \n      java.toast(\"🚫发现获取失败……\");\n}\nJSON.stringify(result);",
    "lastUpdateTime": 1733846548929,
    "respondTime": 4395,
    "ruleBookInfo": {
      "author": ".author@text##作者：",
      "coverUrl": "img@src",
      "init": ".synopsisArea_detail",
      "intro": ".review@text",
      "kind": ".sort@text##类别：",
      "lastChapter": "a[0]@text",
      "name": "{{book.name}}",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.chaptercontent@p@text##\\(\\'|\\', \\'\\'\\)|请收藏本站.*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": ".author@text##作者：",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "intro": ".review@text##简介：",
      "name": ".title@text"
    },
    "ruleSearch": {
      "author": ".author[0]@text##作者：",
      "bookList": ".bookbox",
      "bookUrl": "a[1]@href",
      "checkKeyWord": "我的",
      "coverUrl": "img@src",
      "kind": ".author[1]@text##类型：",
      "lastChapter": "a[2]@text",
      "name": "a[1]@text"
    },
    "ruleToc": {
      "chapterList": ".directoryArea@p",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}\n/search/,{\n\"method\":\"POST\",\n\"body\":\"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "源名：七猫\n来源：风停在了窗边\n修复：",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "七猫小说（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api-bc.wtzw.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 117,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "现代言情::https://www.baidu.com/category/gender=2&category_id=260&need_filters=1&page={{page}}&need_category=0\n古代言情::https://www.baidu.com/category/gender=2&category_id=259&need_filters=1&page={{page}}&need_category=0\n青春文学::https://www.baidu.com/category/gender=2&category_id=265&need_filters=1&page={{page}}&need_category=0\n影视原著::https://www.baidu.com/tag/need_filters=1&tag_id=539&gender=2&page={{page}}\n悬疑推理::https://www.baidu.com/category/gender=2&category_id=262&need_filters=1&page={{page}}&need_category=0\n武侠小说::https://www.baidu.com/category/gender=2&category_id=289&need_filters=1&page={{page}}&need_category=0\n科幻未来::https://www.baidu.com/category/gender=2&category_id=261&need_filters=1&page={{page}}&need_category=0\n历史小说::https://www.baidu.com/category/gender=2&category_id=264&need_filters=1&page={{page}}&need_category=0\n仙侠奇缘::https://www.baidu.com/category/gender=2&category_id=276&need_filters=1&page={{page}}&need_category=0\n仙侠玄幻::https://www.baidu.com/category/gender=2&category_id=288&need_filters=1&page={{page}}&need_category=0\n现实小说::https://www.baidu.com/category/gender=2&category_id=266&need_filters=1&page={{page}}&need_category=0\n现代军旅::https://www.baidu.com/category/gender=2&category_id=290&need_filters=1&page={{page}}&need_category=0\n文学艺术::https://www.baidu.com/category/gender=2&category_id=240&need_filters=1&page={{page}}&need_category=0\n人物传记::https://www.baidu.com/category/gender=2&category_id=247&need_filters=1&page={{page}}&need_category=0\n人文科社::https://www.baidu.com/category/gender=2&category_id=241&need_filters=1&page={{page}}&need_category=0\n少儿教育::https://www.baidu.com/category/gender=2&category_id=258&need_filters=1&page={{page}}&need_category=0\n经管励志::https://www.baidu.com/category/gender=2&category_id=242&need_filters=1&page={{page}}&need_category=0\n经典文学::https://www.baidu.com/category/gender=2&category_id=243&need_filters=1&page={{page}}&need_category=0\n历史::https://www.baidu.com/category/gender=2&category_id=56&need_filters=1&page={{page}}&need_category=1\n游戏::https://www.baidu.com/category/gender=2&category_id=75&need_filters=1&page={{page}}&need_category=1\n科幻::https://www.baidu.com/category/gender=2&category_id=64&need_filters=1&page={{page}}&need_category=1\n体育::https://www.baidu.com/category/gender=2&category_id=206&need_filters=1&page={{page}}&need_category=1\n影视::https://www.baidu.com/tag/need_filters=1&tag_id=539&gender=2&page={{page}}\n穿越::https://www.baidu.com/tag/need_filters=1&tag_id=373&gender=2&page={{page}}\n鉴宝::https://www.baidu.com/tag/need_filters=1&tag_id=47&gender=2&page={{page}}\n重生::https://www.baidu.com/tag/need_filters=1&tag_id=779&gender=2&page={{page}}\n血脉::https://www.baidu.com/tag/need_filters=1&tag_id=426&gender=2&page={{page}}\n签到::https://www.baidu.com/tag/need_filters=1&tag_id=565&gender=2&page={{page}}\n复仇::https://www.baidu.com/tag/need_filters=1&tag_id=790&gender=2&page={{page}}\n丹药::https://www.baidu.com/tag/need_filters=1&tag_id=428&gender=2&page={{page}}\n医生::https://www.baidu.com/tag/need_filters=1&tag_id=156&gender=2&page={{page}}\n战神::https://www.baidu.com/tag/need_filters=1&tag_id=527&gender=2&page={{page}}\n女婿::https://www.baidu.com/tag/need_filters=1&tag_id=36&gender=2&page={{page}}\n皇帝::https://www.baidu.com/tag/need_filters=1&tag_id=62&gender=2&page={{page}}\n弃少::https://www.baidu.com/tag/need_filters=1&tag_id=525&gender=2&page={{page}}\n热血::https://www.baidu.com/tag/need_filters=1&tag_id=1&gender=2&page={{page}}\n爽文::https://www.baidu.com/tag/need_filters=1&tag_id=570&gender=2&page={{page}}\n现实::https://www.baidu.com/tag/need_filters=1&tag_id=12&gender=2&page={{page}}\n悬疑流::https://www.baidu.com/tag/need_filters=1&tag_id=27&gender=2&page={{page}}\n女总裁::https://www.baidu.com/tag/need_filters=1&tag_id=89&gender=2&page={{page}}\n二次元::https://www.baidu.com/category/gender=2&category_id=207&need_filters=1&page={{page}}&need_category=1\n无限流::https://www.baidu.com/tag/need_filters=1&tag_id=557&gender=2&page={{page}}\n强者回归::https://www.baidu.com/tag/need_filters=1&tag_id=402&gender=2&page={{page}}\n都市人生::https://www.baidu.com/category/gender=2&category_id=203&need_filters=1&page={{page}}&need_category=1\n异术超能::https://www.baidu.com/category/gender=2&category_id=219&need_filters=1&page={{page}}&need_category=1\n玄幻奇幻::https://www.baidu.com/category/gender=2&category_id=202&need_filters=1&page={{page}}&need_category=1\n武侠仙侠::https://www.baidu.com/category/gender=2&category_id=205&need_filters=1&page={{page}}&need_category=1\n奇闻异事::https://www.baidu.com/category/gender=2&category_id=204&need_filters=1&page={{page}}&need_category=1\n短篇::https://www.baidu.com/tag/need_filters=1&tag_id=541&gender=2&page={{page}}\n重生::https://www.baidu.com/tag/need_filters=1&tag_id=779&gender=2&page={{page}}\n女强::https://www.baidu.com/tag/need_filters=1&tag_id=620&gender=2&page={{page}}\n年下::https://www.baidu.com/tag/need_filters=1&tag_id=631&gender=2&page={{page}}\n空间::https://www.baidu.com/tag/need_filters=1&tag_id=345&gender=2&page={{page}}\n穿越::https://www.baidu.com/tag/need_filters=1&tag_id=373&gender=2&page={{page}}\n隐婚::https://www.baidu.com/tag/need_filters=1&tag_id=481&gender=2&page={{page}}\n系统::https://www.baidu.com/tag/need_filters=1&tag_id=782&gender=2&page={{page}}\n快穿::https://www.baidu.com/tag/need_filters=1&tag_id=335&gender=2&page={{page}}\n虐渣::https://www.baidu.com/tag/need_filters=1&tag_id=739&gender=2&page={{page}}\n皇后::https://www.baidu.com/tag/need_filters=1&tag_id=106&gender=2&page={{page}}\n王爷::https://www.baidu.com/tag/need_filters=1&tag_id=125&gender=2&page={{page}}\n学霸::https://www.baidu.com/tag/need_filters=1&tag_id=781&gender=2&page={{page}}\n毒妃::https://www.baidu.com/tag/need_filters=1&tag_id=109&gender=2&page={{page}}\n校草::https://www.baidu.com/tag/need_filters=1&tag_id=701&gender=2&page={{page}}\n女配::https://www.baidu.com/tag/need_filters=1&tag_id=191&gender=2&page={{page}}\n甜宠::https://www.baidu.com/tag/need_filters=1&tag_id=21&gender=2&page={{page}}\n搞笑::https://www.baidu.com/tag/need_filters=1&tag_id=788&gender=2&page={{page}}\n虐恋::https://www.baidu.com/tag/need_filters=1&tag_id=16&gender=2&page={{page}}\n治愈::https://www.baidu.com/tag/need_filters=1&tag_id=17&gender=2&page={{page}}\n现代言情::https://www.baidu.com/category/gender=2&category_id=1&need_filters=1&page={{page}}&need_category=1\n总裁豪门::https://www.baidu.com/category/gender=2&category_id=8&need_filters=1&page={{page}}&need_category=0\n古代言情::https://www.baidu.com/category/gender=2&category_id=2&need_filters=1&page={{page}}&need_category=1\n种田经商::https://www.baidu.com/category/gender=2&category_id=16&need_filters=1&page={{page}}&need_category=0\n宫闱宅斗::https://www.baidu.com/category/gender=2&category_id=209&need_filters=1&page={{page}}&need_category=0\n幻想言情::https://www.baidu.com/category/gender=2&category_id=4&need_filters=1&page={{page}}&need_category=1\n奇闻异事::https://www.baidu.com/category/gender=2&category_id=204&need_filters=1&page={{page}}&need_category=1\n日久生情::https://www.baidu.com/tag/need_filters=1&tag_id=700&gender=2&page={{page}}\n影视原著::https://www.baidu.com/tag/need_filters=1&tag_id=539&gender=2&page={{page}}",
    "header": "",
    "lastUpdateTime": 1735067853611,
    "loginUrl": "",
    "respondTime": 4226,
    "ruleBookInfo": {
      "author": "author",
      "coverUrl": "image_link",
      "init": "data.book",
      "intro": "&nbsp;&nbsp;🔖更新时间：{{java.timeFormat(java.getString('$.update_time')*1000)}}\t{{'\\n&lrm;\\n'}}🏷️ 标签：{{$.book_tag_list[*].title&&$.category_over_words##・|\\s##，}}{{'\\n'+'​'}}\n\n{{$.intro}}\n{{'\\n&lrm;\\n'}}📍版权来源：{{$.statement##如有疑问可联系:fawu@qimao.com或客服QQ:3598987377}}",
      "kind": "book_tag_list[*].title##\\s##，",
      "lastChapter": "{{$.latest_chapter_title}} • {{java.timeFormat(java.getString('$.update_time')*1000)}}\n<js>result.replace(/\\s\\d+:\\d+/,'')</js>\n<js>result.replace(/\\//g,'-')</js>\n<js>##[\\(（【].*?[求更谢乐发订/万字票合补加].*?[】）\\)]</js>",
      "name": "title@put:{bid:id}",
      "tocUrl": "@js:\nsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':{{$.id}}}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\nparams['sign']=paramSign\n\"https://api-ks.wtzw.com/api/v1/chapter/chapter-list?\"+urlEncode(params)+\",\"+java.get(\"headers\")",
      "wordCount": "words_num"
    },
    "ruleContent": {
      "content": "@js:\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto.spec,\n    Packages.javax.crypto,\n    Packages.java.util\n);\nwith(javaImport) {\n    function decode(content) {\n        var ivEncData = Base64.getDecoder().decode(String(content));\n        var key = SecretKeySpec(String(\"242ccb8230d709e1\").getBytes(), \"AES\");\n        var iv = IvParameterSpec(Arrays.copyOfRange(ivEncData, 0, 16));\n        var chipher = Cipher.getInstance(\"AES/CBC/PKCS5Padding\");\n        chipher.init(2, key, iv);\n        return String(chipher.doFinal(Arrays.copyOfRange(ivEncData, 16, ivEncData.length)));\n    }\n}\n\n\nsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':String(java.get('bid')),'chapterId':String(baseUrl.split(\"/\").pop())}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }\n  }\n  return paramStr;\n};\n\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\nparams['sign']=paramSign\nurl=\"https://api-ks.wtzw.com/api/v1/chapter/content?\"+urlEncode(params)\ndecode(JSON.parse(java.ajax(url+','+java.get(\"headers\"))).data.content)\n\n",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "<js>\ngender=baseUrl.match(/gender=(\\d+)/)?baseUrl.match(/gender=(\\d+)/)[1]:\"\"\ncategory_id=baseUrl.match(/category_id=(\\d+)/)?baseUrl.match(/category_id=(\\d+)/)[1]:\"\"\nneed_filters=baseUrl.match(/need_filters=(\\d+)/)?baseUrl.match(/need_filters=(\\d+)/)[1]:\"\"\npage=baseUrl.match(/page=(\\d+)/)?baseUrl.match(/page=(\\d+)/)[1]:\"\"\nneed_category=baseUrl.match(/need_category=(\\d+)/)?baseUrl.match(/need_category=(\\d+)/)[1]:\"\"\ntag_id=baseUrl.match(/tag_id=(\\d+)/)?baseUrl.match(/tag_id=(\\d+)/)[1]:\"\"\nsign_key='d3dGiJc651gSQ8w1'\nheaders={'app-version':'51110','platform':'android','reg':'0','AUTHORIZATION':'','application-id':'com.****.reader','net-env':'1','channel':'unknown','qm-params':''}\nheaders['sign']=String(java.md5Encode(Object.keys(headers).sort().reduce((pre,n)=>pre+n+'='+headers[n],'')+sign_key))\n\n\nvar urlEncode = function (param, key, encode) {\n  if(param==null) return '';\n  var paramStr = '';\n  var t = typeof (param);\n  if (t == 'string' || t == 'number' || t == 'boolean') {\n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);\n  } else {\n    for (var i in param) {\n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);\n      paramStr += urlEncode(param[i], k, encode);\n    }\n  }\n  return paramStr;\n};\n\nvar category = function () {\n  params={'gender':gender,'category_id':category_id,'need_filters':need_filters,'page':page,'need_category':need_category}\n  params['sign']=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\n  url=\"https://api-bc.wtzw.com/api/v4/category/get-list?\"+urlEncode(params)\n  return java.ajax(url+','+java.put(\"headers\",JSON.stringify({\"headers\":headers})))\n};\n\nvar tag = function () {\n  params={'gender':gender,'need_filters':need_filters,'page':page,'tag_id':tag_id}\n  params['sign']=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\n  url=\"https://api-bc.wtzw.com/api/v4/tag/index?\"+urlEncode(params)\n  return java.ajax(url+','+java.put(\"headers\",JSON.stringify({\"headers\":headers})))\n};\n\n\nif(baseUrl.match(/category/)){\n  category()\n}else {\n  tag()\n}\n</js>\n$.data.books",
      "bookUrl": "@js:\nsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':{{$.id}},'imei_ip':'2937357107','teeny_mode':0}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\nparams['sign']=paramSign\n\"https://api-bc.wtzw.com/api/v4/book/detail?\"+urlEncode(params)+\",\"+java.get(\"headers\")",
      "coverUrl": "$.image_link",
      "intro": "$.intro",
      "kind": "$.ptags",
      "name": "$.title",
      "wordCount": "$.words_num"
    },
    "ruleSearch": {
      "author": "original_author",
      "bookList": "data.books",
      "bookUrl": "@js:\nsign_key='d3dGiJc651gSQ8w1'\n\nparams={'id':{{$.id}},'imei_ip':'2937357107','teeny_mode':0}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\nparams['sign']=paramSign\n\"/api/v4/book/detail?\"+urlEncode(params)+\",\"+java.get(\"headers\")",
      "coverUrl": "image_link",
      "intro": "intro",
      "kind": "ptags",
      "lastChapter": "",
      "name": "original_title",
      "wordCount": "words_num"
    },
    "ruleToc": {
      "chapterList": "data.chapter_lists",
      "chapterName": "title##[\\(（【].*?[求更谢乐发订/万字票合补加].*?[】）\\)]",
      "chapterUrl": "id",
      "updateTime": "{{$.words}}字"
    },
    "searchUrl": "@js:\nsign_key='d3dGiJc651gSQ8w1'\n\nheaders={'app-version':'51110','platform':'android','reg':'0','AUTHORIZATION':'','application-id':'com.****.reader','net-env':'1','channel':'unknown','qm-params':''}\n\nparams={'gender':'3','imei_ip':'2937357107','page':page,'wd':key}\n\nvar urlEncode = function (param, key, encode) {  \n  if(param==null) return '';  \n  var paramStr = '';  \n  var t = typeof (param);  \n  if (t == 'string' || t == 'number' || t == 'boolean') {  \n    paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param);  \n  } else {  \n    for (var i in param) {  \n      var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);  \n      paramStr += urlEncode(param[i], k, encode);  \n    }  \n  }  \n  return paramStr;  \n};\n\nheaderSign=String(java.md5Encode(Object.keys(headers).sort().reduce((pre,n)=>pre+n+'='+headers[n],'')+sign_key))\nparamSign=String(java.md5Encode(Object.keys(params).sort().reduce((pre,n)=>pre+n+'='+params[n],'')+sign_key))\nheaders['sign']=headerSign\nparams['sign']=paramSign\nbody=urlEncode(params)\n\n\"/api/v5/search/words?\" +body+\",\"+java.put(\"headers\",JSON.stringify({\"headers\":headers}))",
    "weight": 0
  },
  {
    "bookSourceComment": "10.3日更新：\n重要：必要更新，适配兼容新后端版本，后续会移除对旧后端版本的支持，未更新会出现无法使用的情况\n1.新增七猫短剧\n2.优化番茄短剧和七猫短剧专属播放器\n\n注：阅读请使用最新测试版\n1.所有源站每20秒最多15章，建议预下载调到0-3之间[白名单无请求限制]\n2.自定义源站示例：919,思兔  多个源站用英文,号分隔\n源站名参考 登录URL //书源配置列表 v参数\n\n3.源站带有❇️图标表示只能指定或@搜索\n\n4.搜索模式：\n书名@来源 多个来源用英文,号分隔\n示例： \n系统@番茄小说，多个源站使用英文,号分隔\n书名@类型 返回对应类型所有源站数据，可直接使用@方式搜索或者点击登陆切换模式\n示例： \n系统@小说  听书  漫画  短剧等\n默认书名排序\n指定作者优先：\n作者名@作者   作者名@作者,源站",
    "bookSourceGroup": "有声,短剧,漫画",
    "bookSourceName": "云端聚合（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://read.search.qingread.icu",
    "bookUrlPattern": "https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)*qingread\\.icu\\/details.*",
    "customButton": false,
    "customOrder": 118,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nlet config = (() => {\n    try {\n        let cfg = JSON.parse(source.getVariable())[0] || {};\n        if (!cfg.host || !cfg.gender) {\n            cfg = {gender: \"boy\", host: getServerHost()};\n            source.setVariable(JSON.stringify([cfg]));\n            java.toast(\"配置初始化完成\");\n        }\n        return cfg;\n    } catch(e) {\n        let cfg = {gender: \"boy\", host: getServerHost()};\n        source.setVariable(JSON.stringify([cfg]));\n        return cfg;\n    }\n})();\n\nlet obj = (title, url, type) => ({\n  title: title,\n  url: url,\n  style: { layout_flexGrow: 1, layout_flexBasisPercent: type }\n});\n\nlet sort = [];\nlet push = (title, url, type) => sort.push(obj(title, url, type));\n\nlet currentType = \"\";\nlet currentSource = \"\";\ntry {\n  let vArray = JSON.parse(source.getVariable());\n  if (vArray.length > 0) {\n    let v = vArray[0];\n    currentType = v.gender || \"\";\n    currentSource = v.source || \"\";\n  }\n} catch(e) {\n  currentType = \"\";\n  currentSource = \"\";\n}\n\nconst getGenderDisplayName = (gender) => {\n  if (gender == \"boy\") return \"男频\";\n  if (gender == \"girl\") return \"女频\";\n  if (gender == \"recommend\") return \"推荐\";\n  return gender;\n};\n\nconst genderDisplay = getGenderDisplayName(currentType);\n\npush(`当前为【${currentSource || \"💞推 荐💞\"}】${genderDisplay ? `【${genderDisplay}】` : ''}`, \"\", 1);\n\nconst excludedSources = [\"小说\", \"听书\", \"漫画\", \"视频\", \"短剧\", \"音频\"];\n\nif (currentSource && currentSource !== \"推荐\" && !excludedSources.includes(currentSource)) {\n  try {\n    let apiUrl = `${getServerHost()}/type_api?source=${currentSource}`;\n    if (currentType) {\n      apiUrl += `&gender=${currentType}`;\n    }\n    \n    let response = JSON.parse(java.ajax(apiUrl));\n    \n    if (response.data && response.data.found) {\n      response.data.found.forEach(item => {\n        let finalUrl = \"\";\n        if (item.url) {\n          finalUrl = `${getServerHost()}/type_api?source=${currentSource}&page={{page}}&url=${item.url}`;\n          if (currentType) {\n            finalUrl += `&gender=${currentType}`;\n          }\n        }\n        sort.push({\n          title: item.title,\n          url: finalUrl,\n          style: item.style || { layout_flexGrow: 1, layout_flexBasisPercent: 0.29 }\n        });\n      });\n    } else {\n      push(`【${currentSource}】${genderDisplay ? `【${genderDisplay}】` : ''}暂无数据`, \"\", 1);\n    }\n  } catch(e) {\n    push(`【${currentSource}】${genderDisplay ? `【${genderDisplay}】` : ''}暂无数据`, \"\", 1);\n  }\n} \nelse {\n  let maleCategories = [];\n  try {\n    let maleResponse = JSON.parse(java.ajax(getServerHost() +\"/api?action=subcategories&top_category_id=1\"));\n    maleCategories = maleResponse.data;\n  } catch(e) {}\n\n  let femaleCategories = [];\n  try {\n    let femaleResponse = JSON.parse(java.ajax(getServerHost() +\"/api?action=subcategories&top_category_id=2\"));\n    femaleCategories = femaleResponse.data;\n  } catch(e) {}\n\n  if (maleCategories.length > 0) {\n    push('♂️ 男频推荐 ♂️', \"\", 1);\n    maleCategories.forEach(cat => {\n      push(cat.name, `${getServerHost()}/api?action=books&sub_category_id=${cat.id}&limit=20&page={{page}}`, 0.29);\n    });\n  } else {\n    push('♂️ 男频分类加载失败', \"\", 1);\n  }\n\n  if (femaleCategories.length > 0) {\n    push('♀️ 女频推荐 ♀️', \"\", 1);\n    femaleCategories.forEach(cat => {\n      push(cat.name, `${getServerHost()}/api?action=books&sub_category_id=${cat.id}&limit=20&page={{page}}`, 0.29);\n    });\n  } else {\n    push('♀️ 女频分类加载失败', \"\", 1);\n  }\n}\n\nJSON.stringify(sort);\n</js>",
    "header": "{\"X-Novel-Token\": \"QING_READ_2025\"}",
    "jsLib": "function getServerHost() {\n\tlet { source } = this;\n    try {\n        const config = JSON.parse(source.getVariable());\n        return config?.[0]?.host || source.bookSourceUrl;\n    } catch(e) {\n        return source.bookSourceUrl;\n    }\n}\n\n\nfunction getSessionId() {\n    const cookieSessionId = String(this.cookie.getKey(\"fanqienovel.com\", \"sessionid\"));\n    if (cookieSessionId && cookieSessionId !== \"null\" && cookieSessionId !== \"undefined\") {\n        return cookieSessionId;\n    }\n    \n    return \"\";\n}",
    "lastUpdateTime": 1759571248956,
    "loginUi": "[{\n    \"name\": \"🔑获取密钥\",\n    \"type\": \"button\",\n    \"action\": \"key()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"🔄密钥查询\",\n    \"type\": \"button\",\n    \"action\": \"cx()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"☁️聚合搜索\",\n    \"type\": \"button\",\n    \"action\": \"sou1()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"☕喝杯咖啡\",\n    \"type\": \"button\",\n    \"action\": \"coffee()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"密钥\",\n    \"type\": \"password\",\n    \"action\": \"\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"自定义源站\",\n    \"type\": \"text\"\n}, {\n    \"name\": \"🎚服务器切换\",\n    \"type\": \"button\",\n    \"action\": \"sethost()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"🧭书源更新\",\n    \"type\": \"button\",\n    \"action\": \"version()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"❇️ 查看推荐 ❇️\",\n    \"type\": \"button\",\n    \"action\": \"recommend()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"💞 找书/推荐 💞\",\n    \"type\": \"button\",\n    \"action\": \"tj()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"🧸男 频🧸\",\n    \"type\": \"button\",\n    \"action\": \"boy()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.45\n    }\n}, {\n    \"name\": \"🎀女 频🎀\",\n    \"type\": \"button\",\n    \"action\": \"girl()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.45\n    }\n}, {\n    \"name\": \"↓   切换/查询当前模式   ↓\",\n    \"type\": \"button\",\n    \"action\": \"get_cx()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 1\n    }\n}, {\n    \"name\": \"📖小说模式\",\n    \"type\": \"button\",\n    \"action\": \"type1()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"🌈漫画模式\",\n    \"type\": \"button\",\n    \"action\": \"type3()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.4\n    }\n}, {\n    \"name\": \"↓   指   定   源   站   ↓\",\n    \"type\": \"button\",\n    \"action\": \"\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 1\n    }\n}, {\n    \"name\": \"久久小说\",\n    \"type\": \"button\",\n    \"action\": \"sou4()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"星星小说\",\n    \"type\": \"button\",\n    \"action\": \"sou3()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"阅友小说\",\n    \"type\": \"button\",\n    \"action\": \"sou6()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"三七轻小说\",\n    \"type\": \"button\",\n    \"action\": \"sou7()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"⚡霹雳书坊\",\n    \"type\": \"button\",\n    \"action\": \"sou2()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"耽美小说\",\n    \"type\": \"button\",\n    \"action\": \"sou8()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"🌸甜梦文库\",\n    \"type\": \"button\",\n    \"action\": \"sou10()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"二三小说\",\n    \"type\": \"button\",\n    \"action\": \"sou5()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"919言情\",\n    \"type\": \"button\",\n    \"action\": \"sou11()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"笑佳人文学\",\n    \"type\": \"button\",\n    \"action\": \"sou12()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"藏家小说\",\n    \"type\": \"button\",\n    \"action\": \"sou13()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"腐小说\",\n    \"type\": \"button\",\n    \"action\": \"sou14()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"随心看吧\",\n    \"type\": \"button\",\n    \"action\": \"sou15()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"全面漫画\",\n    \"type\": \"button\",\n    \"action\": \"sou17()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"💥BL文库\",\n    \"type\": \"button\",\n    \"action\": \"sou16()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"夜伴书屋\",\n    \"type\": \"button\",\n    \"action\": \"sou18()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"👤趣书网\",\n    \"type\": \"button\",\n    \"action\": \"sou20()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"思兔阅读\",\n    \"type\": \"button\",\n    \"action\": \"sou19()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"🌈包子漫画\",\n    \"type\": \"button\",\n    \"action\": \"sou21()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}, {\n    \"name\": \"歪瑞古德\",\n    \"type\": \"button\",\n    \"action\": \"sou22()\",\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": 0.25\n    }\n}]",
    "loginUrl": "// 不要改动版本号,影响更新\nconst LOCAL_VERSION = \"4.1\";\n\nvar hosts = [\n    \"https://read.search.qingread.icu\",\n    \"http://154.64.253.94:8887\",\n    \"https://search.qingread.icu\",\n    \"http://searchs.qingread.icu:6789\"\n];\n\n//书源配置列表\nvar sourceList = [\n    {n:\"sou1\", v:null, m:\"☁️聚合搜索\"},\n    {n:\"sou2\", v:\"霹雳书坊\", m:\"霹雳书坊\"},\n    {n:\"sou3\", v:\"星星\", g:\"boy\", m:\"星星小说\"},\n    {n:\"sou4\", v:\"久久\", m:\"久久小说\"},\n    {n:\"sou5\", v:\"二三小说\", m:\"二三小说\"},\n    {n:\"sou6\", v:\"阅友\", m:\"阅友小说\"},\n    {n:\"sou7\", v:\"三七轻小说\", m:\"三七轻小说\"},\n    {n:\"sou8\", v:\"耽美小说\", g:\"girl\", m:\"耽美小说\"},\n    {n:\"sou9\", v:\"读小说\", m:\"读小说\"},\n    {n:\"sou10\", v:\"甜梦文库\", g:\"girl\", m:\"甜梦文库\"},\n    {n:\"sou11\", v:\"919\", m:\"919言情\"},\n    {n:\"sou12\", v:\"笑佳人\", m:\"笑佳人文学\"},\n    {n:\"sou13\", v:\"藏家\", m:\"藏家小说\"},\n    {n:\"sou14\", v:\"腐小说\", g:\"girl\", m:\"腐小说\"},\n    {n:\"sou15\", v:\"随心看\", m:\"随心看吧\"},\n    {n:\"sou16\", v:\"bl文库\", m:\"Bl文库\"},\n    {n:\"sou17\", v:\"全面漫画\", g:\"boy\", m:\"全面漫画\"},\n    {n:\"sou18\", v:\"夜伴书屋\", m:\"夜伴书屋\"},\n    {n:\"sou19\", v:\"思兔\", m:\"思兔\"},\n    {n:\"sou20\", v:\"趣书网\", m:\"趣书网\"},\n    {n:\"sou21\", v:\"包子漫画\", g:\"boy\", m:\"包子漫画\"},\n    {n:\"sou22\", v:\"歪瑞古德\", g:\"boy\", m:\"歪瑞古德\"},\n    {n:\"type1\", v:\"小说\", m:\"小说模式\"},\n    {n:\"type3\", v:\"漫画\", m:\"漫画模式\"}\n];\n\nfunction hasValidCustomSource() {\n    const value = (source.getLoginInfoMap())['自定义源站'];\n    return !(value == null || value === undefined || value == \"\" || String(value).trim() == \"\");\n}\n\nfunction showCustomSourceAlert() {\n    const customSource = (source.getLoginInfoMap() || {})['自定义源站'];\n    java.toast(\n        \"\\n⚠️ 自定义源站配置提醒 ⚠️\\n\" +\n        \"──────────────────\\n\" +\n        \"检测到已设置自定义源站: \\n✨\" +\n        \"【\" + (customSource || \"空值\") + \"】✨\\n\" +\n        \"──────────────────\\n\" +\n        \"请前往「书源登录」清除配置\\n\" +\n        \"才能使指定源站切换生效\"\n    );\n}\n\nfunction updateConfig(key, value, message, gender) {\n    if (key == \"source\" && hasValidCustomSource()) {\n        showCustomSourceAlert();\n        return;\n    }\n    \n    try {\n        var config = JSON.parse(source.getVariable());\n        if (!config || !Array.isArray(config) || config.length === 0) {\n            config = [{}];\n        }\n        config[0][key] = value;\n        if (gender !== undefined) {\n            config[0][\"gender\"] = gender;\n        } else if (key == \"source\") {\n        }\n\nsource.setVariable(JSON.stringify(config));\n        java.toast(message || \"设置已更新\");\n    } catch(e) {\n        var newConfig = {[key]: value};\n        if (gender !== undefined) {\n            newConfig[\"gender\"] = gender;\n        }\n        source.setVariable(JSON.stringify([newConfig]));\n        java.toast(message || \"初始化设置\");\n    }\n}\n\nthis.sethost = function() {\n    try {\n        var config = JSON.parse(source.getVariable());\n        if (!config || !Array.isArray(config) || config.length === 0) {\n            config = [{host: hosts[0], localVersion: LOCAL_VERSION}];\n        }\n        \n        if (hosts.length <= 1) {\n            if (!config[0].host) {\n                config[0].host = hosts[0];\n            }\n            if (!config[0].localVersion) {\n                config[0].localVersion = LOCAL_VERSION;\n            }\n            source.setVariable(JSON.stringify(config));\n            java.toast(\"当前服务器：\" + config[0].host);\n            return;\n        }\n\n        var currentHost = config[0].host || hosts[0];\n        var currentIndex = hosts.indexOf(currentHost);\n        var newIndex = (currentIndex + 1) % hosts.length;\n        var newHost = hosts[newIndex];\n        \n        config[0].host = newHost;\n        if (!config[0].localVersion) {\n            config[0].localVersion = LOCAL_VERSION;\n        }\n        source.setVariable(JSON.stringify(config));\n        java.toast(\"切换到：\" + newHost);\n    } catch(e) {\n        source.setVariable(JSON.stringify([{host: hosts[0], localVersion: LOCAL_VERSION}]));\n        java.toast(\"已初始化：\" + hosts[0]);\n    }\n};\n\nfor (var i = 0; i < sourceList.length; i++) {\n    (function() {\n        var s = sourceList[i];\n        this[s.n] = function() {\n            if (hasValidCustomSource()) {\n                showCustomSourceAlert();\n                return;\n            } if (s.g) {\n                updateConfig(\"source\", s.v, \"\\n已切换\" + (s.v ? '到❇️' : '') + s.m +\"❇️\\n刷新发现页生效\", s.g);\n            } else {\n                updateConfig(\"source\", s.v, \"\\n已切换\" + (s.v ? '到❇️' : '') + s.m +\"❇️\\n刷新发现页生效\");\n            }\n        };\n    }).call(this);\n}\n\nfunction get_cx() {\n    try {\n        var configStr = source.getVariable();\n        if (!configStr || configStr.trim() == \"\") {\n            configStr = JSON.stringify([{host: hosts[0], localVersion: LOCAL_VERSION}]);\n            source.setVariable(configStr);\n        }\n        \n        var config = JSON.parse(configStr);\n        if (!config || !Array.isArray(config) || config.length === 0) {\n            config = [{host: hosts[0], localVersion: LOCAL_VERSION}]; source.setVariable(JSON.stringify(config)); }\n        if (!config[0].host) {\n            config[0].host = hosts[0]; source.setVariable(JSON.stringify(config)); }\n        if (!config[0].localVersion) {\n            config[0].localVersion = LOCAL_VERSION; source.setVariable(JSON.stringify(config)); }\n        var currentHost = config[0].host;\n        var currentSource = config[0].source === null || config[0].source === \"\" \n            ? \"☁️ 聚合搜索 ☁️\" \n            : (sourceList.find(item => item.v == config[0].source)?.m || config[0].source);\n        var customSource = (source.getLoginInfoMap())['自定义源站'] || \"未设置\";\n        var customSourceStatus = hasValidCustomSource() ? \"🔗 \" + customSource : \"当前未设置，示例：星星,笑佳人\";\n        var message = \n            \"\\n───────────────\\n\" +\n            \"☑️  配  置  状  态 ☑️\\n\" +\n            \"───────────────\\n\" +\n            \"🔘 服  务  器 🔘\\n\" + currentHost + \"\\n\" +\n            \"───────────────\\n\" +\n            \"🌋 书  源 🌋\\n\" + currentSource + \"\\n\" +\n            \"───────────────\\n\" +\n            \"❇️ 自 定 义 源 ❇️\\n\" + customSourceStatus + \"\\n\" +\n            \"───────────────\\n\" +\n            \"\\n✨ 提示：点击按钮切换配置\";\n        java.longToast(message);\n    } catch(e) {\n        var defaultConfig = [{host: hosts[0], localVersion: LOCAL_VERSION}]; source.setVariable(JSON.stringify(defaultConfig));\n        java.toast(\"⚠️ 配置初始化完成，请重试\");\n    }\n}\n\nfunction login(){}\n\nfunction Map(e) {\n    if (e == \"source\" && hasValidCustomSource()) {\n        showCustomSourceAlert();\n        return (source.getLoginInfoMap())['自定义源站'];\n    }\n    var infomap = source.getLoginInfoMap();\n    const value = infomap[e];\n    if (!value) {\n        java.longToast(\"需要填写密钥\");\n    }\n    return value;\n}\n\nfunction key() { java.startBrowserAwait(getServerHost() + '/key', \"获取密钥\"); }\nfunction cx() { java.startBrowserAwait(getServerHost() + '/cx', \"密钥查询\"); }\nfunction version() { java.startBrowserAwait(getServerHost() + '/version?id=' + LOCAL_VERSION, \"版本检查\"); }\nfunction coffee() { java.startBrowserAwait(getServerHost() + '/coffee.html', \"喝杯咖啡☕\"); }\nfunction boy() { updateConfig(\"gender\", \"boy\", \"\\n已设置为\\n🧸男频🧸\\n刷新发现页生效\"); }\nfunction girl() { updateConfig(\"gender\", \"girl\", \"\\n已设置为\\n🎀女频🎀\\n刷新发现页生效\"); }\nfunction recommend() { \n    updateConfig(\"gender\", \"recommend\", \"\\n已设置为\\n❇️网友推荐❇️\\n刷新发现页生效\");\n    updateConfig(\"source\", \"推荐\"); }\nfunction tj() {\n    var key = (source.getLoginInfoMap())['密钥']; java.startBrowserAwait(getServerHost() +'/login?key=' + java.base64Encode(key), \"书籍推荐\");}",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.cover",
      "init": "<js>\nif (String(baseUrl).startsWith(\"data:\")) {\n    let res = JSON.parse(java.hexDecodeToString(result));\n    let {source: source_name, url: book_url, name: title} = res;\n\n    let request = getServerHost() +`/details?source=${source_name}&url=${book_url}&name=${title}`;\n    result = java.ajax(request);\n}\nresult;\n</js>\n$.data",
      "intro": "&nbsp;&nbsp;\n✨ 源站：{{$.source}}{{\"\\n\"+\"​\"}}\n{{$.desc}}\n<js>\nconst tomatoSources = [\"番茄小说\", \"番茄听书\", \"番茄畅听\"];\n\nif (tomatoSources.includes(\"{{$.source}}\")) {\n    try {\n        let fqurl = JSON.parse(java.base64Decode(baseUrl.split(\",\")[1]));\n        let finalUrl = java.base64Decode(fqurl.url);\n        let response = java.ajax(finalUrl);\n        let responseData = JSON.parse(response);\n        \n        if (responseData.data && responseData.data.length > 0) {\n            let bookData = responseData.data[0];\n            let output = `&nbsp;&nbsp;\n✨ 源站：{{$.source}}{{\"\\n\"+\"​\"}}\n📕 源名：${bookData.original_book_name}`;\n            \n            if (bookData.book_flight_alias_name) {\n                output += `\\n📖 别名：${bookData.book_flight_alias_name}`;\n            }\n            output += `\\n✏️ 开坑：${bookData.create_time.split('T')[0]} \n🧭 更新：${java.timeFormat(parseInt(bookData.last_chapter_update_time)*1000)}&lrm;\n👤 主角：${bookData.roles.replace(/[\\[\\]\"]/g,'')}\n🏷️ 标签：${bookData.tags}\n👁️ 在线：${bookData.read_count}人在读\n🔗 书籍状态：${bookData.book_search_visible == 'true' ? '正常' : (bookData.tomato_book_status == '3' ? '下架' : '小黑屋')}`;\n            \n            if ([\"番茄听书\", \"番茄畅听\"].includes(\"{{$.source}}\")) {\n                try {\n                    let tones = \"\\n===================\\n🎧AI音色编号信息: \";\n            let info = JSON.parse(java.ajax(`https://reading.snssdk.com/reading/bookapi/audio/toneinfo/?book_id=${bookData.book_id}&aid=1967`));\n                    for (let i of (info.data.tts_tones ? info.data.tts_tones : [])) {\n                        tones += `\\n${i.id} - ${i.title}${i.description ? \"(\" + i.description + \")\" : \"\"}`;\n                    }\n                    output += tones;\n                } catch (e) {\n                }\n            }\n            output += `{{\"\\n\"+\"​\"}}\n📜 简介：${bookData.abstract}{{\"\\n\"+\"​\"}}\n📍 ${bookData.copyright_info.split('，')[0]}。\n​`;\n            result = output;\n        }\n    } catch (e) {\n    }\n}\nresult;\n</js>",
      "kind": "$.tags",
      "lastChapter": "$.latestChapterTitle",
      "name": "$.title",
      "tocUrl": "<js>\nlet catalog = {\n    source: result.source,\n    url: result.book_url,\n    name: result.title,\n    tab: result.tab || \"novel\"\n};\n\nvar tabTips = {audio: '听书', video: '视频', comic: '漫画'}; \nif (tabTips[catalog.tab]) {\n    java.toast('当前为' + tabTips[catalog.tab] + '模式');\n}\n\nyunurl = java.base64Encode(JSON.stringify(catalog));\nresult = `data:catalogUrl;base64,${yunurl},{\"type\":\"qingci\"}`;\n</js>",
      "wordCount": "$.wordCount"
    },
    "ruleContent": {
      "content": "<js>eval(function(p,a,c,k,e,r){e=function(c){return(c<62?'':e(parseInt(c/62)))+((c=c%62)>35?String.fromCharCode(c+29):c.toString(36))};if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'([3-7a-cf-mo-zB-UW-Z]|1\\\\w)'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return p}('eval(String(y.loginUrl));j k=LOCAL_VERSION;3 H=4.base64Encode(Map(\\'密钥\\'));3 r=5.a.s(/r=(\\\\d{19})/)?.[1];3 z=5.a.s(/z=(\\\\d+)/)?.[1];3 l=I;6(/七猫短剧/.g(5.a)){m{j J=5.a.s(/a=([^&]+)/)?.[1];6(J){j W=4.X(J);l=W.s(/l=(\\\\d+)/)?.[1]}}o(e){}}3 p=baseUrl.split(\\',\\')[0];p=p.replace(/^https?:\\\\/\\\\/[^\\\\/]+/,\\'\\');p=B()+p;3 Y=p+`&Z=${H}&c=9`;3 q=t.C(4.K(Y));3 b=q.h.D;6((/番茄短剧/.g(5.a)&&r)||(/七猫短剧/.g(5.a)&&l)){m{j 10=/番茄短剧/.g(5.a)?\\'r\\':\\'l\\';j 11=/番茄短剧/.g(5.a)?r:l;j 12=B()+`/player?${10}=${11}&Z=${H}`;6(13.14==5.15){4.L(12,5.16||\\'视频播放\\');4.u(\\'视频加载中...\\')}b=`▶️刷新正文进入播放界面`}o(e){}}6(q.h.E==\"video\"&&13.14==5.15&&!/番茄短剧|七猫短剧/.g(5.a)){3 17=4.X(b.v());4.L(17,5.16||\\'视频播放\\');4.u(\\'视频加载中...\\');b=`▶️刷新正文进入播放界面`}6(/^[A-Za-z0-9+/=]+$/.g(b.v())){with(f JavaImporter(M.4.18.zip,M.4.io,M.android.18)){3 N=1a.decode(b,1a.DEFAULT);m{3 O=f 1b(f 1c(f InflaterInputStream(f 1d(N)),\"1e-8\"));3 D=\"\";1f((F=O.1g())!=I)D+=F+\"\\\\n\";O.1h();b=D.v()}o(e){m{3 P=f 1b(f 1c(f 1d(N),\"1e-8\"));3 Q=\"\";1f((F=P.1g())!=I)Q+=F+\"\\\\n\";P.1h();b=Q.v()}o(e2){}}}}6(5.a.includes(\\'R=\\')){3 S=5.a.s(/R=([^&]*)/)?.[1]||\\'\\';6(S&&z){m{3 T=t.C(4.K(B()+`/audio?R=${S}&item_ids=${z}`));6(T.h?.[0]?.1i)b=T.h[0].1i}o(e){}}}m{3 w=t.C(y.getVariable());3 G=Date.G();3 1j=2*60*60*1000;6(!w[0].U||(G-w[0].U)>1j){w[0].U=G;y.setVariable(t.stringify(w));3 7=t.C(4.K(B()+\"/c.json\"));6(7.c){6(7.1l&&7.1l.toString().toLowerCase()==\"true\"&&7.c>k){4.L(c());b=\"请更新书源！下载页面已打开。\"}3 i=7.c>k?`\\\\n✨发现新版本V${7.c}(当前V${k})`+(7.i?`\\\\n${7.i}`:\\'\\'):7.c<k?`\\\\n⚠️版本异常\\\\n本地V${k}>云端V${7.c}\\\\n请检查书源配置`:\\'\\';6(i)4.u(i)}else 6(7.i){4.u(7.i)}}}o(e){4.u(\"⚠️ 版本检查失败: \"+e.message)}3 E=q.h.E||\"\";3 fq=q.h.y||\"\";3 x=q.h.x||\"\";6(E==\"novel\"&&x&&x.v()!==\"\"){b+=\"\\\\n\\\\n\"+x}b;',[],84,'|||let|java|chapter|if|versionData|||url|result|version|||new|test|data|msg|const|localVersion|qm_id|try||catch|cleanBaseUrl|response|book_id|match|JSON|toast|trim|config|notice|source|item_id||getServerHost|parse|content|tab|line|now|getkey|null|urlParam|ajax|startBrowser|Packages|bytes|reader|rawReader|rawContent|tone_id|toneId|apiData|lastUpdateCheck||decodedUrl|base64Decode|contentUrl|key|paramName|paramValue|videoUrl|book|durChapterIndex|index|title|normalVideoUrl|util||Base64|BufferedReader|InputStreamReader|ByteArrayInputStream|UTF|while|readLine|close|main_url|fourHours||force'.split('|'),0,{}))</js>",
      "replaceRegex": "##{{chapter.title}}|\\(本章完\\)"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data[*]",
      "bookUrl": "<js>\nlet tjurl = result.tjurl;\nlet source = result.source;\nlet book_url = result.book_url || result.url;\nlet title = result.title || result.book_name;\n\nlet detail = {\n    source: source,\n    url: book_url,\n    name: title\n};\n\nif (tjurl && tjurl.trim() !== \"\") {\n    let sourceMatch = tjurl.match(/source=([^&]*)/);\n    let urlMatch = tjurl.match(/url=([^&]*)/);\n    let nameMatch = tjurl.match(/name=([^&]*)/);\n    \n    detail.source = sourceMatch ? sourceMatch[1] : \"\";\n    detail.url = urlMatch ? urlMatch[1] : java.base64Encode(tjurl.trim());\n    detail.name = nameMatch ? nameMatch[1] : \"\";\n} \nelse if (book_url) {\n    detail.url = java.base64Encode(book_url);\n}\n\nlet yunurl = java.base64Encode(JSON.stringify(detail));\n`data:detailsUrl;base64,${yunurl},{\"type\":\"qingci\"}`;\n</js>",
      "coverUrl": "$.cover",
      "intro": "$.recommend_reason||$.desc",
      "kind": "$.tags",
      "lastChapter": "$.latestChapterTitle",
      "name": "$.title",
      "wordCount": "$.wordCount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "<js>\nlet source = result.source;\nlet book_url = result.book_url;\nlet title = result.title;\n\nlet detail = {\n    source: source,\n    url: book_url,\n    name: title\n};\n\nyunurl = java.base64Encode(JSON.stringify(detail));\n`data:detailsUrl;base64,${yunurl},{\"type\":\"qingci\"}`\n</js>",
      "checkKeyWord": "系统@小说",
      "coverUrl": "$.cover",
      "intro": "$.desc",
      "kind": "$.tags",
      "lastChapter": "{{$.source}}·{{$.latestChapterTitle}}",
      "name": "$.title",
      "wordCount": "$.wordCount"
    },
    "ruleToc": {
      "chapterList": "<js>\nlet res = JSON.parse(java.hexDecodeToString(result));\nlet catalog = {\n    source: res.source,\n    url: res.url,\n    name: res.name,\n    tab: res.tab || \"novel\"\n};\n\nvar tabTips = {audio: '听书', video: '视频', comic: '漫画'}; \nif (tabTips[catalog.tab]) {\n    java.toast('当前为' + tabTips[catalog.tab] + '模式');\n}\n\nlet op = {\n    method: \"POST\",\n    body: {\n        source: catalog.source,\n        url: catalog.url,\n        name: catalog.name\n    }\n};\n\nlet catalogUrl = getServerHost() +`/catalog,${JSON.stringify(op)}`;\nlet response = java.ajax(catalogUrl);\n\nfunction deviceType() {\n    try {\n        return !!java.androidId();\n    } catch (e) {\n        return false;\n    }\n}\n\nlet device = deviceType() ? 'android' : 'ios';\n\nif (device == 'android') {\n    var typeMap = {audio:32, comic:64};\n    book.type = catalog.tab in typeMap ? typeMap[catalog.tab] : 8;\n} else {\n    var typeMap = {audio:1, comic:2, video:3};\n    book.type = catalog.tab in typeMap ? typeMap[catalog.tab] : 0;\n}\n\nJSON.parse(response).data.map((x) => {\n    const isFanqieApp = ['番茄小说', '番茄短剧', '番茄听书', '番茄畅听'].includes(catalog.source);\n    const urlToMatch = x.url || catalog.url;\n    const bookId = urlToMatch.match(/book_id=(\\d{19})\\b/)?.[1] || null;\n    const itemId = urlToMatch.match(/item_id=(\\d+)/)?.[1] || null;\n    \n    let contentUrl = getServerHost() + `/chapter?cid=${x.cid}&source=${catalog.source}`;\n    \n    if (!isFanqieApp) {\n        contentUrl += `&url=${catalog.url}`;\n    } else {\n        contentUrl += `&book_id=${bookId}&item_id=${itemId}`;\n        \n        if (['番茄听书', '番茄畅听'].includes(catalog.source)) {\n            const toneId = Number((source.getLoginInfoMap())['听书AI音色编号']) || 1;\n            contentUrl += `&tone_id=${toneId}`;\n        }\n    }\n    \n    if (catalog.source == '番茄小说') {\n        const commentPart = `{\"js\":\"book ? result : '${getServerHost()}/comment?sessionid=${getSessionId()}&item_id=${itemId}&book_id=${bookId}'\"}`;\n        x.url = `${contentUrl},${commentPart}`;\n    } else {\n        x.url = contentUrl;\n    }\n    \n    return x;\n});\n</js>",
      "chapterName": "title",
      "chapterUrl": "url",
      "isVip": "isVip",
      "isVolume": "isVolume",
      "updateTime": "tag"
    },
    "searchUrl": "<js>\nlet config = (() => {\n    try {\n        let cfg = JSON.parse(source.getVariable())[0] || {};\n        if (!cfg.host || !cfg.gender) {\n            cfg = {gender: \"boy\", host: getServerHost()};\n            source.setVariable(JSON.stringify([cfg]));\n            java.toast(\"配置初始化完成\");\n        }\n        return cfg;\n    } catch(e) {\n        let cfg = {gender: \"boy\", host: getServerHost()};\n        source.setVariable(JSON.stringify([cfg]));\n        return cfg;\n    }\n})();\n\nvar sourceVal = '';\nvar customSource = (source.getLoginInfoMap())['自定义源站'];\n\nif (customSource !== undefined && customSource !== null && String(customSource).trim() !== \"\") {\n    sourceVal = String(customSource).trim();\n} else if (config.source) {\n    sourceVal = config.source;\n}\n\nvar param = sourceVal ? '&source=' + encodeURIComponent(sourceVal) : '';\nvar searchUrl = getServerHost() + '/searchs?page={{page}}&key={{key}}' + param;\n\nif (key.length == 19 && !Number.isNaN(parseInt(key))) {\n    var u = `https://api5-normal-sinfonlineb.fqnovel.com/reading/bookapi/multi-detail/v/?aid=1967&iid=1&version_code=999&book_id=${key}`;\n    var kdy = java.base64Encode(u);\n    var response = JSON.parse(java.ajax(u));\n    var nam = response.data.book_name || response.data[0].book_name;\n    result = getServerHost() + `/details?url=${kdy}&source=番茄小说&name=${nam}`;\n} else {\n    result = searchUrl;\n}\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "三五文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.35wx.la#",
    "bookUrlPattern": "https?://www.35wx.la/[\\d_]+/",
    "customButton": false,
    "customOrder": 119,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/xuanhuanxiaoshuo\n修真小说::/xiuzhenxiaoshuo\n都市小说::/dushixiaoshuo\n穿越小说::/chuanyuexiaoshuo\n网游小说::/wangyouxiaoshuo\n科幻小说::/kehuanxiaoshuo\n排行榜单::/paihangbang\n其他小说::/qitaxiaoshuo",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36",
    "lastUpdateTime": 1733138523380,
    "loginCheckJs": "cookie.removeCookie(source.getKey())\nresult",
    "loginUrl": "https://www.35wx.la/login.php",
    "respondTime": 7154,
    "ruleBookInfo": {
      "author": "id.info@p.0@text",
      "coverUrl": "img@src",
      "intro": "id.intro@p@textNodes",
      "kind": ".con_top@a.-1@text",
      "lastChapter": "id.info@p.-1@text",
      "name": "h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.ccc@textNodes",
      "nextContentUrl": ":contains(下一页)@href##(^.*_\\d+.*$|^)##$1###",
      "replaceRegex": "##\\s{0,100}\\n{0,2}.*(第.*页).*\\n{0,2}\\s{0,100}",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.s5@text",
      "bookList": "class.l@li||class.r",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.35wx.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.s3@text",
      "name": "class.s2@a@text||class.s2 mid@text"
    },
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "tbody tr!0",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.35wx.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "",
      "lastChapter": ".even@text",
      "name": "class.odd.0@text"
    },
    "ruleToc": {
      "chapterList": "dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}",
      "nextTocUrl": ""
    },
    "searchUrl": "https://www.35wx.la/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&type=articlename&submit=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "导入txt小说",
    "bookSourceGroup": "免费",
    "bookSourceName": "知轩藏书（导）",
    "bookSourceType": 3,
    "bookSourceUrl": "https://zxcs.zip/",
    "customButton": false,
    "customOrder": 121,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"༺ˇ»`ʚ    \\ud83d\\udd39知轩藏书\\ud83d\\udd39    ɞ´«ˇ༻\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"下载排行\",\"url\":\"rank/topdownload?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.45}},\n{\"title\":\"仙草排行\",\"url\":\"rank/toppraise?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.45}},\n{\"title\":\"玄幻\",\"url\":\"category/玄幻?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"历史\",\"url\":\"category/历史?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"现实\",\"url\":\"category/现实?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"轻小说\",\"url\":\"category/轻小说?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"游戏\",\"url\":\"category/游戏?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"体育\",\"url\":\"category/体育?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"仙侠\",\"url\":\"category/仙侠?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠\",\"url\":\"category/武侠?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市\",\"url\":\"category/都市?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻\",\"url\":\"category/科幻?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"现代言情\",\"url\":\"category/现代言情?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"古代言情\",\"url\":\"category/古代言情?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"诸天无限\",\"url\":\"category/诸天无限?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"悬疑\",\"url\":\"category/悬疑?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"奇幻\",\"url\":\"category/奇幻?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"军事\",\"url\":\"category/军事?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"小说\",\"url\":\"category/小说?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"青春文学\",\"url\":\"category/青春文学?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"浪漫青春\",\"url\":\"category/浪漫青春?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"玄幻言情\",\"url\":\"category/玄幻言情?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"悬疑推理\",\"url\":\"category/悬疑推理?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻空间\",\"url\":\"category/科幻空间?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"文学\",\"url\":\"category/文学?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"灵异\",\"url\":\"category/灵异?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"竞技\",\"url\":\"category/竞技?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"二次元\",\"url\":\"category/二次元?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"言情\",\"url\":\"category/言情?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"玄幻魔法\",\"url\":\"category/玄幻魔法?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"修真武侠\",\"url\":\"category/修真武侠?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"未分类\",\"url\":\"category/未分类?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10.0; SM-T540 Build/QP1A.190711.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/81.0.4044.122 Safari/537.36 com.quark.android\"}",
    "lastUpdateTime": 1759588692010,
    "respondTime": 4001,
    "ruleBookInfo": {
      "author": ".section@h2@text##.*作者(：|:)",
      "coverUrl": ".section@img.0@src",
      "downloadUrls": ".section@a.-1@href",
      "intro": "{{@@.pinjia@text##^|\\n##🍃}}\n👻  简介：\n{{@@.section@p.1@text##(^|[。！；？]+[”」）】]?)##$1<br>}}##【.*】：",
      "kind": ".section@p.3:4:5:6:7@text##【.*】：",
      "name": ".section@h2@text##《|》|（.*",
      "wordCount": ".section@p.2@text##【.*】："
    },
    "ruleContent": {},
    "ruleExplore": {},
    "ruleSearch": {
      "author": "h3@text##.*作者(：|:)",
      "bookList": "class.ng-star-inserted mio-multi-up mio-multi-up--dynamic mio-multi-up--max mio-multi-up--slim@mio-tile",
      "bookUrl": "a.0@href",
      "checkKeyWord": "诡秘之主",
      "coverUrl": "{{@@a.0@href##book##images/cover}}##html##jpg",
      "intro": "p@text",
      "kind": "time@text&&.downloads@text",
      "name": "h3@text##《|》|（.*"
    },
    "ruleToc": {},
    "searchUrl": "search?q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "by:xsw8093\n发布页\nhttps://antbyw.github.io/\n--https://www.antbyw.com/plugin.php?id=jameson_manhua&a=read&kuid=194612&zjid=1531082",
    "bookSourceGroup": "漫画",
    "bookSourceName": "漫画搬运（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.antbyw.com",
    "customButton": false,
    "customOrder": 124,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/plugin.php?id=jameson_manhua&a=ku&category_id=8&region=1\n热血::/plugin.php?id=jameson_manhua&a=ku&category_id=7&region=1\n冒险::/plugin.php?id=jameson_manhua&a=ku&category_id=8&region=1\n魔幻::/plugin.php?id=jameson_manhua&a=ku&category_id=9&region=1\n神鬼::/plugin.php?id=jameson_manhua&a=ku&category_id=10&region=1\n搞笑::/plugin.php?id=jameson_manhua&a=ku&category_id=11&region=1\n萌系::/plugin.php?id=jameson_manhua&a=ku&category_id=12&region=1\n爱情::/plugin.php?id=jameson_manhua&a=ku&category_id=13&region=1\n科幻::/plugin.php?id=jameson_manhua&a=ku&category_id=14&region=1\n魔法::/plugin.php?id=jameson_manhua&a=ku&category_id=15&region=1\n格斗::/plugin.php?id=jameson_manhua&a=ku&category_id=16&region=1\n武侠::/plugin.php?id=jameson_manhua&a=ku&category_id=17&region=1\n机战::/plugin.php?id=jameson_manhua&a=ku&category_id=18&region=1\n战争::/plugin.php?id=jameson_manhua&a=ku&category_id=19&region=1\n竞技::/plugin.php?id=jameson_manhua&a=ku&category_id=20&region=1\n体育::/plugin.php?id=jameson_manhua&a=ku&category_id=21&region=1\n校园::/plugin.php?id=jameson_manhua&a=ku&category_id=22&region=1\n生活::/plugin.php?id=jameson_manhua&a=ku&category_id=23&region=1\n励志::/plugin.php?id=jameson_manhua&a=ku&category_id=24&region=1\n历史::/plugin.php?id=jameson_manhua&a=ku&category_id=25&region=1\n伪娘::/plugin.php?id=jameson_manhua&a=ku&category_id=26&region=1\n宅男::/plugin.php?id=jameson_manhua&a=ku&category_id=27&region=1\n腐女::/plugin.php?id=jameson_manhua&a=ku&category_id=28&region=1\n耽美::/plugin.php?id=jameson_manhua&a=ku&category_id=29&region=1\n百合::/plugin.php?id=jameson_manhua&a=ku&category_id=30&region=1\n后宫::/plugin.php?id=jameson_manhua&a=ku&category_id=31&region=1\n治愈::/plugin.php?id=jameson_manhua&a=ku&category_id=32&region=1\n美食::/plugin.php?id=jameson_manhua&a=ku&category_id=33&region=1\n推理::/plugin.php?id=jameson_manhua&a=ku&category_id=34&region=1\n悬疑::/plugin.php?id=jameson_manhua&a=ku&category_id=35&region=1\n恐怖::/plugin.php?id=jameson_manhua&a=ku&category_id=36&region=1\n四格::/plugin.php?id=jameson_manhua&a=ku&category_id=37&region=1\n职场::/plugin.php?id=jameson_manhua&a=ku&category_id=38&region=1\n侦探::/plugin.php?id=jameson_manhua&a=ku&category_id=39&region=1\n社会::/plugin.php?id=jameson_manhua&a=ku&category_id=40&region=1\n音乐::/plugin.php?id=jameson_manhua&a=ku&category_id=41&region=1\n舞蹈::/plugin.php?id=jameson_manhua&a=ku&category_id=42&region=1\n杂志::/plugin.php?id=jameson_manhua&a=ku&category_id=43&region=1\n黑道::/plugin.php?id=jameson_manhua&a=ku&category_id=44&region=1",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0\",\"Cookie\":\"0\"\n}",
    "lastUpdateTime": 1759126590288,
    "respondTime": 3919,
    "ruleBookInfo": {
      "author": "text.漫畫作者@text##漫畫作者:##",
      "coverUrl": ".uk-grid-collapse.1@img@src",
      "intro": ".uk-grid-collapse.1@class.uk-alert@text",
      "kind": ".uk-grid-collapse.1@class.uk-text-small@text##别名:|更新時間:|更新到:|漫畫作者:##",
      "lastChapter": "text.更新到@text##更新到:##",
      "name": ".uk-grid-collapse.1@h3@text"
    },
    "ruleContent": {
      "content": "<js>\nresult=String(src).trim().replace(/\\s+/g,'').match(/(let|var|const)+urls=(\\[.*?\\])/g)[0].replace(/(let|var|const)+urls=/g,\"\")\n\nresult=JSON.parse(result).map(n=>`<img src=\"${n}\" />`).join(\"\")\n</js>"
    },
    "ruleExplore": {
      "bookList": ".uk-card",
      "bookUrl": "p@a@href",
      "coverUrl": "img@src",
      "kind": ".xs1@text",
      "lastChapter": ".xs1@text",
      "name": "p@a@text"
    },
    "ruleSearch": {
      "bookList": ".uk-card",
      "bookUrl": "a.1@href",
      "checkKeyWord": "怪兽8号",
      "coverUrl": "a.0@img@src",
      "kind": ".uk-breadcrumb@li@a@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".uk-alert-warning:not(div)&&.uk-alert-warning:not(div) ~ .uk-subnav ~.uk-switcher\n@js:\nlist=[]\nvoList = Array.from(result).filter(n=>String(n).includes('<h3'))\n\nulList = Array.from(result).filter(n=>String(n).includes('<ul'))\n\nulList.map((n,index)=>{\n\n   list.push({\n\t   href:\"\",\n\t   text:java.getString(\"text\",voList[index]),\n\t   volume:true\n  })\n dList = []\n  \nArray.from(org.jsoup.Jsoup.parse(n).select(\"li\")).reverse().map(t=>{\t      \n\tmList = Array.from(org.jsoup.Jsoup.parse(t).select(\".muludiv\")).reverse().map(k=>{\n\n\t dList.push({\n\t   href:org.jsoup.Jsoup.parse(k).select(\"a\")[0].attr(\"href\"),\n\t   text:org.jsoup.Jsoup.parse(k).select(\"a\")[0].text(),\n\t   volume:false\n\t })\n     })\n   })\n   \n   if(java.getString(\"text\",voList[index])!=\"番外篇\"){\n\t  dList = dList.sort(function(a, b) {\n            return parseInt((a.text.match(/\\d+/) || [0])[0], 10) - parseInt((b.text.match(/\\d+/) || [0])[0], 10)\n        })\n    }\n    list = list.concat(dList)\n})\n\nlist",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVolume": "volume"
    },
    "searchUrl": "/plugin.php?id=jameson_manhua&a=search&c=index&keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//搜书关键字最少10个字符，即5个汉字。",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "抖音小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.douyinxs.com",
    "customButton": false,
    "customOrder": 127,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄奇::/fenlei/1/{{page}}/\n高武::/fenlei/2/{{page}}/\n修仙::/fenlei/3/{{page}}/\n都市::/fenlei/4/{{page}}/\n军事::/fenlei/5/{{page}}/\n历史::/fenlei/6/{{page}}/\n游体::/fenlei/7/{{page}}/\n科幻::/fenlei/8/{{page}}/\n恐怖::/fenlei/9/{{page}}/\n次元::/fenlei/10/{{page}}/\n女生::/fenlei/11/{{page}}/",
    "lastUpdateTime": 1734979551295,
    "respondTime": 18067,
    "ruleBookInfo": {
      "author": "id.info@p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@p.1@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".con_top@a.1@text&&id.info@p.2@text##.*：|\\s..:.*",
      "lastChapter": "id.list@a.0@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.content@html",
      "nextContentUrl": "id.next@href"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".novelslist2@li!0||.l@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "凡人修仙传",
      "coverUrl": "a.0@href<js>java.ajax(\"https://www.douyinxs.com\"+result)</js>id.fmimg@img@src",
      "kind": ".s1,.s7,.s6@text##\\[|\\]",
      "lastChapter": "a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.0@text",
      "wordCount": ".s5@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href",
      "nextTocUrl": ".index-container@a.1@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\n/search/,{\n  \"method\": \"post\",\n  \"body\": \"searchkey={{key}}&Submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "爱优漫吧（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.iyouman.com/",
    "customButton": false,
    "customOrder": 128,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "每日更新::https://m.iyouman.com/api/updatelist/?productname=aym&platformname=wap\n综合榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=all&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n自制榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=self&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n少年榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=boy&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n少女榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=girl&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n新作榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=new&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n黑马榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=dark&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n付费榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=charge&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n免费榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=free&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n完结榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=finish&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n连载榜::https://m.iyouman.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=serialize&rank_type=heat&page={{page}}&productname=aym&platformname=wap\n人气::https://m.iyouman.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n更新::https://m.iyouman.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n评分::https://m.iyouman.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n收藏::https://m.iyouman.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n连载::https://m.iyouman.com/api/getsortlist/?comic_sort=lianzai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n完结::https://m.iyouman.com/api/getsortlist/?comic_sort=wanjie&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n热血::https://m.iyouman.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n机战::https://m.iyouman.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n运动::https://m.iyouman.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n推理::https://m.iyouman.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n冒险::https://m.iyouman.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n耽美::https://m.iyouman.com/api/getsortlist/?comic_sort=liaomei&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n百合::https://m.iyouman.com/api/getsortlist/?comic_sort=baihe&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n搞笑::https://m.iyouman.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n战争::https://m.iyouman.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n神魔::https://m.iyouman.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n忍者::https://m.iyouman.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n竞技::https://m.iyouman.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n悬疑::https://m.iyouman.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n社会::https://m.iyouman.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n恋爱::https://m.iyouman.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n宠物::https://m.iyouman.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n吸血::https://m.iyouman.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n萝莉::https://m.iyouman.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n后宫::https://m.iyouman.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n御姐::https://m.iyouman.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n霸总::https://m.iyouman.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n玄幻::https://m.iyouman.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n古风::https://m.iyouman.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n历史::https://m.iyouman.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n漫改::https://m.iyouman.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n游戏::https://m.iyouman.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n穿越::https://m.iyouman.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n恐怖::https://m.iyouman.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n真人::https://m.iyouman.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n防疫::https://m.iyouman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n防疫::https://m.iyouman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n科幻::https://m.iyouman.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n都市::https://m.iyouman.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n武侠::https://m.iyouman.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n修真::https://m.iyouman.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n生活::https://m.iyouman.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n动作::https://m.iyouman.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n大陆::https://m.iyouman.com/api/getsortlist/?comic_sort=dalu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n日本::https://m.iyouman.com/api/getsortlist/?comic_sort=riben&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n港台::https://m.iyouman.com/api/getsortlist/?comic_sort=gangtai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n欧美::https://m.iyouman.com/api/getsortlist/?comic_sort=oumei&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n韩国::https://m.iyouman.com/api/getsortlist/?comic_sort=os&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n全彩::https://m.iyouman.com/api/getsortlist/?comic_sort=quancai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n黑白::https://m.iyouman.com/api/getsortlist/?comic_sort=heibai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n小说::https://m.iyouman.com/api/getsortlist/?comic_sort=xiaoshuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n杂志::https://m.iyouman.com/api/getsortlist/?comic_sort=zazhi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n日更::https://m.iyouman.com/api/getsortlist/?comic_sort=rigeng&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n新作::https://m.iyouman.com/api/getsortlist/?comic_sort=xinzuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap\n精品::https://m.iyouman.com/api/getsortlist/?comic_sort=jingpin&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=aym&platformname=wap",
    "lastUpdateTime": 1766365075338,
    "respondTime": 761,
    "ruleBookInfo": {
      "author": "$.data.comic_author",
      "coverUrl": "$.data.cover_list[0]",
      "intro": "$.data.comic_desc",
      "kind": "$.data.comic_type_new[*].name",
      "lastChapter": "$.data.last_chaptet_name",
      "name": "$.data.comic_name@put:{comic_id:$.data.comic_id}",
      "tocUrl": "https://m.iyouman.com/api/getchapterlist?product_id=4&productname=aym&platformname=wap&comic_id={{$.data.comic_id}}"
    },
    "ruleContent": {
      "content": "data.current_chapter.chapter_img_list@js:\nheaders={\"headers\":{\"Referer\":baseUrl}}\n;\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.comic_author",
      "bookList": "$.data.update[*].info[*]||$.data.data[*]||$.data[*]",
      "bookUrl": "https://m.iyouman.com/api/getcomicinfo_body/?comic_id={$.comic_id}&productname=aym&platformname=wap",
      "coverUrl": "http://image.mhxk.com/mh/{$.comic_id}.jpg-600x800.jpg.webp",
      "kind": "$.comic_type||$.sort_typelist##[a-zA-Z]|\\|",
      "lastChapter": "$.last_chapter_name||$.comic_chapter_name",
      "name": "$.comic_name"
    },
    "ruleToc": {
      "chapterList": "-$.data.*",
      "chapterName": "$.chapter_name@put:{chapter_id:$.chapter_id}",
      "chapterUrl": "https://m.iyouman.com/api/getchapterinfov2?product_id=4&productname=aym&platformname=wap&comic_id=@get:{comic_id}&chapter_newid={{$.chapter_newid}}&isWebp=1&quality=low"
    },
    "searchUrl": "https://m.iyouman.com/api/getsortlist/?search_type=&search_key={{key}}&page={{page}}&size=30&productname=aym&platformname=wap",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "灯读文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://s30007.zhongyue001.com#",
    "customButton": false,
    "customOrder": 129,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>{\n\t\tjson = JSON.stringify({\n\t\t\t\ttitle: title,\n\t\t\t\turl: url?url:\"\",\n\t\t\t\tstyle: {\n\t\t\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t\t\t}\n\t\t\t});\n\t\treturn sort.push(json);\n\t}\n$$=(category_id,sex)=>`https://s30007.zhongyue001.com/book/index?category_id=${category_id}&sex=${sex}&page={{page}\\}&type=category`;\n[\n\t\t[\"男\",[[\"都市\",2],[\"玄幻\",1],[\"仙侠\",3],[\"奇幻\",5],[\"历史\",6],[\"军事\",7],[\"科幻\",9],[\"游戏\",10]]],\n\t\t[\"女\",[[\"现代言情\",12],[\"古代言情\",13],[\"幻想言情\",14],[\"青春校园\",15]]]\n].map(([title,list],sex)=>{\n\t\tsex++;\n\t\tpush('༺ˇ»`ʚ'+title+'频分类ɞ´«ˇ༻',null,1);\n\t\tlist.map([title,category_id]=>{\n\t\t\t\tpush(title,$$(category_id,sex),0.25);\n\t\t\t});\n\t});\n'['+sort.toString()+']'",
    "header": "{\n\"Content-Type\": \"application/x-www-form-urlencoded\",\n\"ver\": \"1.0.0.0.8\",\n\"token\": \"frbcut22dxuv8wfu31hnvznrd1hht741\",\n\"uid\": \"471097\",\n\"osType\": \"1\",\n\"clientVer\": \"1.0.4\",\n\"User-Agent\": \"okhttp/4.9.1\"\n}",
    "lastUpdateTime": 1721269774923,
    "respondTime": 3403,
    "ruleBookInfo": {
      "author": "$.book_info.author",
      "coverUrl": "https://static.zhongyue001.com//{{$.book_info.spic}}",
      "init": "$.data.book_info_link\n@js:java.ajax(result)",
      "intro": "<br>{$.book_info.descp}",
      "kind": "$.book_info.category_name&&连载中{$.book_info.status}已完结&&$.book_info.updated_at\n##连载中0|1已完结| \\d.*",
      "lastChapter": "$.last_chapter.name",
      "name": "$.book_info.name",
      "tocUrl": "https://s30007.zhongyue001.com/chapter/index?bid={{$.book_info.id}}",
      "wordCount": "$.book_info.word"
    },
    "ruleContent": {
      "content": "$.data.current.link||$.data.chapter_link\n<js>java.ajax(result)</js>\n$.chapter_info.body"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.list",
      "bookUrl": "https://s30007.zhongyue001.com/book/show?bid={{$.id}}",
      "checkKeyWord": "",
      "coverUrl": "https://static.zhongyue001.com//{{$.spic}}",
      "intro": "$.descp",
      "kind": "$.category_name&&连载中{$.status}已完结&&$.updated_at\n##连载中0|1已完结| \\d.*",
      "lastChapter": "第{$.chapter_num}章",
      "name": "$.name",
      "wordCount": "$.word"
    },
    "ruleToc": {
      "chapterList": "<js>java.ajax(JSON.parse(result).data.chapter_list_link)</js>\n$.chapter_list",
      "chapterName": "$.name",
      "chapterUrl": "{{baseUrl.replace('index','show')}}&num={{$.num}}",
      "isVolume": "",
      "updateTime": ""
    },
    "searchUrl": "https://s30007.zhongyue001.com/book/index?page={{page}}&type=search&keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//曦灵",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "言情小说吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.xs8.cn",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 130,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.3.1212.666 Safari/537.36\"}",
    "lastUpdateTime": 1723731014981,
    "loginUrl": "",
    "respondTime": 2221,
    "ruleBookInfo": {
      "author": "@get:{x}",
      "canReName": "true",
      "coverUrl": "@js:(s=java.getStringList('img[alt*='+book.name+']@src||meta[property$=image]@content||img[src~=(cover|file|article)[^a-z]|/\\\\d+[/_-]\\\\d+(s?\\\\.|$)]@src||img[data-src~=\\\\S]@data-src||img[src*=/img]@src||img[src~=^(data|https?):|^[^:]+/]@src')).size()?/^data:/.test(s=s.get(0))?java.base64Encode(s):s:null",
      "init": "",
      "intro": "@js:'　　'+java.get(\"g\")",
      "kind": "@js:java.get(\"v\")",
      "lastChapter": "@get:{z}",
      "name": "@js:\nj=String(java.get(\"custom\")).match(/^ *((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)/);\n\nkey=String((u=(baseUrl=String(book.bookUrl).replace(/,{[^{}]+}$/,'')).match(/^(.+)\\?((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)$/))&&(baseUrl=u[1])&&j?j[1]+u[2]:u?u[2]:j?j[1]:'');\n\n$=it=>(fn=r.select(it)).size()&&(fn=fn.first());\n\nr=org.jsoup.Jsoup.parse(result);\nr.select(\"script,noscript,style,head>:not(meta,title),footer,[class~=^foot],[id~=^foot],a:has(>:last-child:matchesOwn(^分类$)),[value]\").remove();\n\nm=String(r).replace(/(?:&nbsp;)+/g,\" \");\n\n书=false;\nn=($('[property$=book_name]')&&(书=String(fn.attr('content')).replace(/^[\\s「『【〖（(\\[]+/,\"\"))\n||(function(){\nif($('title')&&(书=String(fn.text()).replace(/^(简介页|详情页|目录页|正版|全本|免费阅读|[\\s。.,_/|「『【〖（(\\[\\])）〗】』」─—-]+)+/,\"\"))){\nfor(x=0,c=r.select(\"h1,h2,h3,strong\").eachText();x<c.size();x++)if(\n(y=c.get(x))!=''&&(u=书.indexOf(y),~u&&u<4))return String(y)}return 书}())||\"请自行修改书名\")\n.replace(/(?!^)[^\\u4e00-\\u9fa5a-zA-Z0-9《》]*(?:笔趣阁|思路客|燃文|小说|漫画|手机)?(?:[.|,_/\\s「『【〖（(\\[\\])）〗】』」。─—-]|(?:人工|机器|电脑)?校正|精校|完[整结]|加料|番外|未删节|简介|全[文本集]|下载|(?:小说|漫画|大全|正版(?:小说|漫画)?|免费|免费小说|免费漫画|免费全[文本]|在线|最[新快]|全部|手机|电脑)(?:全[文本集部]|大全|免费|在线|阅读|下载|章节|小说|更新|漫画|\\.)|([^a-zA-Z0-9])(?:azw|mobi|epub|txt)(?![a-zA-Z0-9])|(?:最全)?(?:章节|目录|列表){2,}|更新章节最快|无广告|(?::顶点)?无弹窗|无防盗|小说网|手打全文|[纯全](?:手打|文字)|\\s*by\\s*(?=[\\u4e00-\\u9fa5]))[\\S\\s]*/i,\"$1\");\n\nif(n[0]==\"《\"&&n[n.length-1]==\"》\")n=n.slice(1,-1);\n\nif($('[property$=author]')){\nx=String(fn.attr(\"content\")).replace(/^作\\s*[者家][\\s:：]*|(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\")\n}else{\nx=m.match(/>\\s*([^>]+?)(?:\\s*<\\/[a-z]+>\\s*|\\s+)著\\s*<|[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】>《》](?:小说|漫画)?作\\s*者(?![^>]+->)(?:[:：\\s〖【（《［\\[\\(]|<[^it\\/][^>]*>|<\\/[^>]+>)+([^\\s<\">,，/／｜|\\)\\]］》）】〗]+)/);\nx=x?x[1]?x[1]:x[2]:$('#author,.author')?String(fn.text()).replace(/(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\"):\"\"}\njava.put(\"x\",x);\n\nc=(fn=r.select(\"meta[property~=category$]\")).size()?String(fn.attr(\"content\"))\n.replace(/(?!^)\\s*[，,./／｜|]\\s*/,\",\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)(?:[分大]\\s*类|类\\s*[型别])(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"v\",c);\n\nc=(fn=r.select(\"meta[property~=status$]\")).size()?fn.attr(\"content\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)状\\s*态(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"s\",c);\n\nc=$('meta[property~=latest_chapter_name$]')?fn.attr(\"content\"):(fn=m.match(/>(?:\\s*[更最]\\s*[新近])+(?:\\s*章\\s*节)?(?:[:：\\s\\[]|<[^>]+>)+(?!\\s*(?:-|&gt;)\\s*<|[:：\\s0-9T年月日时分秒*-]{5,}<|[^:：]+[^章\\s]\\s*[:：]\\s*<|更新(?:时间)?[:：])([^<\"/／｜|\\]>]+)/))&&fn[1];\nif(c)java.put(\"z\",c);\n\n正=true;\nif(key.length){\nif(~key.indexOf(\"全\"))java.put(\"全\",1);\nif((\nu=key.match(/[^\\[\\]]+(?=\\])/),\nc=~key.indexOf(\"录\"),\ny=~key.indexOf(\"单\"),\nbaseUrl=u?u[0]:baseUrl,\n(c||u)&&(baseUrl=c||y?(baseUrl=String((c=baseUrl.match(/(.+[^\\d])(\\d+)([^\\d]*)$/))[1]+1+c[3]),\nc=c[2]+'🌕'+c[1]+'🌕'+2+'🌕'+c[3],\nbaseUrl):baseUrl)\n)||~key.indexOf(\"直\")\n)java.put(\"目\",1),正=1;\nif(~key.indexOf(\"录\"))java.put(\"录\",c),正=1;\nif(y||~key.indexOf(\"#\")){\nif(!u){\nif((网=key.match(/(\\d+)#([^#]+)/))\n&&(尾=网[1],网=网[2].match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n||(尾=r.select('a[href~=\\\\d[^/?\\\\d]*$]:matches(^(尾|末|最后一)[頁页篇章回节節话話]$)')).size()\n&&(网=r.select('a:matches(^2$)')).size()\n&&(网=String(网.first().attr('href')).match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n&&(尾=String(尾.first().attr('href')).match(/\\d+(?=[^/?\\d]*$)/)[0])){\nc=尾+'🌕'+网[1]+'🌕'+网[2]+'🌕'+网[3]\n}else if((c=r.select('a:matches(^(\\\\d+|…+|\\\\.+)$)')).size()){\nif((网=String(c).split(/<a[^>]+>[^\\d<]+<\\/a>/)).length==2){\nfor(c=网[0],尾=网[1],x=+网[1].match(/>([^<]+)/)[1],网=网[0].match(/href=\"([^\"]*[^\\d])(\\d+)([^/?\\d\"]*)\"[^>]*>([^<]+)<[^<]+$/),j=+网[4],i=+网[2]-j;j<x;j++)c+=\"<a href='\"+网[1]+(j+i)+网[3]+\"'>\"+j+\"</a>\";\nc+=尾}\n}else c=1}\njava.put(\"单\",c),正=false}\nif(~key.indexOf(\"跳\"))java.put(\"跳\",1);\nif(~key.indexOf(\"逆\"))book.setReverseToc(true);\nelse book.setReverseToc(false);\nif((u=~key.indexOf(\"图\"))||~key.indexOf(\"原\"))java.put(\"原\",1);\nif(~key.indexOf(\"动\"))java.put(\"动\",',{\"webView\":true}');\nelse if(~key.indexOf(\"静\"))java.put(\"静\",1);\nif(u||~key.indexOf(\"字\"))java.put(\"文\",u?1:2)\n}else book.setReverseToc(false);\n\nc=(fn=r.select(\"meta[property$=description][content~=\\\\S]\")).size()?fn.get(fn.size()-1).attr(\"content\"):(r.select(':matchesOwn([\\\\u4e00-\\\\u9fa5]{2,})>:not(br),:not(body,br,:matchesOwn([\\\\s\\\\S]{50}),:has(body,:matchesOwn([\\\\s\\\\S]{50})))').remove(),r.select(\":matchesOwn(\\\\S)\").text());\n\njava.put(\"g\",c=String(c).replace(/[\\snbsp;]*(?:&nbsp;|\\s){2,}|\\s*([？！。]+[”」』\\]\\}\\)）｝】〗〕〉]?)\\s*/g,\"$1　　\").replace(/(?=　　)/g,\"\\n\"));\n\nif(c.length&&(c=c.match(/(.{0,2})《([^《》]+)》(.{0,3})/))&&c[3]!=\"作品集\"&&!c[1].match(/新[书作]/)&&(c=c[2],书?~String(书).indexOf(c)&&!~c.indexOf(n):true))n=c;\n\nif(正==1)m=java.ajax(baseUrl);\njava.setContent(m,baseUrl);\n\nif(正){\nzl=java.getStringList(\"[property$=latest_chapter_url]@content||:matches(^最新章节)>a:only-child:not([href~=^$|#|javascript:])@href||a:matches(^正文\\\\s*[\\\\d第一二三四五六七八九十〇零百千]|^[【《]?(\"+n+\")?[\\\\s》】（\\\\u0028:：＿_－-]*(第[\\\\s0〇零]*[一1]\\\\s*[\\\\u4e00-\\\\u9fa5]|([\\\\u4e00-\\\\u9fa5]{2}阅读[（\\\\u0028:：＿_－-]?)?(0*1([）\\\\u0029.、:：_-]|$)|[〇零]*一([）\\\\u0029\\\\s.、:：_-]|$)))):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:|\"+(bas=baseUrl.replace(/\\/+$|\\.[a-zA-Z]+$/,'')).match(/[^?/]+$/)[0].replace(/([*$|?+\\\\\\^\\[\\](){}])/g,'\\\\$1')+\"(?:[/_-]1)?(?:\\\\/|\\\\.[a-zA-Z]+)?$])@href||a:matches(^[^\\\\u4e00-\\\\u9fa5]*(免费|在线|开始|立即|全文|正文|从头)+[试阅]读[^\\\\u4e00-\\\\u9fa5]*$):not([href~=^$|#|javascript:])@href||a:matches(^0*1[^\\\\d]):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:])@href\");\n\nif(zl.size()&&(ck=String(zl.get(0)).match(/^(.*\\/\\/[^/]+)?([/?]?[^/].+[?&/_-])[^&/_-]+\\/?$/)))(jd=ck[1])&&(h=baseUrl.lastIndexOf('/',baseUrl.indexOf(jd.match(/(?:\\.[^.]+){2,}$|[^./]+\\.[^.]+$/)[0])))>8&&(\nq=baseUrl.indexOf(':'),\n(bas=java.get(baseUrl=baseUrl.slice(0,q+2)+baseUrl.slice(h),{})).statusCode()==200&&java.setContent(bas.body(),baseUrl)\n),java.put(\"ck\",ck[2])}\nn",
      "tocUrl": "@js:if(java.get(\"单\")==''){\nif(java.get(\"录\")==java.get(\"目\")){\nr=org.jsoup.Jsoup.parse(result);\n\nscript=r.select(\":matchesOwn(^$)>a[href^=javascript:]:matches(全文|章[節节]|目[錄录]):not(:matches(最新))\");re=false;\n\nif(!script.size()){\nba=(bas=baseUrl.replace(/\\/$|\\.[a-zA-Z]+$/,'')).match(/(http....[^/?]+)(?:([?/])(.*))?$/);b=ba[1];v=ba[3];\n\nr.select(\"a[href~=[^a-z]page[^a-z]]:not(:matches([反正顺順逆倒]序|[全正]文|更多|全部|所有|章[節节]|作品|目[錄录]|列表)),a:not([href~=^(?!//)[^#:]+$|\"+b.split(':')[1]+\"]),:matchesOwn(\\\\S)>a,a[href~=javascript:|#],a:matches(^\\\\S{1,4}$):not(:matches([反正顺順逆倒]序|[阅閱][讀读]|查看|展[开開]|进入|[全正]文|更多|完整|全部|所有|目[錄录]|列表|章[節节]):not(:contains(分类)))\").remove();\n\ny=r.select(\"a[href~=(?i)catalog|contents|chapters|mulu|(^|[^a-z])ml|showchapter|(^|chapter[/_-]?|\"+v.replace(/(.+)((\\/\\d\\d)\\d+)$/,\"$1$3$2\")+\"[/_-])(more|list|all)|sort[/=_-]asc]\");\n\nif(!y.size()){b3='';\n\nif(ba[2]==\"?\"){\nb3='[href~=^[^?]+$],'\n}else if(ba[3]){\nb3=ba[3].replace(/[*$|?+\\\\\\^\\[\\](){}]/g,'\\\\$0');\n\nb3=\"[href~=\"+b3+\"(\\\\.[^.]+|/\\\\d+(\\\\.[^.]+|/)?)?$],[href~=[/?]\"+b3.replace(/[&/_-][^/_-]+$/,'')+\".*$]:not([href~=[/?]\"+b3.replace(/[/_-]/g,'[/_-]')+\"]),\"}\n\ny=r.select(\"a:not(\"+b3+\"[href~=(?i)(^|[^/])[?/].*((book|[^a-z])(info|case)[^a-z]|(cid|buy)[^a-z]|desc|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/chapter|/index/|/d/],:matches((?i)^$|[0-9零〇一二三四五六七八九十百千万、，：；？！。…‘’“”（）()]|[票榜:：.]|推荐|排行|等级|说明|收藏|书评|简介|分[类卷]|简介|作者|手机|软件|应用|安装|客户|移动|pc|电脑|安卓|苹果|下载|最新|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub))\")}\n\nif(y.size()){\nys=y.select(\"a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|read|all]:matches([反正顺順逆倒]序|全文|章[節节]|目[錄录]):not(:matches(阅读)),a[href~=(?i)catalog|contents|chapter|(^|[^a-z])ml|mulu|read]:matches(更多|列表),a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|all]:matches(^$),a:matches(^[^\\\\u4e00-\\\\u9fa50-9]*([反正顺順逆倒]序|全文(免[費费])?[阅閱][讀读]|(点击|查看|展[开開]|进入|返?回到?)*([全正]文|(更多|完整|全部|所有)?(章[節节]|(作品)?目[錄录])+)+(列表)?(\\\\s*(查看|展开)?更多)?)[^\\\\u4e00-\\\\u9fa50-9]*$)\");zt=false;\n\nif(!ys.size()){\nba=bas.match(/(\\?(?:[^=]+=)+)(.+)$/)||bas.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/index[^/]*)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/))id=xi[1];\nif(ba[1])if(xi=ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=/^\\d$/.test(id)||!xi[1].indexOf(id)?xi[1]:\"(\"+id+\"|\"+xi[1]+\")\";\n\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?\"+id+\"([?_-][a-z=_-]*0|\\\\.[^.]+|[/?]([^\\\\d]*|[^/\\\\d]*/?|(list|more|all)([=_-][a-z]*)?\\\\d+[^\\\\d]*)?)?(&.+)?$]:not(:contains(\"+(bs=String(book.name)[0])+\"))\");\n\nif(!ys.size()){zt=true;\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?(\\\\d+/\"+id+\"[_-]\\\\d+[^\\\\d]*|\"+id+\"[_-][a-z_-]*1[^\\\\d]*)$]:not(:matches(阅读|\"+bs+\"))\")}}\n\nif(ys.size()){\nif((re=ys.select(\"[href~=(/|^)[^.]+$]\")).size())ys=re;\nre=String(ys.first().attr(\"href\"));\n\nfor(x=1;x<ys.size();x++)if((xs=String(ys.get(x).attr(\"href\"))).length>re.length)re=xs;\n\nif(/(?:[2-9]\\d*|1\\d+)[^\\d]*$/.test(re)){\nif(!zt&&(q=re.match(/^(.*[^/])?[&?/].*(?:catalog(ue)?|contents|(?:show)?chapters?|mulu|ml|more|all|list|page)(?:[=_-][a-z]*)?\\d+[^\\d]*$/i))&&v==(q[1]||'').replace(/^http....[^/?]+/,''))zt=true;\nif(zt)re=re.replace(/\\d+(?=[^\\d]*$)/,\"☯1\")}\n\n}}}\n\nre=String(!re?baseUrl:(java.put(\"基\",baseUrl),/^\\/[^/]/.test(re)?b+re:/^https?:/.test(re)?re:/^\\/\\//.test(re)?b.split('//')[0]+re:String(baseUrl).replace(/[^/]*$/,'')+re))}else re=baseUrl;\n\nr=re.replace(/(?:[☯?&/_-][^\\d?/&_-]*[01])+[^\\d]*$/,\"\");\njava.put(\"ba\",r);\nre=re.replace(\"☯\",\"\")}else re=baseUrl;\n\njava.get(\"跳\")==1||re==baseUrl&&/,/.test(book.bookUrl)?re+',{\"webView\":true}':re",
      "wordCount": "@get:{s}"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr)\n.replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{\nn=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t\n}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr",
      "imageStyle": "FULL",
      "nextContentUrl": "@js:if((r=java.getStringList((nx=java.get(\"next\"))+\"a:matches(第二[頁页]|下[一\\\\s]*[頁页]):not([href~=^javascript:|^#])@href||a:matches(下[一\\\\s]*[篇章回节節话話]):not([href~=^javascript:|^#])@href||a[href~=[_-]\\\\d+(/|\\\\.[a-z]+)?$]:has(i,img):not(:matches(\\\\S),[href~=^javascript:|^#])@href\")).size()){\nif(~String(book.tocUrl+(nextChapterUrl||'')).indexOf(r=String(r.get(r.size()-1)))||~r.indexOf(nextChapterUrl||String(book.tocUrl).replace(/.+(?=_\\d+\\/$)/,'')))r=null\n}else r=null;\nif(r){if(nx!='')chapter.putVariable(\"next\",(n=r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1))==r?'':'a[href=\"'+n+'\"]@href||');\nr+java.get(\"动\")}",
      "replaceRegex": "@js:if(java.get(\"原\")==1){result}else{\nresult=result.replace(/⚙️([^\\u4e00-\\u9fa5⚙️]+|[零〇一二三四五六七八九十百千万\\s]+|(?!第[零〇一二三四五六七八九十])[\\u4e00-\\u9fa5]+)⚙️/g,'$1').split('📑');\nl=result.length-1;\nwhile(l)if(r=result[--l].match(/^(\\n+(?:[^\\n]{1,30}\\n+){1,3})([\\S\\s]+)$/))result[l]=r[1]+r[2].replace(/⚙️/g,'');\nresult.join('📑')\n.replace(/—/g,\"─\")\n.replace(/[·۰•・]/g,\"・\")\n.replace(/\\s*(?:︴[^\\n　]+\\s+)*📑\\s*|^\\s*(︴[^\\n　]+\\s+)*|\\s*(?:　　|\\n)(?:[\\s&#a-zA-Z0-9]*;)?[\\s　?]*/g,\"☯\")\n.replace(/(?:︴[^☯]*☯)+(?=︴)|☯(?:温馨|[^a-zA-Z0-9\\u4e00-\\u9fa5☯]+)提示.?[:：][^☯]+|☯[^☯]+字体不会安装.?请百度[^☯]+|☯.{0,2}正版订阅在阅文旗下的起点和QQ书城，可以第一时间看到最新章节.{0,2}(?=☯)|︴\\s*第?[〖【『「（《〈〔［｛\\[{(][^☯]+(?=☯)|☯第\\s*[（(][^（()）]+[)）][頁页](?=☯)|[^☯]*(?:关注|[微vVＶｖ][^\\u4e00-\\u9fa5A-Za-z0-9]*[信xXｘＸ]|公[^\\u4e00-\\u9fa5]*众[^\\u4e00-\\u9fa5]*号){2,}[^☯]*|(?:&#?[a-z0-9]*;?)+(?=;|☯);*|read[sx][；;?？]+/g,\"\")\n.replace(/\\s+/g,\" \")\n.replace(/☯[ ☯]*/g,\"\\n\")\n.replace(/(\\n[〖【『「（《〈〔［｛\\[{(]?)([pPＰｐ][SsｓＳ]+(?=[ ：:;；，,、。.─\\d\\u4e00-\\u9fa5])[^\\n]+)/g,\"$1🌕$2\")\n.replace(/\\[\\[\\[[^\\[\\]]+http:file2.qidian.comchapters(.{5,6})(..)([^\\[\\]]{35})\\]\\]\\]/g,'<img src=\"http://file2.qidian.com/chapters/$1/$2/$3\">')\n.replace(/(<img )[^>]*(src=\"[^\"]+\")[^>]*(>)|((?: ?[＋+－-]?[0-9０-９]+(?:[．.／/][0-9０-９]+)?[％%:：]?[a-zA-Z]*)+ ?|[ _＿－-]?[a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９]+)/g,\"$1$2$3☯$4☯\")\n.replace(/☯[・。](?=☯)/g,\"☯.\")\n.replace(/,\\n/g,\"，\")\n.replace(/!(?=\\n)/g,\"！\")\n.replace(/\\?(?=\\n)/g,\"？\")\n.replace(/(<[^<]+)☯☯/g,\"⚙️$1⚙️\\n\")\n.replace(/(?:\\n[^āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─🌕︴\\n]+|([。？！…”』」】〗])[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─☯︴\\n]+[\\u4e00-\\u9fa5]+)?[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─⚙️☯︴\\n]+(?=\\n)|[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*☯([a-zA-ZＡ-Ｚａ-ｚ]*[āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ][a-zA-ZＡ-Ｚａ-ｚ]*)☯[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*/g,\"$1$2\")\n.replace(/[^!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜<（〈〔［｛({\\[\\]})｝］〕〉）>＞’”》」』】〗︴🌕]*(?:☯[^.．!(),\\n\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗⚙️]+|([^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘<＜（〈〔［｛({\\[\\]})｝］〕〉）＞>’”》」』】〗⚙️])(?!\\1)|☯(?=[^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗][!(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗])|[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}]){4,}|[^；;％%～~?？!！\"'”’。…─\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}](?:[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=[)｝］〕〉》）」』】〗\\]}]))?/g,\"📑\")\n.replace(/([；;％%～~?？!！\"'”’。…─])📑(?=[)｝］〕〉》）」』】〗\\]}])/g,'$1')\n.replace(/(?:([\\n。？！])[^\\n。？！]{1,10})?[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑|🌕)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})](?:[^。]{0,5}(?:[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})]|[^📑!,()\\s\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]+))*(?:(?:[^\\n]{1,10}|(?:[\\u4e00-\\u9fa5]{0,5}[，、])*[\\u4e00-\\u9fa5]+[！。]?)(?=\\n))?/g,\"$1\")\n.replace(/((?:[请請][记記]住)?[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]*(?:(?:[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、：，；？！。…─「」‘’“”（）《》〖〗【】]+[*(), \\u4e00-\\u9fa5、，:：；？！。…─「」‘’“”（）《》〖〗【】]{1,3})*[^*︴📑☯⚙️🌕\\s&;(),āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜa-zA-ZＡ-Ｚａ-ｚ0-9０-９\\u4e00-\\u9fa5、,，:：;；?？!！。…～~─'\"‘’“”【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}％%・/／＝=_＿.．＋+－-]+(?!(?:[^>]+>)?⚙️)|☯[^☯\\n]+☯\\.☯[^☯\\n]+☯|本[文书](?:首发|来自)|(?:章节不完整.?|完整章节)?请.{2,6}(?:搜索|百度|引擎|关键[词字])+|(?:[阅閱][讀读]|访问|訪問|[網网地][站址]|链接|鏈接|[\\u4e00-\\u9fa50-9a-zA-Z]{0,4}(?:文学|中文|[網网]))+[:：]|[\\u4e00-\\u9fa50-9a-zA-Z]{0,6}(?:[網网地][站址]|链接|鏈接)为|.{2,4}文[学學][網网]|[请請].{2,4}收藏(?:.{0,2}推[荐薦])?|(?:天才)一秒[記记]住|，?請?訪問|(?:[更最][快新]|[快高]速|热门|(?:[阅閱][讀读])?完整|本|(?:官[網网]|本站).{0,2})(?:章[節节]|小说|更新|[網网地][址站][:：]?|快速)|更新(?:速度)?[最更]?快|(?:(?:无错)?小说|正版|免费|全[文本]|在线|访问|訪問|txt|TXT|继续|各种|推[荐薦]|收藏|分享|交流|你?喜欢的)+(?:全文|免费|在线|[阅閱]?[讀读]|下载|章[節节]|小说|好书)|章[節节](?:目录|列表)|小说[網网](?:更新)?|手打全文|[纯全](?:手打|文字)|手机看书|手机版|笔趣阁|(?:本站|[網网]站|站内|看)?无(?:任何)?(?:广告|弹窗|防盗)(?:章节)?|不弹窗|(?:(?:請|请|或者?)?(?:訪問|访问|[電电手][腦脑机機]|[網网][址站]|用[户戶]|浏览|瀏覽|閱讀|阅读|看小说|看漫画)){2,}|看小说|看漫画|(?:用[^\\n]{2,6})?(?:[追看]书|小说)(?:就用|软件|☯[^☯]+☯)，?|用[^\\n]{2,6}[追看]书|(?:..的)?(?:最佳选择|阅读体验)|(?:推[荐薦]|收藏|分享)(?:本站|我们)|小说..版|文章质量更好|谢谢各位(?:读者|书友)支持|水印广告测试|本章未完|请翻页|点击下一页|领.{0,2}红包|同步更新《[^《》]+》|关注[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+[)｝］〕〉》）」』】〗\\]}])(?:[* (),\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]{0,3}[^⚙️📑*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]+|[….。!！]+(?=\\n))*|⚙️(?!<)[^⚙️\\n]+⚙️)/g,\"\\n⚙️$1⚙️\\n\")\n.replace(/⚙️(<[^<>]+>)⚙️\\n|[〖【『「（《〈〔［｛\\[{(](?:[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}\\n⚙️(?!\\s*\\S\\s*⚙️).+⚙️\\n*)+[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}[)｝］〕〉》）」』】〗\\]}]|(🌕)\\s*⚙️|⚙️\\n[^\\u4e00-\\u9fa5]{0,5}\\n⚙️|\\n⚙️\\s*(\\S)\\s*⚙️\\n(?![^⚙️]{1,3}⚙️)|(⚙️\\n)|([，、；])[\\s,，。、…:：;；?？!！`’]*[,，。、…:：;；?？!！`’](?!⚙️)|\\n[\\s,，。、…:：;；?？!！`’]*(?=[,，。、:：;；?？!！])|([：？！。…─])(?:[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=\\n)|[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+)|☯/g,\"$1$2$3$4$5$6\")\n.replace(/([)）？！?!…」』”\\s。])(?:[^\\n（(🌕)）”』」’。]{0,5}(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n”』」。]{0,5}📑)[^（()）\\n。]{0,5}(?:\\n⚙️.+⚙️(?:\\n(?=\\n⚙️|[^（()）\\n]{1,5}\\n))?|[^（()）\\n。]{0,5}📑(?:[^📑]{1,5}(?=\\n⚙️))?)+(?:[^（()）\\n]{1,5}(?=\\n))?|(?:(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n。]{0,5}📑)[^（()）\\n]{0,5}){2,}|[^（(🌕)）”』」’\\n。]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|同步|下载|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度|[插说]一?[下句]话?，[\\u4e00-\\u9fa5]{0,5})[^（()）\\n]{0,5})*(?:📑|\\n⚙️[^\\n]+⚙️\\n)[^（()）\\n]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|下载|同步|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度)[^（()）\\n]{0,5})*|[^（(🌕)）\\n”』」’。]{0,3}\\n⚙️.+⚙️\\n[^（()）\\n。]{0,3})(?:[\\u4e00-\\u9fa5]+[！。]?|[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]+)?(?=\\n)))+|\\n⚙️[^\\u4e00-\\u9fa5]+⚙️\\n|📑|\\s*︴\\s*|\\n?⚙️\\n?|\\n[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]{2,}\\n[^🌕a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n“《‘【〖『「]*/g,\"$1\")\n.replace(/(?:(?:\\n🌕[^\\n]*)+(?:\\n+[^\\n]+){0,4}|\\n(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|[^\\n]*起点(?:原创|中文)[^\\n]*|[〖【『「（《〈〔［｛\\[{(]?未完待续[^\\n]*)[^\\u4e00-\\u9fa5<>]*$|^\\s*(?:(?:[^\\n]+\\n+){0,4}(?:🌕[^\\n]*\\n?)+|(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|，[^\\n]+)\\n|(?:^|\\n)[^a-z0-9A-Z\\u4e00-\\u9fa5]*(?=\\n)|🌕|\\n\\s*[a-zA-Z]+\\s*$/g,\"\")}",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "bookList": "",
      "bookUrl": ""
    },
    "ruleSearch": {
      "author": "class.book-meta-l.0@text",
      "bookList": "class.book-li",
      "bookUrl": "class.book-li@a@href",
      "checkKeyWord": "极致心瘾",
      "coverUrl": "img@src",
      "intro": "class.book-desc@text",
      "kind": "class.tag-small-group origin-right@text",
      "name": "class.book-title@text",
      "wordCount": "class.tag-small-group origin-right@em.-1@text"
    },
    "ruleToc": {
      "chapterList": "@js:if(java.get(\"单\")==''){\nsrc=org.jsoup.Jsoup.parse(src);\n\nif((result=java.get(\"录\"))==\"\"){if(页=(result=src.select('a[href~=\\\\S]:matches(下[一\\\\s]*[页頁]|下[一二三四五六七八九十百千万〇零0-9]{2,}章):not([href~=^#|javascript:])')).size())result=result.first().attr('href')\n}else{网=String(result).split(\"🌕\");\nfor(i=3,页=+网[0],result=网[1]+2+网[3];i<=页;i++)result+='\\n'+网[1]+i+网[3];\nresult=String(result)}\n\nif(页)java.put(\"页\",/,/.test(book.tocUrl)?result.split('\\n').join(',{\"webView\":true}\\n')+',{\"webView\":true}':result);\n\n嗅=()=>String(src).match(/[\\[(]([\"'])<[a-z]+[ >][^\\[\\]()]+<\\/a>(?:[^\\[\\],()]*<\\/[a-z]+>)?\\1[\\])]/);\n转=it=>it.replace(/\\\\[Uu]([0-9a-zA-Z]{4})/g,(_,it)=>String.fromCharCode(parseInt('0x'+it)));\n兜=()=>src.select(':matchesOwn(^$|[0-9〇一二三四五六七八九十])>a:matches(\\\\S):not(:has(*>*>:not(span)),[href~=(?i)passport|\\\\.aspx$|\\\\.php$|^https://[^/]+(/|index\\\\.[a-z]+)?$|(^|[^/])[?/].*((book|[^a-z])(info|case|page|reg|Game|Play)[^a-z]|buy[^a-z]|SystemInfo|hot|sort|desc|asc|top|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/list\\\\d*([/_-][^/_-]+/?)?$|\\\\d+_\\\\d+_\\\\d+|target=iframe|https%],:matches((?i)^((点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)[\\\\s.端版]*(?=$|点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)|[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?返回.*(简介|书页|目录)[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?|[<>-]+|\\\\d+-\\\\d+章|书页|目录|简介|[上下首尾]([一\\\\s]*[页頁]|[\\\\s\\\\d零〇一二三四五六七八九十百]*章)|[↑\\\\[]?[倒正反逆顺順]序[↓\\\\]]?)$))');\n\nif((zt=java.get(\"嗅\"))!=''){\nif(zt>0&&(嗅=嗅())){\nsrc=嗅[0];\nif(zt==2)src=转(src);\nsrc=org.jsoup.Jsoup.parse(src)}\nsrc.select(java.get(\"除\")).remove();\nif(java.get(\"兜\")==1)src=兜();\nsrc=src.select(java.get(\"查\"))\n\nif(!页){for(首=String(java.get(\"首\")).split('\\n'),ss=src.size(),i=0;i<ss;i++)if(首[i]!=src.get(i)){\nif(i>1)src.subList(1,i).clear();break;}}\n\n}else{\nbook.putVariable(\"除\",除=\"meta,link,a:has(img),\"+((zt=java.get(\"全\")!=1)?\"a[href$=\"+String(book.tocUrl).replace(/,\\{\"webView\":true\\}|^.{8}[^/]*/g,'')+\"],\":\"\")+(基=String(java.get(\"基\")),基==''?'':\"a[href$=\"+基.replace(/^.{8}[^/]*/,'')+\"],\")+\"a[href~=javascript:|#|[a-z]+[A-Z][a-z]+Id[=_-]|[^/][/?&]sub[A-Z]|action=list],a:matches(^$|最新章节$|^[^\\\\u4e00-\\\\u9fa5A-Z0-9]*(正文|.{0,2}书架|(免费|在线|开始|立即|全文|从头|点击|正文)+[试阅]读|[^\\\\s\\\\d外内楔前后卷篇章]*(更新调整|[两一二三四五六七八九十]+连更|作者[:：给要有]|双倍月票|感言|推书|推[a-z0-9A-Z_\\\\u4e00-\\\\u9fa5-]+书|[求个请投点下张](月?票|收藏|订阅|推荐)|(感谢|作者)[^\\\\s]*(读者|书友|大家|各位)|[书点]评[^\\\\s]*活动|[没有空]更新|没时间更新|请个?假|关于本书|关于更新|打赏名单|起点活动)[^\\\\s]*)[^\\\\u4e00-\\\\u9fa5A-Z0-9]*$)\");\n\nbook.putVariable(\"嗅\",(基=嗅())?(src=org.jsoup.Jsoup.parse((zt=/\\\\[Uu]([0-9a-zA-Z]{4})/.test(基=基[0]))?转(基):基),zt)?2:1:0);\nsrc.select(除).remove();\n\nif(zt=java.get(\"全\")!=1){\n找=ll=null;\n$=it=>(qc=ll,查=找,ll=src.select(找=it)).size()>14&&(查=it,src=re=ll);\n\nif(!(((ck=java.get(\"ck\"))!=\"\"&&$(\"[href~=\"+ck+\"(?!index(/|\\.[a-z]+)?$)[^.?/_-][^&/_-]*/?$|/[vV][iI][pP][_-]?([Rr]ead|[Cc]hapter|action=article)|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&]*$]\"))||$(\"[href~=^[a-z0-9]+(/|\\\\.[^./]+)?$]\"))){\nif(qc&&qc.size()>ll.size())找=查,ll=qc;\n\n$=it=>(re=src.select(it)).size()&&(查=it,src=re);\n\nif(!($(\"[data-cid]\")||$(\"[href~=(?i)(^|[/_-])(chapter|read)+([_-]?id)?/[^/_-]+[/_-][^/_-]+]\")||$(\"[href~=(?i)(^|[&?/_-](book|novel|comic|manhua|mh?)?)(chapter|read)+([_-]?id)?[?/=]]\")||$(\"[href~=(?i)[&?/_-]cid[&?/_=-]]\")||$(\"[data-href]\"))){\nsrc=兜();\nbook.putVariable(\"兜\",1);\n\nba=(ba=String(java.get(\"ba\"))).match(/(\\?(?:[^=]+=)+)(.+)$/)||ba.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/|\\/index[^/]*|\\.[^/.]+)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/)||ba[1]&&ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=xi[1];\n\n$(\"[href~=([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\\\\d+]:not([href~=\"+id+\"[^\\\\d]*$]),[href~=/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[a-zA-Z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?]*$|([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\"+id+\"(/|\\\\.[^.]+|&.+)?$]\")||$(\"[title]\")||$(\"[href~=/view/\\\\d+\\\\.[a-zA-Z]+$]\")}\nif(re.size()<ll.size())查=找,src=ll}}\n\nif(!(zt&&re.size()))src=src.select('a'),查='a';\nif(查)book.putVariable(\"查\",查);\nif(页)java.put(\"首\",src)}\n\nsrc}else if((list=java.get(\"单\"))!=1){\n\nif((网=String(list).split(\"🌕\")).length>1){\nfor(i=+网[2],x=+网[0],j=2,list=\"<a href='\"+baseUrl+\"'>正文1</a>\";i<=x;i++,j++)list+=\"<a href='\"+网[1]+i+网[3]+\"'>正文\"+j+\"</a>\"}\n\norg.jsoup.Jsoup.parse(list).select('a')\n\n}else org.jsoup.Jsoup.parse(\"<a href='\"+baseUrl+\"'>正文</a>\").select('a')",
      "chapterName": "text",
      "chapterUrl": "href@js:chapter.putVariable(\"next\",'a[href~=(?:^|[?/])'+(r=result.trim().replace(/([*$|?+(){}\\[\\]\\^\\\\])/g,'\\\\$1')).match(/[^?/=.]+(?:=(?![01]$)[^=]+)*(?=\\/*$|\\.[^?/.]+$|=[01]$)/)[0]+'[=/_-]2(?:\\\\/|\\\\.[^?/.]+)? *$]@href||a[href~=(?:^|[?/])'+r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1)+' *$]@href||');result+java.get(\"动\")",
      "isVip": "",
      "nextTocUrl": "@js:java.get(\"页\")",
      "updateTime": ""
    },
    "searchUrl": "https://m.xs8.cn/so/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "作者🍟",
    "bookSourceGroup": "漫画",
    "bookSourceName": "包子漫画（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://cn.bzmanga.com",
    "customButton": false,
    "customOrder": 131,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最新上架::/list/new\n全部::/classify\n国漫::/classify?region=cn&page={{page}}\n中国::/classify?region=cn&page={{page}}\n日本::/classify?region=jp&page={{page}}\n欧美::/classify?region=en&page={{page}}\n连载中::/classify?state=serial&page={{page}}\n已完结::/classify?state=pub&page={{page}}\n都市::/classify?type=dushi&page={{page}}\n冒险::/classify?type=mouxian&page={{page}}\n热血::/classify?type=rexie&page={{page}}\n爱情::/classify?type=aiqing&page={{page}}\n恋爱::/classify?type=lianai&page={{page}}\n耽美::/classify?type=danmei&page={{page}}\n武侠::/classify?type=wuxia&page={{page}}\n格斗::/classify?type=gedou&page={{page}}\n科幻::/classify?type=kehuan&page={{page}}\n魔幻::/classify?type=mohuan&page={{page}}\n侦探::/classify?type=zhentan&page={{page}}\n推理::/classify?type=tuili&page={{page}}\n玄幻::/classify?type=xuanhuan&page={{page}}\n日常::/classify?type=richang&page={{page}}\n生活::/classify?type=shenghuo&page={{page}}\n搞笑::/classify?type=gaoxiao&page={{page}}\n校园::/classify?type=xiaoyuan&page={{page}}\n奇幻::/classify?type=qihuan&page={{page}}",
    "lastUpdateTime": 1759430671956,
    "respondTime": 7793,
    "ruleBookInfo": {
      "author": "class.comics-detail__author@text",
      "coverUrl": "tag.amp-img.0@src##.w=.*##",
      "intro": "class.comics-detail__desc@text",
      "kind": "class.tag-list@text## ##,",
      "lastChapter": "class.supporting-text@tag.a@text",
      "name": "class.comics-detail__title@text",
      "tocUrl": "class.comics-chapters@tag.span@href"
    },
    "ruleContent": {
      "content": "class.comic-contain@img@html##cdn##mh",
      "nextContentUrl": "class.next_chapter@text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.tags@text",
      "bookList": "class.comics-card",
      "bookUrl": "tag.a@href",
      "checkKeyWord": "非人哉",
      "coverUrl": "tag.amp-img.0@src##.w=.*##",
      "kind": "class.tabs cls@text",
      "name": "class.comics-card__title@text"
    },
    "ruleToc": {
      "chapterList": "class.pure-g[3,4]@class.comics-chapters__item||class.pure-g.2@class.comics-chapters__item[-1:0]",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href##.*comic_id=(.*?)&.*chapter_slot=(.*)##https://cn.dzmanga.com/comic/chapter/$1/0_$2.html",
      "preUpdateJs": "book.canUpdate=false"
    },
    "searchUrl": "/search?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "by阿鬼\n🉑复制原网站详情页链接添加书籍！\n步骤：去原网站复制详情页链接→书架→右上角三点→添加网址→确认→等待添加成功！\n🈶可能会添加失败，是因为网络的问题，等过一小段时间即可！",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞三四娱乐[无发现]",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.san421.com/",
    "bookUrlPattern": "https?://www.san421.com/post/\\d+.html",
    "customButton": false,
    "customOrder": 133,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\t\"User-Agent\":\"Mozilla/5.0 (Linux; Android 13; V2148A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/128.0.6613.146 Mobile Safari/537.36\",\n\t\"referer\":\"https://www.san421.com/\"\n\t}",
    "lastUpdateTime": 1753092456324,
    "loginUrl": "",
    "respondTime": 2133,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "@get:{i}",
      "init": "@put:{n:\".article-title@a@text\",\nc:\".article-meta@li[1]@text&&.article-meta@li[0]@text\",\nl:\".chapter-navigation@li[-1]@text\",\nd:\".dis@text\",\ni:\".c-img@img src\"}",
      "intro": "@get:{d}",
      "kind": "@get:{c}##最后修改:|分类：",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".content@.article-content@.img-placeholder-wrap[!0]@html",
      "imageStyle": "FULL",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleSearch": {
      "bookList": ".box",
      "bookUrl": "a@href",
      "coverUrl": ".focus@img src",
      "kind": ".cat.label.label-important@text&&.post-tags@a@text&&.subtitle@text&&.text-muted.time@text##最后修改:",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": ".chapter-navigation li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/?s={{key}},{\n  \"charset\": \"UTF-8\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "国内发布页：https://www.asw2.cc/",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🌸爱丽丝书屋(免翻)",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xn--vcsx64d.alicesw12.xyz/",
    "customButton": false,
    "customOrder": 135,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"🔖TOP50🔖\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"总排行\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/other/rank_hits/order/hits.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"月排行\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/other/rank_hits/order/hits_month.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"周排行\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/other/rank_hits/order/hits_week.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"日排行\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/other/rank_hits/order/hits_day.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"🔖分类（人气）🔖\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/71/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"校园\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/61/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/62/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"乡村\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/63/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/64/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"乱伦\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/65/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/67/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/68/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"系统\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/69/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"明星\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/72/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"同人\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/73/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"强奸\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/74/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"奇幻\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/75/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"经典\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/79/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"穿越\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/70/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"凌辱\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/46/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"反差\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/22/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"堕落\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/18/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"纯爱\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/19/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"伪娘\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/52/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"萝莉\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/48/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"熟女\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/56/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"禁忌\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/51/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"NTR\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/54/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"媚黑\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/53/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"绿帽\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/55/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"调教\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/58/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"女主\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/59/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"正太\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/50/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"下克上\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/43/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"百合\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/47/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  },\n  {\n    \"title\": \"重口\",\n    \"url\": \"https://xn--vcsx64d.alicesw12.xyz/all/id/21/order/hits+desc.html?page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.2\n    }\n  }\n]",
    "lastUpdateTime": 1768888058456,
    "loginUrl": "https://xn--vcsx64d.alicesw12.xyz/user/user/login.html",
    "respondTime": 5048,
    "ruleBookInfo": {
      "author": "//div[@class='box_info']/table/tbody/tr[1]/td/div/p[1]/a[1]/text()",
      "coverUrl": "//div[@class='pic']/img/@src",
      "intro": "@js:\nvar info = java.getString(\"//div[@class='pic']/div[@class='tLJ']/text()\")\nvar intro = java.getString(\"//div[@class='box_info']/table/tbody/tr[3]/td/div[@class='intro']/text()\")\nintro+\"\\n◤-----------------◥\\n\"+info+\"\\n◣-----------------◢\\n\"",
      "kind": "//div[@class='box_info']/table/tbody/tr[3]/td/p[2]/a/text()",
      "lastChapter": "//div[@class='box_info']/table/tbody/tr[1]/td/div/p[1]/a[2]/text()",
      "name": "//div[@class='box_info']/table/tbody/tr[1]//h1/text()",
      "tocUrl": "//div[@class='book_newchap']//a[contains(text(),'查看所有章节')]/@href"
    },
    "ruleContent": {
      "content": "//div[contains(@class,'read-content')]/p"
    },
    "ruleExplore": {
      "author": "//li[@class='four']/text()",
      "bookList": "//div[@class='clearfix rec_rullist']/ul",
      "bookUrl": "//li[@class='two']/a/@href",
      "kind": "@js:\nvar tag  = java.getString(\"//li[@class='sev']/span/a/text()\")\nvar views=  java.getString(\"//li[@class='diyhot']/text()\")\ntag+\",👀\"+views",
      "lastChapter": "//li[@class='three']/a/text()",
      "name": "//li[@class='two']/a/text()",
      "wordCount": "//li[@class='five']/text()@js:result+\"字\""
    },
    "ruleSearch": {
      "author": "//p[@class='mb-1 text-muted']/a/text()",
      "bookList": "//div[@class='list-group']/div[@class='list-group-item']",
      "bookUrl": "//h5/a/@href",
      "checkKeyWord": "美母为妻",
      "intro": "//p[@class='content-txt']",
      "kind": "<js>\nvar status = java.getString(\"//h5/small/text()\");\nvar tags = java.getString(\"//p[@class='text-muted']/a/text()\");\nvar views = java.getString(\"//p[@class='mb-1 text-muted']//text()\").match(/\\d+?.\\d+/g)[1]\nstatus+\",👀\"+views+\",\"+tags\n</js>\n##\\[|]##",
      "name": "//h5/a//text()##\\d+.|\\n##",
      "wordCount": "//p[@class='mb-1 text-muted']//text()@js:\nresult.match(/\\d+?.\\d+万/g)[0]+\"字\""
    },
    "ruleToc": {
      "chapterList": "//ul[@class='mulu_list']/li",
      "chapterName": "//a/text()",
      "chapterUrl": "//a/@href"
    },
    "searchUrl": "https://xn--vcsx64d.alicesw12.xyz/search.html?q={{key}}&f=_al",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "奇漫屋子（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.qimanwu.app",
    "customButton": false,
    "customOrder": 136,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nfunction qimanwu() {\n  let disc = [];\n  let Html = java.ajax(`${source.key}/custom/search`);\n  let doc = org.jsoup.Jsoup.parse(Html);\n  let tag = doc.select(\".groupList li a\");\n  Array.from(tag).forEach(a => {\n    disc.push({\n      title: a.text(),\n      url: a.attr(\"href\") +\"/page/{{page}}\",\n      style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: 0.45\n      }\n    });\n  });\n  \n  disc.push({\n    title: \"精品漫画\",\n    url: \"/custom/boutique\",\n    style: {layout_flexBasisPercent: 1, layout_flexGrow: 0.45}\n  });\n  \n  disc.push({\n    title: \"最近更新\",\n    url: \"/custom/update\",\n    style: {layout_flexBasisPercent: 1, layout_flexGrow: 0.45}\n  });\n  \n  disc.push({\n    title: \"热门推荐\",\n    url: \"/custom/recom\",\n    style: {layout_flexBasisPercent: 1, layout_flexGrow: 0.45}\n  });\n\n   return JSON.stringify(disc);\n}\nqimanwu();",
    "header": "@js:\nJSON.stringify({\n\"User-Agent\": java.getWebViewUA()\n})",
    "lastUpdateTime": 1757967592977,
    "respondTime": 7317,
    "ruleBookInfo": {
      "author": "p.1@text",
      "coverUrl": "img.2@src",
      "intro": "p.5@text",
      "kind": "p.2@a@text",
      "lastChapter": "p.3@text##更新至：",
      "name": "p.0@text"
    },
    "ruleContent": {
      "content": "img@data-src||img@src\n@js:\nresult.split(\"\\n\").map(url => ` <img src=\"${url}\"> `).join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.2@text",
      "bookList": ".rankList@li",
      "bookUrl": "a@href",
      "checkKeyWord": "烂柯棋缘",
      "coverUrl": "img.0@src",
      "lastChapter": "p.1@text",
      "name": "p.0@text"
    },
    "ruleToc": {
      "chapterList": ".chapter@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{\"webView\": true}"
    },
    "searchUrl": "/search/{{encodeURIComponent(key)}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "三八小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.38xs.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 137,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734979709597,
    "respondTime": 7463,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}##.*观看小说:",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##喜欢.*请大家收藏.+更新速度全网最快。"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": "ul li",
      "bookUrl": "a.0@href",
      "kind": "span.0:-text##\\[|\\]",
      "lastChapter": "a.1@text",
      "name": ".s2@text"
    },
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": "#sitembox dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "dd.-2@text",
      "kind": "span.-3:-4:-1@text",
      "lastChapter": "a.-1@text",
      "name": "h3@text",
      "wordCount": "span.-2@text"
    },
    "ruleToc": {
      "chapterList": "#list dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.html,{\n  \"body\": \"searchtype=all&searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "爱丽丝书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xn--vcsx64d.alicesw2.sbs",
    "customButton": false,
    "customOrder": 138,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"校园\",\n    \"url\": \"{{bhost()}}/lists/61.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"贤者小说\",\n    \"url\": \"{{bhost()}}/lists/79.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"{{bhost()}}/lists/62.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"奇幻\",\n    \"url\": \"{{bhost()}}/lists/75.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"强奸\",\n    \"url\": \"{{bhost()}}/lists/74.htm&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"同人\",\n    \"url\": \"{{bhost()}}/lists/73.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"{{bhost()}}/lists/71.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"乡村\",\n    \"url\": \"{{bhost()}}/lists/63.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"{{bhost()}}/lists/64.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"系统\",\n    \"url\": \"{{bhost()}}/lists/69.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"{{bhost()}}/lists/68.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"{{bhost()}}/lists/67.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"明星\",\n    \"url\": \"{{bhost()}}/lists/72.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"乱伦\",\n    \"url\": \"{{bhost()}}/lists/65.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"穿越\",\n    \"url\": \"{{bhost()}}/lists/70.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"凌辱\",\n    \"url\": \"{{bhost()}}/lists/46.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"反差\",\n    \"url\": \"{{bhost()}}/lists/22.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"堕落\",\n    \"url\": \"{{bhost()}}/lists/18.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"纯爱\",\n    \"url\": \"{{bhost()}}/lists/19.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"伪娘\",\n    \"url\": \"{{bhost()}}/lists/52.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"性奴\",\n    \"url\": \"{{bhost()}}/lists/45.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"萝莉\",\n    \"url\": \"{{bhost()}}/lists/48.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"熟女\",\n    \"url\": \"{{bhost()}}/lists/56.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"禁忌\",\n    \"url\": \"{{bhost()}}/lists/51.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"NTR\",\n    \"url\": \"{{bhost()}}/lists/54.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"媚黑\",\n    \"url\": \"{{bhost()}}/lists/53.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"绿帽\",\n    \"url\": \"{{bhost()}}/lists/55.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"调教\",\n    \"url\": \"{{bhost()}}/lists/58.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"女主\",\n    \"url\": \"{{bhost()}}/lists/59.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"正太\",\n    \"url\": \"{{bhost()}}/lists/50.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"下克上\",\n    \"url\": \"{{bhost()}}/lists/43.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"反转\",\n    \"url\": \"{{bhost()}}/lists/23.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"羞耻\",\n    \"url\": \"{{bhost()}}/lists/34.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"百合\",\n    \"url\": \"{{bhost()}}/lists/47.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"重口\",\n    \"url\": \"{{bhost()}}/lists/21.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"{{bhost()}}/lists/57.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"人气榜\",\n    \"url\": \"{{bhost()}}/all/order/hits+desc.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"字数榜\",\n    \"url\": \"{{bhost()}}/all/order/word+desc.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"推荐榜\",\n    \"url\": \"{{bhost()}}/all/order/recommend+desc.html&page={{page}}\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\"referer\":\"{{baseUrl}}\"}",
    "jsLib": "function bhost() { \n  return \"https://xn--vcsx64d.alicesw2.buzz\";\n}\n",
    "lastUpdateTime": 1758160815853,
    "loginCheckJs": "cookie.removeCookie(source.getKey())\nresult",
    "respondTime": 79578,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": ".imgbox@img@src",
      "intro": "<br>{{@[property=\"og:description\"]@content}}",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.全部章节@href",
      "wordCount": "text.字数@text##字数：?:?\\s?"
    },
    "ruleContent": {
      "content": ".content_txt@p@html"
    },
    "ruleExplore": {
      "author": "span.2@text",
      "bookList": ".txt-list-row3@li",
      "bookUrl": "a.0@href",
      "coverUrl": "{{\"https://img.321cdn.com/img/01.png\"}}",
      "kind": "span.1@text##\\[|\\]",
      "name": "a.0@ownText"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": ".list-group-item",
      "bookUrl": "a.0@href",
      "coverUrl": "{{\"https://img.321cdn.com/img/01.png\"}}",
      "intro": "p.1@text",
      "kind": "small@text&&p.3@text##.*更新时间：|\\[|\\]",
      "name": "a.0@text##^\\d+\\.\\s",
      "wordCount": "p.0@ownText##作者：|\\s字数：|　 .*"
    },
    "ruleToc": {
      "chapterList": ".section-list@li@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{\"webView\": true}"
    },
    "searchUrl": "{{bhost()}}/search.html?q={{key}}&f=_all&sort=relevance&p={{page}}&serialize=",
    "weight": 0
  },
  {
    "bookSourceComment": "感谢关耳大大",
    "bookSourceGroup": "短剧",
    "bookSourceName": "番茄短剧（优++）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.shanhuzs.com/",
    "customButton": false,
    "customOrder": 144,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"女频恋爱\",\"url\":\"/fqsansw/5---女频恋爱-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"反转爽剧\",\"url\":\"/fqsansw/5---反转爽-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"脑洞悬疑\",\"url\":\"/fqsansw/5---脑洞悬疑-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"年代穿越\",\"url\":\"/fqsansw/5---年代穿越-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古装仙侠\",\"url\":\"/fqsansw/5---古装仙侠-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"现代都市\",\"url\":\"/fqsansw/5---现代都市-----{{page}}---.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1759589303805,
    "respondTime": 3376,
    "ruleBookInfo": {
      "kind": ".tag@a@text"
    },
    "ruleContent": {
      "content": "##\"url\":\"(.*)\",\"url_next\"##$1###@js:\nif(book.durChapterIndex==chapter.index){\n\t\tjava.startBrowser(result.replace(/\\\\/g,''),title)\n\t\tjava.toast('正在加载视频\\n视频加载较慢，请耐心等待')\n\t}\n'【刷新正文】播放\\n✅直链:\\n'+result",
      "replaceRegex": "##\\"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.col8",
      "bookUrl": "h4@a@href",
      "checkKeyWord": "断亲后",
      "coverUrl": "img@data-original",
      "kind": ".text@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "a[href^=\"/fqsanpy/\"]",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/fqsansc/{{key}}----------{{page}}---.html",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "飞卢小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.faloo.com#yc1101",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 146,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单·全部\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"最新\",\"url\":\"/y_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击\",\"url\":\"/y_0_0_0_0_0_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击\",\"url\":\"/y_0_0_0_0_0_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总点击\",\"url\":\"/y_0_0_0_0_0_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周打赏\",\"url\":\"/y_0_0_0_0_0_13_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月打赏\",\"url\":\"/y_0_0_0_0_0_17_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总打赏\",\"url\":\"/y_0_0_0_0_0_18_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"催更榜\",\"url\":\"/y_0_0_0_0_0_19_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周鲜花\",\"url\":\"/y_0_0_0_0_0_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月鲜花\",\"url\":\"/y_0_0_0_0_0_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总鲜花\",\"url\":\"/y_0_0_0_0_0_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周收藏\",\"url\":\"/y_0_0_0_0_0_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月收藏\",\"url\":\"/y_0_0_0_0_0_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏\",\"url\":\"/y_0_0_0_0_0_9_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月字数\",\"url\":\"/y_0_0_0_0_0_12_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总字数\",\"url\":\"/y_0_0_0_0_0_10_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书PK榜\",\"url\":\"/y_0_0_0_0_0_66_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月票\",\"url\":\"/y_0_0_0_0_0_15_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻·全部\",\"url\":\"/y_1_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"异世大陆\",\"url\":\"/y_1_28_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"东方玄幻\",\"url\":\"/y_1_29_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"神话传说\",\"url\":\"/y_1_50_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"转世重生\",\"url\":\"/y_1_30_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"王朝争霸\",\"url\":\"/y_1_31_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"上古神话\",\"url\":\"/y_1_56_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"变身情缘\",\"url\":\"/y_1_32_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"穿越附身\",\"url\":\"/y_1_81_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"武侠仙侠·全部\",\"url\":\"/y_6_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"传统武侠\",\"url\":\"/y_6_26_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠修真\",\"url\":\"/y_6_25_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"浪子异侠\",\"url\":\"/y_6_27_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典仙侠\",\"url\":\"/y_6_78_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"星际修真\",\"url\":\"/y_6_79_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代修真\",\"url\":\"/y_6_80_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人小说·全部\",\"url\":\"/y_44_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"动漫同人\",\"url\":\"/y_44_69_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"小说同人\",\"url\":\"/y_44_53_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"影视同人\",\"url\":\"/y_44_52_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美小说\",\"url\":\"/y_44_68_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"都市言情·全部\",\"url\":\"/y_4_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"浪漫言情\",\"url\":\"/y_4_13_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市生活\",\"url\":\"/y_4_14_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市异能\",\"url\":\"/y_4_45_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"商海沉浮\",\"url\":\"/y_4_15_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宦海风云\",\"url\":\"/y_4_17_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"职场生涯\",\"url\":\"/y_4_16_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门恩怨\",\"url\":\"/y_4_18_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"军事历史·全部\",\"url\":\"/y_3_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"穿越时空\",\"url\":\"/y_3_71_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"架空历史\",\"url\":\"/y_3_19_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史传记\",\"url\":\"/y_3_72_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"三国梦想\",\"url\":\"/y_3_73_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"人文历史\",\"url\":\"/y_3_74_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代战争\",\"url\":\"/y_3_20_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"战争幻想\",\"url\":\"/y_3_76_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"特种军旅\",\"url\":\"/y_3_21_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"科幻网游·全部\",\"url\":\"/y_2_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"虚拟网游\",\"url\":\"/y_2_33_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"电子竞技\",\"url\":\"/y_2_70_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"超黑科技\",\"url\":\"/y_2_101_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"星际科幻\",\"url\":\"/y_2_102_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"足球运动\",\"url\":\"/y_2_36_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"篮球运动\",\"url\":\"/y_2_35_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其它竞技\",\"url\":\"/y_2_34_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"恐怖灵异·全部\",\"url\":\"/y_5_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖惊悚\",\"url\":\"/y_5_24_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"推理悬念\",\"url\":\"/y_5_22_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"灵异神怪\",\"url\":\"/y_5_23_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"神秘时空\",\"url\":\"/y_5_65_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"青春校园·全部\",\"url\":\"/y_7_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"菁菁校园\",\"url\":\"/y_7_10_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园言情\",\"url\":\"/y_7_11_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"另类校园\",\"url\":\"/y_7_12_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"贵爵童话\",\"url\":\"/y_7_90_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"魔法校园\",\"url\":\"/y_7_55_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园同人\",\"url\":\"/y_7_89_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"女生小说·全部\",\"url\":\"/y_54_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"古色添香\",\"url\":\"/y_54_91_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市豪门\",\"url\":\"/y_54_92_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱耽美\",\"url\":\"/y_54_93_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越架空\",\"url\":\"/y_54_94_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门恩怨\",\"url\":\"/y_54_95_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想精灵\",\"url\":\"/y_54_96_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典言情\",\"url\":\"/y_54_48_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"轻小说·全部\",\"url\":\"/y_97_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"轻幻想\",\"url\":\"/y_97_98_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重幻想\",\"url\":\"/y_97_99_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"日常类\",\"url\":\"/y_97_100_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇其他·全部\",\"url\":\"/y_9_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"历史演义\",\"url\":\"/y_9_47_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"散文诗词\",\"url\":\"/y_9_58_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"休闲美文\",\"url\":\"/y_9_59_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"杂文笔记\",\"url\":\"/y_9_41_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇小说\",\"url\":\"/y_9_42_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"改编剧本\",\"url\":\"/y_9_63_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其他\",\"url\":\"/y_9_43_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"榜单·完本\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"最新\",\"url\":\"/y_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击\",\"url\":\"/y_0_0_0_0_2_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击\",\"url\":\"/y_0_0_0_0_2_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总点击\",\"url\":\"/y_0_0_0_0_2_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周打赏\",\"url\":\"/y_0_0_0_0_2_13_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月打赏\",\"url\":\"/y_0_0_0_0_2_17_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总打赏\",\"url\":\"/y_0_0_0_0_2_18_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"催更榜\",\"url\":\"/y_0_0_0_0_2_19_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周鲜花\",\"url\":\"/y_0_0_0_0_2_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月鲜花\",\"url\":\"/y_0_0_0_0_2_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总鲜花\",\"url\":\"/y_0_0_0_0_2_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周收藏\",\"url\":\"/y_0_0_0_0_2_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月收藏\",\"url\":\"/y_0_0_0_0_2_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏\",\"url\":\"/y_0_0_0_0_2_9_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月字数\",\"url\":\"/y_0_0_0_0_2_12_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总字数\",\"url\":\"/y_0_0_0_0_2_10_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书PK榜\",\"url\":\"/y_0_0_0_0_2_66_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月票\",\"url\":\"/y_0_0_0_0_2_15_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻·完本\",\"url\":\"/y_1_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"异世大陆\",\"url\":\"/y_1_28_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"东方玄幻\",\"url\":\"/y_1_29_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"神话传说\",\"url\":\"/y_1_50_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"转世重生\",\"url\":\"/y_1_30_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"王朝争霸\",\"url\":\"/y_1_31_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"上古神话\",\"url\":\"/y_1_56_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"变身情缘\",\"url\":\"/y_1_32_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"穿越附身\",\"url\":\"/y_1_81_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"武侠仙侠·完本\",\"url\":\"/y_6_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"传统武侠\",\"url\":\"/y_6_26_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠修真\",\"url\":\"/y_6_25_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"浪子异侠\",\"url\":\"/y_6_27_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典仙侠\",\"url\":\"/y_6_78_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"星际修真\",\"url\":\"/y_6_79_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代修真\",\"url\":\"/y_6_80_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人小说·完本\",\"url\":\"/y_44_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"动漫同人\",\"url\":\"/y_44_69_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"小说同人\",\"url\":\"/y_44_53_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"影视同人\",\"url\":\"/y_44_52_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美小说\",\"url\":\"/y_44_68_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"都市言情·完本\",\"url\":\"/y_4_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"浪漫言情\",\"url\":\"/y_4_13_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市生活\",\"url\":\"/y_4_14_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市异能\",\"url\":\"/y_4_45_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"商海沉浮\",\"url\":\"/y_4_15_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宦海风云\",\"url\":\"/y_4_17_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"职场生涯\",\"url\":\"/y_4_16_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门恩怨\",\"url\":\"/y_4_18_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"军事历史·完本\",\"url\":\"/y_3_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"穿越时空\",\"url\":\"/y_3_71_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"架空历史\",\"url\":\"/y_3_19_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史传记\",\"url\":\"/y_3_72_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"三国梦想\",\"url\":\"/y_3_73_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"人文历史\",\"url\":\"/y_3_74_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代战争\",\"url\":\"/y_3_20_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"战争幻想\",\"url\":\"/y_3_76_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"特种军旅\",\"url\":\"/y_3_21_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"科幻网游·完本\",\"url\":\"/y_2_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"虚拟网游\",\"url\":\"/y_2_33_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"电子竞技\",\"url\":\"/y_2_70_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"超黑科技\",\"url\":\"/y_2_101_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"星际科幻\",\"url\":\"/y_2_102_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"足球运动\",\"url\":\"/y_2_36_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"篮球运动\",\"url\":\"/y_2_35_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其它竞技\",\"url\":\"/y_2_34_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"恐怖灵异·完本\",\"url\":\"/y_5_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖惊悚\",\"url\":\"/y_5_24_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"推理悬念\",\"url\":\"/y_5_22_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"灵异神怪\",\"url\":\"/y_5_23_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"神秘时空\",\"url\":\"/y_5_65_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"青春校园·完本\",\"url\":\"/y_7_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"菁菁校园\",\"url\":\"/y_7_10_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园言情\",\"url\":\"/y_7_11_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"另类校园\",\"url\":\"/y_7_12_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"贵爵童话\",\"url\":\"/y_7_90_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"魔法校园\",\"url\":\"/y_7_55_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园同人\",\"url\":\"/y_7_89_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"女生小说·完本\",\"url\":\"/y_54_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"古色添香\",\"url\":\"/y_54_91_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市豪门\",\"url\":\"/y_54_92_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱耽美\",\"url\":\"/y_54_93_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越架空\",\"url\":\"/y_54_94_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门恩怨\",\"url\":\"/y_54_95_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想精灵\",\"url\":\"/y_54_96_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典言情\",\"url\":\"/y_54_48_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"轻小说·完本\",\"url\":\"/y_97_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"轻幻想\",\"url\":\"/y_97_98_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重幻想\",\"url\":\"/y_97_99_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"日常类\",\"url\":\"/y_97_100_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇其他·完本\",\"url\":\"/y_9_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"历史演义\",\"url\":\"/y_9_47_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"散文诗词\",\"url\":\"/y_9_58_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"休闲美文\",\"url\":\"/y_9_59_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"杂文笔记\",\"url\":\"/y_9_41_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇小说\",\"url\":\"/y_9_42_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"改编剧本\",\"url\":\"/y_9_63_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其他\",\"url\":\"/y_9_43_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1700125488396,
    "loginUrl": "https://u.faloo.com/regist/login.aspx?backUrl=https%3a%2f%2fwap.faloo.com%2f",
    "respondTime": 1004,
    "ruleBookInfo": {
      "author": ".info a.0@text",
      "coverUrl": ".cover_box img@src",
      "intro": "🔖   标签：{{@class.tagList.0@text}}{{'\\n'+'​'}}\n{{@#novel_intro@html}}##展开收起|飞卢小说(.|\\n)*",
      "kind": ".info a.1@text&&.info .tag@text&&.info li.4@text##.*：|\\s.*|小说",
      "lastChapter": ".newNode@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": ".info h1@text",
      "tocUrl": ".btnLayout@a.1@href",
      "wordCount": ".info li.2@textNodes##\\s.*"
    },
    "ruleContent": {
      "content": ".nodeContent@p@html",
      "imageStyle": "FULL",
      "replaceRegex": "##本书来自.*|本书由飞卢.*|用飞卢.*",
      "sourceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".nl_r1_author a.0@text",
      "bookList": ".novelList li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "",
      "coverUrl": "img.0@src",
      "intro": "a.2@text",
      "kind": ".nl_r1_author a.1@text&&em@text&&.date@text&&.tag@text",
      "name": "a.1@text",
      "wordCount": "i.0@text"
    },
    "ruleToc": {
      "chapterList": ".v_nodeList li",
      "chapterName": "a@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "a@href",
      "isVip": "i@html"
    },
    "searchUrl": "/search_0_{{page}}.html?t=1&k={{key}},{\n'charset': 'gb2312'\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "动漫",
    "bookSourceName": "盗随动漫（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://myself-bbs.com",
    "customButton": false,
    "customOrder": 147,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "动画连载列表::https://myself-bbs.com/forum-133-{{page}}.html\n完结动画全集::https://myself-bbs.com/forum-113-{{page}}.html\n深夜寂寞（R18+）::https://myself-bbs.com/forum-137-{{page}}.html",
    "lastUpdateTime": 1758888751456,
    "respondTime": 13395,
    "ruleBookInfo": {
      "author": "@css: div[class=\"info_info\"] ul li:nth-child(4)@text",
      "coverUrl": "@css: div[class=\"info_img_box fl\"] img@src",
      "intro": "@css: div[id=\"info_introduction_text\"]@text",
      "kind": "@css:.info_info>ul>li:eq(0)@text##作品類型: ##",
      "wordCount": "@css:.info_info>ul>li:eq(2)@textNodes##: ##"
    },
    "ruleContent": {
      "content": "@js:\nresult=java.hexDecodeToString(result)\na=result.slice(4,6)\nb=result.slice(6,8)\nc=result.slice(8,10)\nurl=`https://vpx05.myself-bbs.com/hls/${a}/${b}/${c}/${result}/index.m3u8`\nif(book.durChapterIndex == chapter.index){\njava.startBrowser(url,chapter.title);\njava.toast('正在加载视频...');\nresult = ' \\n\\n【刷新正文】跳转播放\\n不要相信且不要点击视频里的任何广告，误触后请立即返回\\n🔗直链:\\n' + url}"
    },
    "ruleExplore": {
      "bookList": "@css: ul[class=\"ml mlt mtw cl\"]>li",
      "bookUrl": "@css: .ptn>a@href",
      "coverUrl": "@css: div[class=\"c cl\"]>a>img@src",
      "name": "@css: .ptn>a@text"
    },
    "ruleSearch": {
      "bookList": "@css: li[class=\"pbw\"]",
      "bookUrl": "@css: h3[class=\"xs3\"] a@href",
      "name": "@css: h3[class=\"xs3\"]@text"
    },
    "ruleToc": {
      "chapterList": "@css: .main_list>li",
      "chapterName": "@css:a@text##(先鋒|站內)",
      "chapterUrl": "@css:.display_none>li>a@data-href##.*\\/player\\/(.*)\\s?##$1\n@js:\n`data:;base64,{{java.base64Encode(result)}},{\"type\":\"null\"}`"
    },
    "searchUrl": "http://myself-bbs.com/search.php?mod=forum& formhash=94d459ba&srchtxt={{key}}&searchsubmit=yes",
    "weight": 36
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.qbxsw.com#",
    "bookUrlPattern": "https?://m.qbxsw.com/(shu|du)_\\d+.*",
    "customButton": false,
    "customOrder": 151,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1734387013554,
    "respondTime": 3343,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\",\nt:\".now a@href\"}",
      "intro": "@get:{i}##.*观看小说:",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "@get:{t}"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*下一页继续阅读.*|喜欢.*请大家收藏.*更新速度全网最快。"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".list li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.intro@text",
      "kind": "span@text",
      "lastChapter": "a.-1@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".read li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search.html,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "短剧",
    "bookSourceName": "榴莲影视（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://66yy.net",
    "customButton": false,
    "customOrder": 152,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\t\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 11; zh-CN; PCAM00 Build/RKQ1.201217.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.58 UCBrowser/16.4.4.1295 Mobile Safari/537.36 MQQBrowser/14.6 SogouMSE/14.6\"\n\t}",
    "lastUpdateTime": 1766365247826,
    "respondTime": 637,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.myui-player__video@script.0@all##.*url\":\"(.*)\",\"url_next\":.*from\":\"(.*)\",\"server.*##$1_$2\n@js:\nres=result.match(/(.*)_(.*)/)\nurl=res[1].replace(/\\\\/g,'')\nif(res[2]==\"wjm3u8\"){\nresult=\"https://jx.wujinkk.com/dplayer/?url=\"+url\n}else if(res[2]==\"bjm3u8\"){\nresult=\"https://zy.aoxtv.com/m3u8.php?url=\"+url\n}else if(res[2]==\"tkm3u8\"){\nresult=\"https://jx.huishij.com/yun/?url=\"+url\n}else{\nresult=\"https://jx.bozrc.com:4433/player/?url=\"+url\n}\nif(book.durChapterIndex==chapter.index){\n\t\tjava.startBrowser(result,title)\n\t\tjava.toast('正在加载视频\\n视频加载较慢，请耐心等待')\n\t}\n'<p>【刷新正文】播放\\n✅直链:\\n'+result"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.detail@p.1@ownText",
      "bookList": "class.myui-vodlist__media@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a@data-original@src",
      "intro": "p.3@ownText",
      "kind": "p.2@text##(分类|地区|年份)：##,",
      "lastChapter": "class.pic-text@text",
      "name": "class.title@text",
      "wordCount": "class.pic-tag@text"
    },
    "ruleToc": {
      "chapterList": "<js>\nall=\"\"\n\n//线路个数\nlen=java.getElements('class.nav-tabs[0]@li').length\n\nfor(i=1;i<=len;i++){\n\t\n\t//获取线路名称\nfrom=java.getElements('class.nav-tabs[0]@li')[i-1].text()\n\n//获取线路的播放列表\nres=java.getElements('class.myui-content__list')[i-1]\n\n//把线路名称插入列表里，在更新时间那里显示\nres=JSON.stringify(res).replace(/<\\/a>/g,'<p>'+'🎬'+from+'</p></a>')\n\nall+=JSON.parse(res)\n}\nall\n</js>\nclass.myui-content__list@li@a",
      "chapterName": "ownText",
      "chapterUrl": "href",
      "updateTime": "p@text"
    },
    "searchUrl": "/vodsearch/-------------.html?wd={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "最新测试版可用",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "阅友小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://goway.reader.yueyouxs.com#",
    "customButton": false,
    "customOrder": 153,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1734879703168,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1006,
    "ruleBookInfo": {
      "author": "authorName",
      "canReName": "",
      "coverUrl": "bookPic",
      "init": "data.book",
      "intro": "intro",
      "kind": "classifyName&&classifySecondName",
      "lastChapter": "latestChapterName&&updateTime",
      "name": "bookName",
      "tocUrl": "@js:\ntime=Math.round(new Date()/1000);\n\nuth=\njava.HMacHex(\"b313789b-2d2a-41ce-8982-26af5271fe7c&\"+time,\"HmacMD5\",\"snY%169j\");\n\nsign=\njava.HMacHex(\"/userCenter/getChapterListbookId={{$.id}}&chapterId=0&isAll=1&platId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=1&uth=\"+uth,\"HmacSHA256\",\"snY%169j\");\n\n_p=java.desEncodeToBase64String(\"utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=1&uth=\"+uth+\"&sign=\"+sign,\"snY%169j\",\"DES/ECB/PKCS5Padding\",\"\");\n\nlet option={\n\"method\": \"POST\",\n\"body\":\"tmp=\"};\n\n\"http://dl.reader.yueyouxs.com/userCenter/getChapterList?bookId={{$.id}}&chapterId=0&isAll=1&platId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&_p=\"+java.encodeURI(_p)+\",\"+JSON.stringify(option)",
      "wordCount": "words_desc@put:{id:$.id}"
    },
    "ruleContent": {
      "content": "@js:\ntime=Math.round(new Date()/1000);\n\nuth=\njava.HMacHex(\"b313789b-2d2a-41ce-8982-26af5271fe7c&\"+time,\"HmacMD5\",\"snY%169j\");\n\nsign=\njava.HMacHex(\"/userCenter/v310/downloadChapterplatId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=2&uth=\"+uth+\"&autoBuy=false&bookId=\"+java.get(\"id\")+\"&chapterId=\"+java.get(\"chapterId\")+\"&feeState=1&inBuyView=false&isOssed=1&ossSwitch=1&readCount=2&useSrvAutoBuy=1\",\"HmacSHA256\",\"snY%169j\");\n\n_p=java.desEncodeToBase64String(\"utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=2&uth=\"+uth+\"&sign=\"+sign,\"snY%169j\",\"DES/ECB/PKCS5Padding\",\"\");\n\nlet option={\n\"method\": \"POST\",\n\"body\":\"readCount=2&inBuyView=false&isOssed=1&bookId={{java.get(\"id\")}}&autoBuy=false&feeState=1&useSrvAutoBuy=1&chapterId={{java.get(\"chapterId\")}}&ossSwitch=1\"};\n\nurl=\"https://dl.reader.yueyouxs.com/userCenter/v310/downloadChapter?platId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&_p=\"+java.encodeURI(_p)+\",\"+JSON.stringify(option);\n\njava.ajax(JSON.parse(java.ajax(url)).data.contentUrl)",
      "replaceRegex": "",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "authorName",
      "bookList": "data.list[*]",
      "bookUrl": "@js:\ntime=Math.round(new Date()/1000);\n\nuth=\njava.HMacHex(\"b313789b-2d2a-41ce-8982-26af5271fe7c&\"+time,\"HmacMD5\",\"snY%169j\");\n\nsign=\njava.HMacHex(\"/goway/goread/app/book/detailplatId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=2&uth=\"+uth+\"&bookId={{$.id}}&trace=33_33-10-1x0_40_40-4-11x{{$.id}}%3Ftype%3Dbook%26sortValue%3D%26pos%3D2\",\"HmacSHA256\",\"snY%169j\");\n\n_p=java.desEncodeToBase64String(\"utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+java.get(\"tmpToken\")+\"&st=2&uth=\"+uth+\"&sign=\"+sign,\"snY%169j\",\"DES/ECB/PKCS5Padding\",\"\");\n\nlet option={\n\"method\": \"POST\",\n\"body\":\"trace=33_33-10-1x0_40_40-4-11x{{$.id}}%253Ftype%253Dbook%2526sortValue%253D%2526pos%253D2&bookId={{$.id}}\"};\n\n\"/goway/goread/app/book/detail?platId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&_p=\"+java.encodeURI(_p)+\",\"+JSON.stringify(option)\n",
      "checkKeyWord": "",
      "coverUrl": "bookPic",
      "intro": "intro@js:String(result).match(/[^\\x00-\\xff]+/g).join(\"\")",
      "kind": "tag@js:String(result).match(/[^\\x00-\\xff]+/g).join(\"\")",
      "name": "bookName@js:String(result).match(/[^\\x00-\\xff]+/g).join(\"\")",
      "wordCount": "words"
    },
    "ruleToc": {
      "chapterList": "data[*]",
      "chapterName": "chapterName",
      "chapterUrl": "chapterId@put:{chapterId:$.chapterId}",
      "isPay": "",
      "isVip": "vip",
      "isVolume": "",
      "updateTime": "{{$.chapterWord}} 字"
    },
    "searchUrl": "@js:\ntime=Math.round(new Date()/1000);\n\nuth=\njava.HMacHex(\"b313789b-2d2a-41ce-8982-26af5271fe7c&\"+time,\"HmacMD5\",\"snY%169j\");\n    \t\ntmpToken=java.randomUUID().toString().replace(\"-\", \"\").toLowerCase();\njava.put(\"tmpToken\",tmpToken);\n\nsign=\njava.HMacHex(\"/goway/goread/app/search/getBookByKeywordplatId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+tmpToken+\"&st=2&uth=\"+uth+\"&keyword=\"+key+\"&page=1&psize=20&withRecommend=1\",\"HmacSHA256\",\"snY%169j\");\n\n_p=java.desEncodeToBase64String(\"utId=996ff65deb7fbfc9f9bdcefb6c62f4ce&deviceId=183860518871512&userId=y76498329&sex=boy&wx=0&tmpToken=\"+tmpToken+\"&st=2&uth=\"+uth+\"&sign=\"+sign,\"snY%169j\",\"DES/ECB/PKCS5Padding\",\"\");\n\nlet option={\n\"method\": \"POST\",\n\"body\": \"psize=20&page=1&withRecommend=1&keyword={{key}}\"};\n\n\"/goway/goread/app/search/getBookByKeyword?platId=2&appId=com.yueyou.adreader&channelId=pc&appVersion=3.6.4&srcChannelId=pc&time=\"+time+\"&_s=C66A42978B576873D32F0EACEBBF044D&_p=\"+java.encodeURI(_p)+\",\"+JSON.stringify(option)",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "第二书包",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.shubaoju.cc/",
    "customButton": false,
    "customOrder": 154,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1689857555114,
    "respondTime": 2490,
    "ruleBookInfo": {
      "intro": "id.intro@text"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text||id.info@tag.p.0@text",
      "bookList": "id.nr||class.box_con",
      "bookUrl": "tag.td.0@a@href",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@text||h1@text"
    },
    "ruleToc": {
      "chapterList": "dl@dd",
      "chapterName": "text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "格格党吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.qodown.com",
    "bookUrlPattern": "http://www.qodown.com/post/\\d+.html",
    "customButton": false,
    "customOrder": 155,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10;  Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1733425200766,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2065,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "{{@@[property$=chapter_name]@content}}･{{@@[property$=update_time]@content##\\s.*}}\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "id.content@p@html",
      "nextContentUrl": "id.next_url@href"
    },
    "ruleExplore": {
      "author": ".item span.0@text||.s4@text",
      "bookList": "ul li&&class.item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src||a.0@href##.*/post/((\\d+)\\d{3}).html##http://img.qodown.com/$2/$1/$1s.jpg",
      "intro": "dl@dd@text",
      "kind": "span.s1@text##\\[|\\]",
      "name": "span.s2@text&&dl@dt@a@text"
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list li.1",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "intro": "",
      "kind": ".s1@text##\\[|\\]",
      "lastChapter": ".s3@text",
      "name": ".s2@text",
      "wordCount": ".s5@text"
    },
    "ruleToc": {
      "chapterList": "class.section-list fix.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search/,\n{\n  \"body\": \"searchkey={{key}}&Submit=搜索\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "必去小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.biquw.com/",
    "bookUrlPattern": "http://www.biquw.com/book/\\d+/",
    "customButton": false,
    "customOrder": 156,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732984826068,
    "loginUrl": "",
    "respondTime": 4032,
    "ruleBookInfo": {
      "author": "class.options@tag.span.0@text",
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": ".bookinfo_intro@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "class.update@a@text",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {
      "author": "tag.dd.1@span@text",
      "bookList": "class.sitebox@dl",
      "bookUrl": "h3@a@href",
      "coverUrl": "img@src",
      "intro": "tag.dd.2@text",
      "kind": "class.uptime@text",
      "lastChapter": "tag.dd.3@a@text",
      "name": "h3@a@text"
    },
    "ruleSearch": {
      "author": "class.s3@text",
      "bookList": "class.toplist@li",
      "bookUrl": "class.s1@a@href",
      "coverUrl": "class.s1@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquw.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s5@text&&\nclass.s6@text",
      "lastChapter": "class.s2@a@text",
      "name": "class.s1@a@text",
      "wordCount": "class.s4@text"
    },
    "ruleToc": {
      "chapterList": "class.book_list@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquw.com/modules/article/search.php?action=login&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.8.9 ◎夜泽川◎",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "群小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.qunxs.com",
    "customButton": false,
    "customOrder": 159,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/xuanhuan/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"/xianxia/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"都市\",\"url\":\"/dushi/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"/lishi/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"网游\",\"url\":\"/wangyou/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"/kehuan/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"恐怖\",\"url\":\"/kongbu/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"全本\",\"url\":\"/quanben/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1754743900060,
    "respondTime": 10038,
    "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$=latest_chapter_name]@content\",\n\"i\":\"[property$=image]@content\",\n\"o\":\"[property$=description]@content\",\n\"z\":\"text.字数：@text##字数：\",\n\"g\":\"[property$=update_time]@content\"\n}",
      "intro": "@get:{o}",
      "kind": "@get:{t}",
      "lastChapter": "@get:{l}◎@get:{g}",
      "name": "@get:{n}",
      "tocUrl": "{{baseUrl}}##(\\d+)##/txt/$1_1.html###",
      "wordCount": "@get:{z}"
    },
    "ruleContent": {
      "content": "#booktxt@html",
      "nextContentUrl": "@js:var result = [];\nvar pages = +String(java.getString('.bookname@text')).match(/\\(\\d+\\/(\\d+)\\)$/)[1];\nfor (let i = 2; i <= pages && !/_/.test(baseUrl); i++) {\n\tresult.push(baseUrl.replace(\".html\", `_${i}.html`));\n}\nresult;"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": ".l > ul >li",
      "bookUrl": "a.0@href",
      "kind": ".s1@text&&.s5@text",
      "lastChapter": ".s3@text",
      "name": ".s2@text"
    },
    "ruleSearch": {
      "author": "a[href^=\"/author\"]@text",
      "bookList": ".item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-original",
      "intro": "dd@text",
      "kind": "em!0@text",
      "name": "dt@text",
      "wordCount": "em.0@text"
    },
    "ruleToc": {
      "chapterList": "[rel=\"chapter\"]",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "@js:let data = org.jsoup.Jsoup.parse(java.ajax(source.key)).select('form');\nlet url = data.attr('action') + \",\" + JSON.stringify({\n  \"body\": \"_token=\" + data.select('[name=_token]').attr('value') + \"&keyword={{key}}&page={{page}}\",\n  \"method\": \"POST\"\n});\nurl;",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "黑岩阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.heiyan.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 162,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://www.heiyan.com/web/all/-1/-1/-1/-1/0/{{page}}/100\n免费小说::https://www.heiyan.com/web/all/-1/-1/1/-1/0/{{page}}/100\n收费小说::https://www.heiyan.com/web/all/-1/-1/0/-1/0/{{page}}/100\n完结小说::https://www.heiyan.com/web/all/-1/-1/-1/1/0/{{page}}/100\n连载小说::https://www.heiyan.com/web/all/-1/-1/-1/0/0/{{page}}/100\n悬疑全部::https://www.heiyan.com/web/all/1/-1/-1/-1/0/{{page}}/100\n悬疑免费::https://www.heiyan.com/web/all/1/-1/1/-1/0/{{page}}/100\n悬疑收费::https://www.heiyan.com/web/all/1/-1/0/-1/0/{{page}}/100\n悬疑完结::https://www.heiyan.com/web/all/1/-1/-1/1/0/{{page}}/100\n悬疑连载::https://www.heiyan.com/web/all/1/-1/-1/0/0/{{page}}/100\n历史全部::https://www.heiyan.com/web/all/3/-1/-1/-1/0/{{page}}/100\n历史免费::https://www.heiyan.com/web/all/3/-1/1/-1/0/{{page}}/100\n历史收费::https://www.heiyan.com/web/all/3/-1/0/-1/0/{{page}}/100\n历史完结::https://www.heiyan.com/web/all/3/-1/-1/1/0/{{page}}/100\n历史连载::https://www.heiyan.com/web/all/3/-1/-1/0/0/{{page}}/100\n军事全部::https://www.heiyan.com/web/all/5/-1/-1/-1/0/{{page}}/100\n军事免费::https://www.heiyan.com/web/all/5/-1/1/-1/0/{{page}}/100\n军事收费::https://www.heiyan.com/web/all/5/-1/0/-1/0/{{page}}/100\n军事完结::https://www.heiyan.com/web/all/5/-1/-1/1/0/{{page}}/100\n军事连载::https://www.heiyan.com/web/all/5/-1/-1/0/0/{{page}}/100\n玄幻全部::https://www.heiyan.com/web/all/6/-1/-1/-1/0/{{page}}/100\n玄幻免费::https://www.heiyan.com/web/all/6/-1/1/-1/0/{{page}}/100\n玄幻收费::https://www.heiyan.com/web/all/6/-1/0/-1/0/{{page}}/100\n玄幻完结::https://www.heiyan.com/web/all/6/-1/-1/1/0/{{page}}/100\n玄幻连载::https://www.heiyan.com/web/all/6/-1/-1/0/0/{{page}}/100\n奇幻全部::https://www.heiyan.com/web/all/14/-1/-1/-1/0/{{page}}/100\n奇幻免费::https://www.heiyan.com/web/all/14/-1/1/-1/0/{{page}}/100\n奇幻收费::https://www.heiyan.com/web/all/14/-1/0/-1/0/{{page}}/100\n奇幻完结::https://www.heiyan.com/web/all/14/-1/-1/1/0/{{page}}/100\n奇幻连载::https://www.heiyan.com/web/all/14/-1/-1/0/0/{{page}}/100\n仙侠全部::https://www.heiyan.com/web/all/7/-1/-1/-1/0/{{page}}/100\n仙侠免费::https://www.heiyan.com/web/all/7/-1/1/-1/0/{{page}}/100\n仙侠收费::https://www.heiyan.com/web/all/7/-1/0/-1/0/{{page}}/100\n仙侠完结::https://www.heiyan.com/web/all/7/-1/-1/1/0/{{page}}/100\n仙侠连载::https://www.heiyan.com/web/all/7/-1/-1/0/0/{{page}}/100\n武侠全部::https://www.heiyan.com/web/all/8/-1/-1/-1/0/{{page}}/100\n武侠免费::https://www.heiyan.com/web/all/8/-1/1/-1/0/{{page}}/100\n武侠收费::https://www.heiyan.com/web/all/8/-1/0/-1/0/{{page}}/100\n武侠完结::https://www.heiyan.com/web/all/8/-1/-1/1/0/{{page}}/100\n武侠连载::https://www.heiyan.com/web/all/8/-1/-1/0/0/{{page}}/100\n科幻全部::https://www.heiyan.com/web/all/10/-1/-1/-1/0/{{page}}/100\n科幻免费::https://www.heiyan.com/web/all/10/-1/1/-1/0/{{page}}/100\n科幻收费::https://www.heiyan.com/web/all/10/-1/0/-1/0/{{page}}/100\n科幻完结::https://www.heiyan.com/web/all/10/-1/-1/1/0/{{page}}/100\n科幻连载::https://www.heiyan.com/web/all/10/-1/-1/0/0/{{page}}/100\n游戏全部::https://www.heiyan.com/web/all/9/-1/-1/-1/0/{{page}}/100\n游戏免费::https://www.heiyan.com/web/all/9/-1/1/-1/0/{{page}}/100\n游戏收费::https://www.heiyan.com/web/all/9/-1/0/-1/0/{{page}}/100\n游戏完结::https://www.heiyan.com/web/all/9/-1/-1/1/0/{{page}}/100\n游戏连载::https://www.heiyan.com/web/all/9/-1/-1/0/0/{{page}}/100\n同人全部::https://www.heiyan.com/web/all/16/-1/-1/-1/0/{{page}}/100\n同人免费::https://www.heiyan.com/web/all/16/-1/1/-1/0/{{page}}/100\n同人收费::https://www.heiyan.com/web/all/16/-1/0/-1/0/{{page}}/100\n同人完结::https://www.heiyan.com/web/all/16/-1/-1/1/0/{{page}}/100\n同人连载::https://www.heiyan.com/web/all/16/-1/-1/0/0/{{page}}/100\n社会全部::https://www.heiyan.com/web/all/25/-1/-1/-1/0/{{page}}/100\n社会免费::https://www.heiyan.com/web/all/25/-1/1/-1/0/{{page}}/100\n社会收费::https://www.heiyan.com/web/all/25/-1/0/-1/0/{{page}}/100\n社会完结::https://www.heiyan.com/web/all/25/-1/-1/1/0/{{page}}/100\n社会连载::https://www.heiyan.com/web/all/25/-1/-1/0/0/{{page}}/100\n古言全部::https://www.heiyan.com/web/all/37/-1/-1/-1/0/{{page}}/100\n古言免费::https://www.heiyan.com/web/all/37/-1/1/-1/0/{{page}}/100\n古言收费::https://www.heiyan.com/web/all/37/-1/0/-1/0/{{page}}/100\n古言完结::https://www.heiyan.com/web/all/37/-1/-1/1/0/{{page}}/100\n古言连载::https://www.heiyan.com/web/all/37/-1/-1/0/0/{{page}}/100",
    "header": "",
    "lastUpdateTime": 1693616363227,
    "loginUrl": "https://www.heiyan.com/accounts/login?backUrl=/",
    "respondTime": 1704,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "//pre[@class=\"note\"]/text()",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "//a[text()=\"开始阅读\"]/@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.chapter.htmlContent@js:result?result:'付费章节，换源阅读'",
      "imageStyle": "0",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "//*[@class=\"author\"]//a/text()",
      "bookList": "//*[@id=\"resultDiv\"]/tr",
      "bookUrl": "//a[@class=\"title\"]/@href<js>'https://www.heiyan.com/book/'+String(result).match(/\\d+/)[0]</js>",
      "coverUrl": "//a[@class=\"title\"]/@href<js>'https://b.heiyanimg.com/book/'+String(result).match(/\\d+/)[0]+'.jpg'</js>",
      "intro": "",
      "kind": "",
      "lastChapter": "//a[@class=\"chapter\"]/text()",
      "name": "//a[@class=\"title\"]/text()",
      "wordCount": "//td[4]/text()<js>String(result)+\"字\"</js>"
    },
    "ruleSearch": {
      "author": "$.authorname##<.*?>",
      "bookList": "$.data.content[*]",
      "bookUrl": "$.id@js:'https://www.heiyan.com/book/'+result",
      "coverUrl": "$.iconUrlSmall@js:  result.includes('@!bns?0') ? 'http://suo.im/6mlA9F' :'https://b.heiyanimg.com'+result.replace(/@.*/,'')",
      "intro": "$.introduce",
      "kind": "$.sortname##<.*?>",
      "lastChapter": "$.lastchaptername&&$.lastchaptertime##\\s+(\\d+-\\d+-\\d+).*##（$1）",
      "name": "$.name##<.*?>",
      "wordCount": "{$.words}字"
    },
    "ruleToc": {
      "chapterList": "//li[span]/a",
      "chapterName": "text##[\\(（].*[求更谢乐发推].*[）\\)]",
      "chapterUrl": "href<js>'https://a.heiyan.com/ajax/chapter/content/'+result.match(/\\d+$/)[0]</js>",
      "isVip": "@js:/isvip/.test(String(result))",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://search.heiyan.com/web/search?queryString={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "/*\n24.7.22梓橙修复\n*/",
    "bookSourceGroup": "音乐",
    "bookSourceName": "五丁音乐（优+）",
    "bookSourceType": 1,
    "bookSourceUrl": "http://5sing.kugou.com",
    "customButton": false,
    "customOrder": 163,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最新 ⇨::/yc/list?t=-1&l=&s=&p={{page}}\n原创::/yc/list?t=1&s=&p={{page}}\n⇦ 推荐::/yc/list?t=1&s=&p={{page}}\n华语::/yc/list?t=1&s=&l=华语&p={{page}}\n欧美::/yc/list?t=1&s=&l=欧美&p={{page}}\n日语::/yc/list?t=1&s=&l=日语&p={{page}}\n韩语::/yc/list?t=1&s=&l=韩语&p={{page}}\n俄语::/yc/list?t=1&s=&l=俄语&p={{page}}\n法语::/yc/list?t=1&s=&l=法语&p={{page}}\n德语::/yc/list?t=1&s=&l=德语&p={{page}}\n粤语::/yc/list?t=1&s=&l=粤语&p={{page}}\n方言::/yc/list?t=1&s=&l=方言&p={{page}}\n闽南语::/yc/list?t=1&s=&l=闽南语&p={{page}}\n西班牙语::/yc/list?t=1&s=&l=西班牙语&p={{page}}\n其它语::/yc/list?t=1&s=&l=其它&p={{page}}\n候选::/yc/list?t=2&l=&s=&p={{page}}\n传播榜::/yc/spread/more_1.shtml\n分享榜::/yc/share/more_1.shtml\n最新 ⇨::/fc/list?t=-1&l=&s=&p={{page}}\n翻唱::/fc/list?t=1&s=&p={{page}}\n⇦ 推荐::/fc/list?t=1&s=&p={{page}}\n华语::/fc/list?t=1&s=&l=华语&p={{page}}\n欧美::/fc/list?t=1&s=&l=欧美&p={{page}}\n日语::/fc/list?t=1&s=&l=日语&p={{page}}\n韩语::/fc/list?t=1&s=&l=韩语&p={{page}}\n俄语::/fc/list?t=1&s=&l=俄语&p={{page}}\n法语::/fc/list?t=1&s=&l=法语&p={{page}}\n德语::/fc/list?t=1&s=&l=德语&p={{page}}\n粤语::/fc/list?t=1&s=&l=粤语&p={{page}}\n方言::/fc/list?t=1&s=&l=方言&p={{page}}\n闽南语::/fc/list?t=1&s=&l=闽南语&p={{page}}\n西班牙语::/fc/list?t=1&s=&l=西班牙语&p={{page}}\n其它语::/fc/list?t=1&s=&l=其它&p={{page}}\n候选::/fc/list?t=2&l=&s=&p={{page}}\n传播榜::/fc/spread/more_1.shtml\n分享榜::/fc/share/more_1.shtml",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36\"\n}",
    "lastUpdateTime": 1759523089501,
    "loginUrl": "｡◕‿◕｡",
    "respondTime": 1483,
    "ruleBookInfo": {
      "coverUrl": ".user_tx img@src",
      "intro": ".view_info li@html##^##<br>"
    },
    "ruleContent": {
      "content": "<js>\nvar arr = baseUrl.split('/');\nvar songtype = arr[3];\nvar songid = arr[4].split('.')[0];\n/*\nvar data = java.ajax(\"http://service.5sing.kugou.com/song/getSongUrl?version=6.6.70&songid=\" + songid + \"&songtype=\" + songtype);\ndata = JSON.parse(data).data\ndata.squrl || data.hqurl || data.lqurl;\n*/\n\t\nlet params = {\n  appid: 3146,\n  clienttime: Math.ceil(Date.now() / 1000),\n  clientver: 610850,\n  dfid: \"-\",\n  from: \"com.sing.client.player\",\n  mid: 114514,\n  songfields: \"ID,SN,SK,SW,SS,ST,SI,CT,M,S,ZQ,WO,ZC,HY,YG,CK,D,RQ,DD,E,R,RC,SG,C,CS,LV,LG,SY,UID,PT,SCSR,SC,KM5\",\n  songid: songid,\n  songtype: songtype,\n  token: \"\",\n  userfields: \"ID,NN,I,YCRQ,FCRQ\",\n  uuid: \"-\"\n}\n\nlet signstr = \"\"\nlet keys = Object.keys(params).sort()\nfor (let i = 0; i < keys.length; i++) {\n  signstr += `${keys[i]}=${params[keys[i]]}`\n}\nlet signature = java.md5Encode(\"UqgPMZpjgRZQ7s8JAuUIP5DQdo5O5NB\" + signstr + \"UqgPMZpjgRZQ7s8JAuUIP5DQdo5O5NB\")\n\nlet querys = []\nfor (let i = 0; i < keys.length; i++) {\n  querys.push(`${keys[i]}=${params[keys[i]]}`.replace(/\\,/g, \"%2c\"))\n}\nlet querystr = querys.join(\"&\") + \"&signature=\" + signature\nlet request = java.ajax(\"https://5sapi.kugou.com/song/getSongUrl?\" + querystr)\n// java.log(request)\nlet data = JSON.parse(request).data\ndata.squrl || data.squrl_backup || data.hqurl || data.hqurl_backup || data.lqurl || data.lqurl_backup\n</js>"
    },
    "ruleExplore": {
      "author": ".m_z@text##音乐人：",
      "bookList": ".lists dl",
      "bookUrl": ".l_info@tag.a@href",
      "coverUrl": "img@src@js:result||'http://1t.click/HNK'",
      "kind": ".l_rq@text##^##🔥",
      "lastChapter": ".l_time@text",
      "name": ".l_info a@text"
    },
    "ruleSearch": {
      "author": "singer@js:(String(result).split(\">\")[1] ? String(result).split(\">\")[1] : String(result).split(\">\")[0]).split(\"<\")[0]",
      "bookList": "list",
      "bookUrl": "songurl",
      "coverUrl": "@js:'http://1t.click/HNK'",
      "kind": "typeName",
      "name": "songName@js:(String(result).split(\">\")[1] ? String(result).split(\">\")[1] : String(result).split(\">\")[0]).split(\"<\")[0]"
    },
    "ruleToc": {
      "chapterList": ".view_tit",
      "chapterName": "text"
    },
    "searchUrl": "http://search.5sing.kugou.com/home/json?keyword={{key}}&sort=1&page={{page}}&filter=0&type=0",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "海词词典（词典）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://dict.cn/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 165,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734983012705,
    "loginUrl": "",
    "respondTime": 140,
    "ruleBookInfo": {
      "intro": "text"
    },
    "ruleContent": {
      "content": "html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@css:.phonetic@text",
      "bookList": "body",
      "lastChapter": "@css:.dict-basic-ul@text",
      "name": "@js:decodeURI(baseUrl.split(\"/\").pop())"
    },
    "ruleToc": {
      "chapterList": "body",
      "chapterName": "@js:\"详细\""
    },
    "searchUrl": "http://dict.cn/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "🎃言情小说吧🎃#4",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xs.cn#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 166,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"🍀全部🎀分类🍀\",\"url\":\"/category/f1_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"现代言情\",\"url\":\"/category/30020_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"古代言情\",\"url\":\"/category/30013_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"浪漫青春\",\"url\":\"/category/30031_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"玄幻言情\",\"url\":\"/category/30001_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"仙侠奇缘\",\"url\":\"/category/30008_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"科幻空间\",\"url\":\"/category/30042_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/category/30036_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"游戏\",\"url\":\"/category/30050_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"短篇\",\"url\":\"/category/30083_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"轻小说\",\"url\":\"/category/30055_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.22}},\n\n{\"title\":\"🎖全部榜单🎖\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"免费\",\"url\":\"/category/f1_f1_f1_1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"VIP\",\"url\":\"/category/f1_f1_f1_0_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"风云榜\",\"url\":\"/rank/hxyuepiao?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.26}},\n{\"title\":\"热销榜\",\"url\":\"/rank/hotsales?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"新书榜\",\"url\":\"/rank/newbook?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"周推荐榜\",\"url\":\"/rank/recom?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"完本榜\",\"url\":\"/rank/finish?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"点击榜\",\"url\":\"/rank/click?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"收藏榜\",\"url\":\"/rank/collect?pageNum={{page}}\",\"style\":{\"layout_flexGrow\":1}}\n]\n",
    "header": "",
    "lastUpdateTime": 0,
    "loginUrl": "https://ptlogin.yuewen.com/login",
    "respondTime": 4288,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "downloadUrls": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "meta[property~=category|status|update_time]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.目录@href",
      "wordCount": "[class~=word_num|words|number]@text"
    },
    "ruleContent": {
      "content": "[class~=content|article]@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a[class=\"name default\"]@text||a[class=\"default\"]@text",
      "bookList": ".book-img-text>ul@li||div[class=\"right-book-list\"]>ul>li",
      "bookUrl": "##<a.*?href=\"([^\"]+)\"##$1###",
      "checkKeyWord": "",
      "coverUrl": "##<img.*?src=\"([^\"]+)\"##$1###",
      "intro": "[class~=intro]@text",
      "kind": "p[class=\"author\"]>a.-1@text&&p[class=\"author\"]>span.-1@text&&p[class=\"update\"]>span.-1@text",
      "lastChapter": "p[class=\"update\"]>a.0@text",
      "name": "h4@text||div[class=\"book-img\"]>a.0@text",
      "wordCount": "span[class=\"blue\"]@text"
    },
    "ruleToc": {
      "chapterList": "div[class=\"volume\"]:gt(0)>ul[class=\"cf\"]@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": ""
    },
    "searchUrl": "https://www.xs8.cn/so/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "天域小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zmccx.com/",
    "bookUrlPattern": "http://www.zmccx.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 167,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734942564954,
    "respondTime": 2826,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作\\s*者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.list@tag.dd.0@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##推荐.*新书.*"
    },
    "ruleExplore": {
      "author": "class.author@text##作者：",
      "bookList": "class.hot_sale",
      "bookUrl": "tag.a.0@href@js:\nr=result.match(/_(\\d+)/)\nid=r[1]\nvar iid = parseInt(id/1000);\n'http://www.zmccx.com/'+iid+'_'+id+'/'",
      "coverUrl": "img@data-original",
      "intro": "class.review@text##简介：",
      "lastChapter": "",
      "name": "class.title@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.even.0@tag.a.0@href",
      "coverUrl": "class.even.0@tag.a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.zmccx.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.odd.0@tag.a.0@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.even.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.zmccx.com/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "久久小说下载",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.9191net.com/",
    "customButton": false,
    "customOrder": 169,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734457386139,
    "respondTime": 267,
    "ruleBookInfo": {
      "author": "tag.p@text##分类：.*\n状态：.*\n格式：.*\n大小：.*\n更新：.*\nRAR/ZIP.*|苹果端用户下载方式：.*",
      "init": "",
      "intro": "class.intro_info.0@html",
      "kind": "tag.p!0@a@text",
      "name": "tag.h2@text"
    },
    "ruleContent": {
      "content": "class.downButton@title&&class.downButton@href"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "class.block",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a@img@src",
      "intro": "tag.p@a@html",
      "name": "tag.h2@text"
    },
    "ruleToc": {
      "chapterList": "class.ablum_read",
      "chapterName": "tag.a@text"
    },
    "searchUrl": "http://m.9191net.com/search.html?keywords={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "// v 2023-10-13\n// by Thomas喲\n//支持  搜索分享链接  获取歌单\n//例1： https://www.kuwo.cn/playlist_detail/1082685104\n//例2： https://m.kuwo.cn/newh5app/playlist_detail/1082685104\n[//自定义歌单_开始\n// 歌单示例\n{\n\t// debug1 是歌单标识\n\t// 具有唯一性(不能重复，也不能命名为 \"id\" )\n\t\"debug1\": {\n\t\t\"name\": \"歌单示例1\", // 书籍名称\n\t\t\"uname\": \"Thomas喲\", // 书籍作者\n\t\t\"tag\": [\"本地歌单\",\"测试\",], // 标签\n\t\t\"desc\": \"歌单示例1，测试\", // 简介\n\t\t\"img\": \"\",// 封面链接\n\t\t\"musicList\": [\n\t\t\n\t\t\n\t\t\n\t\t], // 歌曲目录\n\t\t},\n\t\"debug2\": {\n\t\t}\n},\n// txt按照歌单示例的格式填写\n[file]/storage/emulated/0/自定义路径/本地歌单示例.txt[/file]\n]//自定义歌单_结束",
    "bookSourceGroup": "音乐",
    "bookSourceName": "酷我音乐（优）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.kuwo.cn",
    "customButton": false,
    "customOrder": 170,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\neval(String(source.loginUrl));\nsort = [];\npush = (title, url, type) => sort.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: type\n    }\n});\n$$ = (ura, urb) => `data:;base64,{{java.base64Encode(\"${ura+type}发现${urb||\"\"}\")}\\},{\"type\":\"${type}\"}`;\n\n\n\nif ($[\"推荐\"]) {\n    push('༺ 推荐 ༻', null, 1);\n    push('每日推荐', $$('rcm/index/playlist?id=rcm'), 0.4)\n    push('自定歌单', $$('', `${type}本地`), 0.4)\n    push('最新精选', $$('classify/playlist/getRcmPlayList?order=new&pn=\"+page+\"'), 0.4)\n    push('热门精选', $$('classify/playlist/getRcmPlayList?order=hot&pn=\"+page+\"'), 0.4);\n}\n\n\n\nif ($[\"排行\"]) {\n    push('༺ 排行 ༻', null, 1);\n    result = java.hexEncodeToString(`bang/bang/bangMenu?${type}加载`);\n    data = eval(String(source.loginUrl));\n    JSON.parse(data).map($ => {\n        list = $.list.map($ => ({\n            name: $.name,\n            desc: $.intro,\n            img: $.pic,\n            sid: $.sourceid\n        }));\n        list = java.base64Encode(JSON.stringify(list));\n        push($.name, $$(list + type + \"加载\" + type + \"排行\"), 0.25);\n    });\n}\n\n\nx = false;\nfor (key of Arr.slice(2)) {\n    if ($[key]) {\n        x = true;\n        break;\n    }\n}\nif (x) {\n    result = java.hexEncodeToString(`playlist/getTagList?${type}加载`);\n    data = eval(String(source.loginUrl));\n    JSON.parse(data).map(data => {\n        if (data.data.length) {\n            name = data.name.replace('流派', '');\n            if ($[name]) {\n                push('༺ ' + name + ' ༻', null, 1, 1);\n                data.data.map(data => {\n                    push(data.name, $$(`classify/playlist/getTagPlayList?id=${data.id}&pn=\"+page+\"`), 0.2);\n                });\n            }\n        }\n    });\n}\n\nif (!sort.length) push(\"所有的分类都关了，登录打开\", null, 1);\nJSON.stringify(sort);",
    "header": "{\"User-Agent\":\"okhttp/3.10.0\"}",
    "jsLib": "// 常量\ntype = \"#kuwo_cn#\";\nhost = \"https://www.kuwo.cn/\";\n\n\n// 请求头：Secret\nSecret = (e,t) => `<script>\nSecret = function(e,t){\nfor (var n = \"\", i = 0; i < e.length; i++)\n        n += e.charCodeAt(i).toString();\n    n = String(n);\n    var r = Math.floor(n.length / 5),\n        o = parseInt(n.charAt(r) + n.charAt(2 * r) + n.charAt(3 * r) + n.charAt(4 * r) + n.charAt(5 * r)),\n        l = Math.ceil(e.length / 2),\n        c = Math.pow(2, 31) - 1;\n    var d = Math.round(1e9 * Math.random()) % 1e8;\n    for (n += d; n.length > 10;)\n        n = (parseInt(n.substring(0, 10)) + parseInt(n.substring(10, n.length))).toString();\n    n = (o * n + l) % c;\n    var h = \"\",\n        f = \"\";\n    for (i = 0; i < t.length; i++)\n        f += (h = parseInt(t.charCodeAt(i) ^ Math.floor(n / c * 255))) < 16 ? \"0\" + h.toString(16) : h.toString(16),\n        n = (o * n + l) % c;\n    for (d = d.toString(16); d.length < 8;)\n        d = \"0\" + d;\n        return f+d;\n}(\"${e}\",\"${t}\");\n</script>`;\n\n\n\n/**\n * 酷我直链解析加密算法\n * 不知道能用多久，先用着吧\n */\nscript = rid => `<script>\nconst Buffer = {\n    from: t => {\n        r = t.length;\n        e = new Uint8Array(r);\n        for (n = 0; n < r; n++)\n            e[n] = t.charCodeAt(n);\n        return e\n    }\n}\nrange = t => Array.from(new Array(t).keys());\nLong = t => {\n    const r = BigInt(t);\n    return {\n        toString: () => r.toString(),\n        isNegative: () => r < 0,\n        not: () => Long(~r),\n        low: Number(r),\n        or: t => Long(r | BigInt(t)),\n        xor: t => Long(r ^ BigInt(t)),\n        and: t => Long(r & BigInt(t)),\n        equals: t => r === BigInt(t),\n        shiftLeft: t => Long(r << BigInt(t)),\n        shiftRight: t => Long(r >> BigInt(t))\n    }\n};\nLongArray = t => t.map(t => Long(t));\n\n\narrayE = LongArray([\n    31, 0, 1, 2, 3, 4, -1, -1,\n    3, 4, 5, 6, 7, 8, -1, -1,\n    7, 8, 9, 10, 11, 12, -1, -1,\n    11, 12, 13, 14, 15, 16, -1, -1,\n    15, 16, 17, 18, 19, 20, -1, -1,\n    19, 20, 21, 22, 23, 24, -1, -1,\n    23, 24, 25, 26, 27, 28, -1, -1,\n    27, 28, 29, 30, 31, 30, -1, -1\n])\narrayIP = LongArray([\n    57, 49, 41, 33, 25, 17, 9, 1,\n    59, 51, 43, 35, 27, 19, 11, 3,\n    61, 53, 45, 37, 29, 21, 13, 5,\n    63, 55, 47, 39, 31, 23, 15, 7,\n    56, 48, 40, 32, 24, 16, 8, 0,\n    58, 50, 42, 34, 26, 18, 10, 2,\n    60, 52, 44, 36, 28, 20, 12, 4,\n    62, 54, 46, 38, 30, 22, 14, 6\n])\narrayIP_1 = LongArray([\n    39, 7, 47, 15, 55, 23, 63, 31,\n    38, 6, 46, 14, 54, 22, 62, 30,\n    37, 5, 45, 13, 53, 21, 61, 29,\n    36, 4, 44, 12, 52, 20, 60, 28,\n    35, 3, 43, 11, 51, 19, 59, 27,\n    34, 2, 42, 10, 50, 18, 58, 26,\n    33, 1, 41, 9, 49, 17, 57, 25,\n    32, 0, 40, 8, 48, 16, 56, 24\n])\narrayLs = [\n    1, 1, 2, 2, 2, 2, 2, 2,\n    1, 2, 2, 2, 2, 2, 2, 1\n]\narrayLsMask = LongArray([0, 1048577, 3145731])\narrayMask = range(64).map(t => Math.pow(2, t))\narrayMask[63] *= -1\narrayP = LongArray([\n    15, 6, 19, 20, 28, 11, 27, 16,\n    0, 14, 22, 25, 4, 17, 30, 9,\n    1, 7, 23, 13, 31, 26, 2, 8,\n    18, 12, 29, 5, 21, 10, 3, 24\n])\narrayPC_1 = LongArray([\n    56, 48, 40, 32, 24, 16, 8, 0,\n    57, 49, 41, 33, 25, 17, 9, 1,\n    58, 50, 42, 34, 26, 18, 10, 2,\n    59, 51, 43, 35, 62, 54, 46, 38,\n    30, 22, 14, 6, 61, 53, 45, 37,\n    29, 21, 13, 5, 60, 52, 44, 36,\n    28, 20, 12, 4, 27, 19, 11, 3\n])\narrayPC_2 = LongArray([\n    13, 16, 10, 23, 0, 4, -1, -1,\n    2, 27, 14, 5, 20, 9, -1, -1,\n    22, 18, 11, 3, 25, 7, -1, -1,\n    15, 6, 26, 19, 12, 1, -1, -1,\n    40, 51, 30, 36, 46, 54, -1, -1,\n    29, 39, 50, 44, 32, 47, -1, -1,\n    43, 48, 38, 55, 33, 52, -1, -1,\n    45, 41, 49, 35, 28, 31, -1, -1\n])\nmatrixNSBox = [\n    [\n        14, 4, 3, 15, 2, 13, 5, 3,\n        13, 14, 6, 9, 11, 2, 0, 5,\n        4, 1, 10, 12, 15, 6, 9, 10,\n        1, 8, 12, 7, 8, 11, 7, 0,\n        0, 15, 10, 5, 14, 4, 9, 10,\n        7, 8, 12, 3, 13, 1, 3, 6,\n        15, 12, 6, 11, 2, 9, 5, 0,\n        4, 2, 11, 14, 1, 7, 8, 13\n    ],\n    [\n        15, 0, 9, 5, 6, 10, 12, 9,\n        8, 7, 2, 12, 3, 13, 5, 2,\n        1, 14, 7, 8, 11, 4, 0, 3,\n        14, 11, 13, 6, 4, 1, 10, 15,\n        3, 13, 12, 11, 15, 3, 6, 0,\n        4, 10, 1, 7, 8, 4, 11, 14,\n        13, 8, 0, 6, 2, 15, 9, 5,\n        7, 1, 10, 12, 14, 2, 5, 9\n    ],\n    [\n        10, 13, 1, 11, 6, 8, 11, 5,\n        9, 4, 12, 2, 15, 3, 2, 14,\n        0, 6, 13, 1, 3, 15, 4, 10,\n        14, 9, 7, 12, 5, 0, 8, 7,\n        13, 1, 2, 4, 3, 6, 12, 11,\n        0, 13, 5, 14, 6, 8, 15, 2,\n        7, 10, 8, 15, 4, 9, 11, 5,\n        9, 0, 14, 3, 10, 7, 1, 12\n    ],\n    [\n        7, 10, 1, 15, 0, 12, 11, 5,\n        14, 9, 8, 3, 9, 7, 4, 8,\n        13, 6, 2, 1, 6, 11, 12, 2,\n        3, 0, 5, 14, 10, 13, 15, 4,\n        13, 3, 4, 9, 6, 10, 1, 12,\n        11, 0, 2, 5, 0, 13, 14, 2,\n        8, 15, 7, 4, 15, 1, 10, 7,\n        5, 6, 12, 11, 3, 8, 9, 14\n    ],\n    [\n        2, 4, 8, 15, 7, 10, 13, 6,\n        4, 1, 3, 12, 11, 7, 14, 0,\n        12, 2, 5, 9, 10, 13, 0, 3,\n        1, 11, 15, 5, 6, 8, 9, 14,\n        14, 11, 5, 6, 4, 1, 3, 10,\n        2, 12, 15, 0, 13, 2, 8, 5,\n        11, 8, 0, 15, 7, 14, 9, 4,\n        12, 7, 10, 9, 1, 13, 6, 3\n    ],\n    [\n        12, 9, 0, 7, 9, 2, 14, 1,\n        10, 15, 3, 4, 6, 12, 5, 11,\n        1, 14, 13, 0, 2, 8, 7, 13,\n        15, 5, 4, 10, 8, 3, 11, 6,\n        10, 4, 6, 11, 7, 9, 0, 6,\n        4, 2, 13, 1, 9, 15, 3, 8,\n        15, 3, 1, 14, 12, 5, 11, 0,\n        2, 12, 14, 7, 5, 10, 8, 13\n    ],\n    [\n        4, 1, 3, 10, 15, 12, 5, 0,\n        2, 11, 9, 6, 8, 7, 6, 9,\n        11, 4, 12, 15, 0, 3, 10, 5,\n        14, 13, 7, 8, 13, 14, 1, 2,\n        13, 6, 14, 9, 4, 1, 2, 14,\n        11, 13, 5, 0, 1, 10, 8, 3,\n        0, 11, 3, 5, 9, 4, 15, 2,\n        7, 8, 12, 15, 10, 7, 6, 12\n    ],\n    [\n        13, 7, 10, 0, 6, 9, 5, 15,\n        8, 4, 3, 10, 11, 14, 12, 5,\n        2, 11, 9, 6, 15, 12, 0, 3,\n        4, 1, 14, 13, 1, 2, 7, 8,\n        1, 2, 12, 15, 10, 4, 0, 3,\n        13, 14, 6, 9, 7, 8, 9, 6,\n        15, 1, 5, 12, 3, 10, 14, 5,\n        8, 7, 11, 0, 4, 13, 2, 11\n    ]\n]\nbitTransform = (t, r, e) => {\n    let n = Long(0);\n    return range(r).forEach(r => {\n        t[r].isNegative() || e.and(arrayMask[t[r].low]).equals(0) || (n = n.or(arrayMask[r]))\n    }), n\n}\nDES64 = (t, r) => {\n        e = [],\n        n = [];\n        f = bitTransform(arrayIP, 64, r);\n    return n[0] = f.and(4294967295),\n    n[1] = f.and(-4294967296).shiftRight(32),\n    range(16).forEach(r => {\n        let f = Long(0);\n        i = Long(n[1]),\n        i = bitTransform(arrayE, 64, i).xor(t[r]),\n        range(8).forEach(t => {\n            e[t] = i.shiftRight(8 * t).and(255)\n        }),\n        range(8).reverse().forEach(t => {\n            f = f.shiftLeft(4).or(matrixNSBox[t][e[t]])\n        }),\n        i = bitTransform(arrayP, 32, f),\n        o = Long(n[0]),\n        n[0] = Long(n[1]),\n        n[1] = o.xor(i)\n    }),\n    n.reverse(),\n    f = n[1].shiftLeft(32).and(-4294967296).or(n[0].and(4294967295)),\n    f = bitTransform(arrayIP_1, 64, f)\n}\nsubKeys = (t, r) => {\n    let n = bitTransform(arrayPC_1, 56, t);\n    range(16).forEach(t => {\n        n = n.and(arrayLsMask[arrayLs[t]]).shiftLeft(28 - arrayLs[t]).or(n.and(arrayLsMask[arrayLs[t]].not()).shiftRight(arrayLs[t])),\n        r[t] = bitTransform(arrayPC_2, 64, n)\n    })\n}\nencrypt = t => {\n    const r = Buffer.from(\"ylzsxkwm\");\n    let n = Long(0);\n    range(8).forEach(t => {\n        n = Long(r[t]).shiftLeft(8 * t).or(n)\n    });\n    const o = Math.floor(t.length / 8),\n        i = range(16).map(() => Long(0));\n    subKeys(n, i);\n    const f = range(o).map(() => Long(0));\n    range(o).forEach(r => {\n        range(8).forEach(e => {\n            f[r] = Long(t[e + 8 * r]).shiftLeft(8 * e).or(f[r])\n        })\n    });\n    const s = [];\n    range(o).forEach(t => {\n        s[t] = DES64(i, f[t])\n    });\n    const u = t.slice(8 * o);\n    let h = Long(0);\n    range(t.length % 8).forEach(t => {\n        h = Long(u[t]).shiftLeft(8 * t).or(h)\n    }), s[o] = DES64(i, h);\n    const a = [];\n    let c = 0;\n    return s.forEach(t => {\n        range(8).forEach(r => {\n            a[c] = t.shiftRight(8 * r).and(255).low;\n            c ++\n        })\n    }), a;\n}\n$exports = function(rid) {\n    // flac|mp3|aac\n    t = 'corp=kuwo&p2p=1&type=convert_url2&format=mp3|aac&rid=' + rid;\n    b = encrypt(Buffer.from(t));\n    return window.btoa(String.fromCharCode.apply(null, b));\n}(${rid})\n</script>`",
    "lastUpdateTime": 1759439111958,
    "loginUi": "[{\n    \"name\": \"　　　　　　　　↓发现设置↓　　　　　　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('全部')\"\n}, {\n    \"name\": \"　　　 推荐 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('推荐')\"\n}, {\n    \"name\": \"　　　 排行 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('排行')\"\n}, {\n    \"name\": \"　　　 主题 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('主题')\"\n}, {\n    \"name\": \"　　　 心情 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('心情')\"\n}, {\n    \"name\": \"　　　 场景 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('场景')\"\n}, {\n    \"name\": \"　　　 年代 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('年代')\"\n}, {\n    \"name\": \"　　　 曲风 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('曲风')\"\n}, {\n    \"name\": \"　　　 语言 　　　\",\n    \"type\": \"button\",\n    \"action\": \"$$('语言')\"\n}]",
    "loginUrl": "try {\n    [uri, t1, t2] = String(java.hexDecodeToString(result)).split(type);\n\n    headers = cache.get(type + 'Headers');\n    if (headers == null) {\n        headers = {\n            'Referer': host\n        };\n        C = java.head(host + 'favicon.ico?v=1', headers).cookies();\n        e = Object.keys(C)[0];\n        t = unescape(C[e]);\n        headers.Cookie = e + '=' + C[e];\n        headers.Secret = java.webView(Secret(e, t), null, \"Secret\");\n        headers = JSON.stringify({\n            headers: headers\n        });\n        cache.put(type + 'Headers', headers, 300);\n    }\n\n    durl = uri => `data:;base64,${java.base64Encode(uri)},{\"type\":\"${type}\"}`;\n    jurl = (uri, rn, v1) => `${host}api/${v1||\"\"}www/${uri}&rn=${rn}&httpsStatus=1&reqId=${java.randomUUID()}&plat=web_www&from=,${headers}`;\n    ajax_data = (url, ajaxerr) => {\n        try {\n            return JSON.parse(java.ajax(url)).data;\n        } catch (err) {\n            return ajaxerr < 2 ? ajax_data(url, ajaxerr + 1) : {};\n        }\n    }\n    run = (rn, v1) => data = ajax_data(jurl(uri, rn, v1), 0);\n    file_data = $id => {\n        list = [];\n        flist = eval(String(source.bookSourceComment).replace(/\\[(file|ajax|js)\\]([\\s\\S]+?)\\[\\/\\1\\]/g, ($0, $1, $2) => {\n            try {\n                switch ($1) {\n                    case 'file':\n                        return java.importScript($2);\n                        break;\n                    case 'ajax':\n                        return java.ajax($2.trim());\n                        break;\n                    case 'js':\n                        return eval($2);\n                        break;\n                }\n            } catch (err) {\n                return \"\";\n            }\n        }).replace(/(\\]|})\\s*,\\s*(\\]|})/g, '$1$2').replace(/}\\s*{/g, '},{'));\n        for ($ of flist) {\n            if ($.id) {\n                list.push($);\n            } else {\n                if ($id) {\n                    if (_ = $[$id]) {\n                        _.fid = $id;\n                        _.total = _.musicList.length;\n                        return _;\n                    }\n                } else {\n                    for (fid of Object.keys($)) {\n                        _ = $[fid];\n                        _.fid = fid;\n                        if (_.musicList && _.musicList.length)\n                            _.total = _.musicList.length,\n                            list.push(_);\n                    }\n                }\n            }\n        };\n        if ($id) return java.toast(\"没找到对应资源\"), {};\n        return list;\n    };\n    switch (t1) {\n\n\n        case '搜索':\n            if (t2)\n                data = [run(1)];\n            else\n                data = run(30).list;\n            data = data.map($ => {\n                $.bookUrl = durl(`playlist/playListInfo?pid=${$.id}&pn=1${type}详情`);\n                return $;\n            });\n            break;\n\n\n        case '发现':\n            if (t2)\n                data = file_data();\n            else\n                data = run(30),\n                data = data.data || data.list;\n            data = data.map($ => {\n                $uri = $.fid || `playlist/playListInfo?pid=${$.id}&pn=1`;\n                $.bookUrl = durl(`${$uri+type}详情${$.fid?type+\"本地\":\"\"}`);\n                return $;\n            });\n            break;\n\n\n        case '加载':\n            if (t2)\n                data = JSON.parse(java.base64Decode(uri)).map($ => {\n                    $uri = `bang/bang/musicList?bangId=${$.sid}&pn=1`;\n                    $.bookUrl = durl($uri + type + \"详情\");\n                    return $;\n                });\n            else\n                data = run(1);\n            break;\n\n\n        case '详情':\n            if (t2)\n                data = file_data(uri);\n            else\n                data = run(1);\n            data.tocUrl = durl(uri + type + \"目录\" + (data.fid ? type + \"本地\" : \"\"));\n            break;\n\n\n        case '目录':\n            if (t2)\n                data = file_data(uri);\n            else {\n                data = run(30);\n\n                // 目录下一页\n                p = data.total || data.num;\n                if (p > 30) {\n                    i = +uri.match(/pn=(\\d+)/)[1];\n                    if (p > 30 * i)\n                        java.put(\"nextTocUrl\", durl(uri.replace('pn=' + i, 'pn=' + (i + 1)) + type + \"目录\"));\n                }\n            }\n            data = data.musicList.map($ => {\n                return {\n                    name: $.name,\n                    zyid: durl($.rid + type + \"正文\" + ($.isListenFee ? type + 'vip' : '')),\n                    info: `🔖 ${$.isListenFee?'Paid':'Free'}Music　📼 ${$.songTimeMinutes}　🎻 ` + $.artist,\n                    vip: $.isListenFee\n                };\n            });\n            break;\n\n\n        case '正文':\n            data = {};\n            try {\n                if (t2) throw new Error(\"is vipmusic\");\n                uri = \"music/playUrl?mid=\" + uri + \"&type=music&\";\n                url = run(1, 'v1/').url;\n            } catch (err) {\n                q = java.webView(script(uri), null, \"$exports\");\n                url = 'http://mobi.kuwo.cn/mobi.s?f=kuwo&q=' + q;\n                url = java.get(url, {\n                    \"User-Agent\": \"okhttp/3.10.0\"\n                }).body().match(/url=(\\S+)/)[1];\n            }\n            break;\n\n\n    }\n    JSON.stringify(data);\n} catch (Error) {\n    try {\n        [uri, t1, t2] = String(java.hexDecodeToString(result)).split(type);\n    } catch (Login) {\n\n\n        Arr = [\"推荐\", \"排行\", \"主题\", \"心情\", \"场景\", \"年代\", \"曲风\", \"语言\"];\n\n        function login(t) {\n            if (t === undefined) return true;\n            java.toast(t);\n            java.log(t);\n        }\n        setv = json => source.setVariable(JSON.stringify(json));\n        yn = yn => yn ? '启用' : '禁用';\n        $$ = (type) => {\n            t2 = type;\n            if (type == '全部') {\n                type = \"推荐\"\n                for (key of Arr.slice(1))\n                    $[key] = !$[type];\n            }\n            login('发现设置：\\n【' + t2 + '】 ' + yn($[type]) + ' => ' + yn($[type] = !$[type]));\n            return setv($);\n        }\n        $ = function() {\n            try {\n                return JSON.parse(source.getVariable());\n            } catch (err) {\n                return null;\n            }\n        }();\n        if ($ == null) {\n            $ = {};\n            for (key of Arr)\n                $[key] = true;\n            setv($);\n        }\n    }\n}",
    "respondTime": 18499,
    "ruleBookInfo": {
      "author": "$.userName||$.uname\n@js:String(result)||\"🎶 酷我音乐\"",
      "canReName": "true",
      "coverUrl": "$.img\n@js:book.coverUrl||result",
      "init": "@js:eval(String(source.loginUrl));",
      "intro": "<br>{{$.desc&&$.info}}\n##^\\s*$##{{$.name}}",
      "kind": "{$.listencnt}播放&&$.tag",
      "name": "$.name",
      "tocUrl": "$.tocUrl",
      "wordCount": "$.total||$.num\n@js:if(result)result+=\"首歌\";"
    },
    "ruleContent": {
      "content": "@js:eval(String(source.loginUrl));url"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.uname\n@js:String(result)||\"🎶 酷我音乐\"",
      "bookList": "<js>eval(String(source.loginUrl))</js>$.[*]",
      "bookUrl": "$.bookUrl",
      "checkKeyWord": "熊子",
      "coverUrl": "$.img\n@js:String(result)||'https://missuo.ru/file/51e785d34aba81f61994f.jpg'",
      "intro": "$.desc&&$.info\n##^\\s*$##{{$.name}}",
      "kind": "{$.listencnt}播放&&$.tag",
      "name": "$.name",
      "wordCount": "{$.total}首歌"
    },
    "ruleToc": {
      "chapterList": "<js>eval(String(source.loginUrl))</js>$.[*]",
      "chapterName": "$.name",
      "chapterUrl": "$.zyid",
      "nextTocUrl": "@js:java.get(\"nextTocUrl\");",
      "updateTime": "$.info"
    },
    "searchUrl": "@js:\nmat = key.match(/kuwo\\.cn.*\\/playlist(_detail)?\\/(\\d+)/);\nif(mat)\nt2=type+\"详情\",uri = \"playlist/playListInfo?pid=\"+mat[2];\nelse\nt2=\"\",uri = \"search/searchPlayListBykeyWord?key=\" + key;\n\n`data:;base64,${java.base64Encode(uri+\"&pn=\"+page+type+\"搜索\"+t2)},{\"type\":\"${type}\"}`",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "🎃言情库🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yqk.net#🎃",
    "customButton": false,
    "customOrder": 171,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 2274,
    "ruleBookInfo": {
      "author": "tag.a.2@text",
      "coverUrl": "img@src",
      "init": "class.base",
      "intro": "tag.p.4@text&&tag.p.6@text",
      "kind": "tag.a.3@text",
      "lastChapter": "tag.p.5@a@text",
      "name": "tag.a.1@text",
      "wordCount": "tag.em.0@text"
    },
    "ruleContent": {
      "content": "class.content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "class.left@li!-1",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "tag.p.3@text&&tag.p.4@text",
      "kind": "tag.a.3@text",
      "lastChapter": "tag.p.5@a@text",
      "name": "tag.a.1@text",
      "wordCount": "tag.em.3@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.yqk.net/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "音乐",
    "bookSourceName": "猫耳音乐（优）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.com已校验",
    "customButton": false,
    "customOrder": 172,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "百合分类::https://www.missevan.com/dramaapi/filter?filters=0_5_0_0_0&page={{page}}&order=1&page_size=20\n现代::https://www.missevan.com/dramaapi/filter?filters=0_5_0_1_0&page={{page}}&order=1&page_size=20\n古风::https://www.missevan.com/dramaapi/filter?filters=0_5_0_2_0&page={{page}}&order=1&page_size=20\n民国::https://www.missevan.com/dramaapi/filter?filters=0_5_0_3_0&page={{page}}&order=1&page_size=20",
    "lastUpdateTime": 1759439138909,
    "respondTime": 4011,
    "ruleBookInfo": {
      "intro": "class.intro-content@html||$.info.sound.intro",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##类型：|标签：无|标签：",
      "tocUrl": "@js:\nif(baseUrl.match(/dramaapi|mdrama/)){\nresult='https://www.missevan.com/dramaapi/getdrama?drama_id='+baseUrl.match(/(\\d+)/)[1]\n}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl"
    },
    "ruleExplore": {
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/mdrama/drama/{{$.id}},{\"webView\":true}",
      "coverUrl": "$.cover",
      "kind": "$.type_name",
      "lastChapter": "$.newest",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "$.username||$.author",
      "bookList": "<js>\nkey=java.get('key');\npage=java.get('page');\n\n//创建两个空数组\njson=[];json2=[];\n\n//判定json里是否有列表\nif(JSON.parse(result).info.Datas){\njson=JSON.parse(result).info.Datas;}\n\n//加载单曲搜索页面并转为json\njson1=JSON.parse(java.ajax('https://www.missevan.com/sound/getsearch?s='+key+'&type=3&page_size=10&p='+page));\n\n//判定json里是否有列表\nif(json1.info.Datas){\njson2=json1.info.Datas\n}\n\n//剧集搜索列表与单曲搜索列表拼接\nlist=json.concat(json2);\n\nresult=JSON.stringify(list)\n</js>\n$.[*]",
      "bookUrl": "<js>\nid=String(result).match(/id=(\\d+)/)[1];\nif(!String(result).match(/catalog_name/)){\nresult='https://www.missevan.com/sound/getsound?soundid='+id\n}else{result='https://www.missevan.com/dramaapi/getdrama?drama_id='+id}\n</js>",
      "coverUrl": "$.front_cover||$.cover",
      "intro": "$.abstract",
      "kind": "{$.type_name},{$.catalog_name}##\\{.*?\\}",
      "lastChapter": "$.newest",
      "name": "$.soundstr||$.name"
    },
    "ruleToc": {
      "chapterList": "<js>'['+result+']'</js>\n$..info.episodes.episode[*]||$..info.episodes.music[*]||$.[*]",
      "chapterName": "$.name||$.info.sound.soundstr",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id||$.info.sound.id}}"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page={{page}}\n@js:java.put('key',key);java.put('page',page);result",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\n番茄小说二采网",
    "bookSourceGroup": "免费",
    "bookSourceName": "久久小说网",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.338i.com",
    "customButton": false,
    "customOrder": 175,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市\",\"url\":\"/txt/doushi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"玄幻\",\"url\":\"/txt/xuanhuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"/txt/lishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"/txt/kehuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"/txt/xianxia/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"同人\",\"url\":\"/txt/tongren/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"游戏\",\"url\":\"/txt/youxi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"其他\",\"url\":\"/txt/qita/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"书库\",\"url\":\"/txt/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 12; OXF-AN00 Build/HUAWEIOXF-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/114.0.5735.196 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1745854262213,
    "respondTime": 182419,
    "ruleBookInfo": {
      "author": "span:contains(作者) > a@text",
      "coverUrl": "#bookimg > img@src",
      "downloadUrls": "#button_all@.b2@a@href",
      "intro": "#bookintro@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "li:contains(分类) > span@text&&li:contains(状态) > span@text&&li:contains(更新) > span@text",
      "lastChapter": "[property$=og:novel:lastest_chapter_name]@content",
      "name": ".d_title@h1@text",
      "tocUrl": "",
      "wordCount": "li:contains(字数) > span@text"
    },
    "ruleContent": {
      "content": ".m-post@html##<script.*?</script>",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "#sitebox@dl",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": ".book_des@text",
      "kind": ".book_other@span@text",
      "lastChapter": "dd:contains(最新章节) > a@text",
      "name": "dd@h3@a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": "ol#b_results .b_algo.0",
      "bookUrl": "a.tilk@href",
      "coverUrl": "a.tilk@href\n@js:\nid=result.match(/\\/(\\d+)\\/$/)[1];\nx = id.length-3>0? id.substr(0, id.length-3) : 0;\nimg = `https://www.beqege.cc/cover/${x}/${id}.jpg`;",
      "intro": "链接：{{@@.b_tpcn a@href}}\n简介：{{@@p@text}}",
      "lastChapter": "",
      "name": "<js>\nx=java.getString(\"h2.0@text\");\nif (/第.+章/.test(x) || /《.+》/.test(x)) {\n\tb=null;\n\t}else{\n\t\tb=java.getString(\"h2.0@text\")};\nb;\n</js>##^([^_]+)_.*##$1"
    },
    "ruleToc": {
      "chapterList": "#chapterList@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\ncookie.removeCookie(\"https://cn.bing.com\")\n\"https://cn.bing.com/search?q=site%3Awww.338i.com%20{{java.encodeURI(key)}}&first={{(page-1)*10+1}},\"+JSON.stringify({\n  'webView': true\n})",
    "weight": 0
  },
  {
    "bookSourceComment": "//仅支持搜索合集准确全名\n//20250224by= =\nr=org.jsoup.Jsoup.parse(java.ajax(\"https://onehu.xyz/categories/\"))\na=r.select(\".category-item\")\nname=[];\nfor(i in a){\n\tname.push(a[i].attr(\"title\"));\n}\nJSON.stringify(name)",
    "bookSourceGroup": "免费",
    "bookSourceName": "我是盐神（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://onehu.xyz",
    "customButton": false,
    "customOrder": 176,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\neval(String(source.bookSourceComment))\nfenl=[\n{\"title\": \"首页\",  \"url\": \"https://onehu.xyz<,/page/{{page}}/#board>\",  \"style\":{\"layout_flexGrow\": 0,  layout_flexBasisPercent: 0.45}},\n{\"title\": \"分类\",  \"url\": \"https://onehu.xyz/categories/\",  \"style\":{\"layout_flexGrow\": 0,  layout_flexBasisPercent: 0.45}}\n]\nb=name\nfor (i in b){\n\tx=String(b[i]);\nurl=\"https://onehu.xyz/categories/\"+x+\"/<,page/{{page}}/#board>\";\n fenl.push({title: x,url: url,style: {\n\t\tlayout_flexGrow: 1,\n\t\tlayout_flexBasisPercent: 0.5\t}})\n}\n\nJSON.stringify(fenl)\n</js>",
    "lastUpdateTime": 1759293355937,
    "respondTime": 1764,
    "ruleBookInfo": {
      "intro": "[property~=desc]@content",
      "kind": "time@text",
      "name": "[property$=title]@content",
      "wordCount": ".mt-1@span.0@text##\\s字"
    },
    "ruleContent": {
      "content": ".markdown-body@p@textNodes"
    },
    "ruleExplore": {
      "author": ".category-chain-item@text",
      "bookList": ".index-card||.list-group@a||.category-post-list@a",
      "bookUrl": ".index-excerpt__noimg@href||href",
      "intro": "div.0@text##{{book.name}}|{{book.author}}",
      "kind": "time@text##\\r",
      "name": "h1@a@text||.list-group-item-title@text||.list-group-item-action@title"
    },
    "ruleSearch": {
      "bookList": ".list-group a",
      "bookUrl": "href",
      "checkKeyWord": "回答",
      "intro": "href##\\/%",
      "name": ".list-group-item-title@text"
    },
    "ruleToc": {
      "chapterList": ".post-content||.markdown-body",
      "chapterName": "h1@text||p.0@text",
      "chapterUrl": "{baseUrl}"
    },
    "searchUrl": "https://onehu.xyz/categories/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "基本中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.156zw.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 177,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.92 Safari/537.36\",\n\t\"Referer\": \"http://www.156zw.com/\"\n}",
    "lastUpdateTime": 1732976123801,
    "loginUrl": "",
    "respondTime": 5203,
    "ruleBookInfo": {
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@tag.p.0@textNodes",
      "lastChapter": "id.list@tag.dd.0@a@text"
    },
    "ruleContent": {
      "content": "#nr@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "tag.a.0@href",
      "kind": "class.s1@text##\\[|]",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text",
      "chapterUrl": "href##//www.##//m."
    },
    "searchUrl": "Search/{{key}}",
    "weight": 60
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.qb5.io",
    "customButton": false,
    "customOrder": 178,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "奇幻玄幻::/shuku-1-{{page}}.html\n武侠仙侠::/shuku-2-{{page}}.html\n都市官场::/shuku-3-{{page}}.html\n历史军事::/shuku-4-{{page}}.html\n游戏竞技::/shuku-7-{{page}}.html\n科幻同人::/shuku-9-{{page}}.html\n经典畅销::/shuku-10-{{page}}.html\n图书杂志::/shuku-11-{{page}}.html\n其他::/shuku-0-{{page}}.html",
    "header": "@js:JSON.stringify({\"Referer\":baseUrl,\"Keep-Alive\":\"\"})",
    "lastUpdateTime": 1681171177621,
    "respondTime": 1760,
    "ruleBookInfo": {
      "author": "class.book w@p.0@text",
      "coverUrl": "class.book w@img@src",
      "intro": "class.description w@text",
      "kind": "class.book w@span[1,2]@text",
      "lastChapter": "ul.0@li.-1@text",
      "name": "class.book w@h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html##<h1>.*?<\\/h1>",
      "replaceRegex": "##未完.*?自动加载所有内容.*|^[^\\n]\\s*第.*章.*"
    },
    "ruleExplore": {
      "author": "p.0@span@text",
      "bookList": "class.hot@dd",
      "bookUrl": "{{@@a.0@href##.html}}/",
      "coverUrl": "a.0@img@src",
      "intro": "p.1@text",
      "kind": "",
      "lastChapter": "",
      "name": "h4@a@text"
    },
    "ruleSearch": {
      "author": "p.0@span@text",
      "bookList": ".hot@dd",
      "bookUrl": "{{@@a.0@href##.html}}/",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": "p.1@text",
      "lastChapter": "",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "ul.0@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/?c=xs&a=sou&q={{key}}&page={{page}}",
    "weight": 63
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "个性说网（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.gexingshuo.com#一程",
    "customButton": false,
    "customOrder": 180,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "【好词好句】::/haocihaoju/list_{{page}}.html\n古诗词集::/haocihaoju/gushici/list_{{page}}.html\n唯美句子::/haocihaoju/weimeijuzi/list_{{page}}.html\n伤感句子::/haocihaoju/shangganjuzi/list_{{page}}.html\n幸福句子::/haocihaoju/xingfujuzi/list_{{page}}.html\n爱情句子::/haocihaoju/aiqingjuzi/list_{{page}}.html\n表白句子::/haocihaoju/biaobaijuzi/list_{{page}}.html\n励志句子::/haocihaoju/lizhijuzi/list_{{page}}.html\n【名人名言】::/mingrenmingyan/list_{{page}}.html\n励志名言::/mingrenmingyan/lizhimingyan/list_{{page}}.html\n读书名言::/mingrenmingyan/dushumingyan/list_{{page}}.html\n爱情名言::/mingrenmingyan/aiqingmingyan/list_{{page}}.html\n经典名言::/mingrenmingyan/jingdianmingyan/list_{{page}}.html\n电影台词::/mingrenmingyan/dianyingtaici/list_{{page}}.html\n电视剧台词::/mingrenmingyan/dianshijutaici/list_{{page}}.html\n游戏台词::/mingrenmingyan/youxitaici/list_{{page}}.html\n综艺台词::/mingrenmingyan/zongyitaici/list_{{page}}.html\n【签名大全】::/qianmingdaquan/list_{{page}}.html\n个性签名::/qianmingdaquan/gexingqianming/list_{{page}}.html\n伤感签名::/qianmingdaquan/shangganqianming/list_{{page}}.html\n情侣签名::/qianmingdaquan/qinglvqianming/list_{{page}}.html\n抖音签名::/qianmingdaquan/douyinqianming/list_{{page}}.html\n励志签名::/qianmingdaquan/lizhiqianming/list_{{page}}.html\n微信签名::/qianmingdaquan/weixinqianming/list_{{page}}.html\n暗恋签名::/qianmingdaquan/anlianqianming/list_{{page}}.html\n游戏签名::/qianmingdaquan/youxiqianming/list_{{page}}.html\n古风签名::/qianmingdaquan/gufengqianming/list_{{page}}.html\n快手签名::/qianmingdaquan/kuaishouqianming/list_{{page}}.html\n成熟签名::/qianmingdaquan/chengshuqianming/list_{{page}}.html\n经典签名::/qianmingdaquan/jingdianqianming/list_{{page}}.html\n奋斗签名::/qianmingdaquan/fendouqianming/list_{{page}}.html\n英语签名::/qianmingdaquan/yingyuqianming/list_{{page}}.html\n分手签名::/qianmingdaquan/fenshouqianming/list_{{page}}.html\n心累签名::/qianmingdaquan/xinleiqianming/list_{{page}}.html\n搞笑签名::/qianmingdaquan/gaoxiaoqianming/list_{{page}}.html\n英文签名::/qianmingdaquan/yingwenqianming/list_{{page}}.html\n节日签名::/qianmingdaquan/jieriqianming/list_{{page}}.html\n开心签名::/qianmingdaquan/kaixinqianming/list_{{page}}.html\n唯美签名::/qianmingdaquan/weimeiqianming/list_{{page}}.html\n男生签名::/qianmingdaquan/nanshengqianming/list_{{page}}.html\n女生签名::/qianmingdaquan/nvshengqianming/list_{{page}}.html\n霸气签名::/qianmingdaquan/baqiqianming/list_{{page}}.html\n【头像大全】::/touxiangdaquan/list_{{page}}.html\n男生头像::/touxiangdaquan/nanshengtouxiang/list_{{page}}.html\n女生头像::/touxiangdaquan/nvshengtouxiang/list_{{page}}.html\n情侣头像::/touxiangdaquan/qinglvtouxiang/list_{{page}}.html\n卡通头像::/touxiangdaquan/katongtouxiang/list_{{page}}.html\n个性头像::/touxiangdaquan/gexingtouxiang/list_{{page}}.html\n伤感头像::/touxiangdaquan/shanggantouxiang/list_{{page}}.html\n微信头像::/touxiangdaquan/weixintouxiang/list_{{page}}.html\n抖音头像::/touxiangdaquan/douyintouxiang/list_{{page}}.html\n网红头像::/touxiangdaquan/wanghongtouxiang/list_{{page}}.html\n陌陌头像::/touxiangdaquan/momotouxiang/list_{{page}}.html\n【网名大全】::/wangmingdaquan/list_{{page}}.html\n男生网名::/wangmingdaquan/nanshengwangming/list_{{page}}.html\n女生网名::/wangmingdaquan/nvshengwangming/list_{{page}}.html\n情侣网名::/wangmingdaquan/qinglvwangming/list_{{page}}.html\n伤感网名::/wangmingdaquan/shangganwangming/list_{{page}}.html\n英文网名::/wangmingdaquan/yingwenwangming/list_{{page}}.html\n搞笑网名::/wangmingdaquan/gaoxiaowangming/list_{{page}}.html\n游戏网名::/wangmingdaquan/youxiwangming/list_{{page}}.html\n励志网名::/wangmingdaquan/lizhiwangming/list_{{page}}.html\n抖音网名::/wangmingdaquan/douyinwangming/list_{{page}}.html\n好听网名::/wangmingdaquan/haotingwangming/list_{{page}}.html\n快手网名::/wangmingdaquan/kuaishouwangming/list_{{page}}.html\n微信网名::/wangmingdaquan/weixinwangming/list_{{page}}.html\n符号网名::/wangmingdaquan/fuhaowangming/list_{{page}}.html\n经典网名::/wangmingdaquan/jingdianwangming/list_{{page}}.html\n内涵网名::/wangmingdaquan/nahanwangming/list_{{page}}.html\n古风网名::/wangmingdaquan/gufengwangming/list_{{page}}.html\n一字网名::/wangmingdaquan/yiziwangming/list_{{page}}.html\n二字网名::/wangmingdaquan/erziwangming/list_{{page}}.html\n三字网名::/wangmingdaquan/sanziwangming/list_{{page}}.html\n四字网名::/wangmingdaquan/siziwangming/list_{{page}}.html\n五字网名::/wangmingdaquan/wuziwangming/list_{{page}}.html\n六字网名::/wangmingdaquan/liuziwangming/list_{{page}}.html\n七字网名::/wangmingdaquan/qiziwangming/list_{{page}}.html\n爱情网名::/wangmingdaquan/aiqingwangming/list_{{page}}.html\n【说说大全】::/shuoshuodaquan/list_{{page}}.html\n现实说说::/xinqingshuoshuohenxianshi/list_{{page}}.html\n下雨说说::/xiayu/list_{{page}}.html\n励志说说::/lizhishuoshuo/list_{{page}}.html\n霸气说说::/baqishuoshuo/list_{{page}}.html\n情侣说说::/qinglvshuoshuo/list_{{page}}.html\n考试说说::/kaoshishuoshuo/list_{{page}}.html\n兄弟说说::/xiongdishuoshuo/list_{{page}}.html\n节日说说::/jierishuoshuo/list_{{page}}.html\n幸福说说::/xingfushuoshuo/list_{{page}}.html\n生日说说::/shengrishuoshuo/list_{{page}}.html\n空间说说::/kongjianshuoshuo/list_{{page}}.html\n微信说说::/weixinshuoshuo/list_{{page}}.html\n心累说说::/xinleishuoshuo/list_{{page}}.html\n职场说说::/zhichangshuoshuo/list_{{page}}.html\n古风说说::/gufengshuoshuo/list_{{page}}.html\n内涵说说::/nahanshuoshuo/list_{{page}}.html\n哲理说说::/zhelishuoshuo/list_{{page}}.html\n英文说说::/yingwenshuoshuo/list_{{page}}.html\n毕业说说::/biyeshuoshuo/list_{{page}}.html\n分手说说::/fenshoushuoshuo/list_{{page}}.html\n快手说说::/kuaishoushuoshuo/list_{{page}}.html\n抖音说说::/douyinshuoshuo/list_{{page}}.html\n闺蜜说说::/guimishuoshuo/list_{{page}}.html\n开学说说::/kaixueshuoshuo/list_{{page}}.html\n作业说说::/zuoyeshuoshuo/list_{{page}}.html\n治愈说说::/zhiyushuoshuo/list_{{page}}.html\n无聊说说::/wuliaoshuoshuo/list_{{page}}.html\n旅游说说::/lvyoushuoshuo/list_{{page}}.html\n唯美说说::/weimeishuoshuo/list_{{page}}.html\n超拽说说::/chaozhuaishuoshuo/list_{{page}}.html\n失恋说说::/shilianshuoshuo/list_{{page}}.html\n自己说说::/zijishuoshuo/list_{{page}}.html\n主流说说::/zhuliushuoshuo/list_{{page}}.html\n微博说说::/weiboshuoshuo/list_{{page}}.html\n想家说说::/xiangjiashuoshuo/list_{{page}}.html\n表白说说::/biaobaishuoshuo/list_{{page}}.html\n心烦说说::/xinfanshuoshuo/list_{{page}}.html\n520说说::/520shuoshuo/list_{{page}}.html\n文字控说::/wenzikongshuo/list_{{page}}.html\n男生说说::/nanshengshuoshuo/list_{{page}}.html\n女生说说::/nvshengshuoshuo/list_{{page}}.html\n怀孕说说::/huaiyunshuoshuo/list_{{page}}.html\n情话说说::/qinghuashuoshuo/list_{{page}}.html\n运动说说::/yundongshuoshuo/list_{{page}}.html\n吃饭说说::/chifanshuoshuo/list_{{page}}.html\n结婚说说::/jiehunshuoshuo/list_{{page}}.html\n骂人说说::/marenshuoshuo/list_{{page}}.html\n打工说说::/dagongshuoshuo/list_{{page}}.html\n减肥说说::/jianfeishuoshuo/list_{{page}}.html\n喝酒说说::/hejiushuoshuo/list_{{page}}.html\n青春说说::/qingchunshuoshuo/list_{{page}}.html\n堵车说说::/ducheshuoshuo/list_{{page}}.html\n过年说说::/guonianshuoshuo/list_{{page}}.html\n搬家说说::/banjiashuoshuo/list_{{page}}.html\n友情说说::/youqingshuoshuo/list_{{page}}.html\n起床说说::/qichuangshuoshuo/list_{{page}}.html\n睡觉说说::/shuijueshuoshuo/list_{{page}}.html\n带娃说说::/daiwashuoshuo/list_{{page}}.html\n销售说说::/xiaoshoushuoshuo/list_{{page}}.html\n自拍说说::/zipaishuoshuo/list_{{page}}.html\n做饭说说::/zuofanshuoshuo/list_{{page}}.html\n领证说说::/lingzhengshuoshuo/list_{{page}}.html\n买车说说::/maicheshuoshuo/list_{{page}}.html\n成长说说::/chengchangshuoshuo/list_{{page}}.html\n下雪说说::/xiaxueshuoshuo/list_{{page}}.html\n购物说说::/gouwushuoshuo/list_{{page}}.html\n红包说说::/hongbaoshuoshuo/list_{{page}}.html\n放假说说::/fangjiashuoshuo/list_{{page}}.html\n钓鱼说说::/diaoyushuoshuo/list_{{page}}.html\n【心语大全】::/xinyudaquan/list_{{page}}.html\n早安心语::/xinyudaquan/zaoanxinyu/list_{{page}}.html\n晚安心语::/xinyudaquan/wananxinyu/list_{{page}}.html\n午安心语::/xinyudaquan/wuanxinyu/list_{{page}}.html\n励志心语::/xinyudaquan/lizhixinyu/list_{{page}}.html\n【范文大全】::/fanwendaquan/list_{{page}}.html\n读后感::/duhougan/list_{{page}}.html\n观后感::/guanhougan/list_{{page}}.html\n毕业赠言::/biyezengyan/list_{{page}}.html\n工作总结::/fanwendaquan/gongzuozongjie/list_{{page}}.html\n工作计划::/fanwendaquan/gongzuojihua/list_{{page}}.html\n合同范本::/fanwendaquan/hetongfanben/list_{{page}}.html\n毕业论文::/fanwendaquan/biyelunwen/list_{{page}}.html\n实习报告::/fanwendaquan/shixibaogao/list_{{page}}.html\n心得体会::/fanwendaquan/xindetihui/list_{{page}}.html\n入党申请书::/fanwendaquan/rudangshenqingshu/list_{{page}}.html\n入团申请书::/fanwendaquan/rutuanshenqingshu/list_{{page}}.html\n述职报告::/fanwendaquan/shuzhibaogao/list_{{page}}.html\n演讲稿::/fanwendaquan/yanjianggao/list_{{page}}.html\n介绍信::/fanwendaquan/jieshaoxin/list_{{page}}.html\n主持词::/fanwendaquan/zhuchici/list_{{page}}.html\n导游词::/fanwendaquan/daoyouci/list_{{page}}.html\n邀请函::/fanwendaquan/yaoqinghan/list_{{page}}.html\n策划书::/fanwendaquan/cehuashu/list_{{page}}.html\n检讨书::/fanwendaquan/jiantaoshu/list_{{page}}.html\n放假安排::/fanwendaquan/fangjiaanpai/list_{{page}}.html\n祝福语::/fanwendaquan/zhufuyu/list_{{page}}.html\n上班时间::/fanwendaquan/shangbanshijian/list_{{page}}.html\n高速免费::/fanwendaquan/gaosumianfei/list_{{page}}.html\n评语::/fanwendaquan/pingyu/list_{{page}}.html\n口号::/fanwendaquan/kouhao/list_{{page}}.html\n辞职报告::/fanwendaquan/cizhibaogao/list_{{page}}.html\n转正申请::/fanwendaquan/zhuanzhengshenqing/list_{{page}}.html\n思想汇报::/fanwendaquan/sixianghuibao/list_{{page}}.html\n活动总结::/fanwendaquan/huodongzongjie/list_{{page}}.html\n【情书大全】::/qingshudaquan/list_{{page}}.html\n表白情书::/qingshudaquan/biaobaiqingshu/list_{{page}}.html\n搞笑情书::/qingshudaquan/gaoxiaoqingshu/list_{{page}}.html\n伤感情书::/qingshudaquan/shangganqingshu/list_{{page}}.html\n初恋情书::/qingshudaquan/chulianqingshu/list_{{page}}.html\n感人情书::/qingshudaquan/ganrenqingshu/list_{{page}}.html\n浪漫情书::/qingshudaquan/langmanqingshu/list_{{page}}.html\n【话术大全】::/huashudaquan/list_{{page}}.html\n销售话术::/huashudaquan/xiaoshouhuashu/list_{{page}}.html\n汽车话术::/huashudaquan/qichehuashu/list_{{page}}.html\n房产话术::/huashudaquan/fangchanhuashu/list_{{page}}.html\n保险话术::/huashudaquan/baoxianhuashu/list_{{page}}.html\n淘宝话术::/huashudaquan/taobaohuashu/list_{{page}}.html\n邀约话术::/huashudaquan/yaoyuehuashu/list_{{page}}.html\n回访话术::/huashudaquan/huifanghuashu/list_{{page}}.html\n电销话术::/huashudaquan/dianxiaohuashu/list_{{page}}.html\n赞美话术::/huashudaquan/zanmeihuashu/list_{{page}}.html\n贷款话术::/huashudaquan/daikuanhuashu/list_{{page}}.html\n面试话术::/huashudaquan/mianshihuashu/list_{{page}}.html\n招生话术::/huashudaquan/zhaoshenghuashu/list_{{page}}.html\n导购话术::/huashudaquan/daogouhuashu/list_{{page}}.html\n催款话术::/huashudaquan/cuikuanhuashu/list_{{page}}.html\n创业项目::/chuangyexiangmu/list_{{page}}.html\n【作文大全】::/zuowen/list_{{page}}.html\n一年级作文::/zuowen/yinianzuowen/list_{{page}}.html\n二年级作文::/zuowen/ernianjizuowen/list_{{page}}.html\n三年级作文::/zuowen/sannianjizuowen/list_{{page}}.html\n四年级作文::/zuowen/sinianjizuowen/list_{{page}}.html\n五年级作文::/zuowen/wunianjizuowen/list_{{page}}.html\n六年级作文::/zuowen/liunianjizuowen/list_{{page}}.html\n初一作文::/zuowen/chuyizuowen/list_{{page}}.html\n初二作文::/zuowen/chuerzuowen/list_{{page}}.html\n初三作文::/zuowen/chusanzuowen/list_{{page}}.html\n中考作文::/zuowen/zhongkaozuowen/list_{{page}}.html\n高考作文::/zuowen/gaokaozuowen/list_{{page}}.html\n话题作文::/zuowen/huatizuowen/list_{{page}}.html\n大学论文::/zuowen/daxuelunwen/list_{{page}}.html",
    "lastUpdateTime": 1759589794422,
    "respondTime": 1369,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.artcle-con@html",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "bookList": "class.section-list@tag.li",
      "bookUrl": "tag.h5.0@tag.a@href",
      "coverUrl": "class.left_img@tag.img@src",
      "intro": "tag.li.0@tag.p.0@text",
      "name": "tag.h5.0@tag.a@text",
      "wordCount": "class.update-time.0@text##更新时间"
    },
    "ruleSearch": {
      "bookList": "class.section-list@tag.li",
      "bookUrl": "tag.h5.0@tag.a@href",
      "coverUrl": "class.left_img@tag.img@src",
      "intro": "tag.li.0@tag.p.0@text",
      "name": "tag.h5.0@tag.a@text",
      "wordCount": "class.update-time.0@text##更新时间"
    },
    "ruleToc": {
      "chapterList": "class.artcle@h1",
      "chapterName": "tag.h1@text",
      "chapterUrl": "class.artcle@tag.div.4@href"
    },
    "searchUrl": "/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025/6/9\n//快速写源by河鹅和_v25.0608.1630\n//搜索地址1",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shfljx.com",
    "bookUrlPattern": "http:\\/\\/(www|m)\\.shfljx\\.com\\/html\\/\\d+/?",
    "customButton": false,
    "customOrder": 181,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36\"\n}",
    "jsLib": "var updateInterval = 1\nfunction searchUrl(key) {\n\tconst { java, source } = this\n\tlet $\n\ttry {\n\t\t$ = JSON.parse(source.getVariable())\n\t} catch (e) {\n\t\t$ = {\n\t\t\t\"action\": \"/dshifisdhgujdu.html\",\n\t\t\t\"time\": 20250609\n\t\t}\n\t\tsource.setVariable(JSON.stringify($))\n\t}\n\tlet time = +java.timeFormatUTC(new Date(), 'yyyyMMdd', 28800000);\n\ttry {\n\t\tif (!$.action || time - $.time > updateInterval) {\n\t\t\tjava.log(\"获取action\")\n\t\t\tlet script = String(java.get(`http://www.shfljx.com/js/common.js`, source.getHeaderMap(false)).body())\n\t\t\t$.action = script.match(/action=[^\"]+\"([^?\"]+)/)[1]\n\t\t\t$.time = time\n\t\t\tsource.setVariable(JSON.stringify($))\n\t\t}\n\t} catch (e) {}\n\treturn `${$.action}?ie=utf-8&q=${key}`\n}",
    "lastUpdateTime": 1749454871822,
    "respondTime": 1078,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "init": "@js:\nif (String(baseUrl).match(/m\\./)) {\n\tresult = java.ajax(String(baseUrl).replace(/m\\./,\"www\\.\"))\n}\nresult",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "[property=\"og:novel:read_url\"]@content"
    },
    "ruleContent": {
      "content": "#content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text##作者：",
      "bookList": ".so_list .bookbox",
      "bookUrl": ".bookname a@href",
      "coverUrl": "img@src",
      "intro": "p@text",
      "kind": ".cat@text##分类：",
      "lastChapter": ".update a@text",
      "name": ".bookname@text"
    },
    "ruleToc": {
      "chapterList": ".listmain dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{searchUrl(key)}}",
    "weight": 0
  },
  {
    "bookSourceComment": "需登录\n◎搜索格式◎\n1、搜索用户<关闭精确搜索>\n@用户名\n2、搜索合集<关闭精确搜索>\n#合集\n3、搜索粮单\n%粮单名<关闭精确搜索>\n4、搜索文章，直接搜索\n发现规则格式\n                                    🏷标签\n标签名::https://api.lofter.com/oldapi/tagPosts.api?product=lofter-android-6.13.0&method=newTagSearch&offset={{(page-1) *22}}&limit=22&firstpermalink=null&tag=标签名&type=new,{\"method\": \"POST\",\"body\":\"null\"}\n📃用户（搜索可以得到)\n部分目录章节比较多，加载时间久，出现目录加载失败，请尝试刷新，因为可能是请求失败导致的",
    "bookSourceGroup": "免费",
    "bookSourceName": "乐乎文章（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://newsmiss.lofter.com",
    "customButton": false,
    "customOrder": 182,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "              ----------     🏷标签     ----------               ::\n金桐::https://api.lofter.com/oldapi/tagPosts.api?product=lofter-android-6.13.0&method=newTagSearch&offset={{(page-1) *22}}&limit=22&firstpermalink=null&tag=金桐&type=new,{\"method\": \"POST\",\"body\":\"null\"}\n\n               ----------     📃用户     ----------               ::\n砂上雪::http://api.lofter.com/v2.0/blogHomePage.api?product=lofter-android-6.13.0,{\"method\":\"POST\",\"body\":\"targetblogid=514131314&supportposttypes=1%2C2%2C3%2C4%2C5%2C6&blogdomain=taste-s.lofter.com&offset={{(page-1)*18}}&method=getPostLists&postdigestnew=1&returnData=1&limit=18&checkpwd=1&needgetpoststat=1\"}\n\n",
    "header": "{\n\"Content-Type\": \"application/x-www-form-urlencoded;charset=utf-8\"}",
    "lastUpdateTime": 1759350668385,
    "loginUrl": "https://www.lofter.com/front/account/login?theme=lofter#login",
    "respondTime": 1657,
    "ruleBookInfo": {
      "author": "$.response.blogInfo.blogNickName||$.response.posts[0].post.blogInfo.blogNickName||$.data.blogInfo.blogNickName",
      "canReName": "1",
      "coverUrl": "$.response.collection.coverUrl@put:{\"page\":\"$.response.blogInfo.blogStat.publicPostCount\"}",
      "init": "<js>\ntry{\ncookie = cookie.getCookie(\"https://newsmiss.lofter.com\");\n\nlofter = String(cookie).match(/;\\s(LOFTER-[^-]+-LOGIN-AUTH)=(.*?);/);\n\nheader = {};\nheader[lofter[1]] = lofter[2];\nsource.putLoginHeader(JSON.stringify(header));\nresult;\n}catch(e){\n\tresult = result\n\t}\n</js>",
      "intro": "@js:\na='{{$.response.collection.description}}';\nb='{{$.response.blogInfo.blogNickName}}';\nc=java.getString('$.response.posts[0].post.digest||$.response.collection.description||$.response.blogInfo.selfIntro');\n\nresult =c;\n\ncname=\"{{$.response.posts[0].post.postCollection.name}}\";\ncdes=java.getString('$.response.posts[0].post.postCollection.description');\nccount=\"{{$.response.posts[0].post.postCollection.postCount}}\";\nif(cname){\nresult=result+\"\\n&lrm;\\n🈴所属合集：\"+cname+\"\\n📜合集介绍：\"+cdes+\"\\n\"+\"🔢合集章节总数：\"+ccount\n+\"\\n🔍搜索合集：#\"+cname+\"<关闭精确搜索>\";\n\nString(result).replace(/📜合集介绍：\\n/,'')+String(book.intro).replace(/([\\s\\S]+?)--复制/,'<br>&lrm;<br>--复制').replace(/.*?::/,book.author+'::')\n}else{\tString(book.intro).replace(/.*?::/,book.author+'::')\n\t}",
      "kind": "$.postCollection",
      "name": "$.response.collection.name",
      "tocUrl": "$.response.blogsetting.blogId\n@js:\nif(result){\nid='{{$.response.blogsetting.blogId}}';\nlink='{{$.response.blogLink}}';\nurl='http://api.lofter.com/v2.0/blogHomePage.api?product=lofter-android-6.9.2,';\npost={\"method\": \"POST\",\n\"body\": \"targetblogid=\"+id+\"&supportposttypes=1%2C2%2C3%2C4%2C5%2C6&blogdomain=\"+link+\"&offset=0&method=getPostLists&postdigestnew=1&returnData=1&limit=500&checkpwd=1&needgetpoststat=1\"}\nresult=url+JSON.stringify(post);\njava.put('url',result)}else if(baseUrl.match(/postCollection/)){\nresult=java.get('url')\n}",
      "wordCount": "{{$.data.grainInfo.postCount}}篇文章##^篇文章$"
    },
    "ruleContent": {
      "content": "<js>\nif(/\\.mp4/.test(baseUrl)){\n\tresult = \"请点击章节链接观看视频\\n视频链接：\"+baseUrl\n\t}else{\ncontent = java.getString(\"$..content\");\nimgs = eval(String(java.getString(\"$..photoLinks\")));\nvideo =/video_down_url\\\\\":\\\\\"(.*?)\\\\\"/.test(result)? \"视频链接：\"+String(result).match(/video_down_url\\\\\":\\\\\"(.*?)\\\\\"/)[1]:\"\";\nimg = \"\";\nimgs?imgs.forEach(x=>{\n\tx?img += \"<img src=\\\"\"+x.orign.replace(/%7C.*/g,'')+\"\\\">\\n\":\"\"\n\t}):\"\";\ng=\t(/myReturnGift/.test(baseUrl)&&/[\\u4e00-\\u9fa5]/.test(content))?\"🏷 彩蛋 \"+java.getString(\"$..promotion\")+\"\\n\":\"\";\n\nresult = g+ content + \"\\n\"+img+\"\\n\"+video;\n\nif(video && (chapter.index == book.durChapterIndex)){\n \tjava.startBrowser(video.replace(/视频链接：/,''),\"内容\");\n \tresult = \"❗️刷新本章节播放视频❗️\"+result;\n \t\t\t}\n}\nif(result ==\"\\n\\n\")result = \"{{$..msg}}\";\nresult\n</js>\n##tbc\\.##<br>&lrm;<br>",
      "imageStyle": "FULL",
      "nextContentUrl": "<js>\nif(!/myReturnGift/.test(baseUrl)){\ntry{\n\t\tid = java.getString(\"$..post.id\");\n\t\tid2 = java.getString(\"$..post.blogId\");\nurl =\"https://api.lofter.com/v1.1/trade/gift/post/newSupportInfo?postId=\"+id+\"&blogId=\"+id2+\"&openFansVipPlan=0&vipFans=0\";\n//java.log(JSON.parse(String(java.ajax(url))).code)\n\t$  = JSON.parse(String(java.ajax(url)));\n//\tjava.log(JSON.stringify($))\n\tl = $.data.gainReturnGifts.length?$.data.gainReturnGifts:$.data.returnGifts;\n\tls = []\n\tl.forEach(x=>{\n\t\turl = \"https://api.lofter.com/v1.1/trade/gift/myReturnGift?id=\"+x.id+\"&postId=\"+id+\"&blogId=\"+id2;\n\t\tls.push(url)\n\t\t})\n\tresult = ls\n\t}catch(e){\n\t\t}\n\t}\n</js>",
      "replaceRegex": "##src=\"(.*?)\"##src=\"$1,{'headers':{'referer':'{{$..blogPageUrl}}'}}\""
    },
    "ruleExplore": {
      "author": "$.post.blogInfo.blogNickName",
      "bookList": "<js>result.replace(/null/g,'')</js>\n$.response.items[*]||$.response.posts[*]",
      "bookUrl": "@js:url='{{$.post.blogId||$.post.blogPageUrl}}';\nid='{{$.post.id}}';\nmain=url.match(/_blogid_\\d+/)?url.match(/_blogid_(\\d+)/)[1]:url;\nbody=\"blogdomain=_blogid_\"+main+\".lofter.com&postid=\"+id;\nresult='https://api.lofter.com/oldapi/post/detail.api?product=lofter-android-7.4.4,{\"method\":\"POST\",\"body\":\"'+String(body)+'\"}';",
      "coverUrl": "$.post\n@js:if(result.match(/firstImageUrl=\\[\"\",\"\"\\]/)){\nresult=result.match(/bigAvaImg=(.*?),/)?result.match(/bigAvaImg=(.*?),/)[1]:'';}else{\nresult=result.match(/firstImageUrl=\\[\"([^\"]+)\"/)?result.match(/firstImageUrl=\\[\"([^\"]+)\"/)[1]:\"\"\n}",
      "intro": "{{$.post.digest}}\n<br>&lrm;<br>\n--复制下面的文字，粘贴至发现规则添加用户--\n{{$.post.blogInfo.blogNickName}}::http://api.lofter.com/v2.0/blogHomePage.api?product=lofter-android-7.4.4,{\"method\":\"POST\",\"body\":\"targetblogid={{$.post.blogInfo.blogId}}&supportposttypes=1%2C2%2C3%2C4%2C5%2C6&blogdomain={{$.post.blogInfo.blogName}}.lofter.com&offset={{'\\{\\{(page-1)*18\\}\\}&method=getPostLists&postdigestnew=1&returnData=1&limit=18&checkpwd=1&needgetpoststat=1\"}'}}",
      "kind": "$.post.tag",
      "lastChapter": "$.post.publishTime\n@js:result=java.timeFormat(parseInt(result));\njava.put('time',result)",
      "name": "$.post.title||$.post.noticeLinkTitle||$.post.digest||$.post.blogInfo.blogId||$.post.blogPageUrl##</*\\w.*?>"
    },
    "ruleSearch": {
      "author": "$.blogInfo.blogNickName||$.blogName",
      "bookList": "$..postData[*]||$.data.posts[*]||$.data.blogs[*]||$.data.collections[*]||$.data.grainList[*]",
      "bookUrl": "$.postPageUrl\n@js:\nif(!result){\n    if(!'{{$.name}}'){\n        id='{{$.blogId}}';\n        result='http://api.lofter.com/v2.0/blogHomePage.api?product=lofter-android-7.4.4,{\"method\": \"POST\",\"body\":\"targetblogid='+id+'&method=getBlogInfoDetail&returnData=1&checkpwd=1&needgetpoststat=1\"}'\n    }else if(/grain.json/.test(baseUrl)){\n        result = \"https://api.lofter.com/api-grain/grain/getDetail.json?grainId={{$.id}}&offset=0&grainUserId={{$.userId}}\"\n    }else{\n        blogid='{{$.blogId}}';\n        id='{{$.id}}';\n        name='{{$.blogName}}';\n        java.put('name',name);\n        result='https://api.lofter.com/v1.1/postCollection.api?product=lofter-android-7.4.4,{\"method\": \"POST\",\"body\":\"blogdomain='+name+'.lofter.com&method=getCollectionSimple&offset=0&limit=2000&blogid='+blogid+'&collectionid='+id+'&order=1\"}';\n        java.put('url',result)\n    }\n}else{\n    body=\"blogdomain=_blogid_{{$.blogId}}.lofter.com&postid={{$.id}}\";\n    result='https://api.lofter.com/oldapi/post/detail.api?product=lofter-android-7.4.4,{\"method\":\"POST\",\"body\":\"'+String(body)+'\"}';\n};\n",
      "checkKeyWord": "%双女主",
      "coverUrl": "$.firstImageUrl[0]||$.blogInfo.bigAvaImg||$.bigAvaImg||$.coverUrl",
      "intro": "{{$.digest||$.selfIntro||$.posts[0].digest||$.description}}\n<br>&lrm;<br>\n--复制下面的文字，可将用户添加发现或者订阅--\n{{$.blogInfo.blogNickName||$.blogNickName||$.blogName}}::http://api.lofter.com/v2.0/blogHomePage.api?product=lofter-android-6.9.2,{\"method\":\"POST\",\"body\":\"supportposttypes=1%2C2%2C3%2C4%2C5%2C6&blogdomain={{$.blogName||$.blogInfo.blogName}}.lofter.com&offset={{'\\{\\{(page-1)*18\\}\\}&method=getPostLists&postdigestnew=1&returnData=1&limit=18&checkpwd=1&needgetpoststat=1\"}'}}\n<js>\nif(/grain.json/.test(baseUrl)){\nresult =\tresult.replace(/--复制下面[\\s\\S]+/,'')\n\t}\nresult\n</js>",
      "kind": "$.tagList||$.tags",
      "lastChapter": "$.publishTime\n<js>\nif(result){\nresult?result=java.timeFormat(parseInt(result)):'';\njava.put('time',result)}else{\nresult=java.getString('$.posts[0].title||$.posts[0].digest||$.postCount')+\"篇文章\"\n}</js>\n##</*\\w+.*?>|[^\\d]+篇文章|^0*篇文章$",
      "name": "$.title||$.noticeLinkTitle||$.digest||$.blogInfo.blogNiceName||$.blogNickName||$.name\n<js>\nprefix = java.get(\"prefix\");\nresult = /[@#%＃]/.test(prefix)?prefix+result:result\n</js>\n##</*\\w.*?>"
    },
    "ruleToc": {
      "chapterList": "$..posts[*]||$.response.items[*]@put:{\"blogname\":\"$..blogName\"}\n<js>if(result.length){\n\tresult\n\t}else{\n\t\t\"[{'title':'暂无目录'}]\"\n\t\t}\n</js>\n$.[*]",
      "chapterName": "$.post.title||$.post.digest||$.post.blogInfo.blogNickName||$..postView.title||$..postView.digest||$.title\n<js>if(result){\nresult=result\n}else{result=book.name}\nString(result).replace(/<\\/*\\w.*?>/g,'')\n</js>\n##(^.{1,25})##$1###",
      "chapterUrl": "<js>\nif(/postCollection|blogHomePage|api-grain/.test(baseUrl)){\tbody=\"blogdomain=_blogid_{{$.post.blogId||$..postView.blogId}}.lofter.com&postid={{$.post.id||$..postView.id}}\";\nresult='https://api.lofter.com/oldapi/post/detail.api?product=lofter-android-7.4.4,{\"method\":\"POST\",\"body\":\"'+String(body)+'\"}';\n\t}else\tif(/video_down_url\":\"(.*?)\"/.test(result)){\n\t\tresult = String(result).match(/video_down_url\":\"(.*?)\"/)[1];\n\t\t}else{\n\t\t\tresult = baseUrl\n\t\t\t}\n</js>",
      "nextTocUrl": "<js>\nlist=[];\nif(/limit=500/.test(baseUrl)){\npages=java.get(\"page\");\npage=parseInt(pages/500);\nurl=String(java.get(\"url\"));\nif(page>6){\npage=6\n}else{page=page}\nfor(i=1;i<=page;i++){\nlist.push(url.replace(/offset=\\d+/,'offset='+(parseInt(i)*500)))\n}\n}else if(/api-grain/.test(baseUrl)){\n\toffset = \"{{$.data.offset}}\";\n\tif(offset!=\"-1\"){\n\tlist = baseUrl.replace(/offset=\\d+/,'offset='+offset);\n}\n\t}\nlist\n</js>",
      "updateTime": "$.post.publishTime\n<js>\nif(/api-grain/.test(baseUrl)){\n\tresult = \"所属合集：\"+java.getString(\"$..postCollection.name\");\n\t}else{\nresult?java.timeFormat(parseInt(result)):java.get('time')\n}\n</js>\n##所属合集：$"
    },
    "searchUrl": "@js:\nlet prefix = key.charAt(0);\njava.put(\"prefix\",prefix);\nlet offset = '{\\{(page-1) *' + (prefix === '%' ? '10}' : (prefix === '@' ? '10}' : '20}')) + '}';\nlet baseUrl = \"https://api.lofter.com/newsearch/\"\nswitch(prefix) {\n    case '@':\n        result = baseUrl+'blog.json?key=' + key.slice(1)+ '&limit=10&offset=' + offset;\n        break;\n    case '#':\n    case '＃':\n        result = baseUrl+'collection.json?key=' + key.slice(1) + '&limit=20&offset=' + offset;\n        break;\n    case '%':\n        result = baseUrl+'grain.json?key='+key.slice(1)+'&limit=10&offset=' + offset;\n        break;\n    default:\n        let header = {\n            \"headers\": {\n                \"Content-Type\": \"application/x-www-form-urlencoded;charset=utf-8\",\n                \"deviceid\": java.androidId(),\n                \"if-modified-since\": String(new Date()).replace(/(.*?)\\s(.*?)\\s(.*?)\\s(.*?)GMT.*/,'$1, $3 $2 $4 GMT')\n            }\n        };\n        result = baseUrl+'post.json?key=' + key + '&sortType=0&offset=' + offset + '&limit=20,' + JSON.stringify(header);\n}\n",
    "weight": 0
  },
  {
    "bookSourceComment": "haxc",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "爱看书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://cxb-pro.cread.com/",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 183,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"——————出版频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"文学小说\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"经典名著\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"经管励志\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"生活休闲\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"婚姻家庭\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科普教育\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"纪实传记\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3700&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"亲子育儿\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3800&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"工具百科\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3900&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"——————男生频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"都市小说\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"东方玄幻\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠仙侠\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"悬疑惊悚\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1800&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"架空历史\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"网游竞技\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1700&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻未来\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"西方玄幻\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"——————女生频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"古代言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"幻想言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"总裁豪门\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"青春校园\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"唯美同人\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\r\n\"uid\":\"110496550\",\r\n\"cnid\":\"10005\",\r\n\"version\":\"7.6.0\",\r\n\"packname\":\"com.mianfeizs.book\",\r\n\"oscode\":\"30\",\r\n\"vcode\":\"134\",\r\n\"channelId\":\"10005\",\r\n\"platform\":\"android\",\r\n\"appname\":\"mfzs\"\n}",
    "lastUpdateTime": 1734943031166,
    "respondTime": 2610,
    "ruleBookInfo": {
      "author": "$..bookVo.authorName",
      "canReName": "",
      "coverUrl": "",
      "intro": "$..bookVo.introduction",
      "lastChapter": "$..bookVo.lastUpdateChapterName",
      "name": "$..bookVo.bookName@put:{bookid:$..bookVo.bookId}",
      "tocUrl": "https://cxb-pro.cread.com/cx/itf/getvolume?bookId={{$..bookVo.bookId}}"
    },
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$.dataList",
      "bookUrl": "https://readbook-service-freebook.cread.com/cx/bookDetailYS?bookid={{$.bookid}}",
      "coverUrl": "$.cover",
      "intro": "$.intro",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.newBookName",
      "wordCount": "$.wordCount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.list",
      "bookUrl": "https://readbook-service-freebook.cread.com/cx/bookDetailYS?bookid={{$.id}}",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.name",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": "$..bookChapters[*]",
      "chapterName": "$.name",
      "chapterUrl": "https://cxb-pro.cread.com:443/cx/itf/chapterRead?bookId=@get:{bookid}&chapterId={{$.id}}&full=0",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": "$.updateDate@js:java.timeFormat(result)"
    },
    "searchUrl": "https://cxb-pro.cread.com/cx/searchbooks,{\n\"charset\": \"\",\n\"method\": \"POST\",\n\"body\": \"keyword={{key}}&pageNo={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "正版",
    "bookSourceName": "百度小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://dushu.baidu.com/",
    "customButton": false,
    "customOrder": 184,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"东方玄幻\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=东方玄幻&query=东方玄幻&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古典仙侠\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=古典仙侠&query=古典仙侠&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代修真\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=现代修真&query=现代修真&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市生活\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=都市生活&query=都市生活&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市超能\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=都市超能&query=都市超能&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"架空历史\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=架空历史&query=架空历史&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"虚拟网游\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=虚拟网游&query=虚拟网游&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"时空穿梭\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=时空穿梭&query=时空穿梭&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"末世进化\",\"url\":\"/api/getCateDetail?channel=男频&status=完结&count=10&cate2=末世进化&query=末世进化&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=古代言情&query=古代言情&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=穿越重生&query=穿越重生&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"浪漫言情\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=浪漫言情&query=浪漫言情&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"烽火情缘\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=烽火情缘&query=烽火情缘&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"忧伤青春\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=忧伤青春&query=忧伤青春&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻仙侠\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=玄幻仙侠&query=玄幻仙侠&page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市幻想\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=都市幻想&query=都市幻想&page={{page}}\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}},{\"title\":\"悬疑灵异\",\"url\":\"/api/getCateDetail?channel=女频&status=完结&count=10&cate2=悬疑灵异&query=悬疑灵异&page={{page}}\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}}]",
    "lastUpdateTime": 1754559800103,
    "loginUrl": "https://wappass.baidu.com/password_login",
    "respondTime": 2792,
    "ruleBookInfo": {
      "intro": "@js:'<br>'+java.get('intro')",
      "lastChapter": "共{$.data.chapter.chapterCount}##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]"
    },
    "ruleContent": {
      "content": "data.novel.content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "$..novelList[*]",
      "bookUrl": "https://boxnovel.baidu.com/boxnovel/wiseapi/chapterList?bookid={$.bookId}&pageNum=1&order=asc&site=",
      "checkKeyWord": "青春",
      "coverUrl": "cover",
      "intro": "description@put:{'intro':'description'}",
      "kind": "{{$.tagList}},{{$.status}}",
      "name": "title"
    },
    "ruleToc": {
      "chapterList": "data.chapter.chapterInfo",
      "chapterName": "chapter_title##默认卷.|正文.|[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "http://dushu.baidu.com/api/pc/getChapterContent?data=%7B%22book_id%22:%22{$.book_id}%22,%22cid%22:%22{$.book_id}%7C{$.chapter_id}%22,%22need_bookinfo%22:0%7D",
      "isVip": "price",
      "nextTocUrl": "@js:\nvar n=(JSON.parse(result).data.chapter.chapterCount)/50+1;\nvar list=[];\nbaseUrl=baseUrl.replace(/1&order=asc&site=/,'');\nfor(var i=2;i<n;i++){\nvar url=baseUrl+i+'&order=asc&site=';\nlist.push(url);\n}\nlist;"
    },
    "searchUrl": "/api/getSearchResultData?page={{page}}&count=10&query={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "悠悠文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.uuwx.la",
    "bookUrlPattern": "https?://m.uuwx.la/ls/[\\d_/]+",
    "customButton": false,
    "customOrder": 186,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1734985451589,
    "respondTime": 4147,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##{{try{title}catch(e){\"\"} }}.*\\s*\\(第\\d+.*页\\)\\s*|\\s*.?本章未完.*\\s*"
    },
    "ruleExplore": {
      "author": "ownText##.*\\/",
      "bookList": "class.line",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"http://www.uuxs.info/modules/article/images/nocover.jpg\"",
      "kind": "ownText##\\[|\\].*",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": "p.-2@text",
      "bookList": "class.block",
      "bookUrl": "a.1@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@src",
      "kind": "p.-3@text##分类：",
      "lastChapter": "a.-1@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": "ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "若初文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruochu.com#嘚嘚21.0201",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 187,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "短篇::http://search.ruochu.com/web/all?sort=110&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n婚恋::http://search.ruochu.com/web/all?sort=35&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n都市::http://search.ruochu.com/web/all?sort=4&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n职场::http://search.ruochu.com/web/all?sort=11&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n豪门::http://search.ruochu.com/web/all?sort=12&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n总裁::http://search.ruochu.com/web/all?sort=13&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n架空::http://search.ruochu.com/web/all?sort=15&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n穿越::http://search.ruochu.com/web/all?sort=17&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宫斗::http://search.ruochu.com/web/all?sort=19&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宅斗::http://search.ruochu.com/web/all?sort=20&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n青春::http://search.ruochu.com/web/all?sort=21&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n仙侠::http://search.ruochu.com/web/all?sort=7&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n修真::http://search.ruochu.com/web/all?sort=22&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n玄幻::http://search.ruochu.com/web/all?sort=6&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n武侠::http://search.ruochu.com/web/all?sort=8&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n历史::http://search.ruochu.com/web/all?sort=3&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n纯爱::http://search.ruochu.com/web/all?sort=23&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0",
    "lastUpdateTime": 1733276174628,
    "loginUrl": "",
    "respondTime": 699,
    "ruleBookInfo": {
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": "class.page-content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "$.data.content",
      "bookUrl": "$.id@js:\"https://www.ruochu.com/book/\"+result",
      "coverUrl": "$.iconUrlSmall@js:\"https://b.heiyanimg.com\"+result",
      "intro": "$.introduce",
      "kind": "$.sortname",
      "lastChapter": "$.lastchaptername",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": "class.float-list fill-block@li",
      "chapterName": "html@js:if(result.match(/isvip/)){\nresult=\"🔒\"+result.match(/>([^<]+)<\\/a>/)[1];\n}else{result=result.match(/>([^<]+)<\\/a>/)[1];}",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://search.ruochu.com/web/search?queryString={{key}}&highlight=false&page=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "夜书库",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yeshuku.com",
    "customButton": false,
    "customOrder": 188,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\njava.toast(\"🔥正在刷新列表,请稍等！\");\nvar push = (title, url, size) => result.push({\n    \"title\": title,\n    \"url\": url,\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": size\n    }\n});\nvar baseUrl = \"https://m.yeshuku.com/modules/article/articlefilter.php\";\nvar tag = java.ajax(baseUrl);\nif (tag) {\n    var a = org.jsoup.Jsoup.parse(tag).select(\".sch-sel a\");\n    push(\"🔥分类小说🔥\", null, 1);\n    for (var i in a) {\n        var title = a[i].text();\n        var url = a[i].attr(\"href\");\n        var size = 0.33;\n        title = String(title).replace(/\\s/g, \"\");\n        url = String(url)+ \"?page={{page}}\";      \n        push(title, url, size);\n  }\n\n} else {\n  java.toast(\"🤔列表刷新失败！！！\");     \n} \nJSON.stringify(result);",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1745852719051,
    "respondTime": 11083,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": "#YiJianZhan@html",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "dd.1@ownText",
      "bookList": "#sitebox@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@_src",
      "intro": "a.2@text",
      "kind": "span.0:1@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "#readerlist@ul@li@a",
      "chapterName": "text##(.*)\\s\\-\\s.*##$1",
      "chapterUrl": "href",
      "nextTocUrl": "option@value",
      "updateTime": "text##.*\\s\\-\\s(.*)##$1"
    },
    "searchUrl": "https://m.yeshuku.com/modules/article/search.php,{\n  \"body\": \"searchtype=all&searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//25.1.4 by怣疯",
    "bookSourceGroup": "🔞",
    "bookSourceName": "西瓜书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xiguashuwu.com/",
    "bookUrlPattern": "https://www.xiguashuwu4.com/book/\\d+/",
    "customButton": false,
    "customOrder": 189,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/category/0/{{page}}.html\n玄幻小说::/category/1/{{page}}.html\n修真小说::/category/2/{{page}}.html\n都市小说::/category/3/{{page}}.html\n历史小说::/category/4/{{page}}.html\n网游小说::/category/5/{{page}}.html\n科幻小说::/category/6/{{page}}.html\n言情小说::/category/7/{{page}}.html\n其他小说::/category/8/{{page}}.html\n经典小说::/category/9/{{page}}.html\n同人小说::/category/10/{{page}}.html\n高辣小说::/category/11/{{page}}.html\n耽美小说::/category/12/{{page}}.html\n情欲小说::/category/13/{{page}}.html\n复古耽美::/category/14/{{page}}.html\n复古言情::/category/15/{{page}}.html",
    "header": "{\n\t\t\t  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 13; 2312DRAABC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1769087175482,
    "respondTime": 4762,
    "ruleBookInfo": {
      "author": "a",
      "coverUrl": "w",
      "init": "@js:\n$ = (_) => java.getString(_);\n({\n    n: $(\"[property$=title]@content\"),\n    a: $(\"[property$=author]@content\"),\n    k: $(\"[property~=category|status|update_time]@content\"),\n    w: $(\"[property$=image]@content\"),\n    l: $(\"[property~=las?test_chapter_name]@content\"),\n    i: $(\"[property$=description]@content\"),\n    c: $(\"[property$=image]@content\"),\n    t: $(\"text.章节目录@href\")\n});",
      "intro": "i",
      "kind": "k",
      "lastChapter": "l",
      "name": "n",
      "tocUrl": "t"
    },
    "ruleContent": {
      "content": "p[style=\"text-indent:2em; padding:0px; margin:0px;\"]@html",
      "imageStyle": "text",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##本章尚未读.*"
    },
    "ruleExplore": {
      "author": "p.1@span@text",
      "bookList": ".CGsectionTwo-right-content div",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.2@text",
      "kind": "p.-1@text##最近更新 ",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": "<js>if(result.includes('no-js')){\n  java.startBrowserAwait(baseUrl,\"验证\");\n  result=java.ajax(baseUrl);\n}\nresult\n</js>\n.SHsectionThree-middle@p",
      "bookUrl": "a.0@href",
      "kind": "span.0@text##\\[|\\]",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".BCsectionTwo-top li a\n@js:var list=[];\nresult.forEach(e=>{\nurl=String(e.attr('href'));\nif(url.match(/javascript/)){\turl=String(e.attr('href')).replace(/.*'(\\d+)','(\\d+)'.*/,'/book/$1/$2.html');}\n\tlist.push({\n\t\ttext:e.text(),\n\t\thref:url\n\t\t}\t)\n\t})\nlist",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "@js:\nresult=java.getString('#next@href');\njava.log(result);\nif(String(result).match(/javascript/)){\n\tresult=String(result).replace(/.*'(\\d+)','(\\d+)'.*/,'https://www.xiguashuwu4.com/book/$1/catalog/$2.html')\n\tjava.log(result);\n\tresult\n\t}else result=result"
    },
    "searchUrl": "https://www.xiguashuwu.com/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "新版目录规则 来自 = =\n更换地址：https://www.verysadfun.com\n原地址：\nhttps://www.tinghao8.com\nhttps://www.tinghaobook.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "📖小红书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xxxhongshu.com/",
    "customButton": false,
    "customOrder": 190,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"—— 分类 ——\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"全 部\",\"url\":\"/category/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/category/120486374334533/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/category/120486374375494/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想言情\",\"url\":\"/category/120486374404170/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"PO18\",\"url\":\"/category/168424354263109/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"轻小说\",\"url\":\"/category/32707214999624/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/category/32705809293382/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"耽美\",\"url\":\"/category/32705809215557/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"同人\",\"url\":\"/category/32705809346631/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"综合\",\"url\":\"/category/32705811198022/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现言\",\"url\":\"/category/32707214946374/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"古言\",\"url\":\"/category/32707214909509/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/category/32707215024198/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"青春\",\"url\":\"/category/32707214942278/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"幻情\",\"url\":\"/category/32707214925895/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/category/32707214983240/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"/category/32707214917702/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"游戏\",\"url\":\"/category/32707214921799/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现实\",\"url\":\"/category/32707216080968/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱\",\"url\":\"/category/32707236339782/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"短篇\",\"url\":\"/category/32707236253767/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/category/366325011247174/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n\n{\"title\":\"—— 总榜 ——\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"全 部\",\"url\":\"/rank/all/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/rank/all/120486374334533/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/rank/all/120486374375494/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想言情\",\"url\":\"/rank/all/120486374404170/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"PO18\",\"url\":\"/rank/all/168424354263109/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"轻小说\",\"url\":\"/rank/all/32707214999624/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/rank/all/32705809293382/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"耽美\",\"url\":\"/rank/all/32705809215557/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"同人\",\"url\":\"/rank/all/32705809346631/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"综合\",\"url\":\"/rank/all/32705811198022/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现言\",\"url\":\"/rank/all/32707214946374/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"古言\",\"url\":\"/rank/all/32707214909509/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/rank/all/32707215024198/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"青春\",\"url\":\"/rank/all/32707214942278/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"幻情\",\"url\":\"/rank/all/32707214925895/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/rank/all/32707214983240/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"/rank/all/32707214917702/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"游戏\",\"url\":\"/rank/all/32707214921799/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现实\",\"url\":\"/rank/all/32707216080968/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱\",\"url\":\"/rank/all/32707236339782/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"短篇\",\"url\":\"/rank/all/32707236253767/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/rank/all/366325011247174/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1748707440616,
    "respondTime": 4218,
    "ruleBookInfo": {
      "author": ".author@text",
      "coverUrl": "img.2@src",
      "intro": "id.intro@p@text",
      "kind": ".category@text&&.time@text##.*：",
      "lastChapter": ".newestChapter@text##.*：",
      "name": ".title@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "@js:\nfunction d(a, b) {\n            b = java.md5Encode(b);\n            var d = b.substring(0, 16);\n            var e = b.substring(16);\n            return    java.aesBase64DecodeToString(a,e,\"AES/CBC/PKCS5padding\",d)}\neval(result.match(/(d\\(\"[\\s\\S]+\"\\))\\)/)[1])"
    },
    "ruleExplore": {
      "author": "p.1@text",
      "bookList": ".CGsectionTwo-right-content-unit",
      "bookUrl": "a.0@href",
      "coverUrl": "@js:'https://img.bookscdn.com/nocover.jpg'",
      "intro": "p.2@text",
      "kind": "p.3@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".SHsectionThree-middle p",
      "bookUrl": "a.1@href",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "class.BCsectionTwo-top-chapter\n<js>\nif (src.match(/data\\-x/)) {\n  result.sort((a, b) => a.attr(\"data-x\") - b.attr(\"data-x\"));\n  result.select(\"a\");\n} else {\n  result = result.select(\"a\")\n  try {\n    eval(src.match(/var originalOrder = \\[.*\\];/)[0])\n    list = []\n    for (i in result) {\n      list[originalOrder[i]] = result[i]\n    }\n    list\n  } catch (err) {\n    result;\n  }\n}\n</js>",
      "chapterName": "html<js>\nr=result\ntry{\n\trr=r.match(/= ?\"([^\"]+)\"/g)\n\tfor(i in rr){\n\t//\tjava.log(rr[i])\n\t a=rr[i].match(/\"(.*)\"/)[1]\n\t if(/L2Jv|\\/book|javas|^g$/.test(a)){}else{text=a}\n\t\t}\ntext\n}catch{\n\tjava.getString(\"text\")\n}\n</js>",
      "chapterUrl": "html<js>\nr=result\ntry{\n\trr=r.match(/= ?\"([^\"]+)\"/g);\n\tfor(i in rr){\n\t a=rr[i].match(/\"(.*)\"/)[1]\n\t if(/L2Jv/.test(a)){\n\t \t\t \thref=java.base64Decode(a)\n\t \t}else if(/html/.test(a)){href=a}\n\t}\nif(href==\"\"){\n\t\thref=java.getString(\"a@href\")\n\t\t}\nhref\n}catch{\n\tjava.getString(\"href\")\n}\n</js>",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/search/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "轻小说",
    "bookSourceName": "刺猬猫备用",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ciweimao.com",
    "customButton": false,
    "customOrder": 192,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36\"\n}",
    "lastUpdateTime": 1777917597291,
    "respondTime": 689,
    "ruleBookInfo": {
      "author": "class.book-title.0@tag.span.0@tag.a.0@text",
      "coverUrl": "tag.img.0@src",
      "intro": "class.book-desc.0@text",
      "name": "tag.h1.0@text",
      "tocUrl": "class.btn-more ly-fr@herf"
    },
    "ruleContent": {
      "content": "id.J_BookRead@textNodes||class.chapter@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.cnt.0@tag.p.1@tag.a.0@text",
      "bookList": "class.rank-book-list@tag.li",
      "bookUrl": "class.cnt.0@class.tit.0@tag.a.0@href",
      "coverUrl": "tag.img.0@src",
      "lastChapter": "class.cnt.0@tag.p.2@text##.*/",
      "name": "class.cnt.0@class.tit.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.book-chapter-list@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.ciweimao.com/get-search-book-list/{{key}}/1",
    "weight": 0
  },
  {
    "bookSourceComment": "┍　　　　书源作者：萌  新　　　　┒\n├───┬────────────┤\n│！免责│本书源只提供代码进行技术│\n│！声明│交流，请于２４小时后删除│\n└────────────────┘\n*如〖http://m.uuwx.la〗\n书源交流群qq610296345\n有问题可以在群里说",
    "bookSourceGroup": "免费",
    "bookSourceName": "UU小說",
    "bookSourceType": 0,
    "bookSourceUrl": "去789",
    "bookUrlPattern": "https?://m.uuwx.la/ls/[\\d_/]+",
    "customButton": false,
    "customOrder": 193,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"言情小说\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-1/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-2/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-3/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻灵异\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-4/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠小说\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-5/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越小说\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-6/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综合其他\",\"url\":\"{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/fenlei-7/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1752672683738,
    "respondTime": 7423,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "#nr1@textNodes##{{try{title}catch(e){\"\"} }}.*\\s*\\(第\\d+.*页\\)\\s*|\\s*.?本章未完.*\\s*",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "ownText##.*\\/",
      "bookList": ".line",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"http://www.uuxs.info/modules/article/images/nocover.jpg\"",
      "kind": "ownText##\\[|\\].*",
      "name": "a@text##"
    },
    "ruleSearch": {
      "author": "p.-2@text",
      "bookList": ".block",
      "bookUrl": "a.1@href",
      "checkKeyWord": "侠盗",
      "coverUrl": "img@src",
      "kind": "p.-3@text##分类：",
      "lastChapter": "a.-1@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": "ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "{{@@text.下一页@href}}\n{{@@option@value}}"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\n{{source.bookSourceComment.match(/如〖([^〗]*)〗/)[1]}}/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//5.12@ys4568",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨乐成漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.lcmhx.cc",
    "customButton": false,
    "customOrder": 195,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"韩漫\",\"url\":\"/mctype/1<,-{{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"单行本\",\"url\":\"/mctype/2<,-{{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"同人志\",\"url\":\"/mctype/3<,-{{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"Cosplay\",\"url\":\"/mctype/4<,-{{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}]",
    "jsLib": "function change(src){\n\treturn this.java.t2s(src)}",
    "lastUpdateTime": 1747713974265,
    "respondTime": 2538,
    "ruleBookInfo": {
      "init": "<js>change(src)</js>",
      "intro": "&nbsp;\n📖 书名：{{@@.page-location-text@text}}\n{{@@text.简介@text}}"
    },
    "ruleContent": {
      "content": ".page@img@html",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": "<js>change(src)</js>\n.item@a",
      "bookUrl": "href",
      "coverUrl": "img@src",
      "name": ".hv-title@text"
    },
    "ruleSearch": {
      "bookList": "<js>change(src)</js>\n.search-result@a",
      "bookUrl": "href",
      "checkKeyWord": "姐姐",
      "coverUrl": "img@src",
      "name": ".search-result__item__title@text"
    },
    "ruleToc": {
      "chapterList": "<js>change(src)</js>\n.listmh@li@a||.page-location-text",
      "chapterName": "text",
      "chapterUrl": "href@js:result==\"\"?baseUrl:result"
    },
    "searchUrl": "/mcsearch/-------/?wd={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "搜索词@小说 搜索小说 如 我的@小说\n搜索词 搜索漫画 如 我的",
    "bookSourceGroup": "漫画",
    "bookSourceName": "画涯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.huaya.cc",
    "customButton": false,
    "customOrder": 196,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"Content-Type\": \"application/x-www-form-urlencoded\",\n  \"app_v\": \"1.8.6\",\n  \"User-Agent\": \"okhttp/4.9.3\",\n   \"token\": \"37cb0e19d1c146d78bfff2994ad366eb\"}",
    "lastUpdateTime": 1747337031569,
    "respondTime": 933,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "detail.titlecontent\n@js:\njava.log(book.type)\nc=java.get(\"c\")\nif(c==1){\n\tresult=result\n\t}else{\na=result.split(';').map(x => '<img src=\"'+x+'\">').join('\\n');\nresult=a\n}\nresult",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "\n    \nlist",
      "bookUrl": "@js:url=\"http://api.huaya.cc/Handler/NovelTitles_Head.ashx,\"+JSON.stringify({\n  \"body\": \"asc=true&novelId={{$.novelid}}&size=99999&sign=&index=1&type=list&first=true\",\n  \"method\": \"POST\"\n})",
      "checkKeyWord": "我的@小说",
      "coverUrl": "imgurl",
      "intro": "description",
      "kind": "{{$.noveltypelist}}\n{{$.novel_score}}分",
      "lastChapter": "novel_publishdate",
      "name": "novelname",
      "wordCount": "wordscount"
    },
    "ruleToc": {
      "chapterList": "list",
      "chapterName": "titlename",
      "chapterUrl": "@js:\nc=java.get(\"c\")\nurl=\"http://api.huaya.cc/Handler/NovelTitles_Head.ashx,\"+`{\n\t\"method\":\"POST\",\n\t\"body\":\"img_type=mix&img_val=393&novelId={{$.novelid}}&platform=android&screenHeight=2356&screenWidth=1080&SectionNum={{$.sectionnum}}&sign={{java.md5Encode(\"img_type=mix&img_val=393&novelId=\"+java.getString(\"$.novelid\")+\"&platform=android&screenHeight=2356&screenWidth=1080&SectionNum=\"+java.getString(\"$.sectionnum\")+\"&type=get_new&ver=1.8.6&37cb0e19d1c146d78bfff2994ad366eb\")}}&type=get_new&ver=1.8.6\"\n\t}`\nif (c==1) {\n    book.type = 8\n} else {\n    book.type = 64}\nurl;"
    },
    "searchUrl": "@js:\nc=0\nif (key.match(/@小说/)) {\n  c = 1\n  key = key.split(\"@\")[0]\n}\n\njava.put(\"c\",c)\n\nresult=\"http://api.huaya.cc/Handler/Novels_Head.ashx,\"+`{\"body\":\"code=${c}&size=99999&index=1&type=list&key=${key}\",\"method\":\"POST\"}`",
    "weight": 0
  },
  {
    "bookSourceComment": "用于找书",
    "bookSourceGroup": "免费",
    "bookSourceName": "松鹤庭沐",
    "bookSourceType": 0,
    "bookSourceUrl": "https://so.html5.qq.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 197,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"男生分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"都市\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1505&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1505&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1501&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1501&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1504&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1504&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1502&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1502&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1506&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1506&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1507&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1507&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻空间\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1509&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1509&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑侦探\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1508&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1508&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1510&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1510&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1503&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1503&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"体育\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1511&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1511&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"轻小说\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1512&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1512&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"短篇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1515&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1515&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现实\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1499&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1499&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"风格\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"轻松\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20284&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20284&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20286&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20286&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"快节奏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20281&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20281&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"脑洞大\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20280&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20280&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞笑\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22176&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22176&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"谋略\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20285&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20285&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"智斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20279&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20279&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"正能量\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20282&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20282&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无金手指\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20283&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20283&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"思想迪化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20561&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20561&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"人生巅峰\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22147&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22147&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"群像\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20278&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20278&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"爽文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20882&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20882&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神功秘籍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22132&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22132&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"机缘奇遇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22144&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22144&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"鬼怪神魔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22247&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22247&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"兄弟情义\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22309&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22309&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"孙悟空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22356&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22356&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"红颜知己\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22187&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22187&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"变异生物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22258&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22258&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22249&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22249&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"剑道\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22286&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22286&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"流派\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"穿越\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20003&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20003&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"系统流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20006&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20006&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无敌流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20011&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20011&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20002&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20002&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日常文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20007&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20007&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"赚钱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20136&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20136&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强者归来\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20021&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20021&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"经营\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20000&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20000&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"草根崛起\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20020&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20020&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无限流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20008&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20008&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"诸天流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20023&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20023&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"扮猪吃虎\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20019&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20019&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"开局流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20515&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20515&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"文娱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20050&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20050&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"斗罗大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20199&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20199&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"争霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20028&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20028&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20162&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20162&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"兵王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20030&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20030&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"练功流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20166&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20166&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"护花高手\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20134&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20134&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"洪荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20057&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20057&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"末世\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20055&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20055&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"升级流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20094&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20094&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"废柴流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20015&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20015&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"天才流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20014&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20014&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"医生流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20033&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20033&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综漫\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20200&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20200&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"凡人流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20503&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20503&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"架空历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20148&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20148&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20046&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20046&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"进化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20082&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20082&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"召唤流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20012&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20012&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"三国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20026&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20026&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"养成\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20004&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20004&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20090&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20090&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"单女主\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20060&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20060&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵气复苏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20058&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20058&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异兽流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20009&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20009&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"签到\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20497&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20497&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"时空文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20183&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20183&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"赘婿流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20081&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20081&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"乱世\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20156&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20156&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"技术流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20163&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20163&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武道\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20102&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20102&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20107&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20107&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"唐朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20142&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20142&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"西游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20079&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20079&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20035&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20035&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20507&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20507&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20109&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20109&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市修仙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20083&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20083&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20075&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20075&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20185&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20185&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"直播文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20067&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20067&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20187&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20187&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"星际\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20053&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20053&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"明朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20144&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20144&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"LOL\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20024&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20024&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20069&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20069&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"布局流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20010&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20010&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宠物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20093&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20093&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代都市\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22178&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22178&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"秦汉\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20141&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20141&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"炼丹\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20499&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20499&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"封神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20043&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20043&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异世穿越\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20112&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20112&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"朝堂\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20147&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20147&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"爱情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20498&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20498&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"中医\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20027&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20027&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学院流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20016&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20016&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"朝堂江湖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20054&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20054&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"特种兵\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20059&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20059&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科举\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20070&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20070&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奶爸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20040&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20040&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"战神流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20097&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20097&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20072&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20072&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"电竞\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20066&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20066&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"战争\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20047&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20047&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"龙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20510&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20510&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"随身流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20013&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20013&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"练功\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20130&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20130&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22158&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22158&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"剑与魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20111&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20111&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"幕后流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20098&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20098&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代诡秘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20190&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20190&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20508&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20508&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强者流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20131&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20131&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反套路\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20202&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20202&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"皇帝流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20517&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20517&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"御兽流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20502&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20502&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20514&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20514&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日系\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20051&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20051&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"软饭流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20017&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20017&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"开挂流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20174&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20174&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"美食\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20001&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20001&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20087&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20087&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"商战\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20037&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20037&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"盛世\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20155&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20155&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20149&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20149&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"领主流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20085&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20085&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无女主\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20061&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20061&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"篮球\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20177&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20177&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"时空门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20052&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20052&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"斗破苍穹\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20198&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20198&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"吐槽\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20103&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20103&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"鉴宝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20084&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20084&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"属性流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20125&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20125&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精灵文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20531&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20531&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宗门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20132&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20132&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"NBA\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20178&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20178&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"卡牌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20005&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20005&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军旅\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20031&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20031&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科技修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20071&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20071&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"克苏鲁\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20029&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20029&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"权谋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20504&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20504&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异界大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22148&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22148&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宋朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20143&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20143&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻宇宙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22230&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22230&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"虚拟现实\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20165&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20165&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"侦探推理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20524&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20524&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"治愈\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20137&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=20137&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20056&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20056&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奋斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20208&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20208&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"抗战\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20049&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20049&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"BOSS流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20096&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20096&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"互联网\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20135&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20135&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"诡秘修行\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20192&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20192&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"成神流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20124&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20124&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"足球\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20176&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20176&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"蜀山\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20078&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20078&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"聊天群\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20512&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20512&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"华娱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20139&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20139&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"领主种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20116&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20116&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"洪荒流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20866&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20866&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修罗场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20201&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20201&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王者荣耀\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20025&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20025&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"极道流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20121&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20121&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"年代文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20518&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20518&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"掌门流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20501&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20501&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"巫师流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20045&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20045&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"炼器\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20500&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20500&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"隋唐\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20157&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20157&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"家族\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20089&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20089&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职业文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20110&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20110&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"文明战争\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20106&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20106&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"策略流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20175&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20175&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"贞观\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20158&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20158&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"气运流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20129&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20129&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"电影世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22294&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22294&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"火影\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22407&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22407&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"掠夺流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20095&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20095&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"吃鸡\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20036&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20036&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反转\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20092&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20092&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"刑侦\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20032&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20032&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵根\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20128&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20128&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"长生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20532&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20532&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"基因\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20039&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20039&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22186&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22186&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"聊斋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20076&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20076&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20117&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20117&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20042&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20042&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"原创副本\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20186&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20186&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"摊牌流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20516&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20516&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"工业\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20044&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20044&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"多女主\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20062&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20062&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"第四天灾\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20530&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20530&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"文明演化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20073&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20073&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"黑暗流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22257&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22257&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"丧尸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20167&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20167&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"生存挑战\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20191&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20191&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"NPC\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20170&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20170&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"创业\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20211&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20211&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"变身文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22204&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22204&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"荒野求生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20513&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20513&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"抽奖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20509&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20509&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"逆袭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20209&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20209&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"诡异游戏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20193&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20193&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"富民\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20150&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20150&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代怪异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20188&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20188&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综艺文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20511&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20511&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"手游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20173&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20173&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"平行世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22463&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22463&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"漫威\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22327&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22327&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"山海经\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20126&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20126&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"供应商\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20101&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20101&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"风水\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20104&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20104&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"天庭文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22643&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22643&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"氪金\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20521&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20521&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"金融\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20506&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20506&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神奇生物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20113&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20113&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"原始流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20522&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20522&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"祖宗流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20122&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20122&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"欧洲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20063&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20063&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综武\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22350&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22350&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"皇帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22348&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22348&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"海贼王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22390&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22390&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"扮演流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20527&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20527&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"事务所\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20018&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20018&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22292&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22292&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"蒸汽朋克\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20077&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20077&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"国术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20038&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20038&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"美女校花\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22252&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22252&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"儒道流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20118&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20118&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"谍战\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20080&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20080&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"主神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20086&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20086&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"赛博朋克\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20105&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20105&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"金手指\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22173&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22173&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏制作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20169&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20169&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿书\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22314&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22314&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20114&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20114&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"诡秘养成\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20189&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20189&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"分身\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20119&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20119&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"夺舍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20100&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20100&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"人物\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"杀伐果断\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20272&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20272&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"冷静\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20266&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20266&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"智商在线\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20274&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20274&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"腹黑\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20269&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20269&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宅男\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20548&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20548&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20542&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20542&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞怪\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20270&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20270&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无节操\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20273&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20273&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"成熟\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20267&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20267&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"三观正\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20272&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20272&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20543&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20543&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"思路清奇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20276&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20276&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"法师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20536&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20536&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"谨慎\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20277&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20277&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"自律\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20268&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20268&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"嘴炮\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20271&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20271&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"剑修\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20537&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20537&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王侯\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20241&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20241&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22383&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22383&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"钢铁直男\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20560&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20560&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"道士\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20538&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20538&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玩家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20256&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20256&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职业选手\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20254&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20254&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异能者\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20260&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20260&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"侠客\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20228&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20228&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"枭雄\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20245&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20245&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20559&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20559&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"老板\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20544&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20544&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"战士\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20535&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20535&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"老师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20541&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20541&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"杀手\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20240&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20240&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"农民\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20236&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20236&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"富二代\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22499&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22499&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"皇子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20553&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20553&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"夫妻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20239&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20239&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"成长型\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22146&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22146&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"骑士\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20533&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20533&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科学家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20557&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20557&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大师兄\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20554&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20554&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"寒门子弟\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20242&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20242&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"教练\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20545&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20545&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"特工\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20549&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20549&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"警察\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20546&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20546&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"三教九流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20237&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20237&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"运动员\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20257&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20257&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"轮回者\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20261&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20261&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"写手\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20233&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20233&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"基因武者\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20259&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20259&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"厨师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20234&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20234&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"猎人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20534&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20534&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"美食家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20235&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20235&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"门阀\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20244&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20244&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"指挥官\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20551&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20551&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"保镖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20231&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20231&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"黑客\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20547&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20547&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"盗贼\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20255&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20255&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"和尚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20556&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20556&tag_type_id=1'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女生分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"现代言情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1524&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1524&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1523&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1523&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑侦探\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1518&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1518&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠奇缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1517&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1517&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻言情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1516&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1516&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"浪漫青春\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1522&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1522&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻空间\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1519&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1519&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1520&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1520&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"纯爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1707&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1707&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"风格\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"甜宠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20490&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20490&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"轻松\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20487&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20487&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"爽文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20491&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20491&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宠文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=21175&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=21175&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"爆笑\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20488&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20488&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20494&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20494&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"温馨\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20639&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20639&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"正剧\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20493&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20493&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌系\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20638&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20638&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"虐文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20489&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20489&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20495&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20495&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"甜文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=21311&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=21311&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"狗粮\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22457&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22457&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悲剧\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20492&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20492&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"追妻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22275&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22275&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"斗极品\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22223&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22223&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"天作之合\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22169&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22169&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"追妻火葬场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22213&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22213&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情节\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"穿越\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20287&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20287&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"1V1\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20297&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20297&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女强\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20292&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20292&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"豪门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20350&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20350&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20288&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20288&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日久生情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20311&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20311&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"HE\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20296&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20296&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宅斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20358&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20358&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"权谋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20256&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20356&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强强\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20293&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20293&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"扮猪吃虎\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20305&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20305&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"欢喜冤家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20309&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20309&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20562&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20562&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"家长里短\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20310&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20310&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"打脸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20290&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20290&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"先婚后爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20368&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20368&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20349&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20349&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"逆袭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20298&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20298&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"系统流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20294&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20294&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宫斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20357&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20357&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"娱乐圈\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20365&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20365&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿书\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20304&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20304&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"快穿\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20378&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20378&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"独宠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20585&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20585&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"空间\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20300&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20300&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"婚恋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20329&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20329&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"相爱相杀\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20313&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20313&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20351&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20351&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青梅竹马\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20308&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20308&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"复仇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20318&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20318&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"金手指\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20301&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20301&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"破镜重圆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20314&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20314&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宝宝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20295&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20295&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"一见钟情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20312&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20312&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"马甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20334&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20334&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修仙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20571&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20571&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同居\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20364&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20364&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"虐渣\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20337&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20337&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20372&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20372&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"致富\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20341&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20341&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"年代文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20565&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20565&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20302&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20302&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"双向暗恋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20306&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20306&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"别后重逢\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20575&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20575&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女扮男装\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20307&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20307&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"美食\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20291&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20291&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"前世今生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20340&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20340&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"隐婚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20361&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20361&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20299&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20299&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"生死大爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20322&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20322&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"升级\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20319&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20319&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"末世\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20377&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20377&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"黑化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20333&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20333&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"位面\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20567&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20567&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"农门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22216&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22216&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"世家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20572&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20572&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"契约婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20363&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20363&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奋斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20576&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20576&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"闪婚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20362&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20362&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"巧娶\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20331&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20331&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑推理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20353&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20353&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"攻略\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20569&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20569&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"星际\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20379&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20379&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职场商战\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20366&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20366&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"电竞\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20315&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20315&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"直播\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20289&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20289&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无CP\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20346&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20346&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"初恋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20573&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20573&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"师徒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20352&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20352&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"姐弟恋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20321&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20321&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"皇帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22410&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22410&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"清穿\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20355&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20355&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20375&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20375&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌宠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20324&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20324&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"代嫁\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20348&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20348&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大女主\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22164&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22164&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"带球跑\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20320&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20320&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20373&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20373&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"开挂\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20583&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20583&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20370&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20370&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"双重生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20345&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20345&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"倒追\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20339&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20339&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"婆媳\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20563&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20563&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王者荣耀\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20374&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20374&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"近水楼台\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20343&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20343&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"崩人设\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20570&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20570&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"合约恋爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20332&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20332&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"失忆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20581&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20581&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"死对头\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20335&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20335&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"兽世\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20325&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20325&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20376&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20376&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"真假千金\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20584&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20584&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"御兽流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20371&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20371&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反穿\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20369&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20369&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"替身\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20347&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20347&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反转\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20564&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20564&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"满级流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22644&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22644&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代创业\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22217&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22217&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"逃婚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20342&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20342&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"远古蛮荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20360&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20360&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"顶流\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22645&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22645&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"爆红\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20580&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20580&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"催婚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20323&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20323&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"创业\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20566&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20566&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异世穿越\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22135&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22135&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20381&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20381&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20327&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20327&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"末穿现\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20344&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20344&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"读心术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20338&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20338&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵魂转换\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20317&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20317&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20380&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20380&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"相亲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20367&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20367&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"衍生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20382&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20382&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"复婚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20579&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20579&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科举\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20330&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20330&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"群穿\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20316&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20316&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"西幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20328&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20328&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"人物\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总裁\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20593&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20593&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"腹黑\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20482&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20482&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌宝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22141&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22141&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王妃\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20384&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20384&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"护短\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20614&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20614&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王爷\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20431&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20431&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大佬\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20475&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20475&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"杀伐果断\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20449&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20449&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"帝王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20427&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20427&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"双洁\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20483&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20483&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"痴情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20616&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20616&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"团宠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20474&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20474&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"霸道\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20610&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20610&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"才女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20409&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20409&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"皇后\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20383&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20383&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"傲娇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20613&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20613&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"嫡女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20389&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20389&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女配\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20398&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20398&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"可盐可甜\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20478&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20478&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20591&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20591&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"公主\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20385&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20385&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神医\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20602&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20602&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古灵精怪\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20401&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20401&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"男神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20450&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20450&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"偏执\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20618&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20618&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"全能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20415&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20415&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"影后\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20395&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20395&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"超A\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20479&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20479&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高冷\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20615&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20615&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"欢脱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20425&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20425&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"醋王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20458&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20458&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校草\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20437&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20437&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"贵女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20387&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20387&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"病娇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20620&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20620&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"将军\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20432&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20432&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反派\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20622&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20622&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"白月光\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20411&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20411&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"戏精\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20481&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20481&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"忠犬\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20455&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20455&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"颜控\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20416&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20416&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"农女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=22161&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=22161&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"妖孽\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20612&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20612&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玩世不恭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20448&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20448&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20473&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20473&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"黑莲花\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20414&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20414&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"福气包\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20424&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20424&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"秀外慧中\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20402&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20402&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20609&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20609&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"锦鲤\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20406&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20406&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"闷骚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20611&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20611&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"妃子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20397&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20397&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"白富美\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20413&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20413&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"吃货\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20624&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20624&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"万人迷\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20417&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20417&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"自强\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20625&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20625&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"医生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20470&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20470&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"双商爆表\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20629&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20629&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"御姐\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20408&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20408&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"小狼狗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20453&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20453&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20390&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20390&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"呆萌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20623&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20623&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"首席\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20438&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20438&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"杀手\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20605&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20605&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"毒舌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20617&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20617&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙尊\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20434&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20434&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萝莉\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20405&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20405&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悍妻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20421&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20421&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"庶女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20388&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20388&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"炮灰\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20476&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20476&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20435&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20435&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"作精\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20422&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20422&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"上神\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20441&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20441&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"财迷\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20419&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20419&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"反差萌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20633&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20633&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"弃妇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20392&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20392&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"特工\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20604&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20604&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"善良\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20627&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20627&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"小奶狗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20452&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20452&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女汉子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20418&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20418&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"暖男\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20457&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20457&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"旺夫\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20420&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20420&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"痞帅\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20451&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20451&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"小野猫\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20426&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20426&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙君\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20444&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20444&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"影帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20588&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20588&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"丑女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20403&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20403&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"天才\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20464&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20464&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"淡定\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20630&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20630&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"毒医\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20603&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20603&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"心机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20626&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20626&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女主萌娃\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20586&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20586&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20440&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20440&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"妖艳\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20423&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20423&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"邪帝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20429&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20429&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"妖精\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20462&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20462&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"糙汉\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20456&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20456&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"魔君\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20428&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20428&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"暴君\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20430&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20430&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"逗比\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20484&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20484&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恶魔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20447&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20447&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精英\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20480&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20480&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"废柴\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20486&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20486&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"首富\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20461&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20461&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大叔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20439&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20439&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"厨娘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20396&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20396&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"魔尊\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20598&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20598&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"酷帅\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20628&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20628&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"傻白甜\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20407&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20407&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"剩女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20404&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20404&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精分\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20621&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20621&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宅女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20412&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20412&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"咸鱼\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20635&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20635&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"钢铁直男\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20459&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20459&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"佛系\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20619&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20619&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"召唤师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20606&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20606&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"纨绔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20637&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20637&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"吸血鬼\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20465&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20465&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"痴傻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20631&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20631&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"狐狸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20599&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20599&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"男配\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20587&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20587&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"首辅\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20433&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20433&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"老师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20463&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20463&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"福晋\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20400&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20400&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精灵\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20399&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20399&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"白莲花\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20410&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20410&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学渣\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20632&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20632&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宫女\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20386&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20386&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"国师\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20446&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20446&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"小妾\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20394&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20394&tag_type_id=2'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"丫环\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=20391&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=20391&tag_type_id=2'}} \",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"出版物\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"小说\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1688&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1688&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1690&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1690&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"心理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1466&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1466&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1697&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1697&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"政治\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1464&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1464&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1692&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1692&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1461&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1461&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1693&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1693&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"社科\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1691&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1691&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"养生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1463&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1463&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"投资\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1704&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1704&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1703&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1703&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"亲子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1683&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1683&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"管理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1689&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1689&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"两性\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1696&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1696&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1701&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1701&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"宗教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1702&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1702&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1695&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1695&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科普\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1695&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1698&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"自然\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1706&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1706&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"美食\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1705&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1705&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"休闲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1465&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1465&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"艺术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1461&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1461&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"时尚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?ch=001995&groupid=1694&start={{page}}&count=20&sort=0&sub=&tag=&words=&finish=,{'headers':{'Referer':'https://bookshelf.html5.qq.com/qbread/categorylist?traceid=0809004&sceneid=FeedsTab&strageid=&ch=001995&tabfrom=top&feeds_version=8516&reader_version=0&groupid=1694&tag_type_id=3'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1745852805950,
    "loginUrl": "",
    "respondTime": 2200,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️   标签：'+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>🔖   简介：{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "$.lastSerialname##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.rows[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.resourceID}}",
      "coverUrl": "$.picurl",
      "intro": "$.summary",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,'')}}",
      "lastChapter": "$.lastSerialname##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "$.resourceName##（.*",
      "wordCount": "$.contentsize"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.booklist[*]",
      "bookUrl": "$.bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.categoryInfoV4\n##\\d.*?\\:(.*?)\\:.*?(,|$)##$1$2}}\n{{$.updateInfo##已更新至.*##连载中}}\n##小说,",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://newopensearch.reader.qq.com/wechat?keyword={{key}}&start={{page-1}}&end=19",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "大帝小说库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.aikushuge.com",
    "customButton": false,
    "customOrder": 198,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::http://m.aikushuge.com/wapsort/1_{{page}}.html\n仙侠::http://m.aikushuge.com/wapsort/2_{{page}}.html\n都市::http://m.aikushuge.com/wapsort/3_{{page}}.html\n历史::http://m.aikushuge.com/wapsort/4_{{page}}.html\n网游::http://m.aikushuge.com/wapsort/5_{{page}}.html\n科幻::http://m.aikushuge.com/wapsort/6_{{page}}.html\n灵异::http://m.aikushuge.com/wapsort/7_{{page}}.html\n女生::http://m.aikushuge.com/wapsort/8_{{page}}.html\n其他::http://m.aikushuge.com/wapsort/9_{{page}}.html\n全本::http://m.aikushuge.com/wapfull/{{page}}.html",
    "lastUpdateTime": 1746750238544,
    "respondTime": 7445,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property$=category]@content&&[property$=status]@content&&[property$=update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "[property$=read_url]@content"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*请点击下一页继续.*|.*第.*页.*"
    },
    "ruleExplore": {
      "author": ".s3@text",
      "bookList": ".lis@li",
      "bookUrl": "a@href",
      "kind": ".s1@text##\\[|\\]",
      "name": ".s2@text"
    },
    "ruleSearch": {
      "author": ".author@text##作者：",
      "bookList": ".waps_one",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "kind": "span.2@text&&.waps_full_0@text##\\(|\\)",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".chapter.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.aikushuge.com/search/,{\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "稻草书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dcrbk.com",
    "bookUrlPattern": "https://www.dcrbk.com/book/\\w+/",
    "customButton": false,
    "customOrder": 199,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar book=[\n[\"女生·言情\",\"love\"],\n[\"耽美·纯爱\",\"bl\"],\n[\"奇幻·玄幻\",\"qihuan\"],\n[\"武侠·仙侠\",\"wuxia\"],\n[\"科幻·游戏\",\"kehuan\"],\n[\"都市·娱乐\",\"dushi\"],\n[\"历史·军事\",\"lishi\"],\n[\"悬疑·灵异\",\"kongbu\"],\n[\"轻小说\",\"light\"],\n[\"国外文学\",\"guowai\"],\n[\"现当代\",\"modern\"],\n[\"名著\",\"classics\"]];\nsort=book.map(([title,uri])=>\n\t({\n    \"title\": title,\n    \"url\": `/nav/${uri}\\-{{page}}.html`,\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  })\n\t);\n\t\nJSON.stringify(sort)",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9; MIX 2 Build/PKQ1.190118.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1731361859997,
    "respondTime": 4313,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "canReName": "",
      "coverUrl": "@get:{c}",
      "downloadUrls": "@get:{d}\n<js>\n//var id=baseUrl.match(/\\d+/)[0],\n//url=book.origin+`/txt/${id}.html`;\nurl=book.origin+result;\njava.ajax(url)\n</js>\n.panel-default a.0@href\n##$##,{\"type\": \"zip\"}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\".book-detail@text\",\nc:\"[property$=image]@content\",\nd:\".reader-bar a.1@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#cont-body@html",
      "nextContentUrl": ".page a@href"
    },
    "ruleExplore": {
      "author": "",
      "bookList": ".media",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".media-info@text",
      "kind": "0",
      "name": "h4@text"
    },
    "ruleSearch": {
      "author": "td.1@text",
      "bookList": "tbody tr",
      "bookUrl": "a.0@href",
      "checkKeyWord": "七界传说",
      "coverUrl": "a.0@href##\\D*(\\d+)\\D*##\n/uploads/cover/$1s.jpg###",
      "kind": "0",
      "name": "a.0@title"
    },
    "ruleToc": {
      "chapterList": "#all-chapter a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/plus/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by:cwjdb",
    "bookSourceGroup": "免费",
    "bookSourceName": "VIP中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xvipxs.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 200,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n    java.toast(\"正在努力加载中，请稍后\");\nvar sort = [];\nvar push = (title, url, type1, type2) => {\n    sort.push({\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: type1,\n            layout_flexBasisPercent: type2\n        }\n    });\n};\nvar sites = [{\n        u: \"http://m.xvipxs.net/sort.html\",\n        ti: \"༺ˇ»`全部分类´«ˇ༻\"\n    },\n    {\n        u: \"http://m.xvipxs.net/top.html\",\n        ti: \"༺ˇ»`全部排行´«ˇ༻\"\n    }];\nfor (var site of sites) {\n    var o = org.jsoup.Jsoup.parse(java.ajax(site.u));\n    var s = o.select('.content li a');\n    push(site.ti, \"\", \"1\", \"1\");\n    for (var i = 0; i < s.size(); i++) {\n        var urls = String(s[i].attr(\"href\")).replace(/\\/(.*)-(.*)-(\\d+)\\//, \"/$1-$2-{{page}}/\");\n        if (s.length % 3 === 1) {\n            push(s[i].text(), urls, \"-1\", \"0.29\")\n        } else {\n            push(s[i].text(), urls, \"1\", \"0.25\")\n        }\n    }\n}\npush(\"༺ˇ»`全本小说´«ˇ༻\", `/full-{{page}}/`, \"1\", \"1\")\nJSON.stringify(sort);",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1746407195643,
    "respondTime": 6570,
    "ruleBookInfo": {
      "author": "a",
      "coverUrl": "c",
      "init": "@js:\nX = (x) => java.getString(x);\n({\n    n: X(\"[property$=book_name]@content\"),\n    a: X(\"[property$=author]@content\"),\n    k: X(\"[property~=category|status|update_time]@content\\#\\#T\\#\\#&nbsp;&nbsp;\"),\n    l: X(\"[property~=las?test_chapter_name]@content\"),\n    i: X(\"[property$=description]@content\\#\\#简介[：:]\"),\n    c: X(\"[property$=image]@content\")\n});",
      "intro": "i",
      "kind": "k",
      "lastChapter": "l",
      "name": "n"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\(*第.*页\\)|\\（本章.*阅读\\）"
    },
    "ruleExplore": {
      "author": "text##\\[(.*?)\\](.*?)\\/(.*?)##$3",
      "bookList": "p.line",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href\n<js>\nvar id = result.match(/(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://m.xvipxs.net//files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "text##\\[(.*?)\\](.*?)\\/(.*?)##$1###",
      "name": "text##\\[(.*?)\\](.*?)\\/(.*?)##$2###"
    },
    "ruleSearch": {
      "author": "text.作者@text##作者[：:]",
      "bookList": ".block",
      "bookUrl": ".block_txt a.1@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "kind": "text.分类@text##分类[：:]",
      "lastChapter": ".block_txt a.2@text",
      "name": ".block_txt a.1@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search.php,{\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "By小新20250507",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.conglianhao.com/",
    "customButton": false,
    "customOrder": 201,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部分类\",\"url\":\"/list/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"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}}]",
    "lastUpdateTime": 1746630662336,
    "respondTime": 1262,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:lastest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content"
    },
    "ruleContent": {
      "content": "[id=\"article\"]@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "@js:result\n.replace(/搜书名找不到, 可以试试搜作者哦, 也许只是改名了!/g,'')\n.replace(/如果书架和阅读记录丢失了, 可以前往.*网域,再打开书架试试!/g,'')\n",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "[class=\"flex\"]@li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "p.0@text",
      "kind": "a.0@text",
      "name": "a.1@text",
      "wordCount": "[class=\"li_bottom\"]@div.-1@text"
    },
    "ruleSearch": {
      "author": "p.0@textNodes",
      "bookList": "[class=\"searchresult\"]",
      "bookUrl": "a.1@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": "p.-2@text",
      "kind": "a.0@text",
      "lastChapter": "p.-1@text",
      "name": "a.1@text",
      "wordCount": "p.0@span.0@text"
    },
    "ruleToc": {
      "chapterList": "[id=\"ul_all_chapters\"]@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/search/,{\n\t\"body\": \"searchkey={{key}}&searchtype=all&Submit=\",\n\t\"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "完美小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.umiwx.net",
    "bookUrlPattern": "http://m.umiwx.net/read/\\d+.html",
    "customButton": false,
    "customOrder": 202,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::/top/\n完结小说::/quanben/{{page}}.html\n玄幻小说::/class/1_{{page}}.html\n仙侠小说::/class/2_{{page}}.html\n都市小说::/class/3_{{page}}.html\n历史小说::/class/4_{{page}}.html\n游戏小说::/class/5_{{page}}.html\n科幻小说::/class/6_{{page}}.html\n恐怖小说::/class/7_{{page}}.html\n女生小说::/class/8_{{page}}.html\n其他小说::/class/8_{{page}}.html",
    "header": "{\"referer\": \"{{source.getKey()}}\",\n\"x-requested-with\": \"mark.via\",\n\"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\n\"user-agent\": \"Mozilla/5.0 (Linux; Android 10; PACM00 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.79 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1693651954488,
    "respondTime": 16828,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\",\nt:\"text.章节列表@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "@get:{t}##$##,{'webView': true}"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一页@href##$##,{'webView': true}",
      "replaceRegex": "##最新网址.*|.*最新章节.*|{{chapter.title}}|\\(第.+页\\)"
    },
    "ruleExplore": {
      "author": "a@ownText##:【.+",
      "bookList": ".bd li",
      "bookUrl": "a@href",
      "kind": "span@text##\\[|\\]",
      "name": "a@ownText##.*【|】"
    },
    "ruleSearch": {
      "author": "a@ownText##.+\\(|\\)",
      "bookList": ".bd li",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "kind": "span@text##\\[|\\]",
      "name": "a@ownText##\\(.*\\)"
    },
    "ruleToc": {
      "chapterList": ".list li a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}"
    },
    "searchUrl": "http://m.umiwx.net/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "女频",
    "bookSourceName": "52书库②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po5.net",
    "customButton": false,
    "customOrder": 203,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"🐥标签🐥\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"快穿文\",\"url\":\"/tuijian/kuaichuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"甜宠文\",\"url\":\"/tuijian/chongwentianwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"女配文\",\"url\":\"/tuijian/nvpeiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古言\",\"url\":\"/tuijian/guyan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"清穿\",\"url\":\"/tuijian/qingchuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"种田文\",\"url\":\"/tuijian/zhongtianwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"豪门总裁\",\"url\":\"/tuijian/haomenzongcai/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"宅斗文\",\"url\":\"/tuijian/zhaidouwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"宫斗文\",\"url\":\"/tuijian/gongdou/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"娱乐圈\",\"url\":\"/tuijian/yulequan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"系统\",\"url\":\"/tuijian/xitong/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"综漫\",\"url\":\"/tuijian/zongman/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"高干文\",\"url\":\"/tuijian/gaoganwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"红楼\",\"url\":\"/tuijian/honglou/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古穿今\",\"url\":\"/tuijian/guchuanjin/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"火影同人\",\"url\":\"/tuijian/huoying/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"虐恋\",\"url\":\"/tuijian/nuelian/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"军旅文\",\"url\":\"/tuijian/junlvwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"女强文\",\"url\":\"/tuijian/nvqiangwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"耽美网游文\",\"url\":\"/tuijian/wangyouwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"年下\",\"url\":\"/tuijian/nianxiagong/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"忠犬攻受文\",\"url\":\"/tuijian/zhongquangongshouwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"女追男\",\"url\":\"/tuijian/nvzhuinan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"美食文\",\"url\":\"/tuijian/meishiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"强强\",\"url\":\"/tuijian/qiangqiang/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"末世 文\",\"url\":\"/tuijian/moshiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"虐文\",\"url\":\"/tuijian/nuewen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"腹黑 文\",\"url\":\"/tuijian/fuheiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"星际 文\",\"url\":\"/tuijian/xingjiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"生子文\",\"url\":\"/tuijian/shengziwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越重生言情\",\"url\":\"/tuijian/chuanyueyanqing/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古代言情\",\"url\":\"/tuijian/gudaiyanqing/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"现代言情\",\"url\":\"/tuijian/xiandaiyanqing/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"猎人同人\",\"url\":\"/tuijian/lierentongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"hp同人\",\"url\":\"/tuijian/hptongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"强取豪夺\",\"url\":\"/tuijian/qiangquhaoduo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"洪荒\",\"url\":\"/tuijian/honghuang/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网王同人\",\"url\":\"/tuijian/wangwangtongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"空间文\",\"url\":\"/tuijian/kongjianwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"复仇\",\"url\":\"/tuijian/fuchou/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"异世\",\"url\":\"/tuijian/yishi/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"温馨文\",\"url\":\"/tuijian/wenxinwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"天作之和\",\"url\":\"/tuijian/tianzuozhihe/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"灵魂转换\",\"url\":\"/tuijian/linghunzhuanhuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"韩娱\",\"url\":\"/tuijian/hanyu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"综英美\",\"url\":\"/tuijian/zongyingmei/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"无限流\",\"url\":\"/tuijian/wuxianliu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"商战\",\"url\":\"/tuijian/shangzhan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"/tuijian/jiakonglishi/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"爽文\",\"url\":\"/tuijian/shuangwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"剑三同人\",\"url\":\"/tuijian/jiansan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"/tuijian/xiaoyuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"军婚\",\"url\":\"/tuijian/junhun/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿书\",\"url\":\"/tuijian/chuanshu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"民国\",\"url\":\"/tuijian/minguo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"年代文\",\"url\":\"/tuijian/niandaiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"特工\",\"url\":\"/tuijian/tegong/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"电竞文\",\"url\":\"/tuijian/dianjingwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"魔道祖师同人\",\"url\":\"/tuijian/modaozushi/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"盗墓笔记同人\",\"url\":\"/tuijian/daomubijitongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"综武侠\",\"url\":\"/tuijian/zongwuxia/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"海贼王同人\",\"url\":\"/tuijian/haizeiwang/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"黑篮同人\",\"url\":\"/tuijian/heilantongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"家教同人\",\"url\":\"/tuijian/jiajiaotongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"丧尸文\",\"url\":\"/tuijian/sangshi/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"全职同人\",\"url\":\"/tuijian/quanzhitongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"镇魂同人\",\"url\":\"/tuijian/zhenhuntongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"市井生活\",\"url\":\"/tuijian/shijingshenghuo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"阴阳师同人\",\"url\":\"/tuijian/yinyangshitongren/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/tuijian/kehuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"二次元\",\"url\":\"/tuijian/erciyuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"位面\",\"url\":\"/tuijian/weimian/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"异世大陆\",\"url\":\"/tuijian/yishidalu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"召唤流\",\"url\":\"/tuijian/zhaohuanliu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"秦汉三国\",\"url\":\"/tuijian/qinhansanguo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"/tuijian/shikongchuansuo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"系统流\",\"url\":\"/tuijian/xitongliu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"无敌文\",\"url\":\"/tuijian/wudiwen/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"热血\",\"url\":\"/tuijian/rexue/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"杀手\",\"url\":\"/tuijian/shashou/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"亡灵\",\"url\":\"/tuijian/wangling/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"练功流\",\"url\":\"/tuijian/liangongliu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"虚拟网游\",\"url\":\"/tuijian/xuniwangyou/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"东方玄幻\",\"url\":\"/tuijian/dongfangxuanhuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"轻小说\",\"url\":\"/tuijian/qingxiaoshuo/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"凡人流\",\"url\":\"/tuijian/fanrenliu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"足球\",\"url\":\"/tuijian/zuqiu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"篮球\",\"url\":\"/tuijian/lanqiu/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"特种兵\",\"url\":\"/tuijian/tezhongbing/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄学\",\"url\":\"/tuijian/xuanxue/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"白月光\",\"url\":\"/tuijian/baiyueguang/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"学霸\",\"url\":\"/tuijian/xueba/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"影帝\",\"url\":\"/tuijian/yingdi/<,index_{{page}}.html>\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1755029868484,
    "respondTime": 5469,
    "ruleBookInfo": {
      "author": "h1@text##.*_|【.*】",
      "intro": ".article-content@p!0:-1@text##PS：如.*",
      "name": "h1@text##_.*",
      "wordCount": ".meta@text"
    },
    "ruleContent": {
      "content": "#nr1@p@html",
      "replaceRegex": "##\\s*.*如果觉得52书库不错.*\\s*|\\s*传送门：排行榜.*\\s*|.*www.po5.net.*"
    },
    "ruleExplore": {
      "author": "h2@text##.*_|【.*】",
      "bookList": ".excerpt!0",
      "bookUrl": "a.0@href",
      "intro": ".note@text",
      "lastChapter": "h2@text##.*【|】.*",
      "name": "h2@text##_.*",
      "wordCount": ".muted@text##\\(|\\)"
    },
    "ruleSearch": {
      "author": "h2@text##.*_|【.*】",
      "bookList": ".excerpt",
      "bookUrl": "a@href",
      "checkKeyWord": "我的",
      "intro": ".note@text",
      "kind": ".muted@text##.所属栏目：|获赞：.*",
      "lastChapter": "h2@text##.*【|】.*",
      "name": "h2@text##_.*|^\\d+\\."
    },
    "ruleToc": {
      "chapterList": ".mulu a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/so/search.php?q={{key}}&m=&f=_all&s=&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "猪猪书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zzs5.com#♤yc",
    "customButton": false,
    "customOrder": 205,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734942652371,
    "respondTime": 1109,
    "ruleBookInfo": {
      "author": "tbody.1@tr.3@td.1@text||.bookd-title dd@ownText##.*作者.|\\s.*",
      "intro": ".show_content!1@html",
      "kind": ".catpos a.1@text&&tbody.1@tr.3@td.0@text&&.bookd-title dd@ownText##.*：|小说|\\s.*",
      "lastChapter": "tbody.1@a@text||.list a.-1@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "tbody.0@h1@text||.bookd-title h1@text##下载",
      "tocUrl": "#downlink a.0@href",
      "wordCount": "tbody.1@tr.2@td.1@text##.*："
    },
    "ruleContent": {
      "content": ".content!0@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "tbody.0@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "td.1@text##.*介绍.|发布时间.*",
      "kind": "p.0@text##.*时间.|\\s.*",
      "lastChapter": "a.2@text",
      "name": "a.1@text",
      "wordCount": "p.0@text##.*：|\\s"
    },
    "ruleSearch": {
      "author": "",
      "bookList": "tbody tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "kind": "p.0@text##.*：|\\s",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".list dd a",
      "chapterName": "text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/index.php?m=search&c=index&a=init&typeid=2&siteid=1&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "栀子欢网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.zhizihuan.com/",
    "customButton": false,
    "customOrder": 206,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"穿越架空\",\"url\":\"/list1_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总裁豪门\",\"url\":\"/list2_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"女强重生\",\"url\":\"/list3_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"废柴逆袭\",\"url\":\"/list4_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻仙侠\",\"url\":\"/list5_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"种田经商\",\"url\":\"/list6_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市婚恋\",\"url\":\"/list7_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"出版精品\",\"url\":\"/list8_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"爱上诡夫\",\"url\":\"/list11_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"青春校园\",\"url\":\"/list12_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"东方玄幻\",\"url\":\"/list13_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市生活\",\"url\":\"/list14_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"奇闻异事\",\"url\":\"/list15_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"异术超能\",\"url\":\"/list19_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重生异能\",\"url\":\"/list111_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"推理悬疑\",\"url\":\"/list114_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宫斗宅斗\",\"url\":\"/list117_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"快穿小说\",\"url\":\"/list121_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"魔法科幻\",\"url\":\"/list122_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"异世大陆\",\"url\":\"/list125_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"魔法校园\",\"url\":\"/list126_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"西方奇幻\",\"url\":\"/list127_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/list130_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代修真\",\"url\":\"/list132_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典仙侠\",\"url\":\"/list133_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"传统武侠\",\"url\":\"/list134_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代武侠\",\"url\":\"/list135_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"娱乐圈\",\"url\":\"/list136_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"年代小说\",\"url\":\"/list137_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代其他\",\"url\":\"/list999_0_0_0_0_2_{{page}}_ajax.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1759387417543,
    "loginUrl": "http://login.zhizihuan.com/login/m?url=http%3a%2f%2fuser.zhizihuan.com%2fdefault%2fm",
    "respondTime": 4735,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "#htmljieshao@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": ".g_btn a@href"
    },
    "ruleContent": {
      "content": "#htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.1@textNodes##.*：",
      "bookList": ".column-2",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": "span@text&&p.3@text##.*：|\\s.*",
      "lastChapter": "p.2@text",
      "name": "p.0@text"
    },
    "ruleToc": {
      "chapterList": ".list_li li a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}",
      "isVip": "font@text"
    },
    "searchUrl": "http://s.zhizihuan.com/m/?key={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "有声",
    "bookSourceName": "喜马拉雅（优+）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.ximalaya.com",
    "customButton": false,
    "customOrder": 207,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "❀                             广 播 剧                             ❀::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=\n 架 空 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=jiakong日韩::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci506\n 都 市 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=dushi\n 校 园 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xiaoyuan\n 武 侠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=wuxia\n 仙 侠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xianxia\n 奇 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=qihuan\n 玄 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuanhuan\n 科 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=kehuan\n 悬 疑 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuanyi\n 推 理 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=tuili\n 历 史 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=lishi\n 职 场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=zhichang\n 同 人 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=tongrenwen\n 游 戏 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=youxi\n 爆 笑 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=baoxiao\n 脑 洞 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=naodong\n 日 漫 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=riman\n 萌 系 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=mengxi\n 恋 爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=lianai\n 纯 爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1367\n  玛 丽 苏  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=malisu\n 霸道总裁 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=badaozongcai\n 虚拟偶像 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuniouxiang\n 现代言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci546\n 古风言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci52\n 画风清奇 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=huafengqingqi\n 民间故事 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=minjiangushi\n  全 年 龄  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci54\n 有声漫画 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1357\n 会员专区 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1664\n 心动剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1660\n 国风剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1661\n 尖叫剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1662\n月上新周播剧::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1198\n\n❀                             有 声 书                             ❀::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=\n\n 文 学 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=wenxue\n 生 活 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=shenghuo\n 教 材 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=jiaocai\n 经 典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=jingdian\n 童 书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=tongshu\n 成 长 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=lizhi\n 社 科 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=sheke\n 商 业 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=shangye\n外文 • 原版::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=yingwenyuanban\n期刊::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=qikanzazhi\n历史::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci234\n传记::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1692\n\n 网络小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1173\n 言情女生 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci231\n 悬疑推理 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci232\n 都市重生 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci235\n 历史纵横 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1195\n 仙侠幻想 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1196\n 豪门恋情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1530\n 古风言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1531\n 宫闱宅斗 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1532\n 王牌强档 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1264\n 有声漫画 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1351\n 出版小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1359\n 女生最爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci346\n 男生最爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci348\n 免费精选 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1533\n 新品限免 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1477\n 会员上新 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1518\n 爆更小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1069\n\n QQ  阅读 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci22\n 读客图书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci23\n 果麦文化 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci24\n 中信书院 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci646\n 博集新媒 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci26\n 磨铁阅读 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci394\n  蓝 狮 子  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci419\n 华章图书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci650\n 文学名著 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1157\n 历史专区 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1158\n 国学经典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1159\n 历史经典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1370\n 三体科幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1697\n 重磅新品 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1698\n\n 听书指南 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1449\n大家都在听::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1521\n大家都在追::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1529\n大剧必听榜::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1051\n会员有声小说::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1055\n畅销书-限时免费::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1693\n\n❀                               音   乐                               ❀::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue\n\n 古 风 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=gufeng\n 流 行 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=liuxing\n 欧 美 ::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci507\n 古  典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=mr8t41\n 动 漫 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=anime\n 老 歌 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci117\n 翻 唱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci125\n轻音乐::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=qingyinyue\n 日 韩 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci506\n 催 眠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci322\n影视原声::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=yingshiyuansheng\n",
    "lastUpdateTime": 1766364912336,
    "respondTime": 1893,
    "ruleBookInfo": {
      "intro": "$.album.intro"
    },
    "ruleContent": {
      "content": "@js:baseUrl"
    },
    "ruleExplore": {
      "author": "anchorName",
      "bookList": "$..albums.*",
      "bookUrl": "link@js:\"http://mobile.ximalaya.com/mobile/others/ca/album/track/\" + result.split('/')[2]+'/true/1/200'",
      "coverUrl": "coverPath",
      "intro": "收听{$.playCount}  共{$.trackCount}章",
      "name": "title",
      "wordCount": "@js:if({{$.isFinished}}==1){if({{$.isPaid}}){'已完结💰'}else{'已完结'}}else{if({{$.isPaid}}){'连载💰'}else{'连载'}}"
    },
    "ruleSearch": {
      "author": "$.nickname",
      "bookList": "$..docs.*",
      "bookUrl": "$.url@js:\"http://mobile.ximalaya.com/mobile/others/ca/album/track/\" + result.split('/')[2]+'/true/1/200'",
      "coverUrl": "$.cover_path",
      "intro": "$.intro",
      "kind": "$.category_title&&$.tags",
      "name": "$.title",
      "wordCount": "播放数{$.play}  共{$.tracks}集"
    },
    "ruleToc": {
      "chapterList": "$.tracks.list",
      "chapterName": "title",
      "chapterUrl": "playPathAacv224||playPathAacv164||playUrl64||playUrl32",
      "nextTocUrl": "@js:\nbaseUrl = String(baseUrl).split('1/200')[0];\nlist = [];\npage=JSON.parse(String(result)).tracks.maxPageId\nfor(var i = 2; i < 10; ++i){\nlist.push(String(baseUrl +i+\"/200\"));\n}\nlist"
    },
    "searchUrl": "https://www.ximalaya.com/revision/search?core=album&spellchecker=true&rows=20&condition=relation&device=iPhone&fq=&paidFilter=false&kw={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "kaka",
    "bookSourceGroup": "正版",
    "bookSourceName": "UC 小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://xiaoshuo.uc.cn/",
    "customButton": false,
    "customOrder": 209,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar cat1='都市,玄幻,仙侠,灵异,历史,游戏,科幻,武侠,奇幻,竞技';var list=[];\nfunction getUrl(cats,url1){cats.split(',').forEach((i)=>{list.push(i+'::'+url1+i)})};\nlist.push('男→::');\ngetUrl(cat1,'http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&onlyCpBooks=1&status=2&firstCate=');\nlist.join('\\n')\n</js>",
    "lastUpdateTime": 1754559662941,
    "respondTime": 1909,
    "ruleBookInfo": {
      "init": "<js>\nvar bookId=java.get('bid');\nvar encryptKey=\"37e81a9d8f02596e1b895d07c171d5c9\",user_id=\"8000000\",timestamp=parseInt((new Date).getTime()/1e3);\nvar o=bookId+timestamp+user_id+encryptKey;\nvar sign=java.md5Encode(o);\nvar list={'turl':'https://ocean.shuqireader.com/api/bcspub/qswebapi/book/chapterlist?_=&bookId='+bookId+'&user_id=8000000&sign='+sign+'&timestamp='+timestamp};list\n</js>",
      "tocUrl": "turl"
    },
    "ruleContent": {
      "content": "ChapterContent@js:\nfunction p(e) {\n    return e.split(\"\").map(function (e) {\n        return e.match(/[A-Za-z]/) ? (c = Math.floor(e.charCodeAt(0) / 97), k = (e.toLowerCase().charCodeAt(0) - 83) % 26 || 26, String.fromCharCode(k + (0 == c ? 64 : 96))) : e\n    }).join(\"\")\n}\njava.base64Decode(p(result))"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "desc",
      "kind": "{{$.category}},{{$.tags}},读者{{$.reads}},{{$.status}}<js>result.replace(/1$/,'完结').replace(/0$/,'连载')</js>",
      "lastChapter": "$.uptime<js>java.getString('$.last_chapter_name')+' '+java.timeFormat(result*1000)</js>",
      "name": "title",
      "wordCount": "words"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "desc",
      "kind": "category&&tags",
      "name": "title",
      "wordCount": "words"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList[0].volumeList<js>java.put('freeUrlPre',java.getString('$.data.freeContUrlPrefix'));java.put('shortUrlPre',java.getString('$.data.shortContUrlPrefix'));result</js>",
      "chapterName": "chapterName",
      "chapterUrl": "<js>var l=java.getString('$.contUrlSuffix');if(l.indexOf('reqEncryptParam')==-1){java.get('freeUrlPre')+l}else{java.get('shortUrlPre')+java.getString('$.shortContUrlSuffix')}</js>",
      "isVip": "chapterPrice"
    },
    "searchUrl": "http://read.xiaoshuo1-sm.com/novel/i.php?do=is_serchpay&page=1&size=10&q={{key}}&filterMigu=1&p=17&shuqi_h5=&_=1619653492249",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "爱搬文屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.banwenwu.com#",
    "bookUrlPattern": "https://www.banwenwu.com/\\d+/",
    "customButton": false,
    "customOrder": 210,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "排行::/paihangbang/\n收藏::/collect/\n完本::/wanbenxiaoshuo/",
    "lastUpdateTime": 1734989704883,
    "respondTime": 4625,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "#content@html"
    },
    "ruleExplore": {
      "bookList": ".layout:nth-child(n+1) .txt-list:nth-child(1) > li:nth-child(n+1)",
      "bookUrl": "a@href",
      "kind": ".s5@text",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": "span.-2@text",
      "bookList": ".txt-list@li!0",
      "bookUrl": "span.1@a@href",
      "checkKeyWord": "剑来",
      "kind": "span.0:-1@text##\\[|\\]",
      "lastChapter": "span.2@text",
      "name": "span.1@text"
    },
    "ruleToc": {
      "chapterList": "#section-list > li:nth-child(n+1) > a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{url=source.getKey();cookie.removeCookie(url)}}\n/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//5月7号 静白",
    "bookSourceGroup": "免费",
    "bookSourceName": "源论坛-鬼吹灯②",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.cxbz958.com",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 211,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "玄幻小说::/fenlei/1/{{page}}.html\n仙侠小说::/fenlei/2/{{page}}.html\n都市小说::/fenlei/3/{{page}}.html\n军史小说::/fenlei/4/{{page}}.html\n网游小说::/fenlei/5/{{page}}.html\n科幻小说::/fenlei/6/{{page}}.html\n恐怖小说::/fenlei/7/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1746598827525,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 5333,
    "ruleBookInfo": {
      "author": "class.small@tag.span.0@text##作 者：",
      "canReName": "",
      "coverUrl": "class.cover@img@src",
      "init": "",
      "intro": "class.intro@textNodes##作者.*|无弹窗.*",
      "kind": "class.info@class.small@tag.span.4@text&&\nclass.info@class.small@tag.span.1@text&&\nclass.info@class.small@tag.span.2@text##分类：|状态：|更新时间：",
      "lastChapter": "class.small@tag.span.5@a@text##百度搜索.*",
      "name": "class.info@h2@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "tocUrl": "",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|天才一秒记住.*com|请记住本书首发域.*com",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox@class.p10",
      "bookUrl": "class.bookname@tag.a@href",
      "coverUrl": "class.bookimg@img@src",
      "intro": "class.bookinfo@p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text##百度搜索.*",
      "name": "class.bookname@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "http://www.cxbz958.com/s.php?ie=utf-8&q={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nhaxc",
    "bookSourceGroup": "免费",
    "bookSourceName": "Shield",
    "bookSourceType": 3,
    "bookSourceUrl": "https://shieldmanga.club",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 213,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "Action::/manga-genre/action/page/{{page}}\nHarem::/manga-genre/harem/page/{{page}}\nMartial Arts::/manga-genre/martial-arts/page/{{page}}\nAdventure::/manga-genre/adventure/page/{{page}}\nFantasy::/manga-genre/fantasy/page/{{page}}\nMature::/manga-genre/mature/page/{{page}}\nHorror::/manga-genre/horror/page/{{page}}\nMystery::/manga-genre/mystery/page/{{page}}\nSlice of Life::/manga-genre/slice-of-life/page/{{page}}\nTragedy::/manga-genre/tragedy/page/{{page}}\nSupernatural::/manga-genre/supernatural/page/{{page}}\nWebtoon::/manga-genre/webtoon/page/{{page}}\nShounen::/manga-genre/shounen/page/{{page}}\nRomance::/manga-genre/romance/page/{{page}}\nDrama::/manga-genre/drama/page/{{page}}\nComedy::/manga-genre/comedy/page/{{page}}\nEcchi::/manga-genre/ecchi/page/{{page}}",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.1.0; JKM-AL00b Build/HUAWEIJKM-AL00b; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044807 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1647346893833,
    "loginUrl": "",
    "respondTime": 180887,
    "ruleBookInfo": {
      "author": "class.author-content@a@text",
      "coverUrl": "[property=\"og:image\"]@content",
      "init": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "class.genres-content@a@text",
      "lastChapter": "class.list-chap@tag.li.0@a@text",
      "name": "[property=\"og:title\"]@content"
    },
    "ruleContent": {
      "content": "class.reading-content@div@tag.img@src@js:\nlist=result.split(\"\\n\");\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)}\nhtml='';\nfor(i in list){\nhtml+='<img src=\"'+list[i]+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL",
      "nextContentUrl": "",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.summary-content.1@a@text",
      "bookList": "class.row c-tabs-item__content||class.col-12",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "class.img-responsive@img@src",
      "intro": "class.summary-content.0@text",
      "kind": "class.summary-content.2@a@text",
      "name": "tag.h3@text"
    },
    "ruleToc": {
      "chapterList": "-class.list-chap@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://shieldmanga.club/?s={{key}}&post_type=wp-manga",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "塔读文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.tadu.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 215,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"男生频道\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"男生全部\",\"url\": \"/store/98-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"东方玄幻\",\"url\": \"/store/99-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"现代都市\",\"url\": \"/store/103-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"脑洞创意\",\"url\": \"/store/135-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"历史架空\",\"url\": \"/store/108-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"军事战争\",\"url\": \"/store/113-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"游戏竞技\",\"url\": \"/store/112-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"/store/109-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"科幻末世\",\"url\": \"/store/111-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"灵异悬疑\",\"url\": \"/store/128-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"西方玄幻\",\"url\": \"/store/107-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"短篇小说\",\"url\": \"/store/281-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"女生频道\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"女生全部\",\"url\": \"/store/122-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"古代言情\",\"url\": \"/store/129-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"幻想言情\",\"url\": \"/store/133-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"现代言情\",\"url\": \"/store/104-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"浪漫青春\",\"url\": \"/store/105-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"悬疑小说\",\"url\": \"/store/288-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"短篇小说\",\"url\": \"/store/291-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 0.29,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"出版频道\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"出版全部\",\"url\": \"/store/79-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"现代都市\",\"url\": \"/store/81-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"青春文学\",\"url\": \"/store/83-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"悬疑灵异\",\"url\": \"/store/85-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"励志成功\",\"url\": \"/store/88-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"官场浮沉\",\"url\": \"/store/115-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"职场商战\",\"url\": \"/store/92-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"铁血军事\",\"url\": \"/store/86-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"历史风云\",\"url\": \"/store/84-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"影视娱乐\",\"url\": \"/store/102-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"经管理财\",\"url\": \"/store/32-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"教育教辅\",\"url\": \"/store/121-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"纪实传记\",\"url\": \"/store/82-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"奇幻科幻\",\"url\": \"/store/4-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"生活休闲\",\"url\": \"/store/87-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"/store/10-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"童话寓言\",\"url\": \"/store/89-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"社科科普\",\"url\": \"/store/3-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"外国名著\",\"url\": \"/store/90-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"古典名著\",\"url\": \"/store/91-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"当代文学\",\"url\": \"/store/93-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"两性伦理\",\"url\": \"/store/138-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 0.29,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"言情小说\",\"url\": \"/store/139-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 0.29,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"次元频道\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"次元全部\",\"url\": \"/store/270-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"异能幻想\",\"url\": \"/store/271-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"校园青春\",\"url\": \"/store/272-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"动漫同人\",\"url\": \"/store/273-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"日常变身\",\"url\": \"/store/274-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"剑与魔法\",\"url\": \"/store/275-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"人气排行\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": 1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"女生人气\",\"url\": \"/store/122-a-0-5-a-20-p-{{page}}-122\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"出版人气\",\"url\": \"/store/79-a-0-5-a-20-p-{{page}}-79\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"次元人气\",\"url\": \"/store/270-a-0-5-a-20-p-{{page}}-270\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"男人气榜\",\"url\": \"/store/98-a-0-5-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"男推荐榜\",\"url\": \"/store/98-a-0-9-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}},\n{\"title\": \"男总字数\",\"url\": \"/store/98-a-0-1-a-20-p-{{page}}-98\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexShrink\": 1,\n\"layout_alignSelf\": \"auto\",\n\"layout_flexBasisPercent\": -1,\n\"layout_wrapBefore\": false\n}}\n]",
    "header": "",
    "lastUpdateTime": 1677975058753,
    "loginUrl": "http://www.tadu.com/",
    "respondTime": 720,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "class.chapter@tag.a.-1@text",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.bookPartResourceUrl@value@js:\nresult=java.ajax(result);\nString(result).replace(/.+?:'(.+)'\\}\\)$/, '$1') || ' 付费章节，换源阅读！'##【作者题外话】：(.*|\\n)|书友群.*|【作者的话.*",
      "imageStyle": "0",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.authorNm@text",
      "bookList": "class.bookList@li",
      "bookUrl": "class.bookNm@href##book##book/catalogue",
      "coverUrl": "class.bookImg@img@data-src",
      "intro": "class.bookIntro@text",
      "kind": "class.condition@text",
      "lastChapter": "class.updateNew@text##最新更新：",
      "name": "class.bookNm@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".authorNm@text",
      "bookList": ".bookList li",
      "bookUrl": "class.bookNm@href##book##book/catalogue",
      "coverUrl": "img@data-src",
      "intro": ".bookIntro@text",
      "kind": "",
      "lastChapter": "",
      "name": ".bookNm@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".chapter a",
      "chapterName": "text##[\\(（].*[求更谢乐发推].*[）\\)]|\\s+,",
      "chapterUrl": "href",
      "isVip": "@js:result.select('i').hasClass('vip') ",
      "nextTocUrl": "",
      "updateTime": "title"
    },
    "searchUrl": "http://www.tadu.com/search?&pageSize=10&pageNum={{page}}&query={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "酸奶漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.1kkk.com",
    "customButton": false,
    "customOrder": 216,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759431728809,
    "respondTime": 444,
    "ruleBookInfo": {
      "author": "p.detail-main-info-author@tag.a@text",
      "coverUrl": "img.detail-main-bg@src",
      "intro": "p.detail-desc@text",
      "kind": "p.detail-main-info-class@tag.a@text",
      "lastChapter": "ul.detail-list-select@tag,li.0@text",
      "name": "p.detail-main-info-title@text"
    },
    "ruleContent": {
      "content": "@js:header={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\neval(result.match(/eval(.*?)\\{\\}\\)\\)/)[0])\nvar image_list = []\nnewImgs.map(item=>{\n    image_list.push('<img src=\"'+item+','+JSON.stringify(headers)+'\">')\n})\nimage_list.join(\"\\n\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p.0@text",
      "bookList": "ul.book-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "p.book-list-info-desc@text",
      "name": "p.book-list-info-title@text"
    },
    "ruleToc": {
      "chapterList": "ul.detail-list-select@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "@js:var vip_bool = result.select('img').hasClass('detail-list-lock');\nif(!vip_bool){\nvip_bool = result.select('img').hasClass('detail-list-2-info-right');\n}\nvip_bool;"
    },
    "searchUrl": "https://m.1kkk.com/search?title={{key}}&language=1",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "收费漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://mm.sfacg.com/",
    "customButton": false,
    "customOrder": 217,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "更新::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=-1\n热血::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=1\n校园::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=2\n推理::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=3\n机战::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=4\n冒险::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=5\n运动::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=6\n耽美::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=7\n搞笑::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=8\n科幻::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=9\n魔幻::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=10\n恐怖::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=11\n社会::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=12\n爱情::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=13\n武侠::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=14\n温情::https://mm.sfacg.com/ajax/Common.ashx?op=getLatest&pageIndex={{page-1}}&tid=15\nnull",
    "lastUpdateTime": 1759430252480,
    "loginUrl": "https://mm.sfacg.com/Login/",
    "respondTime": 642,
    "ruleBookInfo": {
      "author": "class.book_Author@tag.li.0@text",
      "coverUrl": "@css:#page>div>ul>li:nth-child(2)>img@src",
      "intro": "class.book_bk_qs1.0@text",
      "kind": "@css:.book_info2>span@text",
      "name": "@css:.book_newtitle@text"
    },
    "ruleContent": {
      "content": "@js:\ncomicId=result.match(/var comicId = (\\d+)/)[1];\nchapterId=result.match(/var chapterId=(\\d+)/)[1];\nnv=result.match(/var nv = \"(.*?)\"/)[1];\nurl='https://mm.sfacg.com/ajax/Common.ashx?op=getPics&cid='+comicId+'&chapId='+chapterId+'&serial=ZP&path='+nv\n//java.ajax(url)\nresult=JSON.parse(java.ajax(url)).data\nresult.map(x=>'<img src=\\\"'+x+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.AuthorName@put:{cid:ComicID}",
      "bookList": "$.comics.*||$.data.*",
      "bookUrl": "@json:/b/{$.FolderName}",
      "coverUrl": "$.ComicCover",
      "kind": "$.TypeName",
      "lastChapter": "$.LastChapterTitle",
      "name": "$.ComicName"
    },
    "ruleToc": {
      "chapterList": "-@css:.comic_main_list>a",
      "chapterName": "text##VIP",
      "chapterUrl": "href",
      "isVip": "b@text"
    },
    "searchUrl": "https://mm.sfacg.com/ajax/Common.ashx?op=search,{\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱尚小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.23hh.la已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 219,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1733518958300,
    "loginUrl": "",
    "respondTime": 3424,
    "ruleBookInfo": {
      "author": "class.item red.0@text##作\\s*者：",
      "coverUrl": "class.book_info@class.pic@tag.img.0@src",
      "intro": "class.book_info@class.bookinfo_intro@textNodes",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.htmlContent@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.c_row@tag.span.3@text||id.info@tag.span.0@text",
      "bookList": "class.c_row",
      "bookUrl": "class.c_row@tag.span.0@tag.a.0@href",
      "coverUrl": "class.c_row@tag.a.0@tag.img.0@src||class.pic@tag.img.0@src",
      "lastChapter": "class.c_row@tag.span.13@tag.a.0@text||id.info@tag.a.4@text",
      "name": "class.c_row@tag.span.0@tag.a.0@text||id.info@tag.h1.0@text"
    },
    "ruleToc": {
      "chapterList": "class.book_list@tag.li@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.23hh.la/modules/article/search.php?searchkey={{key}}&action=login,{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "安保小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.2kxs.info/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 221,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733687272555,
    "loginUrl": "",
    "respondTime": 2322,
    "ruleBookInfo": {
      "author": "tag.h3.0@tag.a.0@text",
      "coverUrl": "class.pannel-body info@class.info1@tag.img.0@src",
      "init": "",
      "intro": "class.pannel-body info@tag.p.0@textNodes",
      "kind": ".panel-body.text-center.info3@p.0:1@text<js>##小说类别：|写作状态：|最后更新：</js><js>##\\s\\/\\s##,</js>",
      "lastChapter": "class.panel-body text-center info3@tag.p.2@a@text",
      "name": "tag.h1@text"
    },
    "ruleContent": {
      "content": "class.panel-body content-body content-ext@textNodes"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "tag.tr@tag.p.1@tag.a.0@text||tag.h3.0@tag.a.0@text",
      "bookList": "//*[@id=\"bookcon\"]//tr",
      "bookUrl": "tag.tr@tag.p.0@tag.a.0@href",
      "coverUrl": "",
      "kind": "tag.tr@tag.p.3@text||tag.p.1@text##.*状态：",
      "lastChapter": "",
      "name": "tag.tr@tag.p.0@tag.a.0@text||tag.h1@text"
    },
    "ruleToc": {
      "chapterList": "class.list-group list-charts.0@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&submit=搜索",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "望书阁网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.wangshugu.net#",
    "customButton": false,
    "customOrder": 222,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734989804339,
    "respondTime": 3006,
    "ruleBookInfo": {
      "author": ".block_txt2@p.2@text",
      "coverUrl": ".block_img2@img@src",
      "init": "",
      "intro": ".intro_info@text##(^|[。！？]+[”」）】]?)##$1<br>@js:result.replace(/各位书友.*|最新章节.*/g,\"\")",
      "kind": ".block_txt2@p.3:4:5@text##.*：|小说|T.*",
      "lastChapter": ".block_txt2@a.3@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".block_txt2@a.1@text"
    },
    "ruleContent": {
      "content": "id.nr1@html",
      "nextContentUrl": "id.pb_next@href",
      "replaceRegex": "##\\s*.*点击下一页继续.*\\s*|....wang.*|.*无弹窗.*|\\s*本书首发.*正版内容！\\s*"
    },
    "ruleExplore": {
      "author": "ownText##.*\\/",
      "bookList": ".line",
      "bookUrl": "a@href",
      "coverUrl": "a@href##.+\\D((\\d+)\\d{3})\\D##http://www.wangshuge.info/files/article/image/$2/$1/$1s.jpg###",
      "kind": "ownText##\\[|\\].*|小说",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": "p.3@text",
      "bookList": ".block",
      "bookUrl": "a.2@href",
      "checkKeyWord": "凡人",
      "coverUrl": "img@src",
      "kind": "p.2@text##.*：|小说",
      "lastChapter": "a.3@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.2@text"
    },
    "ruleToc": {
      "chapterList": ".chapter@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "醉读小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.imaxreader.com",
    "customButton": false,
    "customOrder": 225,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734867985867,
    "respondTime": 3651,
    "ruleBookInfo": {
      "coverUrl": "#bookimg > img@src",
      "intro": "#bookintro > p@text",
      "kind": ".count a@text",
      "lastChapter": "#newlist li:nth-child(1)@text",
      "name": "h1@text",
      "tocUrl": "strong > a@href",
      "wordCount": "ul > li:nth-child(11) > span:nth-child(1)@text"
    },
    "ruleContent": {
      "content": ".pt-read-text@html",
      "nextContentUrl": ".pt-nextchapter@href",
      "replaceRegex": "##百度一下“{{book.name}}顶点小说www.imaxreader.com”最新章节第一时间免费阅读。|本章未完，请点击下一页继续阅读！ 第\\d+页/共\\d+页"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".mr30:nth-child(1) > a@text",
      "bookList": ".pt-rank-detail:nth-child(n+2)",
      "bookUrl": ".size18@href",
      "coverUrl": "img@src",
      "kind": "span:nth-child(2) > a@text",
      "lastChapter": ".mr20@text",
      "name": ".size18@text"
    },
    "ruleToc": {
      "chapterList": "#readerlists li:nth-child(n+4)",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/search/result.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "http://www.liudatxt.org/\nhttp://www.liudatxt.la/",
    "bookSourceGroup": "免费",
    "bookSourceName": "溜达小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.liudatxt.la/",
    "customButton": false,
    "customOrder": 226,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0\",\n    \"Cookie\":\"0\"\n}",
    "lastUpdateTime": 1754712336499,
    "respondTime": 1147,
    "ruleBookInfo": {
      "author": "#author@a@text",
      "coverUrl": "#bookimg@img@src",
      "intro": "#bookintro@p@text",
      "kind": ".bookright@span.1:5@text",
      "lastChapter": "#newlist@li.0@a@text",
      "name": "h1@text",
      "tocUrl": "div.newrap@a.0@href",
      "wordCount": ".bookright@span.7@text&&span.uptime@sapn@text@js:result+'字'"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {
      "bookList": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.book_other.0@tag.span.0@text",
      "bookList": "id.sitembox@tag.dl",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "kind": "class.book_other.0@tag.span.1@text",
      "lastChapter": "class.book_other.1@tag.a@text",
      "name": "tag.a.1@text",
      "wordCount": "class.book_other.0@tag.span.3@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.li@tag.a",
      "chapterName": "text##正文|_",
      "chapterUrl": "href"
    },
    "searchUrl": "search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "let m={\"a85090415a\":\"日\",\"0203769080\":\"丰\",\"0355171744\":\"地\",\"0528649589\":\"臀\",\"0602771294\":\"妈\",\"0665756424\":\"胸\",\"0665889261\":\"蛋\",\"0698278491\":\"首\",\"0744208851\":\"一\",\"0774208243\":\"介\",\"0747467933\":\"蜜\",\"0832215510\":\"合\",\"0872283620\":\"泽\",\"0902364778\":\"十\",\"0983658750\":\"香\",\"0990372354\":\"淫\",\"0951783242\":\"露\",\"1020382214\":\"三\",\"1128608327\":\"偷\",\"1165271020\":\"暴\",\"1167260777\":\"腿\",\"1190111324\":\"第\",\"1330289459\":\"丝\",\"1605992686\":\"件\",\"1644155001\":\"腐\",\"1748611635\":\"炮\",\"1790668606\":\"高\",\"1809149563\":\"含\",\"2038870549\":\"爱\",\"2113285564\":\"死\",\"2211806946\":\"人\",\"2222207117\":\"嫩\",\"2472677945\":\"马\",\"2479341369\":\"帮\",\"2546160883\":\"上\",\"2624694117\":\"缝\",\"2735853814\":\"独\",\"2857703127\":\"法\",\"2876804651\":\"顶\",\"2886155750\":\"棒\",\"2885608989\":\"中\",\"2953530793\":\"花\",\"3023538105\":\"席\",\"3087672465\":\"五\",\"3187883344\":\"园\",\"3269935019\":\"光\",\"3511096181\":\"摇\",\"3561353475\":\"眼\",\"3573763138\":\"最\",\"3609388116\":\"乱\",\"3620919708\":\"宰\",\"3691658535\":\"做\",\"3697158622\":\"主\",\"3750225803\":\"交\",\"3835404789\":\"大\",\"3887706975\":\"温\",\"4072862874\":\"吞\",\"4208731327\":\"未\",\"4247282819\":\"潮\",\"4323477214\":\"发\",\"4465328127\":\"六\",\"4896650341\":\"色\",\"4915941086\":\"西\",\"5034321418\":\"流\",\"5118765982\":\"网\",\"5268319798\":\"房\",\"5366920169\":\"干\",\"5405095624\":\"活\",\"5504072831\":\"裸\",\"5515430018\":\"妹\",\"5554918885\":\"夫\",\"5570002531\":\"粉\",\"5794932762\":\"巴\",\"5798715549\":\"山\",\"5825662041\":\"白\",\"5865212886\":\"里\",\"5934682064\":\"二\",\"5958823569\":\"麻\",\"6115586454\":\"吸\",\"6146409280\":\"粗\",\"6202025318\":\"代\",\"6258129695\":\"欲\",\"6472284406\":\"辱\",\"6534980771\":\"台\",\"6598183488\":\"弹\",\"6695148880\":\"美\",\"6810021581\":\"熟\",\"6834531826\":\"尿\",\"6843073930\":\"指\",\"6874325047\":\"操\",\"6921916056\":\"龟\",\"6972560942\":\"亲\",\"7071132422\":\"湿\",\"7075168225\":\"穴\",\"7092415778\":\"头\",\"7334347774\":\"玉\",\"7402244018\":\"宫\",\"7450445747\":\"挤\",\"7614763772\":\"水\",\"7615188907\":\"天\",\"7641707176\":\"甲\",\"7645727085\":\"私\",\"7666628481\":\"学\",\"7808420336\":\"荡\",\"7875951963\":\"四\",\"7912251525\":\"舔\",\"7980237169\":\"内\",\"8186728471\":\"出\",\"8165804057\":\"母\",\"8202714140\":\"东\",\"8212084865\":\"裸\",\"8242185966\":\"动\",\"8285637025\":\"容\",\"8381351178\":\"具\",\"8406787204\":\"退\",\"8431104929\":\"舌\",\"8431794980\":\"唇\",\"8443857439\":\"插\",\"8637348340\":\"精\",\"8728327662\":\"乳\",\"8739167787\":\"处\",\"8770568739\":\"肉\",\"8771907310\":\"狗\",\"8773645769\":\"情\",\"8986539842\":\"证\",\"9030340049\":\"性\",\"9065740329\":\"射\",\"9075956636\":\"迷\",\"9100236271\":\"兽\",\"9123535704\":\"洞\",\"9131928994\":\"硬\",\"9218945420\":\"波\",\"9332720497\":\"足\",\"9350080768\":\"下\",\"9364129810\":\"丁\",\"9386124353\":\"儿\",\"9440082131\":\"生\",\"9572922210\":\"布\",\"9818286580\":\"扎\",\"9875422061\":\"凌\",\"9884662704\":\"撸\",\"9942269763\":\"浪\",\"9986630664\":\"漏\",\"9993921948\":\"局\",};\nfunction x(e, m) {\n    for (i in m) {\n        var k = m[i];\n        var n = '<img src=\"https://novel.seseclub.com/template/imgs/' + i + '.png\">';\n        e = e.split(n).join(k);\n    }\n    return e;\n}\nx(result, m);",
    "bookSourceGroup": "🔞",
    "bookSourceName": "涩涩俱乐部",
    "bookSourceType": 0,
    "bookSourceUrl": "https://seseclub.com",
    "customButton": false,
    "customOrder": 227,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n    {\n        \"title\": \"按人气排序↓\",\n        \"url\": \"\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 1,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n    \t   \"title\":\"藏经阁\",\n    \t   \"url\":\"/book/category/list/3/page/{{page}}\",\n    \t   \"style\":{\n    \t   \t\"layout_flexBasisPercent\":1,\n    \t   \t\"layout_flexGrow\":1\n    \t   \t}\n    \t},\n    \t{\n    \t\t   \"title\":\"书库\",\n    \t\t   \"url\":\"/book/category/page/{{page}}\",\n    \t\t   \"style\":{\n    \t\t   \t\"layout_flexBasisPercent\":1,\n    \t\t   \t\"layout_flexGrow\":1\n    \t\t   \t}\n    \t\t   \t}, \n    \t\t   \t{\n    \t\t   \t\t\"title\": \"全部\",\n    \t\t   \t\t\"url\": \"/book/category/list/4/page/{{page}}\",\n    \t\t   \t\t\"style\": {\n    \t\t   \t\t\t\"layout_flexBasisPercent\": 0.2,\n    \t\t   \t\t\t\"layout_flexGrow\": 1\n    \t\t   \t\t}\n    },\n    {\n        \"title\": \"玄幻\",\n        \"url\": \"/book/category/list/4/tags/1/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"武侠\",\n        \"url\": \"/book/category/list/4/tags/2/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"仙侠\",\n        \"url\": \"/book/category/list/4/tags/3/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"古言\",\n        \"url\": \"/book/category/list/4/tags/4/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"都市\",\n        \"url\": \"/book/category/list/4/tags/5/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"历史\",\n        \"url\": \"/book/category/list/4/tags/6/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"网游\",\n        \"url\": \"/book/category/list/4/tags/7/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"科幻\",\n        \"url\": \"/book/category/list/4/tags/8/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"女生\",\n        \"url\": \"/book/category/list/4/tags/9/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"同人\",\n        \"url\": \"/book/category/list/4/tags/10/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"推理\",\n        \"url\": \"/book/category/list/4/tags/11/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"穿越\",\n        \"url\": \"/book/category/list/4/tags/12/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"重生\",\n        \"url\": \"/book/category/list/4/tags/13/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"系统\",\n        \"url\": \"/book/category/list/4/tags/14/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"求生\",\n        \"url\": \"/book/category/list/4/tags/15/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"恐怖\",\n        \"url\": \"/book/category/list/4/tags/16/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"耽美\",\n        \"url\": \"/book/category/list/4/tags/17/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"百合\",\n        \"url\": \"/book/category/list/4/tags/18/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"NTR\",\n        \"url\": \"/book/category/list/4/tags/19/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"足控\",\n        \"url\": \"/book/category/list/4/tags/20/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"乱伦\",\n        \"url\": \"/book/category/list/4/tags/21/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"SM\",\n        \"url\": \"/book/category/list/4/tags/22/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"伪娘\",\n        \"url\": \"/book/category/list/4/tags/23/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"娱乐\",\n        \"url\": \"/book/category/list/4/tags/24/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"综合\",\n        \"url\": \"/book/category/list/4/tags/25/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"按最新排序↓\",\n        \"url\": \"\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 1,\n            \"layout_flexGrow\": 1\n        }\n    },{\n\t\"title\":\"藏经阁\",\n\t\"url\":\"/book/category/list/3/order/addtime/page/{{page}}\",\n\t\"style\":{\n\t\"layout_flexBasisPercent\":1,\n\t\"layout_flexGrow\":1\n\t}\n},{\n\t\"title\":\"书库\",\n\t\"url\":\"/book/category/order/addtime/page/{{page}}\",\n\t\"style\":{\n\t\"layout_flexBasisPercent\":1,\n\t\"layout_flexGrow\":1\n\t}\n},\n    {\n        \"title\": \"全部\",\n        \"url\": \"/book/category/list/4/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"玄幻\",\n        \"url\": \"/book/category/list/4/tags/1/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"武侠\",\n        \"url\": \"/book/category/list/4/tags/2/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"仙侠\",\n        \"url\": \"/book/category/list/4/tags/3/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"古言\",\n        \"url\": \"/book/category/list/4/tags/4/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"都市\",\n        \"url\": \"/book/category/list/4/tags/5/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"历史\",\n        \"url\": \"/book/category/list/4/tags/6/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"网游\",\n        \"url\": \"/book/category/list/4/tags/7/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"科幻\",\n        \"url\": \"/book/category/list/4/tags/8/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"女生\",\n        \"url\": \"/book/category/list/4/tags/9/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"同人\",\n        \"url\": \"/book/category/list/4/tags/10/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"推理\",\n        \"url\": \"/book/category/list/4/tags/11/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"穿越\",\n        \"url\": \"/book/category/list/4/tags/12/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"重生\",\n        \"url\": \"/book/category/list/4/tags/13/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"系统\",\n        \"url\": \"/book/category/list/4/tags/14/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"求生\",\n        \"url\": \"/book/category/list/4/tags/15/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"恐怖\",\n        \"url\": \"/book/category/list/4/tags/16/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"耽美\",\n        \"url\": \"/book/category/list/4/tags/17/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"百合\",\n        \"url\": \"/book/category/list/4/tags/18/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"NTR\",\n        \"url\": \"/book/category/list/4/tags/19/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"足控\",\n        \"url\": \"/book/category/list/4/tags/20/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"乱伦\",\n        \"url\": \"/book/category/list/4/tags/21/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"SM\",\n        \"url\": \"/book/category/list/4/tags/22/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"伪娘\",\n        \"url\": \"/book/category/list/4/tags/23/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"娱乐\",\n        \"url\": \"/book/category/list/4/tags/24/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"综合\",\n        \"url\": \"/book/category/list/4/tags/25/order/addtime/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },{\n\t\"title\":\"按连载排序↓\",\n\t\"url\":\"\",\n\t\"style\":{\n\t\"layout_flexBasisPercent\":1,\n\t\"layout_flexGrow\":1\n\t}\n},{\n\t\"title\":\"藏经阁\",\n\t\"url\":\"/book/category/list/3/finish/1/page/{{page}}\",\n\t\"style\":{\n\t\"layout_flexBasisPercent\":1,\n\t\"layout_flexGrow\":1\n\t}\n},{\n\t\"title\":\"书库\",\n\t\"url\":\"/book/category/finish/1/page/{{page}}\",\n\t\"style\":{\n\t\"layout_flexBasisPercent\":1,\n\t\"layout_flexGrow\":1\n\t}\n},\n    {\n        \"title\": \"全部\",\n        \"url\": \"/book/category/list/4/finish/1/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"玄幻\",\n        \"url\": \"/book/category/list/4/finish/1/tags/1/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"武侠\",\n        \"url\": \"/book/category/list/4/finish/1/tags/2/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"仙侠\",\n        \"url\": \"/book/category/list/4/finish/1/tags/3/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"古言\",\n        \"url\": \"/book/category/list/4/finish/1/tags/4/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"都市\",\n        \"url\": \"/book/category/list/4/finish/1/tags/5/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"历史\",\n        \"url\": \"/book/category/list/4/finish/1/tags/6/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"网游\",\n        \"url\": \"/book/category/list/4/finish/1/tags/7/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"科幻\",\n        \"url\": \"/book/category/list/4/finish/1/tags/8/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"女生\",\n        \"url\": \"/book/category/list/4/finish/1/tags/9/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"同人\",\n        \"url\": \"/book/category/list/4/finish/1/tags/10/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"推理\",\n        \"url\": \"/book/category/list/4/finish/1/tags/11/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"穿越\",\n        \"url\": \"/book/category/list/4/finish/1/tags/12/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"重生\",\n        \"url\": \"/book/category/list/4/finish/1/tags/13/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"系统\",\n        \"url\": \"/book/category/list/4/finish/1/tags/14/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"求生\",\n        \"url\": \"/book/category/list/4/finish/1/tags/15/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"恐怖\",\n        \"url\": \"/book/category/list/4/finish/1/tags/16/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"耽美\",\n        \"url\": \"/book/category/list/4/finish/1/tags/17/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"百合\",\n        \"url\": \"/book/category/list/4/finish/1/tags/18/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"NTR\",\n        \"url\": \"/book/category/list/4/finish/1/tags/19/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"足控\",\n        \"url\": \"/book/category/list/4/finish/1/tags/20/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"乱伦\",\n        \"url\": \"/book/category/list/4/finish/1/tags/21/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"SM\",\n        \"url\": \"/book/category/list/4/finish/1/tags/22/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"伪娘\",\n        \"url\": \"/book/category/list/4/finish/1/tags/23/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"娱乐\",\n        \"url\": \"/book/category/list/4/finish/1/tags/24/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    },\n    {\n        \"title\": \"综合\",\n        \"url\": \"/book/category/list/4/finish/1/tags/25/page/{{page}}\",\n        \"style\": {\n            \"layout_flexBasisPercent\": 0.2,\n            \"layout_flexGrow\": 1\n        }\n    }\n]\n\n",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 1746026823000,
    "loginUrl": "",
    "respondTime": 2420,
    "ruleBookInfo": {
      "author": "#bookinfo@p.0",
      "coverUrl": ".photo@img.0@src",
      "kind": "#bookinfo@a&&#bookinfo@p.[-1,-2]",
      "name": "#bookinfo@div.0@h2@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".chapter-content-wrap@html##[上|下]一章|本站地址.+[^.].+\t",
      "replaceRegex": "{{eval(String(source.bookSourceComment))}}\n<js>\ni=[\"%uE800\",\"%uE801\",\"%uE802\",\"%uE803\",\"%uE804\",\"%uE805\",\"%uE806\",\"%uE807\",\"%uE808\",\"%uE809\",\"%uE80A\",\"%uE80B\",\"%uE80C\",\"%uE80D\",\"%uE80E\",\"%uE80F\",\"%uE810\",\"%uE811\",\"%uE812\",\"%uE813\",\"%uE814\",\"%uE815\",\"%uE816\",\"%uE817\",\"%uE818\",\"%uE819\",\"%uE81A\",\"%uE81B\",\"%uE81C\",\"%uE81D\",\"%uE81E\",\"%uE81F\",\"%uE820\",\"%uE821\",\"%uE822\",\"%uE823\",\"%uE824\",\"%uE825\",\"%uE826\",\"%uE827\",\"%uE828\",\"%uE829\",\"%uE82A\",\"%uE82B\",\"%uE82C\",\"%uE82D\",\"%uE82E\",\"%uE82F\",\"%uE830\",\"%uE831\",\"%uE832\",\"%uE833\",\"%uE834\",\"%uE835\",\"%uE836\",\"%uE837\",\"%uE838\",\"%uE839\",\"%uE83A\",\"%uE83B\",\"%uE83C\",\"%uE83D\",\"%uE83E\",\"%uE83F\",\"%uE840\",\"%uE841\",\"%uE842\",\"%uE843\",\"%uE844\",\"%uE845\",\"%uE846\",\"%uE847\",\"%uE848\",\"%uE849\",\"%uE84A\",\"%uE84B\",\"%uE84C\",\"%uE84D\",\"%uE84E\",\"%uE84F\",\"%uE850\",\"%uE851\",\"%uE852\",\"%uE853\",\"%uE854\",\"%uE855\",\"%uE856\",\"%uE857\",\"%uE858\",\"%uE859\",\"%uE85A\",\"%uE85B\",\"%uE85C\",\"%uE85D\",\"%uE85E\",\"%uE85F\",\"%uE860\",\"%uE861\",\"%uE862\",\"%uE863\"];\n//字体文本\nz=\"的一是了我不人在他有这个上们来到时大地为子中你说生国年着就那和要她出也得里后自以会家可下而过天去能对小多然于心学么之都好看起发当没成只如事把还用第样道想作种开美总从无情己面最女但现前些所同日手又行意动\";\n\t\n\t//变成unicode编码\nhtml = escape(result);\n//替换\nfunction ti(html,i,z){\n\treg = new RegExp(i,'g');\n\treturn html.replace(reg,z);\n\t}\nfor(x in i){\n\thtml = ti(html,i[x],z[x])\n\t}\n//解unicode编码（变成文字）\nunescape(html)\n</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": ".aglike@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "六点的钟声",
      "coverUrl": "img.0@src",
      "intro": ".decs@text",
      "kind": "",
      "name": ".name@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#chapterlsit@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "/book/search/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "玄幻阁",
    "bookSourceType": 0,
    "bookSourceUrl": "       http://wap.xuanyge.info",
    "customButton": false,
    "customOrder": 229,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url+\"/sort.html\";\nvar ph=url+\"/top.html\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".content li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".content li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".content li a\");\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        push(title,url,size)\n    };\n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        size=0.25;\n        push(title,url,size)\n    }\npush(\"🌹全本🌹\",\"/full-{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)\n",
    "lastUpdateTime": 1703463252657,
    "respondTime": 12637,
    "ruleBookInfo": {
      "author": ".block_txt2@a.2@text",
      "downloadUrls": "text.点击下载@href",
      "intro": ".intro_info@text",
      "kind": ".block_txt2@p.3:4:5@text",
      "lastChapter": ".block_txt2@a.-1@text",
      "name": ".block_txt2@h2@text",
      "tocUrl": "text.查看目录@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下 页@href||text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "//*[not(@class='blue')]/text()##\\[.*\\]|\\/",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "checkKeyWord": "",
      "coverUrl": "",
      "intro": "",
      "kind": "##\\[(.*)\\]##$1##",
      "name": ".blue@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "nextTocUrl": "@js:if(result.match(/\\/(\\d+)页/)){\nvar n=result.match(/\\/(\\d+)页/)[1];\nbaseUrl=baseUrl.replace(/(.+)\\//,'$1');\nvar list=[];\nfor(var i=2;i<=n;i++){list.push(baseUrl+\"_\"+i+\"/\");}\nlist\n}"
    },
    "searchUrl": "/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "👍 云中书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yunxs.com#一程",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 233,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuan/shuku_1949_{{page}}.html\n仙侠武侠::/xianxia/shuku_3336_{{page}}.html\n都市言情::/dushi/shuku_8625_{{page}}.html\n穿越历史::/chuanyue/shuku_1335_{{page}}.html\n科幻灵异::/kehuan/shuku_1500_{{page}}.html\n同人网游::/tongren/shuku_1056_{{page}}.html",
    "lastUpdateTime": 1731793082088,
    "loginUrl": "",
    "respondTime": 7110,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "class.j_box@tag.p!0@text##简介.",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": "id.cms_ready_1@text"
    },
    "ruleContent": {
      "content": "class.box_box@textNodes##云中书库.*",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "tag.a.4@text",
      "bookList": "class.ul_m_list@tag.li",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "",
      "intro": "",
      "kind": "tag.a.0@text&&tag.span.-1@text",
      "lastChapter": "tag.a.3@text",
      "name": "tag.a.1@text",
      "wordCount": "class.words@text"
    },
    "ruleSearch": {
      "author": "class.state.0@text##类型.*",
      "bookList": "class.ul_b_list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "class.words@tag.p.2@text",
      "kind": "tag.span.0@text&&class.state.0@text&&class.arcurl@text##最后更新：|.{12}章节目录.*|.*状态.|\\s|总点击.*",
      "lastChapter": "",
      "name": "tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.list_box@tag.li@tag.a",
      "chapterName": "text##正文.",
      "chapterUrl": "href"
    },
    "searchUrl": "/plus/search.php?kwtype=0&searchtype=&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "大米小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.damixs.info",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 235,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✱玄幻奇幻✱\",\"url\":\"/xuanhuan/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"更新\",\"url\":\"/xuanhuan/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/xuanhuan/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/xuanhuan/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/xuanhuan/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱武侠仙侠✱\",\"url\":\"/xianxia/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/xianxia/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/xianxia/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/xianxia/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/xianxia/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱都市言情✱\",\"url\":\"/dushi/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/dushi/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/dushi/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/dushi/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/dushi/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱历史军事✱\",\"url\":\"/lishi/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/lishi/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/lishi/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/lishi/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/lishi/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱游戏竞技✱\",\"url\":\"/wangyou/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/wangyou/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/wangyou/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/wangyou/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/wangyou/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱科幻灵异✱\",\"url\":\"/kehuan/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/kehuan/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/kehuan/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/kehuan/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/kehuan/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱其他类型✱\",\"url\":\"/qita/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/qita/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/qita/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/qita/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/qita/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱完本小说✱\",\"url\":\"/quanben/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/quanben/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/quanben/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/quanben/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/quanben/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"✱排行总榜✱\",\"url\":\"/shuku/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"更新\",\"url\":\"/shuku/update/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/shuku/all/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"周榜\",\"url\":\"/shuku/week/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"推荐\",\"url\":\"/shuku/vote/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}\n]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36\"\n}",
    "lastUpdateTime": 1732985185597,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 3350,
    "ruleBookInfo": {
      "author": "class.booktag@tag.a.0@text",
      "canReName": "",
      "coverUrl": "#bookIntro@img@src",
      "init": "",
      "intro": "class.text-muted.0@text",
      "kind": "class.breadcrumb@tag.li.1@tag.a@text&&class.booktag@tag.span.2@text",
      "lastChapter": "class.panel-body panel-chapterlist@class.col-md-4.0@tag.a.0@text",
      "name": "class.bookTitle@text",
      "tocUrl": "",
      "wordCount": "class.booktag@tag.span.0@text##字数."
    },
    "ruleContent": {
      "content": "tag.p!-1:-2@textNodes",
      "imageStyle": "0",
      "nextContentUrl": "id.linkNext@href",
      "replaceRegex": "##「如章节缺失请退出#阅#读#模#式」.*|全网首发无弹窗免费阅读ｄ.*ａ.*m.*i.*x.*s.*..*o.*r.*g.*|(.*请.*来.*大.*米.*小.*说.*看.*最.*新.*章.*节.*完.*整.*章.*节.*).*|本书作者.*|.*提醒您.*最新章节在.*|全网首发无弹窗免费阅读ｄ.*ａ.*ｍ.*ｉ.*ｘ.*ｓ.*．.*o.*r.*g.*(请来大米小%说%看最新章节%完整章节).*|.*本书作者.*提醒您.*最新章节在.*|喜欢看.*|那就记住.*|的域名ｄａｍｉxs.org.*|(请来大米小说移动.*版.*看最新章节.*完整章节).*|你看#到的#内#容#中#间#可#能#有#缺#失，退#出#阅#读#模#式，才可以#继#续#阅#读#全#文,或者请使用其它#浏#览#器，或者来：d#a#m#i#x#s#.c#o#.*|.*提醒.*免费无弹窗阅读将第一时间在.*",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.text-muted.1@text",
      "bookList": "class.mytable@tag.tr!0",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "a@href\n<js>\nvar url=book.origin+result[0];\nresult=java.ajax(url);\nresult;\n</js>\nclass.text-muted.0@text",
      "kind": "class.hidden-xs.1@text&&class.text-nowrap@text",
      "lastChapter": "class.text-muted.0@tag.a.0@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "class.booktag@tag.a@text",
      "bookList": ".col-md-10",
      "bookUrl": "class.bookTitle@tag.a@href",
      "coverUrl": "",
      "intro": "class.text-muted hidden-xs.0@text",
      "kind": "",
      "lastChapter": "tag.p.2@tag.a@text",
      "name": "class.bookTitle@tag.a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.col-md-3",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search/,{\n'charset': 'UTF-8\"',\n'method': 'POST',\n'body': 'keyword={{key}}&searchtype=all&Submit='\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "BY:溪",
    "bookSourceGroup": "免费",
    "bookSourceName": "神话之后（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.shenhuazhihou.com",
    "bookUrlPattern": "https://www.shenhuazhihou.com/book/\\d+/",
    "customButton": false,
    "customOrder": 236,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "小说::https://www.shenhuazhihou.com/book/<,index_{{page}}.html>",
    "lastUpdateTime": 1759523290402,
    "respondTime": 3730,
    "ruleBookInfo": {
      "author": ".m-infos@span.0@text",
      "coverUrl": "img@src",
      "intro": "p.0@text\n##(^|[。！？……]+[”」）……】]?)##$1<br>",
      "kind": ".m-infos@span.1:2@text##.*：|.*：",
      "lastChapter": ".m-upd@a@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "id.chaptercontent@p@html",
      "nextContentUrl": "text.下一@href"
    },
    "ruleExplore": {
      "author": "td.1@text",
      "bookList": "tbody@tr",
      "bookUrl": "a.0@href",
      "kind": "td.2@text",
      "name": "td.0@a@text"
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".book-coverlist",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "#play_0@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.shenhuazhihou.com/e/search/index.php,{\n  \"body\": \"tbname=bookname&show=title,writer&tempid=1&keyboard={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "最终小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.zuizhong.net/",
    "customButton": false,
    "customOrder": 237,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1747984637211,
    "loginUi": "",
    "respondTime": 2601,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.目录@href@"
    },
    "ruleContent": {
      "content": ".info_dv1@p[1:-2]@text",
      "nextContentUrl": "text.下一@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": ".txt-list@li",
      "bookUrl": "a.0@href",
      "intro": "",
      "kind": ".s1@text##[\\[\\]]",
      "lastChapter": "a.2@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".info_dv3.1@ul@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVolume": "",
      "nextTocUrl": "option[selected]+option@value"
    },
    "searchUrl": "<js>cookie.removeCookie(source.key);</js>\nhttps://www.zuizhong.net/search.html,{\"method\":\"POST\",\"body\":\"s={{key}}\"}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "久久小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://w7w.23fgh.com",
    "customButton": false,
    "customOrder": 239,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "女儿的::https://w7w.23fgh.com/public/api.php?app=search&q=女儿的&page={{page}}",
    "lastUpdateTime": 1752370913581,
    "respondTime": 3187,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "div@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "ul@li",
      "bookUrl": "a@href",
      "checkKeyWord": "催眠",
      "intro": "p@text",
      "name": "div@text##20.*| .*"
    },
    "ruleToc": {
      "chapterList": "div",
      "chapterName": "h1@text"
    },
    "searchUrl": "https://w7w.23fgh.com/public/api.php?app=search&q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "海棠书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://234.234516.xyz",
    "customButton": false,
    "customOrder": 240,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "催眠::https://234.234516.xyz/public/api.php?app=search&q=催眠&page={{page}}\n系统::/public/api.php?app=search&q=系统&page={{page}}",
    "lastUpdateTime": 1752370920317,
    "respondTime": 4949,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "div@textNodes##加载中.*|请选择.*|分享到.*|链接：.*|AI辅助创.*|请填写.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "ul@li",
      "bookUrl": "a@href",
      "checkKeyWord": "催眠",
      "intro": "p@text",
      "name": "p@text## |/|　|作者.*"
    },
    "ruleToc": {
      "chapterList": "div",
      "chapterName": "h1@text"
    },
    "searchUrl": "https://234.234516.xyz/public/api.php?app=search&q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画,🔞",
    "bookSourceName": "淫淫小说🔍可以漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "https://cf10.xbooks.vip",
    "customButton": false,
    "customOrder": 241,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "        ♥点我♥::/arttype/22/page/{{page}}.html\n　　仙侠\n　　♥点我♥::/arttype/1/page/{{page}}.html\n　　科幻\n　　♥点我♥::/arttype/5/page/{{page}}.html\n　　不伦\n　　♥点我♥::/arttype/4/page/{{page}}.html\n　　都市\n　　♥点我♥::/arttype/20/page/{{page}}.html\n　　经验\n　　♥点我♥::/arttype/3/page/{{page}}.html\n　　校园\n　　♥点我♥::/arttype/24/page/{{page}}.html\n　　偶像\n　　\n　　岁的::/artsearch/岁的------{{page}}-/\n　　幼女::/artsearch/幼女------{{page}}-/\n　　成年::/artsearch/成年------{{page}}-/\n　　小女::/artsearch/小女------{{page}}-/\n　　少女::/artsearch/少女------{{page}}-/\n　　女学::/artsearch/女学------{{page}}-/\n　　女童::/artsearch/女童------{{page}}-/\n　　女孩::/artsearch/女孩------{{page}}-/\n　　处::/artsearch/处------{{page}}-/\n　　初夜::/artsearch/初夜------{{page}}-/\n　　破处::/artsearch/破处------{{page}}-/\n　　开苞::/artsearch/开苞------{{page}}-/\n　　第一次::/artsearch/第一次------{{page}}-/\n　　处女::/artsearch/处女------{{page}}-/\n　　亲::/artsearch/亲------{{page}}-/\n　　女儿::/artsearch/女儿------{{page}}-/\n　　母女::/artsearch/母女------{{page}}-/\n　　闺女::/artsearch/闺女------{{page}}-/\n　　父女::/artsearch/父女------{{page}}-/\n　　亲生::/artsearch/亲生------{{page}}-/\n　　催眠::/artsearch/催眠------{{page}}-/\n　　常识::/artsearch/常识------{{page}}-/\n　　修改::/artsearch/修改------{{page}}-/\n　　软件::/artsearch/软件------{{page}}-/\n　　暂停::/artsearch/暂停------{{page}}-/\n　　编辑::/artsearch/编辑------{{page}}-/\n　　玩具::/artsearch/玩具------{{page}}-/\n　　隐形::/artsearch/隐形------{{page}}-/\n　　姐::/artsearch/姐------{{page}}-/\n　　姐姐::/artsearch/姐姐------{{page}}-/\n　　姐弟::/artsearch/姐弟------{{page}}-/\n　　姐的::/artsearch/姐的------{{page}}-/\n　　的姐::/artsearch/的姐------{{page}}-/\n　　表姐::/artsearch/表姐------{{page}}-/\n　　和姐::/artsearch/和姐------{{page}}-/\n　　姐和::/artsearch/姐和------{{page}}-/\n　　亲姐::/artsearch/亲姐------{{page}}-/\n　　姐妹::/artsearch/姐妹------{{page}}-/\n　　妹::/artsearch/妹------{{page}}-/\n　　妹妹::/artsearch/妹妹------{{page}}-/\n　　兄妹::/artsearch/兄妹------{{page}}-/\n　　妹的::/artsearch/妹的------{{page}}-/\n　　的妹::/artsearch/的妹------{{page}}-/\n　　表妹::/artsearch/表妹------{{page}}-/\n　　和妹::/artsearch/和妹------{{page}}-/\n　　妹和::/artsearch/妹和------{{page}}-/\n　　亲妹::/artsearch/亲妹------{{page}}-/\n　　妈::/artsearch/妈------{{page}}-/\n　　　　妈妈::/artsearch/妈妈------{{page}}-/\n　　妈的::/artsearch/妈的------{{page}}-/\n　　的妈::/artsearch/的妈------{{page}}-/\n　　舅妈::/artsearch/舅妈------{{page}}-/\n　　姨妈::/artsearch/姨妈------{{page}}-/\n　　和妈::/artsearch/和妈------{{page}}-/\n　　妈和::/artsearch/妈和------{{page}}-/\n　　亲妈::/artsearch/亲妈------{{page}}-/\n　　母::/artsearch/母------{{page}}-/\n　　母亲::/artsearch/母亲------{{page}}-/\n　　母子::/artsearch/母子------{{page}}-/\n　　的母::/artsearch/的母------{{page}}-/\n　　肏::/artsearch/肏------{{page}}-/\n　　和母::/artsearch/和母------{{page}}-/\n　　屄::/artsearch/屄------{{page}}-/\n　　龟头::/artsearch/龟头------{{page}}-/\n　　屁眼::/artsearch/屁眼------{{page}}-/\n　　阴道::/artsearch/阴道------{{page}}-/\n　　阴唇::/artsearch/阴唇------{{page}}-/\n　　子宫::/artsearch/子宫------{{page}}-/\n　　射精::/artsearch/射精------{{page}}-/\n　　射进::/artsearch/射进------{{page}}-/\n　　内射::/artsearch/内射------{{page}}-/\n　　精液::/artsearch/精液------{{page}}-/\n　　巨乳::/artsearch/巨乳------{{page}}-/\n　　怀孕::/artsearch/怀孕------{{page}}-/\n　　生了::/artsearch/生了------{{page}}-/\n　　生下::/artsearch/生下------{{page}}-/\n　　生孩::/artsearch/生孩------{{page}}-/\n　　国中::/artsearch/国中------{{page}}-/\n　　初中::/artsearch/初中------{{page}}-/\n　　初一::/artsearch/初一------{{page}}-/\n　　初二::/artsearch/初二------{{page}}-/\n　　初三::/artsearch/初三------{{page}}-/\n　　高中::/artsearch/高中------{{page}}-/\n　　高一::/artsearch/高一------{{page}}-/\n　　高二::/artsearch/高二------{{page}}-/\n　　高三::/artsearch/高三------{{page}}-/\n　　短篇::/artsearch/短篇------{{page}}-/\n　　胞胎::/artsearch/胞胎------{{page}}-/\n　　杀::/artsearch/奸杀------{{page}}-/\n　　尸::/artsearch/奸尸------{{page}}-/\n\t      杀::/artsearch/姦杀------{{page}}-/\n　　尸::/artsearch/姦尸------{{page}}-/\n　　飞机::/artsearch/飞机------{{page}}-/\n　　屎::/artsearch/屎------{{page}}-/\n　　尿::/artsearch/尿------{{page}}-/\n　　妊娠::/artsearch/妊娠------{{page}}-/\n　　便器::/artsearch/肉便器------{{page}}-/\n　　丝袜::/artsearch/丝袜------{{page}}-/\n　　榨汁::/artsearch/榨汁------{{page}}-/\n　　榨精::/artsearch/榨精------{{page}}-/\n       合集::/artsearch/合集------{{page}}-/\n　　岁::/artsearch/岁------{{page}}-/",
    "lastUpdateTime": 1752571786582,
    "respondTime": 2589,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.hl-article-box@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.hl-list-item hl-col-xs-12",
      "bookUrl": "a@href",
      "checkKeyWord": "破处",
      "name": "class.hl-item-title@text##/| |　|阅读全文|作者.*|【|（|）|】|《|》|.*中国.*|.*P.*"
    },
    "ruleToc": {
      "chapterList": "class.hl-article-head",
      "chapterName": "h1@text"
    },
    "searchUrl": "https://cf10.xbooks.vip/artsearch/{{key}}------{{page}}-/",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "穿越小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.kk169.net/",
    "customButton": false,
    "customOrder": 242,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"总点击榜\",\"url\":\"book/topallvisit/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击榜\",\"url\":\"book/topmonthvisit/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击榜\",\"url\":\"book/topweekvisit/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"book/topallvote/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月推荐榜\",\"url\":\"book/topmonthvote/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周推荐榜\",\"url\":\"book/topweekvote/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏榜\",\"url\":\"book/topgoodnum/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总字数榜\",\"url\":\"book/topsize/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最近更新\",\"url\":\"book/toplastupdate/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最新入库\",\"url\":\"book/toppostdate/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"book/sort1/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"book/sort2/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"book/sort3/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻网游\",\"url\":\"book/sort4/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"惊悚悬疑\",\"url\":\"book/sort5/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美同人\",\"url\":\"book/sort6/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越架空\",\"url\":\"book/sort7/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"高辣浓情\",\"url\":\"book/sort8/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"禁忌百合\",\"url\":\"book/sort9/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"精品文学\",\"url\":\"book/sort10/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"完本小说\",\"url\":\"fulltop/allvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1734841931486,
    "loginUrl": "",
    "respondTime": 6625,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "img.1@src",
      "init": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": ".divbg@.cf@li.0@a.0@text",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "a.b_hot@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "div.acontent@textNodes##\\(穿越小说 [a-zA-Z0-9]+.[a-zA-Z0-9]+.[a-zA-Z0-9]+\\)|穿越小说 [a-zA-Z0-9]+.[a-zA-Z0-9]+.[a-zA-Z0-9]+",
      "imageStyle": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "td:nth-of-type(3)@text||span.c_value:nth-of-type(2)@text",
      "bookList": "#jieqi_page_contents tr||div.c_row",
      "bookUrl": "td a:nth-of-type(2)@href||.c_subject a:nth-of-type(2)@href",
      "coverUrl": ".fl img@src",
      "intro": "",
      "kind": "td:nth-of-type(6)@text||span:nth-of-type(8)@text",
      "lastChapter": "td:nth-of-type(2) a@text||a.gray@text",
      "name": "td a:nth-of-type(2)@text||.c_subject a:nth-of-type(2)@text",
      "wordCount": "span.c_value:nth-of-type(4)@text"
    },
    "ruleSearch": {
      "author": "div.c_tag:nth-of-type(2) span:nth-of-type(2)@text",
      "bookList": "div.c_row",
      "bookUrl": ".c_subject a@href",
      "coverUrl": "img@src",
      "intro": "div.c_description@text",
      "kind": "div.c_tag:nth-of-type(2) span:nth-of-type(4)@text",
      "lastChapter": ".c_value a@text",
      "name": ".c_subject a@text",
      "wordCount": "span:nth-of-type(6)@text"
    },
    "ruleToc": {
      "chapterList": ".chapter a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "2025/7/17\nby天天的鸟蛋蛋",
    "bookSourceGroup": "免费",
    "bookSourceName": "bl小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.bldian.com",
    "customButton": false,
    "customOrder": 243,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "jsLib": "{\"crypto\": \"https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js\"}",
    "lastUpdateTime": 1752712588649,
    "respondTime": 3888,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=status|update_time|category]@content",
      "lastChapter": "[property$=lastest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.全部章节@href",
      "wordCount": ".btn-xs:nth-child(3)@text"
    },
    "ruleContent": {
      "content": "@js:\nfunction x(encryptedData, key, iv) {\n                const ciphertext = CryptoJS.enc.Base64.parse(encryptedData);\n                const ivBytes = CryptoJS.enc.Base64.parse(iv);\n                const keyBytes = CryptoJS.enc.Utf8.parse(key);\n                const decrypted = CryptoJS.AES.decrypt({\n                    ciphertext: ciphertext\n                }, keyBytes, {\n                    iv: ivBytes,\n                    mode: CryptoJS.mode.CBC,\n                    padding: CryptoJS.pad.ZeroPadding\n                });\n                const decryptedText = decrypted.toString(CryptoJS.enc.Utf8);\n                return decryptedText;\n\n            }\nr=result.match(/\\(\\'#booktxthtml\\'\\)\\.html\\((.*)\\)/)[1]\n//java.log(r)\neval(String(r))",
      "nextContentUrl": "#next_url@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".col-md-4:nth-child(n+1)",
      "bookUrl": "a@href",
      "coverUrl": "img@data-src",
      "intro": ".intro@text",
      "kind": ".status@span@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".col-md-3:nth-child(n+1) > a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/search,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.6.19 by.◎辞晨◎\n//js库",
    "bookSourceGroup": "漫画",
    "bookSourceName": "蛙漫漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.manwamh.com/",
    "customButton": false,
    "customOrder": 244,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\nD=org.jsoup.Jsoup.parse(java.ajax(\"https://www.manwamh.com/category\"))\npush(\"全部🔖分类\",``,1,1)\t\nD.select(\"#area a\").forEach(n=>{\n\tli=n.select(\"a\")\n\tpush(li.text(),`${li.attr(\"href\")}/page/{{page}}`,1,0.39)\n\t})\t\t\nD.select(\"#theme a\").forEach(t=>{\n\t\tpush(t.text(),`${t.attr(\"href\")}/page/{{page}}`,1,0.25)\t\n\t\t});\nD.select(\"#state a\").forEach(n=>{\n\tli=n.select(\"a\")\n\tpush(li.text(),`${li.attr(\"href\")}/page/{{page}}`,1,0.39)\n});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "@js:\nJSON.stringify({\n  'User-Agent': \"Mozilla/5.0 (Linux; Android 15; V2304A Build/AP3A.240905.015.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/132.0.6834.163 Mobile Safari/537.36\",\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': baseUrl,\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'Referer': baseUrl,\n  'Accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "jsLib": "{\"crypto\":\"https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js\"}",
    "lastUpdateTime": 1752079588196,
    "respondTime": 7735,
    "ruleBookInfo": {
      "author": "h2@text",
      "coverUrl": "img@src",
      "intro": "p.0@text",
      "kind": "{{@@.tag.0:1@text}},{{@@em@text}}",
      "lastChapter": "span@a.0@text",
      "name": "h1.1@text"
    },
    "ruleContent": {
      "content": "<js>\nparams = result.match(/params = '([^']+)'/)[1];\nfunction decryptEncryptedData(encryptedData) {\n  const encryptedDataWithIV = CryptoJS.enc.Base64.parse(encryptedData);\n  const iv = CryptoJS.lib.WordArray.create(encryptedDataWithIV.words.slice(0, 16));\n  const encryptedBytes = encryptedDataWithIV.words.slice(4);\n  const encryptedHex = CryptoJS.enc.Hex.stringify(CryptoJS.lib.WordArray.create(encryptedBytes));\n  const keyUtf8 = CryptoJS.enc.Utf8.parse(\"5V&RoR%Jf@pJPydF\");\n  const decrypted = CryptoJS.AES.decrypt(\n    { ciphertext: CryptoJS.enc.Hex.parse(encryptedHex) },\n    keyUtf8,\n    { iv: iv }\n  );\n  const decryptedText = decrypted.toString(CryptoJS.enc.Utf8);\n\n  return decryptedText;\n}\nimg = String(decryptEncryptedData(params)).replace(/\\\\|\\\"/g,'').replace(/.*\\[(.*)\\].*/g,'$1').replace(/\\,/g,'\\n')\nlet url=\"https://six.mhpic.net\";\nresult=img.split('\\n').map(x=>`<img src=\"${url}${x}\">`).join('\\n');\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".comics-card",
      "bookUrl": "a@href",
      "coverUrl": ".cover@data-original",
      "kind": ".tab@text",
      "lastChapter": "small@text",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "<js>\nif(String(result).match(/查看全部/)){\njava.getElements('#chapter-items@a')\n}else{\t java.getElements('.l-box.1@.pure-g.0@a[-1:0]')\n}\n</js>",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search?q={{encodeURI(key)}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "思路客吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.siluwu.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 245,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734985148715,
    "loginUrl": "",
    "respondTime": 4168,
    "ruleBookInfo": {
      "name": "tag.h1@text##全文阅读.*"
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "nextContentUrl": "id.link@tag.a.3@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.odd.0@tag.a@href",
      "name": "class.odd.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd!0:1:2:3:4:5",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.siluwu.com/modules/article/search.php?searchkey={{key}}&action=login,{\n  \"charset\": \"utf-8\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "by天天的鸟蛋蛋\nby关耳 替换规则正则表达式",
    "bookSourceGroup": "免费",
    "bookSourceName": "二三中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.ersanxs.info",
    "bookUrlPattern": "http://wap.ersanxs.info/skxs/\\d+/",
    "customButton": false,
    "customOrder": 247,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1747558137385,
    "respondTime": 3013,
    "ruleBookInfo": {
      "author": ".author@text",
      "coverUrl": ".synopsisArea_detail@img@src",
      "intro": ".review@html",
      "kind": ".synopsisArea_detail@p.1:2:4@text##.*：",
      "name": "h1@text",
      "tocUrl": "text.查看完整目录@href"
    },
    "ruleContent": {
      "content": "#chaptercontent@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\s*(.*?\\(第\\d+/\\d+页\\)|.*本章未?完.*)\\s*"
    },
    "ruleSearch": {
      "author": "span@text##\\/",
      "bookList": ".result@li",
      "bookUrl": "a.1@href",
      "kind": "a.0@text##\\[|\\]|\\s",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist p:nth-child(n+3) > a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉天域小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.tycqzw.com/",
    "bookUrlPattern": "https://www.tycqzw.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 248,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部小说\",\"url\":\"https://m.tycqzw.com/xclass/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"https://m.tycqzw.com/xclass/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"修真小说\",\"url\":\"https://m.tycqzw.com/xclass/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"都市小说\",\"url\":\"https://m.tycqzw.com/xclass/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"穿越小说\",\"url\":\"https://m.tycqzw.com/xclass/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"网游小说\",\"url\":\"https://m.tycqzw.com/xclass/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"科幻小说\",\"url\":\"https://m.tycqzw.com/xclass/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}},{\"title\":\"其他小说\",\"url\":\"https://m.tycqzw.com/xclass/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1752213212070,
    "loginUrl": "",
    "respondTime": 2340,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作\\s*者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "init": "",
      "intro": "id.intro@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "id.list@tag.dd.0@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##推荐.*新书.*|手机用户.*阅读体验。"
    },
    "ruleExplore": {
      "author": "class.author@text##作者：",
      "bookList": "class.hot_sale",
      "bookUrl": "tag.a.0@href@js:\nr=result.match(/_(\\d+)/)\nid=r[1]\nvar iid = parseInt(id/1000);\n'https://www.tycqzw.com/'+iid+'_'+id+'/'",
      "coverUrl": "img@data-original",
      "intro": "class.review@text##简介：",
      "lastChapter": "",
      "name": "class.title@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.even.0@tag.a.0@href",
      "coverUrl": "class.even.0@tag.a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.tycqzw.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.odd.0@tag.a.0@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.even.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.tycqzw.com/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 独步小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dbxsd.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 249,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/nav/xh-qh-{{page}}.html\n科幻游戏::/nav/kh-yx-{{page}}.html\n仙侠武侠::/nav/xx-wx-{{page}}.html\n女生言情::/nav/ns-yq-{{page}}.html\n都市娱乐::/nav/ds-yl-{{page}}.html\n历史军事::/nav/ls-js-{{page}}.html\n悬疑灵异::/nav/xy-ly-{{page}}.html\n耽美纯爱::/nav/dm-ca-{{page}}.html\n成长励志::/nav/cz-lz-{{page}}.html\n散文随笔::/nav/sw-sb-{{page}}.html\n轻の小说::/nav/qxs-{{page}}.html\n国外文学::/nav/gwwx-{{page}}.html\n文学名著::/nav/wxmz-{{page}}.html\n现代当代::/nav/xddwx-{{page}}.html",
    "header": "{\n  'User-Agent': 'Mozilla/5.0 (Linux; Android 9; PDBM00 Build/PPR1.180610.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36'\n}",
    "lastUpdateTime": 1734369672961,
    "loginUrl": "",
    "respondTime": 8577,
    "ruleBookInfo": {
      "author": ".media-body@a.1@text",
      "coverUrl": ".book-img-middel@src",
      "init": "",
      "intro": ".book-detail@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".col-md-4@text##.*：|\\s..:.*",
      "lastChapter": ".media-body@a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".book-name@a@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.cont-body@html  ",
      "nextContentUrl": ".page@a@href"
    },
    "ruleExplore": {
      "bookList": ".media",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".media-info@text",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": "td.1@text",
      "bookList": ".table@tbody@tr",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\n'/uploads/cover/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "a.0@text##《|》"
    },
    "ruleToc": {
      "chapterList": "id.all-chapter@div@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/plus/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "七六小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.qiliuwx.com/",
    "customButton": false,
    "customOrder": 250,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1749886235986,
    "respondTime": 1342,
    "ruleBookInfo": {
      "author": "class.author@text##作者：",
      "coverUrl": ".synopsisArea_detail@img@src",
      "intro": "p.review@text",
      "kind": "class.sort@text&&p.3:5@text##.*：",
      "lastChapter": ".directoryArea@a.0@text",
      "name": "class.title@text",
      "tocUrl": "class.recommend@tag.h2.1@tag.a@href"
    },
    "ruleContent": {
      "content": "id.chaptercontent@textNodes",
      "nextContentUrl": "id.pt_next@text.下一页@href",
      "replaceRegex": "##（本章未完，请点击下一页继续阅读）|.*\\(第.*页\\).*\\s|.*分卷阅读.*\\s|.*第.*章.*\\s"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author.0@text",
      "bookList": "class.recommend mybook@tag.div!0",
      "bookUrl": "@tag.a@href",
      "lastChapter": "class.author.1@text",
      "name": "class.title@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@tag.p!0",
      "chapterName": "@a@text",
      "chapterUrl": "@a@href"
    },
    "searchUrl": "/s.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "备用地址：https://sma.yueyouxs.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "阅友小说（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.suixkan.com/",
    "customButton": false,
    "customOrder": 251,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"推荐\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"重磅推荐\",\"url\":\"/l/s/28/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"男生必读\",\"url\":\"/l/s/29/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"女生爱看\",\"url\":\"/l/s/30/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"小编推荐\",\"url\":\"/l/s/31/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"男频\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"都市人生\",\"url\":\"/l/f/1100/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/l/f/1101/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/l/f/1102/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"军事历史\",\"url\":\"/l/f/1103/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻末世\",\"url\":\"/l/f/1104/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏体育\",\"url\":\"/l/f/1105/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"热血青春\",\"url\":\"/l/f/1106/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑灵异\",\"url\":\"/l/f/1107/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"脑洞大开\",\"url\":\"/l/f/1108/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"女频\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/l/f/2100/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/l/f/2101/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想言情\",\"url\":\"/l/f/2102/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"\",\"url\":\"/l/f/2103/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越时空\",\"url\":\"/l/f/2104/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宫闱争斗\",\"url\":\"/l/f/2105/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门总裁\",\"url\":\"/l/f/2106/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"婚恋爱情\",\"url\":\"/l/f/2107/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"经商种田\",\"url\":\"/l/f/2108/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"图书\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"出版读物\",\"url\":\"/l/f/3101/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"文学小说\",\"url\":\"/l/f/3102/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代典籍\",\"url\":\"/l/f/3103/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1759505557119,
    "respondTime": 941,
    "ruleBookInfo": {
      "author": ".face-info span.0@text##.*：",
      "coverUrl": ".face-cover img@src",
      "intro": "#intro@html",
      "kind": ".face-info span.1:3@text&&#idNewIds@#chapter-ps-id@text##.*：",
      "lastChapter": "#idNewIds@.chapter-entrance@text",
      "name": ".face-info-title@text",
      "tocUrl": ".sumchapter a@href",
      "wordCount": ".face-info span.2@text##.*："
    },
    "ruleContent": {
      "content": ".con@html",
      "replaceRegex": "##[\\(（]本章未完.*[）\\)]|[\\(（]本章完[）\\)]"
    },
    "ruleExplore": {
      "author": ".v-author@text##\\s",
      "bookList": ".v-list-item",
      "bookUrl": "@onclick@js:result.match(/\\('(.*?)'\\)/)[1]",
      "coverUrl": "img@src",
      "intro": ".v-intro@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleSearch": {
      "author": ".v-author@text##\\s",
      "bookList": ".v-list-item",
      "bookUrl": "@onclick@js:result.match(/\\('(.*?)', '', ''\\)/)[1]",
      "coverUrl": "img@src",
      "intro": ".v-intro@text",
      "kind": ".base-label@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleToc": {
      "chapterList": ".catalog_ls li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s/1.html?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🍺 笔趣阁②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.ibiquge.la",
    "customButton": false,
    "customOrder": 252,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::http://www.xbiquge.la/fenlei/1_{{page}}.html\n修真小说::http://www.xbiquge.la/fenlei/2_{{page}}.html\n都市小说::http://www.xbiquge.la/fenlei/3_{{page}}.html\n穿越小说::http://www.xbiquge.la/fenlei/4_{{page}}.html\n网游小说::http://www.xbiquge.la/fenlei/5_{{page}}.html\n科幻小说::http://www.xbiquge.la/fenlei/6_{{page}}.html",
    "lastUpdateTime": 1679612240428,
    "respondTime": 68,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "intro": "id.intro@tag.p.1@text",
      "lastChapter": "id.info@tag.p.3@title",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "tag.span.2@text",
      "bookList": "class.l@tag.ul@tag.li",
      "bookUrl": "tag.span.0@tag.a@href",
      "lastChapter": "tag.span.1@tag.a@text",
      "name": "tag.span.0@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tbody@tag.tr!0",
      "bookUrl": "class.even.0@tag.a@href",
      "lastChapter": "class.odd.0@tag.a@text",
      "name": "class.even.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}",
    "weight": 30
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "酷书阁小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.kushuge.com",
    "customButton": false,
    "customOrder": 253,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/list1/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/list2/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/list3/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/list4/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/list5/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/list6/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/list7/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/list8/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  }\n]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1751946406173,
    "respondTime": 5111,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "article@html##第\\(\\d+\\/\\d+\\)页",
      "nextContentUrl": "text.下一@href\n@js:\nvar next=/_\\d+\\.html/.test(result) ? result : '';\nnext;"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": ".col-md-6@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "{{@a.1@text##\\[(.*)\\].*##$1}}\n{{@dd.2:3##状态：?:?|更新时间：?:?}}",
      "lastChapter": "a.2@text",
      "name": "a.1@text##\\[.*\\](.*)##$1"
    },
    "ruleToc": {
      "chapterList": ".book_list2@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-link.0@text##\\d+\\/(\\d+)##$1\n@js:\nres = JSON.parse(result)\nlist = [];\nfor (var i = 2; i <= res; i++) {\n\tlist.push(baseUrl.replace(/\\/$/,\"/index_\" + i + \".html\")); \n}\nlist;"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "英文小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.yingyuxiaoshuo.com",
    "customButton": false,
    "customOrder": 254,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1751978910794,
    "respondTime": 246,
    "ruleBookInfo": {
      "author": "@css:.listshadow1 .text-danger:nth-child(2)@text",
      "coverUrl": "@css:.listshadow1 img@src",
      "intro": "@css:.listshadow1 .text-intro1@text",
      "kind": "@css:.listshadow1 .text-danger:nth-child(n+3)@text",
      "name": "@css:.listshadow1 .text-danger:first-child h2@text"
    },
    "ruleContent": {
      "content": "{{@css:.text-content1 .c-en@text||.text-content1@text}}"
    },
    "ruleSearch": {
      "author": "@css:.grow>div:nth-child(2)@text",
      "bookList": "@css:.main-list-container>div.h-36",
      "bookUrl": "a@href",
      "checkKeyWord": "加",
      "coverUrl": "img@src",
      "intro": "@css:.grow>div:nth-child(3)@text",
      "kind": "@css:.grow>div:nth-child(4) span:first-child@text",
      "name": "@css:.grow h2>a:nth-child(n)@text"
    },
    "ruleToc": {
      "chapterList": "@css:.shadow-listshadow1 .grid .text-danger",
      "chapterName": "class.text-danger@text",
      "chapterUrl": "class.text-danger@href"
    },
    "searchUrl": "/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "丁丁小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.xingliangglobal.com#",
    "customButton": false,
    "customOrder": 255,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\npush=(title,url,type,size)=>sort.push({\n    \"title\": title,\n    \"url\": url?url:\"\",\n    \"style\": {\n      \"layout_flexGrow\": type,\n      \"layout_flexBasisPercent\": size,\n    }\n  });\n\nbd=[\"必读榜\",\"潜力榜\",\"完本榜\",\n\"更新榜\",\"搜索榜\",\"评论榜\"];\npd=[[\"男频\",\"1\"],\n\t[\"女频\",\"2\"]].map([title,id]=>{\npush(title+'榜单', null, 1, 1);\n\t\tbd.map((title,index)=>{\t\t\t\n\t\t  \turl= `/module/rank?type=${index+1}&channel=${id}&page={{page}}`; \n\t\t\t\tpush(title, url, 1, 0.25);\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\t});\n\nbook=[[\"男频\",\n[[\"玄幻\",\"lejRej\"],[\"都市\",\"mbk5ez\"],[\"武侠\",\"nel5aK\"],[\"仙侠\",\"vbmOeY\"],[\"军事\",\"penRe7\"],[\"历史\",\"xbojag\"],[\"游戏\",\"mep2bM\"],[\"科幻\",\"zbq2dp\"],[\"轻小说\",\"YerEdO\"]]],\n\t [\"女频\",\n[[\"现代言情\",\"9avmeG\"],[\"古代言情\",\"DdwRb1\"],[\"幻想言情\",\"7ax9by\"],[\"青春校园\",\"Pdy7aQ\"],[\"唯美纯爱\",\"kazYeJ\"],[\"同人衍生\",\"9aAOdv\"]]]].map([tit1,category]=>{\n\t \t\t[[\"连载\",\"0\"],[\"完结\",\"1\"]].map([tit2,id]=>{  \n\t    push(tit1+'•'+tit2, null, 1, 1);   \n     category.map([title,cid]=>{\t    \n\turl= `/novel?isComplete=${id}&sort=1&page={{page}}&categoryId=${cid}`;\t\n\t\t\t \tpush(title, url, 1, 0.25);\n        });\n      });\n  });\n\nJSON.stringify(sort)",
    "header": "{\n    \"client-device\": \"4d9655dc356211b2d0a86a96e3e11a54\",\n    \"client-brand\": \"vivo\",\n    \"client-version\": \"1.1.0\",\n    \"client-channel\": \"android\",\n    \"client-name\": \"app.maoyankanshu.novel\",\n    \"alias-name\": \"dingdianapp\",\n    \"client-source\": \"android\",\n    \"Authorization\": \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkueGluZ2xpYW5nZ2xvYmFsLmNvbVwvYXV0aFwvdGhpcmQiLCJpYXQiOjE2OTkyNzUzOTQsImV4cCI6MTc5MjU4NzM5NCwibmJmIjoxNjk5Mjc1Mzk0LCJqdGkiOiJyYzhtYVByUUpLazlweFd6Iiwic3ViIjoxMjkyMjEsInBydiI6ImExY2IwMzcxODAyOTZjNmExOTM4ZWYzMGI0Mzc5NDY3MmRkMDE2YzUifQ.BqlcxKRH5oiBWQjSzTEHLpwUMD-dVhVe1ufcX_BZanw\",\n     \"Connection\": \"Keep-Alive\",\n    \"User-Agent\": \"okhttp/4.9.2\"\n}",
    "lastUpdateTime": 1735040095798,
    "respondTime": 4804,
    "ruleBookInfo": {
      "author": "authorName",
      "coverUrl": "cover",
      "init": "data",
      "intro": "summary",
      "kind": "categoryNames.*.className",
      "lastChapter": "lastChapter.chapterName",
      "name": "novelName",
      "tocUrl": "/novel/{{$.novelId}}/chapters",
      "wordCount": "wordNum"
    },
    "ruleContent": {
      "content": "content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "authorName",
      "bookList": "data",
      "bookUrl": "/novel/{{$.novelId}}?isSearch=1",
      "checkKeyWord": "剑来",
      "coverUrl": "cover",
      "intro": "summary",
      "kind": "categoryNames.[*].className",
      "lastChapter": "",
      "name": "novelName",
      "wordCount": "wordNum"
    },
    "ruleToc": {
      "chapterList": "data.list",
      "chapterName": "chapterName",
      "chapterUrl": "path\n@js:\nvar data=String(result),\ntype=\"AES/CBC/PKCS5Padding\",\nkey=\"4395daa50ad6baf7\",\niv=\"0123456789abcdef\",\ncipher=java.createSymmetricCrypto(type,key,iv),\nurl=cipher.decryptStr(data);\nurl;",
      "updateTime": "{{$.updatedAt}} • {{$.wordNum}}字"
    },
    "searchUrl": "http://api.xingliangglobal.com/search?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "*By_聆听月与悦-2025.1.30",
    "bookSourceGroup": "免费",
    "bookSourceName": "🍒大美书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dameishuwang.net/",
    "customButton": false,
    "customOrder": 256,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\"user-agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1749181555786,
    "respondTime": 1941,
    "ruleBookInfo": {
      "author": "body > div.container > div.content > div.book.pt10 > div.bookinfo > p.booktag > a.red@text",
      "coverUrl": "body > div.container > div.content > div.book.pt10 > div.bookinfo > p.bookintro > img.thumbnail.pull-left.visible-xs@src",
      "init": "",
      "intro": "&nbsp;&nbsp;\n📕书名：{{@css:body > div.container > div.content > div.book.pt10 > div.bookinfo > h1.booktitle@text}}\n✏️作者：{{@css:body > div.container > div.content > div.book.pt10 > div.bookinfo > p.booktag > a.red@text}}{{'\\n'+'​'}}\n🏷相关标签：{{@css:body > div.container > div.content > div.book.pt10 > div.bookinfo > p.booktag > span.red@text}} | 字数：{{@@.booktag@.blue.0@text}} | 阅读量：{{@@class.booktag@.blue.1@text##阅读量：}}\n💮最新章节：{{@css:body > div.container > div.content > div.book.pt10 > div.bookinfo > p > a.bookchapter@text}}\n⏳更新时间：{{@@class.booktime@text##更新时间：}}\n📜简       介：{{@@class.bookintro@text}}",
      "kind": "body > div.container > div.content > div.book.pt10 > div.bookinfo > p.booktag > span.red@text",
      "lastChapter": "body > div.container > div.content > div.book.pt10 > div.bookinfo > p > a.bookchapter@text",
      "name": "body > div.container > div.content > div.book.pt10 > div.bookinfo > h1.booktitle@text",
      "tocUrl": "@js:\nvar tocUrl = baseUrl;\ntocUrl\njava.toast('正在加载目录页，请稍等！');",
      "wordCount": "body > div.container > div.content > div.book.pt10 > div.bookinfo > p.booktag > span.blue.0@text"
    },
    "ruleContent": {
      "content": "class.readcontent@html",
      "replaceRegex": "@js:\nvar content = result.replace(/(?:.*?文案).*?(本章未完，点击下一页继续阅读)/, '文案');\ncontent",
      "sourceRegex": ""
    },
    "ruleSearch": {
      "author": "div.bookinfo > div.author.0@text##[作者：]*",
      "bookList": "body > div.container > div.content.book > div.keywords > div.bookbox > div.p10",
      "bookUrl": "class.bookname@a@href##$##,{\n  \"js\": \"java.toast('正在加载详情页，请稍等！');\"\n}",
      "checkKeyWord": "我不是天生欧皇",
      "coverUrl": "@js:\nvar url = \"{{@@class.bookname@a@href}}\";\nvar id = url.match(/\\d+/g);\nif (id && id.length > 0) {\n\t   var firstNumber = id[0];\n    var a = firstNumber.slice(0, 2);\n} else {\n    java.toast('未获取到封面链接');\n}\nvar b = \"https://fm.dameishuwang.net/\";\nvar c = \"s.jpg\";\nvar d = \"/\";\nvar coverUrl = b + a + d + id + d + id + c;\ncoverUrl",
      "intro": "div.bookinfo > div.update@text",
      "kind": "div.bookinfo > div.author.2@text##[阅读量：]*",
      "lastChapter": "div.bookinfo > div.cat > a@text",
      "name": "class.bookname@text",
      "wordCount": "div.bookinfo > div.author.1@text##[字数：]*"
    },
    "ruleToc": {
      "chapterList": "id.list-chapterAll@dd",
      "chapterName": "dd@text",
      "chapterUrl": "dd@a@href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&action=login\",\n  \"charset\": \"GBK\",\n  \"headers\": {\n    \"user-agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36\"\n  },\n  \"js\": \"java.toast('正在搜索中，请稍等！');\",\n  \"method\": \"POST\",\n  \"webView\": false\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "注：by_distance，酷安@Distance远方   2023-10-29\n1.网页接口与app接口相结合，正文获取更稳定\n2.❗预下载章数建议调为4以下，不要频繁访问\n3.发现规则和部分规则参考其他大佬（@关耳）等制作，其余由本人修改\n4.登录后能够获取加入书架的书籍\n5.登录里面填入网页抓包的token可看自己购买的vip章节\n6.可选择开启作者有话说，1为开启\n7.可选择开启正文延迟，10s延迟，缓存书籍用得上\n2024-10-17\n重构，直接填账号密码进行登录。",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰长佩文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.gongzicp.com",
    "customButton": false,
    "customOrder": 257,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar nums = 4;\nvar separator = '::'\ndate={\"昨日\":1,\"7天\":2,\"30天\":3,\"总\":8,\"时\":9,\"本周\":4,\"本月\":5};\n\n//有一些分类没有该时间，所以显示为空，需要换时间\nd=date[\"7天\"]\nall=[\"百合免费完结::https://m.gongzicp.com/webapi/novel/novelList?tid=17&process=2&number=0&sell=1&pre=0&lnid=0&page={{page}}::2\",\"我的书架::https://www.gongzicp.com/webapi/usercoll/getList?page=1&filter=0&sort_key=3&sort_flag=2::2\",\"全部（分类）::75::1\",\"古代::3\",\"现代::1\",\"幻想::4\",\"悬疑::6\",\"短佩::66\",\"架空::9\",\"无CP::73\",\"百合::17\",\"畅销榜::75::1::1\",\"古代::3::::1\",\"现代::1::::1\",\"幻想::4::::1\",\"悬疑::6::::1\",\"短佩::66::::1\",\"架空::9::::1\",\"无CP::73::::1\",\"百合::17::::1\",\"上架榜::75::1::2\",\"古代::3::::2\",\"现代::1::::2\",\"幻想::4::::2\",\"悬疑::6::::2\",\"短佩::66::::2\",\"架空::9::::2\",\"无CP::73::::2\",\"百合::17::::2\",\"风云榜::75::1::3\",\"古代::3::::3\",\"现代::1::::3\",\"幻想::4::::3\",\"悬疑::6::::3\",\"短佩::66::::3\",\"架空::9::::3\",\"无CP::73::::3\",\"百合::17::::3\",\"热读榜::75::1::4\",\"古代::3::::4\",\"现代::1::::4\",\"幻想::4::::4\",\"悬疑::6::::4\",\"短佩::66::::4\",\"架空::9::::4\",\"无CP::73::::4\",\"百合::17::::4\",\"完结榜::75::1::5\",\"古代::3::::5\",\"现代::1::::5\",\"幻想::4::::5\",\"悬疑::6::::5\",\"短佩::66::::5\",\"架空::9::::5\",\"无CP::73::::5\",\"百合::17::::5\",\"人气榜::75::1::6\",\"古代::3::::6\",\"现代::1::::6\",\"幻想::4::::6\",\"悬疑::6::::6\",\"短佩::66::::6\",\"架空::9::::6\",\"无CP::73::::6\",\"百合::17::::6\",\"新书榜::75::1::7\",\"古代::3::::7\",\"现代::1::::7\",\"幻想::4::::7\",\"悬疑::6::::7\",\"短佩::66::::7\",\"架空::9::::7\",\"无CP::73::::7\",\"百合::17::::7\",\"新人榜::75::1::8\",\"古代::3::::8\",\"现代::1::::8\",\"幻想::4::::8\",\"悬疑::6::::8\",\"短佩::66::::8\",\"架空::9::::8\",\"无CP::73::::8\",\"百合::17::::8\",\"萌新榜::75::1::9\",\"古代::3::::9\",\"现代::1::::9\",\"幻想::4::::9\",\"悬疑::6::::9\",\"短佩::66::::9\",\"架空::9::::9\",\"无CP::73::::9\",\"百合::17::::9\",\"赞赏榜::75::1::10\",\"古代::3::::10\",\"现代::1::::10\",\"幻想::4::::10\",\"悬疑::6::::10\",\"短佩::66::::10\",\"架空::9::::10\",\"无CP::73::::10\",\"百合::17::::10\",\"互动榜::75::1::11\",\"古代::3::::11\",\"现代::1::::11\",\"幻想::4::::11\",\"悬疑::6::::11\",\"短佩::66::::11\",\"架空::9::::11\",\"无CP::73::::11\",\"百合::17::::11\",\"勤奋榜::75::1::12\",\"古代::3::::12\",\"现代::1::::12\",\"幻想::4::::12\",\"悬疑::6::::12\",\"短佩::66::::12\",\"架空::9::::12\",\"无CP::73::::12\",\"百合::17::::12\",\"潜力榜::75::1::15\",\"古代::3::::15\",\"现代::1::::15\",\"幻想::4::::15\",\"悬疑::6::::15\",\"短佩::66::::15\",\"架空::9::::15\",\"无CP::73::::15\",\"百合::17::::15\"]\n\n\n\n//下面不要动\nfunction parse(data){\n\tlet args=data.split(separator);\n\tlet title = args[0],url=args[1],num=nums;\n\t\n\t\n\t//看看链接如何生成，不需要生成，删除下一行\n\t let u=/^\\d+/.test(url)?\"https://www.gongzicp.com/webapi/novel/novelGetList?page={{page}}&size=10&tid=\"+url+\"&field=0&order=-1\":url\n\t \t\n try {num = /^\\d+/.test(args[2])?args[2]:num}catch(e){}\n try {\n \td=/^5|(?:10)|(?:12)$/g.test(args[3])?date[\"本月\"]:args[3]==11?date[\"时\"]:2;\n \tu = /^\\d+/.test(args[3])?\"https://www.gongzicp.com/webapi/novel/rankingGetList?tid=\"+url+\"&rid=\"+args[3]+\"&date=\"+d+\"&page={{page}}\":u\n }catch(e){}\n\treturn [title, u, num]\n\t}\n\nfunction FlexBox(title, url, num){\n\t\t let obj={};\n\t\t obj.style={},obj.title=title,obj.url=url?url:'',obj.style['layout_flexGrow']=1;\n\t//部分数值设定 关耳@2379204@coolapk\n\tlet data={1:1,2:0.4,3:0.25,4:0.2,5:0.15,7:0.1,10:0.05};\nobj.style['layout_flexBasisPercent']=data[num]\n\t\treturn obj\n\t\t}\nresult=JSON.stringify(all.map(data=>{\n\tlet args=parse(data);\n\treturn FlexBox.apply(null, args)\n\t}))\n</js>",
    "header": "@js:\nvar ck = String(source.getVariable()).replace(/\\n◎◎.*/,'')\nvar t = {\n\t\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36\",\n\t\"cookie\": ck\n}\nJSON.stringify(t)",
    "jsLib": "function get_head() {\r\n    //正文js by_distance\r\n    const { java, source, cookie, baseUrl } = this;\r\n    var times, ver, Key, d, f, str;\r\n    times = Math.round(new Date().getTime() / 1000).toString();\r\n    ver = \"android_02050803\";\r\n    f = \"fss≤Â˜ı≥fhggh*&^%^ÇÏÍÎÍADΩ≈Ç≈√\";\r\n    var nid = baseUrl\r\n        .match(/nid=.*&/)[0]\r\n        .replace(\"nid=\", \"\")\r\n        .replace(\"&\", \"\");\r\n    var ids = baseUrl.match(/chapter_ids=.*/)[0].replace(\"chapter_ids=\", \"\");\r\n    str = \"chapter_ids=\" + ids + \"&nid=\" + nid + times + ver + f;\r\n    Key = java.digestHex(str, \"SHA-256\").substring(10, 42);\r\n    var u = source.getLoginHeader();\n    if(u!=null && u!=\"\"){\r\n    var Map = JSON.parse(u.replace(\"&\", \"\"));\n    }else{Map == null}\r\n    Map = Map == null ? { token: \"\" } : Map;\r\n    var token = Map[\"token\"];\r\n    token = token == \"\" || token == null ? \"\" : token;\r\n    var headers = {\r\n        \"User-Agent\": \"chang pei yue du/2.5.8.3 (Android 13; 2210132C; Xiaomi)\",\r\n        randStr: times,\r\n        version: ver,\r\n        requestKey: Key,\r\n        client: \"android\",\r\n        imei: \"455321005bc9cd38\",\r\n        referer: \"https://www.gongzicp.com\",\r\n        token: token,\r\n    };\r\n    var option = {\r\n        headers: headers,\r\n    };\r\n    return option;\r\n}\r\nfunction AESencrypt(text, key, iv) {\r\n    const { java } = this;\r\n    let key = \"u0LRrbu$Enm84koA\";\r\n    let iv = \"$h$b3!iGzsYnnshj\";\r\n    let cipher = java.createSymmetricCrypto(\"AES/CBC/PKCS7Padding\", key, iv);\r\n    let res = cipher.encryptBase64(text);\r\n    return res;\r\n}\r\nfunction check_token() {\r\n    const { java, source, Packages } = this;\r\n    var base64 = Packages.cn.hutool.core.codec.Base64;\r\n    var pz = source.getLoginHeader();\n    if(pz!=null&&pz!=\"\"){\r\n    var Map = JSON.parse(pz.replace(\"&\", \"\"));\n    }else{Map={}}\r\n    var turl = \"https://www.gongzicp.com/cp.UserExternal/get_token\";\r\n    var surl =\r\n        \"https://www.gongzicp.com/webapi/usercoll/getList?page=1&filter=0&sort_key=3&sort_flag=2\";\r\n    var str1 = \"00000000222a20\";\r\n    if (Map && Map.refresh_token) {\r\n        let k = Object.assign({}, Map);\r\n        let ck = Map.ck;\r\n        let token = Map.token;\r\n        let refresh_token = Map.refresh_token;\r\n        let headers = {\r\n            \"User-Agent\":\r\n                \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36\",\r\n            \"content-type\": \"application/grpc-web-text\",\r\n            Accept: \"application/grpc-web-text\",\r\n            cookie: String(ck),\r\n            token: token,\r\n        };\r\n        let hexstr = str1 + java.hexEncodeToString(refresh_token);\r\n        let hexbyte = java.hexDecodeToByteArray(hexstr);\r\n        let b2 = base64.encode(hexbyte).substr(0, 52);\r\n        let s = JSON.parse(java.get(surl, headers).body());\n       \n       \r\n        if (s.code == 9996) {\r\n            headers[\"token\"] = \"\";\r\n            java.longToast(\"token失效,正在重新获取...\");\r\n            let n = java.post(turl, b2, headers).body();\r\n            if (n.match(/AAAAA/)) {\r\n                let a = n.split(\"gAAAA\")[0];\r\n                let z = java.base64Decode(a);\r\n                java.log(encodeURI(z));\r\n                let r = encodeURI(z).match(/%[0-9a-z]{2}([0-9a-z]{32})/)[1];\r\n                java.log(r);\r\n                k[\"token\"] = r;\r\n                source.putLoginHeader(\"&\" + JSON.stringify(k));\r\n            } else {\r\n                java.longToast(\"❌️登录失效了，请重新登录。。。\");\r\n            }\r\n        }\r\n    }\r\n}\r\n//登录相关\r\nlet _t = { DATA: 0, typeName: \"cp.UserExternalParams.AccountLoginReq\" };\r\nlet Ce =\r\n    \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".split(\r\n        \"\"\r\n    );\r\nfunction Bc() {\r\n    let r = Date.now();\r\n    const e = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(\r\n        /[xy]/g,\r\n        function (t) {\r\n            let i = (r + Math.random() * 16) % 16 | 0;\r\n            return (\r\n                (r = Math.floor(r / 16)),\r\n                (t === \"x\" ? i : (i & 3) | 8).toString(16)\r\n            );\r\n        }\r\n    );\r\n    return e;\r\n}\r\nfunction Rr(r) {\r\n    let e = \"\",\r\n        t = 0,\r\n        i,\r\n        n = 0;\r\n    for (let a = 0; a < r.length; a++)\r\n        switch (((i = r[a]), t)) {\r\n            case 0:\r\n                (e += Ce[i >> 2]), (n = (i & 3) << 4), (t = 1);\r\n                break;\r\n            case 1:\r\n                (e += Ce[n | (i >> 4)]), (n = (i & 15) << 2), (t = 2);\r\n                break;\r\n            case 2:\r\n                (e += Ce[n | (i >> 6)]), (e += Ce[i & 63]), (t = 0);\r\n                break;\r\n        }\r\n    return t && ((e += Ce[n]), (e += \"=\"), t === 1 && (e += \"=\")), e;\r\n}\r\nlet d;\r\n(function (r) {\r\n    (r.symbol = Symbol.for(\"protobuf-ts/unknown\")),\r\n        (r.onRead = (t, i, n, a, c) => {\r\n            (e(i) ? i[r.symbol] : (i[r.symbol] = [])).push({\r\n                no: n,\r\n                wireType: a,\r\n                data: c,\r\n            });\r\n        }),\r\n        (r.onWrite = (t, i, n) => {\r\n            for (let { no: a, wireType: c, data: s } of r.list(i))\r\n                n.tag(a, c).raw(s);\r\n        }),\r\n        (r.list = (t, i) => {\r\n            if (e(t)) {\r\n                let n = t[r.symbol];\r\n                return i ? n.filter((a) => a.no === i) : n;\r\n            }\r\n            return [];\r\n        }),\r\n        (r.last = (t, i) => r.list(t, i).slice(-1)[0]);\r\n    const e = (t) => t && Array.isArray(t[r.symbol]);\r\n})(d || (d = {}));\r\nlet kf = 4294967295;\r\nfunction wn(r) {\r\n    if (typeof r != \"number\") throw new Error(\"invalid uint 32: \" + typeof r);\r\n    if (!Number.isInteger(r) || r > kf || r < 0)\r\n        throw new Error(\"invalid uint 32: \" + r);\r\n}\r\nfunction encodeUTF8(string) {\r\n    const utf8String = encodeURIComponent(string).replace(\r\n        /%([0-9A-F]{2})/g,\r\n        (match, p1) => String.fromCharCode(\"0x\" + p1)\r\n    );\r\n    const byteArray = new Uint8Array(utf8String.length);\r\n    for (let i = 0; i < utf8String.length; i++) {\r\n        byteArray[i] = utf8String.charCodeAt(i);\r\n    }\r\n    return byteArray;\r\n}\r\nfunction Wf(e) {\r\n    this.chunks = [];\r\n    this.buf = [];\r\n}\r\nWf.prototype.finish = function () {\r\n    this.chunks.push(new Uint8Array(this.buf));\r\n    let e = 0;\r\n    for (let n = 0; n < this.chunks.length; n++) e += this.chunks[n].length;\r\n    let t = new Uint8Array(e),\r\n        i = 0;\r\n    for (let n = 0; n < this.chunks.length; n++)\r\n        t.set(this.chunks[n], i), (i += this.chunks[n].length);\r\n    return (this.chunks = []), t;\r\n};\r\nWf.prototype.tag = function (e, t) {\r\n    return this.uint32(((e << 3) | t) >>> 0);\r\n};\r\nWf.prototype.raw = function (e) {\r\n    if (this.buf.length) {\r\n        this.chunks.push(new Uint8Array(this.buf));\r\n        this.buf = [];\r\n    }\r\n    this.chunks.push(e);\r\n    return this;\r\n};\r\nWf.prototype.uint32 = function (e) {\r\n    for (wn(e); e > 127; ) {\r\n        this.buf.push((e & 127) | 128);\r\n        e = e >>> 7;\r\n    }\r\n    this.buf.push(e);\r\n    return this;\r\n};\r\nWf.prototype.string = function (e) {\r\n    let t = encodeUTF8(e);\r\n    this.uint32(t.byteLength);\r\n    this.raw(t);\r\n    return this;\r\n};\r\nfunction toBinary(e) {\r\n    return internalBinaryWrite(e, new Wf()).finish();\r\n}\r\nfunction internalBinaryWrite(e, t) {\r\n    e.account !== \"\" && t.tag(1, 2).string(e.account),\r\n        e.password !== \"\" && t.tag(2, 2).string(e.password),\r\n        e.nationCode !== void 0 && t.tag(3, 0).uint32(e.nationCode);\r\n    let n = true;\r\n    if (n && d.onWrite) {\r\n        d.onWrite(_t.typeName, e, t);\r\n    }\r\n    return t;\r\n}\r\nfunction Da(r, e) {\r\n    let t = new Uint8Array(5 + r.length);\r\n    t[0] = _t.DATA;\r\n    for (let i = r.length, n = 4; n > 0; n--) (t[n] = i % 256), (i >>>= 8);\r\n    return t.set(r, 5), e === \"binary\" ? t : Rr(t);\r\n}\r\n",
    "lastUpdateTime": 1738504432679,
    "loginUi": "[{\n\t\tname: \"🟢账号:\",\n\t\ttype: \"text\"\n\t},\n\t{\n\t\tname: \"🔴密码:\",\n\t\ttype: \"password\"\n\t},\n {\n\t\tname: \"是否开启作者有话说，开启填1其他为不开启\",\n\t\ttype: \"text\"\n\t},\n\t{\n\t\tname: \"是否开启正文延迟(10s)，开启填1其他为不开启\",\n\t\ttype: \"text\"\n\t},\n\t{\n\t\tname: \"🔻点我登录🔺\",\n\t\ttype: \"button\",\n\t\taction: \"userlogin()\"\n\t}\n]",
    "loginUrl": "function userlogin() {\r\n    var phone = result.get(\"🟢账号:\");\r\n    var pwd = result.get(\"🔴密码:\");\r\n    if (phone != \"\" && pwd != \"\") {\r\n        let login_url =\r\n            \"https://www.gongzicp.com/cp.UserExternal/account_login\";\r\n        let password = AESencrypt(pwd);\r\n        let m = { account: phone, password: password, nationCode: 86 };\r\n        let body = Da(toBinary(m), \"text\");\r\n        let ck = \"_c_n_=\" + java.md5Encode(Bc())\r\n        let headers = {\r\n            \"User-Agent\":\r\n                \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36\",\r\n            \"content-type\": \"application/grpc-web-text\",\r\n            \"Accept\": \"application/grpc-web-text\",\r\n            \"cookie\" :String(ck)\r\n        };\r\n        let n = java.post(login_url, body, headers).body();\r\n        if (n.match(/AAAAA/)) {\r\n            let t = n.split(\"gAAAA\")[0];\r\n            let b = java.base64Decode(t);\r\n            let token = b.slice(11, 43);\r\n            let refresh_token = b.slice(45, 78);\r\n            save_oken(ck,token,refresh_token)\r\n            source.setVariable(ck);\r\n            java.longToast(\"✅登录成功!\");\r\n        }else{\r\n            java.longToast(\"❌️登录失败\");\r\n        }\r\n    } else {\r\n        java.longToast(\"❌️账号或密码不能为空\");\r\n    }\r\n}\r\n\r\nfunction save_oken(cookie,token,refresh_token) {\r\n    let zz = result.get(\"是否开启作者有话说，开启填1其他为不开启\");\r\n    let yc = result.get(\"是否开启正文延迟(10s)，开启填1其他为不开启\");\n    java.log(\"yc:\"+yc)\r\n    zz = zz == \"\" || zz == null ? \"0\" : zz;\r\n    yc = yc == \"\" || yc == null ? \"0\" : yc;\r\n    let timestamp = new Date().getTime();\r\n    let times = java.timeFormat(timestamp);\r\n    option = {\r\n        token: String(token),\r\n        refresh_token:String(refresh_token),\r\n        zz: String(zz),\r\n        ck: String(cookie),\r\n        yc: String(yc),\r\n        times: times\r\n    };\r\n    source.putLoginHeader(\"&\" + JSON.stringify(option));\r\n    java.longToast(\"✅保存token：\" + token);\r\n}\r\n\r\nfunction login() {\r\n    java.longToast(\"登录完成\");\r\n}\r\n",
    "respondTime": 4459,
    "ruleBookInfo": {
      "author": ".author_nickname",
      "coverUrl": ".novel_cover",
      "init": "$.data",
      "intro": ".novel_info",
      "kind": ".type_list[*]&&.tag_list[*]",
      "lastChapter": ".novel_newcname",
      "name": ".novel_name",
      "tocUrl": "https://www.gongzicp.com/webapi/novel/chapterGetList?nid={{$.novel_id}}",
      "wordCount": ".novel_wordnumber"
    },
    "ruleContent": {
      "content": "@js:\nlet u = source.getLoginHeader()||\"[]\";\ncheck_token()\nlet config = JSON.parse(u.replace(\"&\",\"\"))\nconfig = config==null?{\"yc\":\"0\"}:config;\nlet yc = config[\"yc\"];\nif(yc == 1){\njava.log('延时开始')\nvar times = Math.round(new Date().getTime() / 1000)\nwhile(Math.round(new Date().getTime() / 1000)-times<10){}\njava.log('延迟结束')\n}\nvar option = get_head()\nfunction gettext(a){\n    var url = baseUrl +\",\"+java.put(\"headers\",JSON.stringify(a))\n    var text = java.ajax(url)\n    return text\n}\nlet res =  gettext(option)\nvar d = java.getString(\"$.data..content\",res)\nif(d!=\"\"){\n\t let content = java.getString(\"$.data..content\",res);\n\t let u = source.getLoginHeader();\n\t if(u!=null&&u!=\"\"){\n      let Map = JSON.parse(u.replace(\"&\",\"\"))\n   }else{Map==null}\n   Map = Map==null?{\"zz\":\"0\"}:Map;\n   let word = Map[\"zz\"];\n   if(word==1){\n   let saybody;\n   saybody=java.getString(\"$.data..chapter_postscript\",res);\n    let say=saybody!=\"\"?\"\\n【📢作者有话说】\\n\"+saybody:\"\";\n    result = content + say\n   \t}else{\n   \t\tresult = content\n   \t\t}\n\t}else{\n\t\tresult=\"出错啦❗\\n错误原因：接口访问频繁或未解锁Vip章节\"\n\t\t}\nresult"
    },
    "ruleExplore": {
      "author": "$.author||$.novel_author",
      "bookList": "<js>\nif(/process=2/.test(baseUrl)){\n\tif(/page=1/.test(baseUrl)){\n\t\tlet s = String(source.getVariable());\n\t\tif(/◎◎/.test(s)){\n\t\t\ts = s.replace(/◎◎.*/,'')\n\t\t\t}\n\t\t\t}\n\ts = String(source.getVariable());\n\tck = s.match(/(.*)/)[1];\n\ts=/◎◎/.test(s)?s.match(/◎◎(.*)/)[1]:baseUrl;\n\tresult = java.ajax(s);\n\tu = \"https://m.gongzicp.com/webapi/novel/novelList?tid=17&process=2&number=0&sell=1&pre=\"+JSON.parse(result).data.previous_val+\"&lnid=\"+JSON.parse(result).data.latest_nid;\n\tsource.setVariable(ck+\"\\n◎◎\"+u);\n\t\n\t}\n\n\n\n//在下面来获取我的书架\nvar t = JSON.parse(result)\nvar u = t.code\nif (t.code===9996){\nlet z = source.getLoginHeader()\ncheck_token()\nlet Map = JSON.parse(z.replace(\"&\",\"\"));\nMap = Map==null?{\"ck\":\"\"}:Map;\r\nlet ck = Map[\"ck\"];\nlet token = Map[\"token\"]\nlet headers = {\n\t\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36\",\n\t\"Cookie\": ck,\n\t\"token\":token\n}\nlet url = \"https://www.gongzicp.com/webapi/usercoll/getList?page=1&filter=0&sort_key=3&sort_flag=2\"\n let re = java.get(url,headers)\n java.log(re.body())\n result = re.body()\n\t}else{result = result}\n</js>\ndata.list",
      "bookUrl": "https://www.gongzicp.com/webapi/novel/novelInfo?id={{$.id||$.novel_id}}",
      "coverUrl": "{{$.cover||$.novel_cover}}",
      "intro": ".novel_info",
      "kind": "$.type_list[*]||$.novel_process_text&&$.novel_tags[*]",
      "lastChapter": ".novel_newcname\n<js>\nif(result == \"\"){\n\tvar bkid = java.getString(\"$.novel_id\")\n\tcurl = `https://gongzicp.com/webapi/novel/chapterGetList?nid=${bkid}`\n\tvar t = JSON.parse(java.ajax(curl))\n\tvar u = t.data.list.length -1\n\tvar res = t.data.list[u]\n\tvar chapter = `${res.name}   更新时间：${res.public_date}`\n\tresult = chapter\n\t}else{result}\n</js>",
      "name": "$.name||$.novel_name",
      "wordCount": ".novel_wordnumber"
    },
    "ruleSearch": {
      "author": ".novel_author",
      "bookList": "<js>\nif(/process=2/.test(baseUrl)){\n\tif(/page=1/.test(baseUrl))source.setVariable(\"\");\n\ts = source.getVariable();\n\ts=s!=\"\"?s:baseUrl;\n\tresult = java.ajax(s);\n\tu = \"https://m.gongzicp.com/webapi/novel/novelList?tid=17&process=2&number=0&sell=1&pre=\"+JSON.parse(result).data.previous_val+\"&lnid=\"+JSON.parse(result).data.latest_nid;\n\tsource.setVariable(u);\n\t\n\t}\n\n\nif(/search\\/novels/.test(baseUrl)){\n\ttry{\n\t//搜索作者\nurl = \"https://m.gongzicp.com/webapi/search/novelAndAuthor?k=\"+java.get(\"key\");\n\n$ = JSON.parse(java.ajax(url));\n\nuserid = $.data.user.user_id;\n\nurl = \"https://m.gongzicp.com/webapi/zone/userGetNovelList?uid=\"+userid+\"&type=coll\";\n\naid = JSON.parse(java.ajax(url)).data.list[0].author_id;\nurl = \"https://m.gongzicp.com/webapi/zone/userGetNovelList?aid=\"+aid+\"&type=author&page=\"+java.get(\"page\");\n\nlist =JSON.parse(java.ajax(url));\na= JSON.parse(result).data.list || []\nresult = a.concat(list.data.list);\nresult = JSON.stringify(result);\n}catch(e){}\n}\n\nif(baseUrl.match(/usercoll\\/getList/)){\nresult=result.replace(/[\\s\\S]+?<pre.*?>|<\\/pre>[\\s\\S]+/g,'');\n}else{\n\tresult=result\n}\n</js>\n$.data.list||$.[*]",
      "bookUrl": "https://www.gongzicp.com/webapi/novel/novelInfo?id={{$.novel_id}}",
      "checkKeyWord": "他好可怕",
      "coverUrl": ".novel_cover",
      "intro": ".novel_desc",
      "kind": ".novel_type&&.novel_all_tag[*]",
      "lastChapter": "{{$.novel_uptime||$.chapter}}•{{$.uptime}}##•$",
      "name": ".novel_name",
      "wordCount": ".novel_wordnumber"
    },
    "ruleToc": {
      "chapterList": "$.data.list[*]",
      "chapterName": "第{{$.order}}章 {{$.name}}\n<js>\nvol = \"{{$.type}}\"==\"volume\"?\" 📖 \":\"\"\nvol+result+vol\n</js>\n##第章\\s*|第\\d+章\\s*(?=第\\d+章)",
      "chapterUrl": "<js>\nvar nid = baseUrl.match(/nid=.*/)[0].replace(\"nid=\",\"\")\nvar ids = \"{{$.id}}\"\nvar url = \"https://api1.gongzicp.com/apiv2/novel/getNovelChapterContents?nid=\"+nid+\"&chapter_ids=\"+ids\nresult = url\n</js>\n@js:\n\"{{$.type}}\"==\"volume\"?\"\":result",
      "isVip": "@js:\n\"{{$.pay}}\"==\"true\"?true:false",
      "isVolume": "<js>\n\"{{$.type}}\"==\"volume\"?true:false\n</js>",
      "preUpdateJs": "",
      "updateTime": "{{$.public_date}}  {{$.kt_number}}字##,|^字"
    },
    "searchUrl": "https://webapi.gongzicp.com/search/novels?k={{java.put(\"key\",key);key}}&page={{java.put(\"page\",page)}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "人文书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.rwsk2.com",
    "customButton": false,
    "customOrder": 258,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"日排行榜\",\"url\":\"/txttop/0-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周排行榜\",\"url\":\"/txttop/1-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月排行榜\",\"url\":\"/txttop/2-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总排行榜\",\"url\":\"/txttop/3-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"日推荐榜\",\"url\":\"/txttop/4-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周推荐榜\",\"url\":\"/txttop/5-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月推荐榜\",\"url\":\"/txttop/6-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"/txttop/7-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"日收藏榜\",\"url\":\"/txttop/8-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周收藏榜\",\"url\":\"/txttop/9-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月收藏榜\",\"url\":\"/txttop/10-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏榜\",\"url\":\"/txttop/11-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"字数排行\",\"url\":\"/txttop/12-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"更新排行\",\"url\":\"/txttop/13-0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻异能\",\"url\":\"/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越架空\",\"url\":\"/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"军事历史\",\"url\":\"/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻灵异\",\"url\":\"/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游竞技\",\"url\":\"/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美同人\",\"url\":\"/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"经管励志\",\"url\":\"/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"文学名著\",\"url\":\"/10/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"香艳激情\",\"url\":\"/11/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇辣文\",\"url\":\"/12/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1731309664176,
    "respondTime": 15075,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "class.fm@tag.img.0@src",
      "init": "",
      "intro": ".r_cons@textNodes",
      "kind": ".txt_nav a.1@text",
      "lastChapter": ".list-item a.-1@text",
      "name": "h1 a@text"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\�"
    },
    "ruleExplore": {
      "bookList": ".alistbox||#articlelist li!0",
      "bookUrl": "a.1@href",
      "coverUrl": "@js:'http://www.rwsk2.com/cover/noimg.jpg'",
      "intro": ".intro@text",
      "kind": "font.2@text&&span.0@text&&.l7@text##.*：",
      "name": "img@alt||.l4 a@text",
      "wordCount": "font.0@text||.l5@text"
    },
    "ruleSearch": {
      "author": "",
      "bookList": "table",
      "bookUrl": "a.0@href",
      "coverUrl": "@js:'http://www.rwsk2.com/cover/noimg.jpg'",
      "intro": ".intro@text##.*\\{|\\s|更新.*",
      "kind": "##更新.\\s([^<]+)<##$1###",
      "lastChapter": "",
      "name": "img@alt",
      "wordCount": ".size@text##大小.|\\s.*"
    },
    "ruleToc": {
      "chapterList": ".list-item li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.php?keyword={{key}}&submit=,{\n  'charset': 'gb2312',\n  'method': 'GET'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "饿狼小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.elkoparts.net",
    "customButton": false,
    "customOrder": 259,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734841139415,
    "respondTime": 2914,
    "ruleBookInfo": {
      "author": ".top@p.0@text",
      "coverUrl": ".imgbox@img@src",
      "intro": ".xdesc@textNodes##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".top@p.1:2:4@text##.*：|小说|\\s..:.*",
      "lastChapter": ".top@a.-1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".top@h1@text"
    },
    "ruleContent": {
      "content": "id.content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*第[0-9]/[0-9]页.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list-row5@li!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.elkoparts.net/files/article/image/$2/$1/$1s.jpg###",
      "kind": ".s1,.s5@text##\\[|\\]|小说",
      "lastChapter": "a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".section-list@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href",
      "nextTocUrl": ".right@a@href"
    },
    "searchUrl": "/search.php?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞 永远的神小说 🪜",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yydsxs.com/",
    "customButton": false,
    "customOrder": 260,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"完本\",\"url\":\"http://www.yydsxs.com/wanben/1\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻奇幻\",\"url\":\"/fenlei/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/fenlei/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"都市青春\",\"url\":\"/fenlei/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"科幻悬疑\",\"url\":\"/fenlei/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"穿越历史\",\"url\":\"/fenlei/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"浪漫浓情\",\"url\":\"/fenlei/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/fenlei/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"精品其他\",\"url\":\"/fenlei/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"藏经阁\",\"url\":\"/fenlei/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"综合其他\",\"url\":\"/fenlei/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"排行榜\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总点击榜\",\"url\":\"/allvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击榜\",\"url\":\"/monthvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击榜\",\"url\":\"/weekvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"/allvote-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月推荐榜\",\"url\":\"/monthvote-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"收藏排行\",\"url\":\"/goodnum-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最近更新\",\"url\":\"/lastupdate-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书上架\",\"url\":\"/postdate-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"字数排行\",\"url\":\"/size-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1770711039436,
    "respondTime": 11804,
    "ruleBookInfo": {
      "author": ".booktag a@text",
      "coverUrl": "class.bookcover hidden-xs@img@src",
      "intro": ".bookintro@text",
      "name": ".booktitle@text",
      "wordCount": ".blue.0@text"
    },
    "ruleContent": {
      "content": "class.readcontent@tag.div.3@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author a@text",
      "bookList": "class.bookbox@class.p10",
      "bookUrl": ".bookname a@href",
      "intro": ".update@textNodes",
      "lastChapter": ".cat a@text",
      "name": ".bookname a@text",
      "wordCount": ".author.1@text##字数："
    },
    "ruleToc": {
      "chapterList": "id.list-chapterAll@tag.dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href##.*?(\\d+).*?(\\d+).*##/go/$1/$2.html###"
    },
    "searchUrl": "http://www.yydsxs.com/searchok.html,{\n'charset': 'utf-8',\n'method': 'POST',\n'body': 'token=&searchkey={{key}}&action=login&submit='\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "书趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.xshuquge.net/",
    "customButton": false,
    "customOrder": 261,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "********************分类********************\n玄幻魔法::/sort/1/0_{{page}}.html\n武侠修真::/sort/2/0_{{page}}.html\n都市言情::/sort/3/0_{{page}}.html\n历史军事::/sort/4/0_{{page}}.html\n侦探推理::/sort/5/0_{{page}}.html\n网游动漫::/sort/6/0_{{page}}.html\n科幻灵异::/sort/7/0_{{page}}.html\n其他类型::/sort/8/0_{{page}}.html\n********************排行榜********************\n日点击榜::/store/dayvisit-{{page}}.html\n周点击榜::/store/weekvisit-{{page}}.html\n月点击榜::/store/monthvisit-{{page}}.html\n总点击榜::/store/allvisit-{{page}}.html\n总收藏榜::/store/goodnum-{{page}}.html\n字数排行::/store/size-{{page}}.html\n日推荐榜::/store/dayvote-{{page}}.html\n周推荐榜::/store/weekvote-{{page}}.html\n月推荐榜::/store/monthvote-{{page}}.html\n总推荐榜::/store/allvote-{{page}}.html\n最新入库::/store/postdate-{{page}}.html\n最近更新::/store/lastupdate-{{page}}.html",
    "lastUpdateTime": 1745853329285,
    "respondTime": 24676,
    "ruleBookInfo": {
      "author": "//div[@class='block_txt2']/p[3]/text()",
      "coverUrl": "//img/@src",
      "init": "",
      "intro": "//div[@class='intro_info']/text()",
      "kind": "//p[4]/a[@class='link-instanted']/text()",
      "lastChapter": "//p[7]/a/text()",
      "name": "//h2/a/text()",
      "tocUrl": "",
      "wordCount": "//div[@class='block_txt2']/p[6]/text()"
    },
    "ruleContent": {
      "content": "//div[@id='nr1']/text()",
      "nextContentUrl": "//a[text()=\"下一页\"]/@href",
      "replaceRegex": "##（本章未完，请点击下一页继续阅读）##",
      "title": "//h1/text()"
    },
    "ruleExplore": {
      "author": "//p[@class='line']/text()##/##",
      "bookList": "//p[@class='line']",
      "bookUrl": "/a[2]/@href",
      "coverUrl": "",
      "intro": "",
      "kind": "/a[1]/text()",
      "name": "/a[2]/text()"
    },
    "ruleSearch": {
      "author": "//div[@class=\"author\"]/text()",
      "bookList": "//div[@class=\"bookbox\"]",
      "bookUrl": "//h4[@class=\"bookname\"]/i/a/@href",
      "checkKeyWord": "我的",
      "coverUrl": "",
      "kind": "",
      "lastChapter": "//div[@class=\"updatelast\"]/a/text()",
      "name": "//h4[@class=\"bookname\"]/i/a/text()"
    },
    "ruleToc": {
      "chapterList": "//ul[@class='chapter'][2]/li/a",
      "chapterName": "/text()",
      "chapterUrl": "/@href",
      "nextTocUrl": "//a[text()=\"下一页\"]/@href"
    },
    "searchUrl": "/search.php,{\n\"method\" :\"POST\",\n\"body\": \"searchkey={{key}}&submit=\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "若雨中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.3yt.com#",
    "customButton": false,
    "customOrder": 262,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734837380564,
    "loginUrl": "",
    "respondTime": 4656,
    "ruleBookInfo": {
      "author": ".w_530 a.0@text##作品集",
      "coverUrl": ".img img@src",
      "intro": ".h_260 p@html",
      "kind": ".path a.1@text&&.w_200 li.0@text&&.h_260 em@text##.*：|\\s.*|小说",
      "lastChapter": ".h_260 a.0@text##[\\(（【].*?[求更票谢乐发订合补加].*?[】）\\)]",
      "name": ".w_530 em.0@text",
      "tocUrl": ".w_200 a.1@href",
      "wordCount": ".w_200 li.1@text##.*已完成\\s|\\s字"
    },
    "ruleContent": {
      "content": "#BookText@html"
    },
    "ruleExplore": {
      "bookList": "tbody!1:2@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##http://www.3yt.com/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.0:4:3@text##小说",
      "lastChapter": "td.2@text##[\\(（【].*?[求更票谢乐发订合补加].*?[】）\\)]",
      "name": "td.1@text"
    },
    "ruleSearch": {
      "author": "td.4@text",
      "bookList": "tbody tr",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##http://www.3yt.com/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.0:5:3@text##小说",
      "lastChapter": "td.2@text##[\\(（【].*?[求更票谢乐发订合补加].*?[】）\\)]",
      "name": "td.1@text"
    },
    "ruleToc": {
      "chapterList": "#BookText li a",
      "chapterName": "text##[\\(（【].*?[求更票谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/book/search.aspx?searchkey={{key}}&SeaButton=",
    "weight": 0
  },
  {
    "bookSourceComment": "dy天天的鸟蛋蛋\n//\t可搜索猫耳的广播剧\n//  并获取免费音频\n//\t分三步获取",
    "bookSourceGroup": "有声",
    "bookSourceName": "猫耳有声（优）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.hhlqilongzhu.cn",
    "customButton": false,
    "customOrder": 263,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1766365083517,
    "respondTime": 1857,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "url"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "Nickname",
      "bookList": "data[*]",
      "bookUrl": "https://www.hhlqilongzhu.cn/api/ximalaya/maoer_app.php?albumId={{$.albumId}}",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "type",
      "name": "title"
    },
    "ruleToc": {
      "chapterList": "data[*]",
      "chapterName": "title",
      "chapterUrl": "/api/ximalaya/maoer_app.php?soundid={{$.soundid}}",
      "updateTime": "intro"
    },
    "searchUrl": "/api/ximalaya/maoer_app.php?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "https://m.douxsw.com\nhttps://m.douyinxs.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "抖音小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.douxsw.com/#xsw8093",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 264,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部分类::/fenlei/<,{{page}}>\n玄奇::/fenlei/1/{{page}}/\n高武::/fenlei/2/{{page}}/\n修仙::/fenlei/3/{{page}}/\n都市::/fenlei/4/{{page}}/\n军事::/fenlei/5/{{page}}/\n历史::/fenlei/6/{{page}}/\n游体::/fenlei/7/{{page}}/\n科幻::/fenlei/8/{{page}}/\n恐怖::/fenlei/9/{{page}}/\n次元::/fenlei/10/{{page}}/\n女生::/fenlei/11/{{page}}/",
    "header": "{\n    'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 3 XL Build/RQ3A.211001.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/102.0.4988.0 Mobile Safari/537.36 SearchCraft/3.9.2 (Baidu; P1 11) '\n}",
    "lastUpdateTime": 1734555436991,
    "respondTime": 15449,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#chaptercontent@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##『加入书签，方便阅读』"
    },
    "ruleExplore": {
      "author": "p.1@text##([^（.*）]+)##$1###",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"https://m.douyinxs.com/static/ss_wap_bqg/nocover.jpg\"",
      "intro": "p.2@text##简介：",
      "kind": "p.1@text##（(.+)）##$1###",
      "name": "p.0@text"
    },
    "ruleSearch": {
      "author": ".author.0@text",
      "bookList": ".bookbox",
      "bookUrl": "a.1@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@src",
      "intro": "",
      "kind": ".author.1@text##类型：",
      "lastChapter": "a.-1@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".directoryArea.1@p",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "{{\n\tvar su=source.getKey()\nvar htmlUrl=java.get(su,{}).headers('Location')\njava.log(`重定向：${htmlUrl[0]}`)\nvar posturl=htmlUrl[0]?htmlUrl[0]:(su.includes(\"#\")?su.match(/([^\\#]+)\\#/)[1]:su)\nposturl = posturl.slice(-1)=='/'?posturl.slice(0,-1):posturl\njava.log(`请求：${posturl}`)\ncookie.removeCookie(posturl);\nck=cookie.getCookie(posturl);\n\ncookie.setCookie(posturl,String(ck).replace(/ss_search_delay=.*/,\"\"));\nposturl\n}}/search/,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\",\n  \"webView\": true\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "搜索页填：@put:{savebid:$.BOOKID}\n或\n详情页填：@put:{\"savebid\":\"$.BOOKINFO[*].BOOKID\"}",
    "bookSourceGroup": "免费",
    "bookSourceName": "连城读书 API",
    "bookSourceType": 0,
    "bookSourceUrl": "http://h5.lc1001.com/",
    "customButton": false,
    "customOrder": 265,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.7103.24 Safari/537.36\"}",
    "lastUpdateTime": 1749884866869,
    "respondTime": 3655,
    "ruleBookInfo": {
      "author": "$.BOOKINFO[*].AUTHORNAME",
      "intro": "$.BOOKINFO[*].CONTENT",
      "kind": "$.BOOKINFO[*].STNAME",
      "lastChapter": "$.BOOKINFO[*].NEWCHAPTER",
      "name": "$.BOOKINFO[*].BOOKNAME",
      "tocUrl": "/mulu/h,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"body\":\"bID={{$.BOOKINFO[*].BOOKID}}\"\n}",
      "wordCount": "$.BOOKINFO[*].WORDNUM"
    },
    "ruleContent": {
      "content": "$..CCONTENT"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.AUTHORNAME",
      "bookList": "$.KEYLIST[*]",
      "bookUrl": "/book/h,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"body\":\"bID={{$.BOOKID}}\"\n}",
      "intro": "$.CONTENT",
      "kind": "$.TYPE",
      "lastChapter": "@put:{\"savebid\":\"$.BOOKID\"}",
      "name": "$.BOOKNAME",
      "wordCount": "$.WORDNUM"
    },
    "ruleToc": {
      "chapterList": "$..CHAPTERS[*]",
      "chapterName": "$.CNAME",
      "chapterUrl": "/chapter/i,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n \"body\":\"bID=@get:{savebid}&cID={{$.CID}}&from=\"\n}"
    },
    "searchUrl": "/h5/query/bookquery,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"body\":\"kw={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "练习壬二酸",
    "bookSourceGroup": "免费",
    "bookSourceName": "手机TXT小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.sjwx.la/",
    "customButton": false,
    "customOrder": 266,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1745254452166,
    "respondTime": 4748,
    "ruleBookInfo": {
      "author": "class.block_txt2@tag.p.2@text",
      "coverUrl": "class.block_img2@tag.img@src",
      "intro": "class.intro_info@text##最新章节推荐地址.*",
      "kind": "class.block_txt2@tag.p[3:5]@text##分类：|状态：|更新：",
      "lastChapter": "class.block_txt2@tag.p.6@text",
      "name": "tag.h2@tag.a@text"
    },
    "ruleContent": {
      "content": "id.nr1@textNodes##.*点击下一页继续.*| \\(第\\d+/\\d+页\\)",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.block_txt@tag.p.3@text",
      "bookList": "class.block",
      "bookUrl": "tag.h2@tag.a@href",
      "checkKeyWord": "系统",
      "coverUrl": "tag.img@src",
      "kind": "class.block_txt@tag.p.2@text##分类：",
      "lastChapter": "class.block_txt@tag.p.4@text##最新章节：",
      "name": "tag.h2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "http://wap.sjwx.la/search.php?keyword={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "躺着看 tangzhekan8.cc",
    "bookSourceType": 0,
    "bookSourceUrl": "https://tangzhekan8.cc",
    "bookUrlPattern": "https://tangzhekan8.cc/tangzhe8/\\w.+/",
    "customButton": false,
    "customOrder": 267,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/sort/1/1/\n武侠仙侠::/sort/2/1/\n都市言情::/sort/3/1/\n穿越历史::/sort/4/1/\n网游竞技::/sort/5/1/\n科幻灵异::/sort/6/1/\n女生频道::/sort/7/1/\n其他类型::/sort/8/1/",
    "lastUpdateTime": 1738768528225,
    "respondTime": 4215,
    "ruleBookInfo": {
      "author": ".diswap@p.0@text<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "coverUrl": "img@data-original",
      "intro": ".info-main-intro@text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "kind": "{{@@.info-title@a.1@text}}\n{{@@.diswap@p.2@text##.*：|直达底部}}\n\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "lastChapter": ".diswap@p.3@text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>\n##.*：",
      "name": "h1@text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>"
    },
    "ruleContent": {
      "content": "id.article@html\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "nextContentUrl": "id.next_url@href",
      "replaceRegex": "##.*楼书屋|{{book.name}}|.* ！|"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".category-div",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": ".lazy@src",
      "intro": ".intro@text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "name": "h3@text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>"
    },
    "ruleToc": {
      "chapterList": "class.info-chapters flex flex-wrap.1@a",
      "chapterName": "text\n<js>\nvar endstr = java.t2s(result);\nendstr;\n</js>",
      "chapterUrl": "href"
    },
    "searchUrl": "https://tangzhekan8.cc/search/,{\n  \"body\": \"searchkey={{java.t2s(key)}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by:cwjdb\n//正文解密薅的Buding",
    "bookSourceGroup": "免费",
    "bookSourceName": "情幻文学网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.pdok.org",
    "customButton": false,
    "customOrder": 268,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n    java.toast(\"正在努力加载中，请稍后\");\n    \nvar sort = [];\nvar push = (title, url, type1, type2) => {\n    sort.push ({\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: type1,\n            layout_flexBasisPercent: type2\n        }\n    });\n};\n\nvar x = [{\n        u: \"https://www.pdok.org/all/fl/1/\",\n        ti: \"༺ˇ»`类型分类´«ˇ༻\"\n    },\n    {\n        u: \"https://www.pdok.org/top/\",\n        ti: \"༺ˇ»`排行分类´«ˇ༻\"\n    },\n    {\n        u: \"https://www.pdok.org/quanben/all/1/\",\n        ti: \"༺ˇ»`全本分类´«ˇ༻\"\n    }];\n    \nx.forEach (i => {\n    var o = org.jsoup.Jsoup.parse(java.ajax(i.u));\n    var s = o.select('ul.container a');\n    push(i.ti, \"\", 1, 1);\n    s.forEach((j,index) => {\n        var url = String (j.attr(\"href\")).replace(/(\\d+)\\/$/,\"{{page}}/\");\n        if (index + 1 <= s.length - s.length % 3){\n        push(j.text(), url, 1, 0.25)\n        }else{\n        \tpush(j.text(), url, -1, 0.29)\n        \t}\n    })\n});\n\nJSON.stringify(sort);",
    "lastUpdateTime": 1749243418965,
    "respondTime": 3369,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content##正文卷.|正文.|VIP章节.|免费章节.|VIP卷.|默认卷.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加].*?[】）\\)]",
      "name": "[property$=book_name]@content",
      "wordCount": ".booktag span.0@ownText"
    },
    "ruleContent": {
      "content": "@js:\nvar a=src.match(/#booktxthtml'\\)\\.html\\((x\\(\"(.*)\",\"(.*)\",\"(.*)\"\\)\\))/);\nvar da=java.base64DecodeToByteArray(JSON.parse('\"'+a[2]+'\"'));\nvar key=java.strToBytes(a[3]);\nvar iv=java.base64DecodeToByteArray(JSON.parse('\"'+a[4]+'\"'));\njava.createSymmetricCrypto(\"AES/CBC/ZeroPadding\", key, iv).decryptStr(da);",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "td.3@text||small@text",
      "bookList": ".table tr!0||div.panel-body>div>div>div",
      "bookUrl": "h4 a@href||a.0@href",
      "coverUrl": ".col-sm-5 a@style##.*\\((.*)\\)##$1###",
      "intro": "p@text",
      "kind": "td[0,-1,-2]@text",
      "lastChapter": ".hidden-xs a@text",
      "name": "h4 a@text||a.0@text",
      "wordCount": "td.-3@text"
    },
    "ruleSearch": {
      "author": "small@text",
      "bookList": "div.panel-body>div>div>div",
      "bookUrl": "a.1@href",
      "coverUrl": "a.0@style##.*\\((.*)\\)##$1###",
      "intro": "p@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "#newlist dd a",
      "chapterName": "text\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "by幕惜&by天天的鸟蛋蛋",
    "bookSourceGroup": "免费",
    "bookSourceName": "无限小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wuxianbook.com",
    "customButton": false,
    "customOrder": 270,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1741511201894,
    "respondTime": 4158,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "init": "<js>\nid=src.match(/data\\-bookid\\=\\\"(\\d+)\\\"/)[1]\njava.log(id)\njava.put(\"id\",id)\n</js>",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "<js>\nid=java.get(\"id\");\njava.log(id)\nurl=\"https://wuxianbook.com/e/extend/bookpage/pages.php?id=\"+id+\"&pageNum=0&dz=asc\"\nurl;\n</js>"
    },
    "ruleContent": {
      "content": "#text@html"
    },
    "ruleSearch": {
      "author": ".book-author@text",
      "bookList": ".s-nv-list@ul@li",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": "p@text",
      "name": ".title@text"
    },
    "ruleToc": {
      "chapterList": ".list[*]",
      "chapterName": ".title",
      "chapterUrl": "{{book.bookUrl}}{{$.pic}}",
      "nextTocUrl": ".totalPage\n<js>\nid=java.get(\"id\");\njava.log(id)\nmatch=String(result).match(/(\\d+)/)\nn=match[1]\nlist=[]\nfor(var i=1; i<=n; i++){\n\n        list.push(\"https://wuxianbook.com/e/extend/bookpage/pages.php?id=\"+id+\"&pageNum=\"+i+\"&dz=asc\")\n\n        }\n\nlist;\n</js>"
    },
    "searchUrl": "https://wuxianbook.com/e/search/index.php,{\n  \"body\": \"tbname=bookname&show=title&tempid=1&keyboard={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "PO全本🌹",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.isex.work",
    "customButton": false,
    "customOrder": 271,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"更新时间\",\"url\":\"/book_lastupdate_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"入库时间\",\"url\":\"/book_postdate_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"编辑推荐\",\"url\":\"/book_toptime_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总点击\",\"url\":\"/book_allvisit_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐\",\"url\":\"/book_allvote_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总鲜花\",\"url\":\"/book_allflower_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总月票\",\"url\":\"/book_allvipvote_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数\",\"url\":\"/book_words_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"收藏数\",\"url\":\"/book_goodnum_0_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园言情\",\"url\":\"/book_lastupdate_0_1_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/book_lastupdate_0_2_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/book_lastupdate_0_3_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"罗曼史\",\"url\":\"/book_lastupdate_0_4_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美\",\"url\":\"/book_lastupdate_0_5_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"百合\",\"url\":\"/book_lastupdate_0_6_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"/book_lastupdate_0_7_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻玄幻\",\"url\":\"/book_lastupdate_0_8_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/book_lastupdate_0_9_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻异能\",\"url\":\"/book_lastupdate_0_10_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖灵异\",\"url\":\"/book_lastupdate_0_11_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚推理\",\"url\":\"/book_lastupdate_0_12_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/book_lastupdate_0_13_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/book_lastupdate_0_14_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/book_lastupdate_0_15_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综合其他\",\"url\":\"/book_lastupdate_0_16_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新书上传\",\"url\":\"/book_lastupdate_0_0_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"三日内\",\"url\":\"/book_lastupdate_0_0_0_0_1_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"七日内\",\"url\":\"/book_lastupdate_0_0_0_0_2_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"半月内\",\"url\":\"/book_lastupdate_0_0_0_0_3_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"一月内\",\"url\":\"/book_lastupdate_0_0_0_0_4_0_0_0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1750220855496,
    "respondTime": 2581,
    "ruleBookInfo": {
      "author": "class.p_author@text",
      "coverUrl": "tag.img@src",
      "init": "",
      "intro": "id.bookintro@text",
      "lastChapter": "id.uptime@tag.span@text",
      "name": "class.d_title@tag.h1@text",
      "tocUrl": "text.更多目录@href"
    },
    "ruleContent": {
      "content": "id.TextContent@html"
    },
    "ruleExplore": {
      "bookList": "id.sitebox@tag.dl",
      "bookUrl": "tag.h3@tag.a@href",
      "coverUrl": "tag.img@_src",
      "intro": "class.book_des@text",
      "kind": "tag.dt@tag.span@text",
      "name": "tag.h3@tag.a@text"
    },
    "ruleSearch": {
      "bookList": "id.nr",
      "bookUrl": "tag.h3@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.book_des@text",
      "kind": "tag.span.0@text",
      "name": "tag.h3@tag.a.-1@text"
    },
    "ruleToc": {
      "chapterList": "class.chaw_c@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/modules/article/search.php,{\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//填写书籍变量可开启“只看楼主”功能\n//250211by= =",
    "bookSourceGroup": "免费",
    "bookSourceName": "华人论坛（须登陆）存档",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.huarenv5.com##",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 273,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "未来幻想::http://www.huarenv5.com/forum/forumdisplay.php?fid=54&filter=type&typeid=108",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36\"\n}",
    "lastUpdateTime": 1742532095014,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "http://www.huarenv5.com/forum/logging.php?action=login",
    "respondTime": 1600,
    "ruleBookInfo": {
      "author": "id.threadtitle@h1@ownText||.noveltitle@p.1@text##.*作者：(.*)（.*##$1",
      "coverUrl": "class.lazy@data-original",
      "init": "<js>\nif(/forum/.test(baseUrl)){\ny=java.getString(\".postauthor.0@div.0@a@text\");}\nif(/book/.test(baseUrl)){\tyy=java.getString(\".noveltitle.0@p.0@text\");y=String(yy).replace(/ 发表.*/,\"\");\n\t}\nsource.setVariable(y);result</js>",
      "intro": "h1@html&&.firstpost@.t_msgfontfix@html&&.noveltitle.0@p.1:0@html&&.novelcontent.0@html\n<js>\n//java.log(result)\nbook.getVariable(\"custom\")!=\"\"?x=\"开启\":x=\"关闭\";\nyhm=java.getString(\".postauthor.0@div.0@a@text\");\nif(yhm==\"\") {zuozhe=java.getString(\".noveltitle.0@p.0@text\");\nyhm=String(zuozhe).replace(/ 发表.*/,\"\");}\n\"<br>本帖楼主用户名：【\"+yhm+\"】\\n在本页面右上角书籍变量内输入任意文字开启“只看楼主”功能\\n若设置失败请点击本页面右上角，检查源变量与楼主用户名是否一致\\n当前状态：【\"+x+\"】\\n————\\n\"+result.replace(/<span[^<]*<\\/span>/gi,\"\").replace(/<font[^<]*<\\/font>/gi,\"\").replace(/<li[^<]*<\\/li>/gi,\"\").replace(/\\<[^<]*<\\[^>]*\\>/gi,\"\")\n</js>",
      "kind": "",
      "name": ".noveltitle@p.1@text||title@ownText##《(.*)》.*##$1",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "<js>\n//try{\nlz=source.getVariable();\nlist=\"\";\n//获取需要显示的内容，分割为数组\nif(/forum/.test(baseUrl)){\nzuozhe=java.getString(\"td[rowspan='2']@div.0@a@text\").split(\"\\n\");\nshijian=java.getString(\".authorinfo em@text\").split(\"\\n\");\nneir=java.getString(\".postmessage@tr@td@ownText\").split(\"\\n\");\n}\nif(/books/.test(baseUrl)){\tzuozhe=java.getString(\"@@.noveltitle@p.0@text\").split(\"\\n\");\nshijian=java.getString(\".noveltitle@p.0@text\").split(\"\\n\");\nneir=java.getString(\".novelcontent@ownText\").split(\"\\n\");\n}\n\n//修整内容后依次拼接\nfor(i=0;i<zuozhe.length;i++){\ntxt=String(neir[i]).replace(/\\s/g,\"\\n\");\nzz=String(zuozhe[i]).replace(/ 发表.*/,\"\");\nsj=String(shijian[i]).replace(/.*发表/,\"发表\");\njava.log(zz+lz);\n\n//只看楼主\nif (book.getVariable(\"custom\")!=\"\"){\n  if(zz==lz){\n  list=list+\"\\n@\"+zz+\"__\"+sj+\"\\n\"+txt+\"\\n————\\n\";\n  }else{};\n}else{list=list+\"\\n@\"+zz+\"__\"+sj+\"\\n\"+txt+\"\\n————\\n\";}\n}\nlist\nif(list==\"\"){\"未获取到内容，或许是因为“只看楼主”功能开启中\\n请尝试在详情页点击右上角删除书籍变量，关闭只看楼主功能后刷新本页面\"}\n//}catch {\"代码错误\"}\n</js>",
      "imageStyle": "",
      "nextContentUrl": "",
      "payAction": ""
    },
    "ruleExplore": {
      "author": "span.0@a@text||a[href*=readnovel.php]@text##.*作者[\\:：]|（.*|\\s[(欢迎)(请勿)勿暂].*",
      "bookList": "@js:\nif(/booklist/.test(baseUrl)) a=java.getElements(\"table[cellspacing='5']@tr!0\");\nif(/forum/.test(baseUrl)) a=java.getElements(\"tbody[id~=normalthread]@tr\");\nif(/books\\/$/.test(baseUrl)) a=java.getElements(\".forumitem1_content a\");\n//java.log(a)",
      "bookUrl": "a[href*=readnovel.php]@href||a@href",
      "intro": "span.0@a@text||a[href*=readnovel.php]@text##.*（(.*)）.*?##$1",
      "kind": "em.0@text&&.attach@title&&a[href~=booklist.php]@text",
      "lastChapter": ".lastpost@text",
      "name": "span.0@a@text||a[href~=readnovel.php]@text##.*《|》.*",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "class.author@tag.a@text##.*作者.|\\【.*",
      "bookList": "class.searchlist@tag.table@tag.tbody",
      "bookUrl": "tag.a@href##highlight.*",
      "checkKeyWord": "http://www.huarenv5.com/forum/viewthread.php?tid=350681&",
      "coverUrl": "",
      "kind": "class.forum@tag.a@text##口-",
      "name": "class.subject@tag.a.0@text##\\《|\\》.*"
    },
    "ruleToc": {
      "chapterList": "@js:\n    //获取总页数\ntry{\n        a = java.getString(\".last.0@text\").match(/\\s(\\d+)/)[1];\n    }\ncatch {\n    a = java.getElements(\".pages.0@a\").length;\n    if(a) {java.log(\"有.pages，按长度\")\n    }\n    else {java.log(\"没有.pages，取末页\");\n        aa = java.getString(\"text.末页@href\");\n        a = String(aa).replace(/.*page=/, \"\");\n        java.log(a)\n    }\n}\nlist = [];\nlist.push({text: \"第1页\",href: baseUrl});\nfor(i = 2; i <= a; i++) {\n    if(/thread-/.test(baseUrl)) {java.log(\"测thread\");\n        dz1 = baseUrl.replace(/-\\d+-\\d+.html/, \"-\");\n        dz2 = baseUrl.match(/-\\d+\\.html$/);\n        //\tjava.log(dz1+i+dz2);\n        list.push({\n            text: \"第\" + i + \"页\",\n            href: dz1 + i + dz2\n        })\n    }\n    else {java.log(\"page拼接\")\n        list.push({\n            text: \"第\" + i + \"页\",\n            href: baseUrl + \"&page=\" + i\n        })\n    }\n}\njava.log(JSON.stringify(list))\nlist",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "",
      "preUpdateJs": "",
      "updateTime": ""
    },
    "searchUrl": "http://www.huarenv5.com/forum/search.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"srchtxt={{key}}&searchsubmit=true&orderway=lastpost&srchtype=title&sch_time=all\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "by天天的鸟蛋蛋",
    "bookSourceGroup": "女频",
    "bookSourceName": "看情言小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.gaoyuantong.com",
    "customButton": false,
    "customOrder": 274,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "jsLib": "{\"crypto\": \"https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js\"}",
    "lastUpdateTime": 1785108875416,
    "respondTime": 3131,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "@js:\nfunction x(encryptedData, key, iv) {\r\n  const ciphertext = CryptoJS.enc.Base64.parse(encryptedData);\r\n  const ivBytes = CryptoJS.enc.Base64.parse(iv);\r\n  const keyBytes = CryptoJS.enc.Utf8.parse(key);\r\n  const decrypted = CryptoJS.AES.decrypt(\r\n    { ciphertext: ciphertext },\r\n    keyBytes,\r\n    { iv: ivBytes, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding }\r\n  );\r\n  const decryptedText = decrypted.toString(CryptoJS.enc.Utf8);\r\n return decryptedText;\r\n  \r\n}\nmatch=src.match(/#booktxthtml'\\).html\\((.*?\\))\\)/);\n//java.log(match[1])\nif(match){\nresult=eval(match[1])}else result",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-original",
      "intro": "dd@text",
      "kind": "em.-1@text",
      "name": "a.1@text",
      "wordCount": "em.0@text##.*："
    },
    "ruleToc": {
      "chapterList": "dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{url=source.getKey();cookie.removeCookie(url)}}\n/search,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "文学爱度",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.wenxuedu.net#",
    "customButton": false,
    "customOrder": 275,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "首页::\n完本::full/{{page}}/\n玄幻::sort/11_{{page}}/\n武侠::sort/12_{{page}}/\n言情::sort/13_{{page}}/\n历史::sort/14_{{page}}/\n游戏::sort/15_{{page}}/\n竞技::sort/16_{{page}}/\n科幻::sort/17_{{page}}/\n灵异::sort/18_{{page}}/\n日排行榜::top/dayvisit_{{page}}/\n周排行榜::top/weekvisit_{{page}}/\n月排行榜::top/monthvisit_{{page}}/\n总排行榜::top/allvisit_{{page}}/\n总收藏榜::top/goodnum_{{page}}/\n字数排行::top/size_{{page}}/\n日推荐榜::top/dayvote_{{page}}/\n周推荐榜::top/weekvote_{{page}}/\n月推荐榜::top/monthvote_{{page}}/\n总推荐榜::top/allvote_{{page}}/\n最新入库::top/postdate_{{page}}/\n最近更新::top/lastupdate_{{page}}/",
    "lastUpdateTime": 1734356935505,
    "loginUrl": "@js:\nfunction login() {\n  let une = source.getLoginInfoMap().get(\"账号\")\n  let pwd = source.getLoginInfoMap().get(\"密码\")\n  if (une && pwd) {\n    let body = String('LoginForm%5Busername%5D=' + une + '&LoginForm%5Bpassword%5D=' + pwd + '&_17mb_sava=on&ac=login')\n    let url = source.bookSourceUrl + 'login.php'\n    let ck = java.post(url, body, { \"Content-Type\": \"application/x-www-form-urlencoded\" }).cookies()\n    let header = JSON.stringify({\n      \"Cookie\": String(ck).match(/\\{(.*?)\\}/)[1].replace(/,/g, ';')\n    })\n    source.putLoginHeader(header)\n  }\n}",
    "respondTime": 7324,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "class.infohead@class.pic@tag.img@src",
      "intro": "class.intro@tag.p@textNodes",
      "kind": "class.infotype@tag.p.1@text##类型：",
      "lastChapter": "class.infotype@tag.p.3@tag.a@text",
      "name": "class.cataloginfo@tag.h3@text"
    },
    "ruleContent": {
      "content": "id.novelcontent@tag.p@textNodes##\\(第.*页\\)",
      "nextContentUrl": "class.novelbutton@tag.li.3@tag.a@href%%0"
    },
    "ruleExplore": {
      "author": "class.s3@text||class.p3@tag.a@text||class.author@a@text",
      "bookList": "class.list@tag.li||class.fullbox@class.full_content||class.article||class.articlegeneral",
      "bookUrl": "class.s2@tag.a@href||class.p2@tag.a@href||tag.h6@a@href",
      "coverUrl": "img@src",
      "intro": "class.simple@textNodes",
      "kind": "class.s1@text||tag.p.0@text",
      "name": "class.s2@text||class.p2@tag.a@text||tag.h6@a@text"
    },
    "ruleSearch": {
      "author": "class.sone@tag.a.1@text",
      "bookList": "class.searchresult@class.sone",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "class.sone@a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.list_xm.1@tag.ul@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "class.listpage@class.right@tag.a@href"
    },
    "searchUrl": "modules/article/search.php?q={{key}}",
    "weight": 56
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "彩绘漫画（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.kanman.com#Haxc1107",
    "customButton": false,
    "customOrder": 276,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "人气::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=48\n更新::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=48\n评分::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=48\n收藏::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=48\n热血::https://m.kanman.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=48\n机战::https://m.kanman.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=48\n运动::https://m.kanman.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=48\n推理::https://m.kanman.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=48\n冒险::https://m.kanman.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=48\n搞笑::https://m.kanman.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=48\n战争::https://m.kanman.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n神魔::https://m.kanman.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=48\n忍者::https://m.kanman.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=48\n竞技::https://m.kanman.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=48\n悬疑::https://m.kanman.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=48\n社会::https://m.kanman.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=48\n恋爱::https://m.kanman.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=48\n宠物::https://m.kanman.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=48\n吸血::https://m.kanman.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=48\n萝莉::https://m.kanman.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=48\n后宫::https://m.kanman.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=48\n御姐::https://m.kanman.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=48\n霸总::https://m.kanman.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=48\n玄幻::https://m.kanman.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n古风::https://m.kanman.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=48\n历史::https://m.kanman.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=48\n漫改::https://m.kanman.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=48\n游戏::https://m.kanman.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=48\n穿越::https://m.kanman.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=48\n恐怖::https://m.kanman.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=48\n真人::https://m.kanman.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=48\n科幻::https://m.kanman.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n都市::https://m.kanman.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=48\n武侠::https://m.kanman.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=48\n修真::https://m.kanman.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n生活::https://m.kanman.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n动作::https://m.kanman.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n防疫::https://m.kanman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=48",
    "lastUpdateTime": 1778811279574,
    "respondTime": 634,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": ".comic-update-status@text##.*-\\d+ ",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "https://m.kanman.com/api/getchapterlist?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}"
    },
    "ruleContent": {
      "content": "$.data.current_chapter.chapter_img_list@js:\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.cartoon_author_list_name||$.comic_author",
      "bookList": "$.data.data||$.data",
      "bookUrl": "https://m.kanman.com/{{$.comic_id}}/",
      "coverUrl": "https://image.yqmh.com/mh/{{$.comic_id}}.jpg-300x400.webp",
      "intro": "$.cartoon_desc",
      "kind": "$.comic_type##[a-zA-Z]|\\|",
      "lastChapter": "$.latest_cartoon_topic_name||$.last_chapter_name",
      "name": "$.comic_name@put:{bid:$.comic_id}"
    },
    "ruleToc": {
      "chapterList": "-$.data.[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "https://m.kanman.com/api/getchapterinfov2?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}&chapter_newid={{$.chapter_newid}}&isWebp=1&quality=low"
    },
    "searchUrl": "https://m.kanman.com/api/serachcomic/?product_id=1&productname=kmh&platformname=wap&serachKey={{key}}&topNumber=10",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.bswtan.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 277,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/82.0.4080.0 Safari/537.36 Edg/82.0.453.0\"\n}",
    "lastUpdateTime": 1731793369496,
    "loginUrl": "",
    "respondTime": 1420,
    "ruleBookInfo": {
      "author": "author",
      "coverUrl": "cover",
      "init": "<js> \nvar J = org.jsoup.Jsoup.parse(result);\nvar o = selector => String(J.select(selector).text()) ;\nvar og = selector => String(J.select('[property=\"og:' + selector + '\"]').attr('content'));\nvar book = {\n\tname: og('novel:book_name').replace(/(全文|小说|免费阅读|最新章节).*|[(（].*[）)]/g, ''),\n\tauthor: og('novel:author'),\n\tkind: og('novel:category') + ',' + og('novel:status').replace(/中|已/, ''),\n\tlatest: og('novel:latest_chapter_name').replace(/^(正文|VIP章节|章节目录|最新章节)?(\\s+|_)|[\\(（【].*[求更谢乐发推].*/g, '') + ' • ' + og('novel:update_time').replace(/(T|\\s).*/, ' ').replace(/\\//g, '-'),\n\tintro: '　　🔸最近更新：' + og('novel:update_time').replace(/(T|\\s).*/, ' ').replace(/\\//g, '-') + '\\n' + og('description').replace(/.*(观看小说|简介)[:：]|分享书籍.*|各位书友.*/g, '').replace(/\\s+/g, '\\n'),\n\tcover: og('image'),\nurl:og('novel:read_url'),\n};\nbook;\n</js>",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "tocUrl": "url",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.nr@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "class.fk@li!0\n<js>\nresult.toArray().slice(0, 10).map(el => {\n\tvar url = String(el.select('a:eq(0)').attr('href')).replace(/^\\//, baseUrl.match(/(.+?\\/\\/[^\\/]+\\/)/)[1]);\n\tvar J = org.jsoup.Jsoup.parse(java.ajax(url));\n\tvar o = selector => String(J.select(selector).text());\n\tvar og = selector => String(J.select('[property=\"og:' + selector + '\"]').attr('content'));\n\treturn {\n\t\tname: og('novel:book_name').replace(/(全文|小说|免费阅读|最新章节).*|[(（].*[）)]/g, ''),\n\t\tauthor: og('novel:author'),\n\t\tkind: og('novel:category') + ',' + og('novel:status').replace(/中|已/, ''),\n\t\tlatest: og('novel:latest_chapter_name').replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(（【].*[求更谢乐发推].*/g, '') + ' • ' + og('novel:update_time').replace(/(T|\\s).*/, ' ').replace(/\\//g, '-'),\n\t\tintro: og('description').replace(/.*(观看小说|简介)[:：]|各位书友.*/g, '').replace(/\\s+/g, ''),\n\t\tcover: og('image'),\n\t\turl: url,\n\t};\n}); \n</js>",
      "bookUrl": "url",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.chapter.1@li a",
      "chapterName": "text##[【（](求(评|订阅|[全首][订定]|收藏|月票)|(推荐票|\\d+字)加更|第?[一二三四五六七八九十]{1,3}更).*?[）】]",
      "chapterUrl": "href",
      "updateTime": ""
    },
    "searchUrl": "https://m.bswtan.com/search.php?s=4532499176958073452&submit=&type=articlename&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\n番茄小说二采网",
    "bookSourceGroup": "免费",
    "bookSourceName": "久久小说网",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.i.com",
    "customButton": false,
    "customOrder": 278,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市\",\"url\":\"/txt/doushi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"玄幻\",\"url\":\"/txt/xuanhuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"/txt/lishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"/txt/kehuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"/txt/xianxia/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"同人\",\"url\":\"/txt/tongren/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"游戏\",\"url\":\"/txt/youxi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"其他\",\"url\":\"/txt/qita/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"书库\",\"url\":\"/txt/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 12; OXF-AN00 Build/HUAWEIOXF-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/114.0.5735.196 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1745854262213,
    "respondTime": 181323,
    "ruleBookInfo": {
      "author": "span:contains(作者) > a@text",
      "coverUrl": "#bookimg > img@src",
      "downloadUrls": "#button_all@.b2@a@href",
      "intro": "#bookintro@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "li:contains(分类) > span@text&&li:contains(状态) > span@text&&li:contains(更新) > span@text",
      "lastChapter": "[property$=og:novel:lastest_chapter_name]@content",
      "name": ".d_title@h1@text",
      "tocUrl": "",
      "wordCount": "li:contains(字数) > span@text"
    },
    "ruleContent": {
      "content": ".m-post@html##<script.*?</script>",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "#sitebox@dl",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": ".book_des@text",
      "kind": ".book_other@span@text",
      "lastChapter": "dd:contains(最新章节) > a@text",
      "name": "dd@h3@a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": "ol#b_results .b_algo.0",
      "bookUrl": "a.tilk@href",
      "coverUrl": "a.tilk@href\n@js:\nid=result.match(/\\/(\\d+)\\/$/)[1];\nx = id.length-3>0? id.substr(0, id.length-3) : 0;\nimg = `https://www.beqege.cc/cover/${x}/${id}.jpg`;",
      "intro": "链接：{{@@.b_tpcn a@href}}\n简介：{{@@p@text}}",
      "lastChapter": "",
      "name": "<js>\nx=java.getString(\"h2.0@text\");\nif (/第.+章/.test(x) || /《.+》/.test(x)) {\n\tb=null;\n\t}else{\n\t\tb=java.getString(\"h2.0@text\")};\nb;\n</js>##^([^_]+)_.*##$1"
    },
    "ruleToc": {
      "chapterList": "#chapterList@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\ncookie.removeCookie(\"https://cn.bing.com\")\n\"https://cn.bing.com/search?q=site%3Awww.338i.com%20{{java.encodeURI(key)}}&first={{(page-1)*10+1}},\"+JSON.stringify({\n  'webView': true\n})",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "电子书肆",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wrltxt.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 279,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1731430678365,
    "loginUrl": "",
    "respondTime": 2099,
    "ruleBookInfo": {
      "author": "class.block_txt2@tag.p.2@text##作者：",
      "coverUrl": "img@src",
      "kind": "class.block_txt2@tag.p.2@a@text",
      "lastChapter": "class.block_txt2@tag.p.6@a@text",
      "name": "class.block_txt2@h2@a@text",
      "tocUrl": "class.block_txt2@tag.a.0@href##-(\\d+).html##http://www.wrltxt.com/read/$1/###"
    },
    "ruleContent": {
      "content": "id.content@textNodes##请记住本书.*",
      "imageStyle": "0.0"
    },
    "ruleExplore": {
      "author": "class.s@text##大小.*",
      "bookList": "//div[5]/div[2]/div/ul/li",
      "bookUrl": "class.red@href",
      "intro": "class.u@text",
      "lastChapter": "tag.div.-1@text",
      "name": "tag.a.0@text##txt.*"
    },
    "ruleSearch": {
      "author": "tag.td.3@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "tag.a.0@href",
      "lastChapter": "tag.td.2@text",
      "name": "tag.td.1@text"
    },
    "ruleToc": {
      "chapterList": "//div[5]/div/div[3]/div[2]/ul/li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.wrltxt.com/so.html?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞三疊書閣(三疊紀小說)-繁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.noveltri.com",
    "customButton": false,
    "customOrder": 280,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n    {\n        \"title\": \"科幻未來\",\n        \"url\": \"/zh-tw/books/1b7f39f5f32f6b96/{{page}}.html\"\n    },\n    {\n        \"title\": \"網路同人\",\n        \"url\": \"/zh-tw/books/1e42ed73a95ce215/{{page}}.html\"\n    },\n    {\n        \"title\": \"軍事歷史\",\n        \"url\": \"/zh-tw/books/208433aa7d3a9847/{{page}}.html\"\n    },\n    {\n        \"title\": \"武俠仙俠\",\n        \"url\": \"/zh-tw/books/580ffbceba88bd86/{{page}}.html\"\n    },\n    {\n        \"title\": \"靈異玄幻\",\n        \"url\": \"/zh-tw/books/1b7f39f5f32f6b96/{{page}}.html\"\n    },\n    {\n        \"title\": \"奇幻冒險\",\n        \"url\": \"/zh-tw/books/67a3a204728ae79a/{{page}}.html\"\n    },\n    {\n        \"title\": \"情色工口\",\n        \"url\": \"/zh-tw/books/f4c67287fa5cf290/{{page}}.html\"\n    }\n]",
    "lastUpdateTime": 1748493821508,
    "loginUrl": "/zh-tw/login",
    "respondTime": 2823,
    "ruleBookInfo": {
      "author": "@css:.list-inline-item.tags>a>strong@text",
      "coverUrl": "@css:.mb-xl-0.text-center>img@src",
      "intro": "@css:.description@text",
      "name": "@css:h3@text",
      "wordCount": "@css:#book-status>li:eq(0)>strong@text"
    },
    "ruleContent": {
      "content": "@css:.px-sm-1>p@text",
      "title": "@css:h1@text"
    },
    "ruleExplore": {
      "author": "@css:.small a@text",
      "bookList": "@css:.d-grid.books>.book.d-flex.shadow-sm",
      "bookUrl": "@css:a:eq(0)@href",
      "coverUrl": "@css:.cover img@src",
      "intro": "@css:.description@text",
      "name": "@css:.fw-bold span@text"
    },
    "ruleSearch": {
      "author": "@css:.small a@text",
      "bookList": "@css:.d-grid.books>.book.d-flex.shadow-sm",
      "bookUrl": "@css:a:eq(0)@href",
      "checkKeyWord": "吾",
      "coverUrl": "@css:.cover img@src",
      "intro": "@css:.description@text",
      "name": "@css:.fw-bold span@text",
      "wordCount": "@css:.small ul>li:eq(0)>strong@text"
    },
    "ruleToc": {
      "chapterList": "@css:.chapters>div",
      "chapterName": "@css:span@text",
      "chapterUrl": "@css:a@href"
    },
    "searchUrl": "/zh-tw/search?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "二三小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.x23us.cc/",
    "bookUrlPattern": "https://www.x23us.cc/h/\\d+/",
    "customButton": false,
    "customOrder": 281,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko, By Black Prism) Chrome/99.0 Safari/537.36\",\n\"Referer\":\"https://www.x23us.cc\"\n}",
    "lastUpdateTime": 1732246049377,
    "respondTime": 3028,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property~=las?test_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#nr@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "bookList": "",
      "bookUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": ".newlist-zz@text",
      "bookList": ".text-more",
      "bookUrl": ".newlist-title@a@href",
      "kind": ".newlist-type@text##\\[|\\]",
      "lastChapter": ".newlist-zj@a@text",
      "name": ".newlist-title@text"
    },
    "ruleToc": {
      "chapterList": "#newlist li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search/,{\n  \"body\": \"searchkey={{key}}&searchtype=all\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔趣小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xbiqusa.com",
    "bookUrlPattern": "https://www.biqusa.com/\\d+_\\d+/",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 282,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734838017397,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1404,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@a@text",
      "canReName": "",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@text\n<js>result.replace(/(.*)/,' ○○○STORY:\\n$1')</js>",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "{{@@id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 }}·{{@@id.info@tag.p.2@text##最后更新：}}",
      "name": "id.bookdetail@id.info@h1@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "##本小说.*无广告免费阅读。|：。：|.*一秒记住本站地址.*\\s|.*最快更新.*无广告.*\\s|.*最新网址.*\\s|最新网址.*|章节错误.*",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.s4@a@text",
      "bookList": "class.novelslist2@ul@li[1:3]",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biqusa.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "class.s6@text",
      "lastChapter": "class.s3@a@text&&class.s6@text##免费章节 |正文卷 |正文 |VIP章节 \n@js:result.replace(/\\n/,'·')",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "//*[@id=\"list\"]//dt[2]/following-sibling::dd/a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search.html?name={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "源社区：@Mengteen 2025.06.28原创\n二传二创或者是其它问题请联系我。\n我邮箱:[xxxmgqxxx@vip.qq.com]",
    "bookSourceGroup": "免费",
    "bookSourceName": "📖读万卷",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.duwanjuan.info/##@Mengteen",
    "customButton": false,
    "customOrder": 284,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"玄幻魔法\",\"url\": \"/sort/1/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍武侠修真\",\"url\": \"/sort/2/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍都市言情\",\"url\": \"/sort/3/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍历史军事\",\"url\": \"/sort/4/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍侦探推理\",\"url\": \"/sort/5/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍网游动漫\",\"url\": \"/sort/6/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍科幻小说\",\"url\": \"/sort/7/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍恐怖灵异\",\"url\": \"/sort/8/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍言情小说\",\"url\": \"/sort/9/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.25\n}},\n{\"title\": \"\u0000‍其他类型\",\"url\": \"/sort/10/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 1\n}}\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 12; 22041211AC Build/SP1A.210812.016) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.104 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1751095314182,
    "respondTime": 7078,
    "ruleBookInfo": {
      "author": "p.0@text",
      "coverUrl": "img@src",
      "intro": "🏷简介：{{@@.intro@p@text}}",
      "kind": "p.1@text##类型：",
      "lastChapter": "p.3@text",
      "name": "h3.0@text",
      "wordCount": "p.2@text"
    },
    "ruleContent": {
      "content": ".novelcontent@p@textNodes##（本章未完，请点击下一页继续阅读）",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*※※※"
    },
    "ruleExplore": {
      "author": ".author@text",
      "bookList": ".article",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": ".simple@text",
      "name": "h6@a@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": ".sone",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "@js:\"🤔这里好像什么都没说介绍呢,要不你点进去看看!\"",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".list_xm@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "https://cxb-pro.cread.com/cx/new/phindexys\n//可用详情页url：\nhttps://readbook-service-freebook.cread.com/cx/bookDetailYS?bookid={{$.id}}\nhttps://readbook-service-freebook.cread.com/reader-book/details?bookId={{$.id}}\nhttps://cxb-pro.cread.com/cx/book/recommend,{\n  \"body\": \"bookId={{$.id}}&cnid=10013&type=2\",\n  \"method\": \"POST\"\n}\n",
    "bookSourceGroup": "免费",
    "bookSourceName": "️ 免费追书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://cxb-pro.cread.com@遇知",
    "customButton": false,
    "customOrder": 285,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\t\n\tbd=[\n\t[\"男频榜单\",\n[[\"好评榜\",\"904\"],[\"追更榜\",\"461\"],[\"热搜榜\",\"465\"],[\"飙升榜\",\"466\"],[\"新书榜\",\"467\"],[\"完结榜\",\"463\"]]],\n  [\"女频榜单\",\n[[\"好评榜\",\"905\"],[\"追更榜\",\"470\"],[\"热搜榜\",\"471\"],[\"飙升榜\",\"473\"],[\"新书榜\",\"468\"],[\"完结榜\",\"474\"]]],\n  [\"出版\",\n[[\"人气榜\",\"475\"]]]];\nbd.map([title,list]=>{\n   \tpush(\"❤\"+title+\"❤\",null,1,1);\t\t\t\t\t\t\t\t\t\n\t   list.map([title,bdid]=>{ \n\t   \t\t   url=`https://cxb-pro.cread.com/cx/new/rankList?uid=127995117&cnid=10013&bdid=${bdid}&name=${title}&index=1&pageSize=50&curpage=1`;     \n\t\t\t\tpush(title, url,1, 0.25); \n\t});\t\n\t});\n\t\ncb=[[\"文学小说\",\"3100\"],[\"经典名著\",\"3200\"],[\"经管励志\",\"3300\"],[\"生活休闲\",\"3400\"],[\"科普教育\",\"3600\"],[\"婚姻家庭\",\"3500\"],[\"亲子育儿\",\"3800\"],[\"百科工具\",\"3900\"]].map([title,flid]=>{ \n\t   \t\t   url=`https://cxb-pro.cread.com/cx/new/catelistnew?uid=127995117&cnid=10013&version=8.2.1&flid=${flid}&thirdCateId=0&sortType=1&bookStatus=0&wordnumType=0&pageSize=20&curpage={{page}}`;     \n\t\t\t\tpush(title, url,1, 0.25); \n\t});\n\t\nfl=[\n[\"男频\",\n[[\"都市\",\"1200\",[\"热血都市\",\"异术超能\",\"官场职场\"]],\n[\"东方玄幻\",\"1100\",[\"玄幻大陆\",\"洪荒传说\",\"异界时空\"]],\n[\"武侠仙侠\",\"1400\",[\"奇幻修真\",\"武侠国术\",\"古典仙侠\"]],\n[\"恐怖悬疑\",\"1800\",[\"悬疑冒险\",\"恐怖惊悚\",\"推理侦探\"]],\n[\"架空历史\",\"1500\",[\"架空王朝\",\"历史传记\",\"战争幻想\"]],\n[\"网游竞技\",\"1700\",[\"虚拟游戏\",\"游戏异界\",\"竞技小说\"]],\n[\"科幻未来\",\"1600\",[\"星际未来\",\"进化变异\",\"末世危机\"]],\n[\"西方玄幻\",\"1300\",[\"魔幻世界\",\"大陆争霸\",\"异类兽族\"]]]],\n[\"女频\",\n[[\"总裁豪门\",\"2400\",[\"豪门世家\",\"娱乐明星\"]],\n[\"古代言情\",\"2100\",[\"古色古香\",\"穿越架空\",\"宫闱宅斗\"]],\n[\"幻想言情\",\"2200\",[\"玄幻仙侠\",\"异族恋情\",\"魔幻精灵\"]],\n[\"现代言情\",\"2300\",[\"婚恋情缘\",\"商战职场\",\"民国风情\"]],\n[\"青春校园\",\"2500\",[\"校园纯情\",\"青涩年华\"]],\n[\"唯美同人\",\"2600\",[\"唯美小说\",\"同人小说\"]]]]\n];\n\nfl.map([title,list]=>{\n   \tpush(\"❤\"+title+\"分类❤\",null,1,1);\t\t\t\n\t\tlist.map([title,flid,list]=>{\t\t\t\n[[\"连载\",\"1\"],[\"完结\",\"3\"]].map([tit,status]=>{\t\t\t\n\tpush(title+\"♡\"+tit,null,1,1);\n\t   list.map((title,cid)=>{ \n\t   cid=Number(flid) + Number(cid)+1;\t\n\t   url=`https://cxb-pro.cread.com/cx/new/catelistnew?uid=127995117&cnid=10013&version=8.1.4&flid=${flid}&thirdCateId=${cid}&sortType=1&bookStatus=${status}&wordnumType=0&pageSize=20&curpage={{page}}`;     \n\t\t\t\tpush(title, url,1, 0.25); \n\t\t\t\t});\n\t});\n\t});\t\n\t});\n\t\nJSON.stringify(sort);",
    "header": "{\n \"uid\":\"127993993\",\n\t\"cnid\":\"10013\",\n\t\"version\":\"8.1.4\",\t\n\t\"umeng\":\"FreeZhuishu_huaweiyysc\",\n\t\"promotionChannelId\":\"10013\",\n\t\"packname\":\"com.mianfeizs.book\",\t\n\t\t\"oscode\":\"29\",\n\t\t\"vcode\":\"202\",\n\t\t\"channelId\":\"10013\",\n\t\t\"realChannelID\":\"10013\",\n\t\t\"appname\":\"mfzs\",\n\t\t\"platform\":\"android\", \"uuid\":\"7ceb256e090f080cd28ac296a1278112\"\n}",
    "lastUpdateTime": 1734942999829,
    "loginUrl": "",
    "respondTime": 1242,
    "ruleBookInfo": {
      "author": "$.authorName",
      "canReName": "",
      "coverUrl": "$.bookImg",
      "downloadUrls": "",
      "init": "$.data",
      "intro": "<br>\n🏅 评分：{{$.grade}}分\n🎗 标签：{{$.tags..name##\\s##，}}\n🔥 人气：{{$.popularity}}\n🕰 更新时间：{{$.lastUpdateChapterDate##\\s##🔸}}\n📂 简介：{{$.introduction}}##(^|[。！？]+[”」）】]?)##$1<br>\n",
      "kind": "{{$.bookStatus}}\n{{$.categoryName}}\n{{$.grade}}分\n{{$.lastUpdateChapterDate##\\s.*}}",
      "lastChapter": "$.lastUpdateChapterName",
      "name": "$.bookName",
      "tocUrl": "https://cxb-pro.cread.com/cx/itf/getvolume?bookId={{$.bookId}}",
      "wordCount": "$.wordCount"
    },
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$..dataList[*]",
      "bookUrl": "https://readbook-service-freebook.cread.com/reader-book/details?bookId={{$.bookid}}",
      "coverUrl": "$.cover",
      "intro": "$.intro",
      "kind": "{{$.categoryName}}\n{{java.getString('$.bookStatue')=='03'?'完结':'连载'}}\n{{$.grade}}分",
      "name": "$.newBookName",
      "wordCount": "$.wordCount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.list[*]",
      "bookUrl": "https://readbook-service-freebook.cread.com/reader-book/details?bookId={{$.id}}",
      "checkKeyWord": "绝世道君",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "{{$.categoryName}}\n{{java.getString('$.bookStatue')=='03'?'完结':'连载'}}\n{{$.grade}}分",
      "lastChapter": "",
      "name": "$.name",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": "$.list..bookChapters[*]",
      "chapterName": "$.name",
      "chapterUrl": "https://cxb-pro.cread.com:443/cx/itf/chapterRead?bookId={{$.bookid}}&chapterId={{$.id}}&full=0",
      "isVip": "",
      "isVolume": "",
      "updateTime": "{{java.timeFormat(java.getString('$.updateDate'))}} 字数:{{$.wordCount}}##/##-"
    },
    "searchUrl": "https://cxb-pro.cread.com/cx/searchbooks,{\n  \"body\": \"keyword={{key}}&pageNo={{page}}&version=8.1.4\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": " /*11.24 by:*/\n\t\n  uuid=java.randomUUID().toUpperCase();\n  time=Math.round(new Date()/1000);\n  \n  if(String(Params).match(/query/)){\n\t\tsn = `channel=fx0001&gid=1&nci=1&nsc=0&${Params}&timestamp=${time}&secret=QgkdrcUgsfS4MvwB`;}\n\t\t\n\t\telse if(String(Params).match(/groupname/)){\n\t\t\tsn = `channel=fx0001&cid=${cid}&isserial=0&limit=3000&nci=1&nsc=0&sort=hot&start=0&timestamp=${time}&wordcount=0%252C100000&secret=QgkdrcUgsfS4MvwB`;}\n\t\t\t\n\t\telse if(String(Params).match(/BD/)){\n\t\t\t  sn = `channel=fx0001&class_id=${cid}&limit=3000&nci=1&nsc=0&start=0&timestamp=${time}&secret=QgkdrcUgsfS4MvwB`;}\n\t\n\t\telse if(String(Params).match(/bid/)){\n\t\t\tsn = `${Params}&channel=fx0001&gid=1&nci=1&nsc=0&timestamp=${time}&secret=QgkdrcUgsfS4MvwB`;}\n\t\t\n\t\telse if(String(Params).match(/cid/)){\n\t\tsn = `bid=${bid}&channel=fx0001&chapterid=${cid}&gid=1&nci=1&nsc=0&timestamp=${time}&secret=QgkdrcUgsfS4MvwB`;}\n\t\t\n\t\tsign=java.md5Encode(sn).toUpperCase();\n   body=String(sn).replace(/\\&secret=QgkdrcUgsfS4MvwB/,'');\n   option={\"method\":\"POST\",\"body\":body};",
    "bookSourceGroup": "免费",
    "bookSourceName": "繁星小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://fapi.fanxxs.com/",
    "customButton": false,
    "customOrder": 286,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\t\n\tbd=[[\"男频\",[[\"留存\",\"6\"],[\"好评\",\"3\"],[\"人气\",\"1\"],[\"热评\",\"5\"]]],\n[\"女频\",[[\"留存\",\"12\"],[\"好评\",\"9\"],[\"人气\",\"7\"],[\"热评\",\"11\"]]]];\nbd.map([title,list]=>{\t\t\t\n\tParams = \"BD\";\n\t\tpush(title, null, 1, 1);\n\t   list.map([title,cid]=>{ \n\t   \t\teval(String(source.bookSourceComment));\n\t   \turl= `https://fapi.fanxxs.com/2/v8/top3/list.api?sign=${sign}&app=FXBook&vs=7.1.2&uuid=${uuid}&_t=${time}&app=FXBook&pbv=v1.0.28&channel=fx0001&os=Android,`+ JSON.stringify(option).replace(/start=0/,'start={{(page-1)*30}\\}');  \n\t\t\t\tpush(title, url, 1, 0.4); \n\t\t\t\t});\n\t});\n\t\tfl_url=\"https://fapi.fanxxs.com/v8/cate3/list.api?nsc=0&nci=1&app=FXBook&vs=7.1.2&uuid={{java.randomUUID().toUpperCase()}}&_t={{Math.round(new Date()/1000)}}&app=FXBook&pbv=v1.0.28&channel=fx0001&os=Android\";\nD=JSON.parse(java.ajax(fl_url)).data;\n\n [D[0],D[1]].map(Data=>{\n \tParams = JSON.stringify(Data);\n\tpush(Data.groupname, null, 1, 1);\nData.cate.map(($,index)=>{\n      title=$.name;\n     \tcid=$.cid;\n     \teval(String(source.bookSourceComment));\n\turl= `https://fapi.fanxxs.com/2/v8/book3/filter.api?app=FXBook&sign=${sign}&ml=10X&mf=XIAOMI&vs=7.1.2&uuid=${uuid}&_t=${time}&app=FXBook&pbv=v1.0.28&channel=fx0001&os=Android,`+ JSON.stringify(option).replace(/start=0/,'start={{(page-1)*30}\\}');\n \t\tif(index+1 <= Data.cate.length - Data.cate.length%3)\n\t\t\t {\tpush(title, url, 1, 0.25);}\n\t\t\t\telse{ push(title, url, 0, 0.29);}\n        });\n      });\nJSON.stringify(sort);",
    "header": "@js:\nJSON.stringify({\t\t\n\t\"Content-Type\":\"application/x-www-form-urlencoded\",\n\t\"Connection\":\"Keep-Alive\",\n\t\"Host\":\"fapi.fanxxs.com\",\n  \"User-Agent\":\"okhttp/3.14.9\"\n})",
    "lastUpdateTime": 1732518468418,
    "loginUrl": "",
    "respondTime": 4523,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.thumb",
      "init": "$.data",
      "intro": "{{$.description}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.catename}}\n{{java.getString('$.isserial')=='2'?'完结':'连载'}}\n{{java.timeFormatUTC(java.getString('$.updated')*1000,'yyyy-MM-dd',8)}}",
      "lastChapter": "$.lastchaptertitle",
      "name": "$.title",
      "tocUrl": "@js:\nParams = \"bid=\"+java.put('bid', '{{$.bid}}');\neval(String(source.bookSourceComment));\nurl =\"https://fapi.fanxxs.com/v8/book/chapter.api?vs=7.1.2&uuid=\"+uuid+\"&_t=\"+time+\"&app=FXBook&pbv=v1.0.28&channel=fx0001&os=Android&sign=\"+sign+\",\" + JSON.stringify(option);",
      "wordCount": "$.wordcount"
    },
    "ruleContent": {
      "content": "$.data.body"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data.books",
      "bookUrl": "@js:\nParams =  \"bid=\"+java.getString('$.bid');\neval(String(source.bookSourceComment));\n\nurl =\"https://fapi.fanxxs.com/2/v8/book3/detail.api?uuid=\"+uuid+\"&nsc=0&timestamp=\"+time+\"&channel=fx0001&bid=\"+Params+\"&nci=1&sign=\"+sign+\"&app=FXBook,\" + JSON.stringify(option);",
      "coverUrl": "$.thumb",
      "intro": "$.description",
      "kind": "{{$.catename}}\n{{java.getString('$.isserial')=='2'?'完结':'连载'}}",
      "name": "$.title",
      "wordCount": "$.wordcount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.search",
      "bookUrl": "@js:\nParams =  \"bid=\"+java.getString('$.bid');\neval(String(source.bookSourceComment));\n\nurl =\"https://fapi.fanxxs.com/2/v8/book3/detail.api?uuid=\"+uuid+\"&nsc=0&timestamp=\"+time+\"&channel=fx0001&bid=\"+Params+\"&nci=1&sign=\"+sign+\"&app=FXBook,\" + JSON.stringify(option);",
      "coverUrl": "$.thumb",
      "intro": "$.description",
      "kind": "$.catename",
      "name": "$.title",
      "wordCount": "$.wordcount"
    },
    "ruleToc": {
      "chapterList": "$.data.chapters",
      "chapterName": "$.title",
      "chapterUrl": "@js:\nbid = java.get('bid');\ncid = java.getString('$.id');\nParams =  \"cid=\"+java.getString('$.bid');\neval(String(source.bookSourceComment));\nurl =\"https://fapi.fanxxs.com/v8/book/content.api?timestamp=\"+time+\"&gid=1&bid=\"+bid+\"&channel=fx0001&chapterid=\"+cid+\"&uuid=\"+uuid+\"&sign=\"+sign+\"&app=FXBook,\" + JSON.stringify(option);",
      "updateTime": "{{java.timeFormatUTC(java.getString('$.time')*1000,'yyyy-MM-dd',8)}}"
    },
    "searchUrl": "@js:\nParams = \"query=\"+key;\neval(String(source.bookSourceComment));\nurl =\"https://fapi.fanxxs.com/server/v8/search?sign=\"+sign+\"&vs=7.1.2&uuid=\"+uuid+\"&_t=\"+time+\"&app=FXBook&pbv=v1.0.28&channel=fx0001&os=Android,\" + JSON.stringify(option);",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nBY:溪\n//类型:文件下载",
    "bookSourceGroup": "免费",
    "bookSourceName": "️趣书网",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.qushu.com",
    "bookUrlPattern": "https://www.qushu123.com/txt/?.*/txt/\\d+.html",
    "customButton": false,
    "customOrder": 287,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "————————⭕分类小说⭕————————\n书库::/all/<,index_{{page}}.html>\n排行::/hot/<,index_{{page}}.html>\n推荐::/recommendall/<,index_{{page}}.html>\n最新::/new/<,index_{{page}}.html>\n男生小说::/txt/nansheng/<,index_{{page}}.html>\n女生言情::/txt/yanqing/<,index_{{page}}.html>\n耽美同人::/txt/tongren/<,index_{{page}}.html>\n都市小说::/txt/dushi/<,index_{{page}}.html>\n玄幻奇幻::/txt/xuanhuan/<,index_{{page}}.html>\n武侠修真::/txt/xiuzhen/<,index_{{page}}.html>\n网游竞技::/txt/wangyou/<,index_{{page}}.html>\n历史军事::/txt/lishi/<,index_{{page}}.html>\n科幻灵异::/txt/kehuan/<,index_{{page}}.html>\n其他小说::/txt/qita/<,index_{{page}}.html>",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10;  Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1735089586155,
    "respondTime": 182450,
    "ruleBookInfo": {
      "author": "p.0@text",
      "coverUrl": "class.pic@img@src",
      "downloadUrls": "text.进入小说下载地址@href\n<js>\nurl=book.origin+result[0];\njava.ajax(url);\n</js>\ntext.TXT小说下载@href\n##$##,{\"type\": \"txt\"}",
      "intro": "class.con@text\n##(^|[。！？……]+[”」）……】]?)##$1<br>",
      "kind": "p.1:2@text##分类：|大小：",
      "name": "class.bookcover@h1@text"
    },
    "ruleContent": {},
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "p.1@text",
      "bookList": ".imgtextlist@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "class.pic@img@src",
      "intro": "p.4@text##简介：",
      "kind": "p.2:3@text##更新：|大小：|\\[|\\]",
      "name": "p.0@text##《|》"
    },
    "ruleToc": {},
    "searchUrl": "https://www.qushu123.com/e/search/index.php,{\n  \"body\": \"keyboard={{key}}&show=title,softsay,softwriter&tbname=download&tempid=1&Submit22=搜索\",\n  \"method\": \"POST\"\n}\n@js:\nso = String(result).replace(\"{{key}}\", key);\nvar url = java.connect(so)\n.raw().request().url();\nString(url).replace(/result.*searchid/,\n\t\"result/index.php?page={{page-1}}&searchid\");",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.bbiquge.net",
    "customButton": false,
    "customOrder": 288,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1751331522171,
    "respondTime": 1424,
    "ruleBookInfo": {
      "author": ".pt-info.0@a@text",
      "coverUrl": ".baseinfo@img@src",
      "init": "",
      "intro": ".intro@text",
      "kind": ".pt-info.1@a@text",
      "lastChapter": ".ptm-list-view-cell.0@text",
      "name": ".pt-name.0@a@text",
      "tocUrl": ".ptm-card-footer@a@href"
    },
    "ruleContent": {
      "content": ".chaptercontent@p@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".pt-info.0@a@text",
      "bookList": ".pt-novel",
      "bookUrl": ".pt-name@a@href",
      "checkKeyWord": "之上",
      "kind": ".pt-info.1@a@text",
      "lastChapter": ".ptm-text-cut@text",
      "name": ".pt-name@a@text"
    },
    "ruleToc": {
      "chapterList": ".ptm-list-view-cell",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.bbiquge8.net/search.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// http://download.yichnmedia.com\n// http://download.biqugexsapp.com\n// http://ddxs.xsappxz.com\n_path = {\n    DownApp: \"/client/version\",\n    GetHost: \"/client/config/value?key=landing_page_domain\",\n    LoginID: \"/auth/third; post; type=5&openid= ${R32} &firstBoot=1\"\n};\nsetv = (json) => source.setVariable(JSON.stringify(json, null, \"\\t\"));\ntry {\n    $ = JSON.parse(source.getVariable());\n} catch (err) {\n    $ = {\n        time: 20240202,\n        domains: [\n            // old aes\n            [\"longchunbajiao\", 0],\n            [\"yybhsl\", 0],\n            [\"wzyjxf\", 0],\n            [\"zjlzgg\", 0],\n            [\"sxwlyhzp\", 0],\n            [\"anwaben\", 0],\n            [\"basusan\", 0],\n            [\"myweipin\", 0],\n            [\"lemiyigou\", 0],\n            // new aes\n            [\"xingliangglobal\", 1],\n            [\"fangweicong\", 1],\n            [\"yuanxifayi\", 1],\n            [\"xqjcool\", 1],\n        ]\n    }\n    setv($);\n}\n_reg = /http:\\/\\/api\\.(.+)\\.com/i\ngetHost = i => {\n    [domain, uType] = $.domains[i];\n    [aesKey, Authorization] = [\n        [\"f041c49714d39908\", \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkubXl3ZWlwaW4uY29tXC9hdXRoXC90aGlyZCIsImlhdCI6MTcwNjg0NjM2NiwiZXhwIjoxODAwMTU4MzY2LCJuYmYiOjE3MDY4NDYzNjYsImp0aSI6IjRVbU5BZVpHQ1hvaGNpSEgiLCJzdWIiOjc3MDg5OSwicHJ2IjoiYTFjYjAzNzE4MDI5NmM2YTE5MzhlZjMwYjQzNzk0NjcyZGQwMTZjNSJ9.lOpKG-vWne5Ub8g6byvF53iQjldPUC1-BMoO-OuhOlA\"],\n        [\"4395daa50ad6baf7\", \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkueGluZ2xpYW5nZ2xvYmFsLmNvbVwvYXV0aFwvdGhpcmQiLCJpYXQiOjE3MDY4NjA2NzcsImV4cCI6MTgwMDE3MjY3NywibmJmIjoxNzA2ODYwNjc3LCJqdGkiOiJxdXBGbWo5cnJRMHFoTFVIIiwic3ViIjozMjY4ODcsInBydiI6ImExY2IwMzcxODAyOTZjNmExOTM4ZWYzMGI0Mzc5NDY3MmRkMDE2YzUifQ.CQsDsiDJyyriPmJuT6A38KIvGgq6BEOMWl8H5plqArQ\"]\n    ][uType];\n    headers = \",\" + JSON.stringify({\n        \"headers\": {\n            \"client-device\": java.md5Encode(aesKey),\n            \"Authorization\": Authorization\n        }\n    });\n    host = `http://api.${domain}.com`;\n}\ngetData = (uri) => {\n    url = host + uri + headers;\n    // java.log(url);\n    data = java.ajaxAll([url])[0];\n}\nvuri = \"/search?keyword=深空彼岸\";\ntime = +java.timeFormatUTC(new Date(), 'yyyyMMdd', 8);\narr1 = []; // 成功\narr2 = []; // 失败\narr3 = []; // 新增\nif ($.time < time) {\n    java.toast(\"检测更新中\");\n    try {\n        for (i in $.domains) {\n            arr1.push($.domains[i]);\n            arr2.push($.domains[i]);\n            getHost(i);\n            try {\n                getData(vuri); //校验搜索\n                if (data.code() == 200) {\n                    arr2.length = arr2.length - 1;\n                    try {\n                        getData(_path.GetHost);\n                        domain = JSON.parse(data.body())\n                            .data.landingPageDomain;\n                        arr3.push([\n                            domain.match(_reg)[1],\n                            uType\n                        ]);\n                    } catch (err) {}\n                } else {\n                    arr1.length = arr1.length - 1;\n                }\n            } catch (err) {\n                arr1.length = arr1.length - 1;\n            }\n        }\n        array = arr1.concat(arr3);\n        $.domains = array.filter(function(item, index) {\n            return array.findIndex(function(value) {\n                return value[0] === item[0] && value[1] === item[1];\n            }) === index && arr2.findIndex(function(value) {\n                return value[0] === item[0] && value[1] === item[1];\n            })\n        });\n        $.time = time\n        setv($);\n        java.toast(\"接口更新成功\");\n    } catch (err) {\n        java.toast(\"未知错误：\" + err);\n    }\n}\nrun = Path => {\n    for (i in $.domains) {\n        getHost(i);\n        try {\n            getData(java.hexDecodeToString(result));\n            if (data.code() == 200)\n                return $$ = JSON.parse(data.body())[Path];\n        } catch (err) {}\n    }\n    return $$ = {};\n}\neurl = Path => `data:;base64,${java.base64Encode(Path)},{\"type\":\"maoyankanshu\"}`;",
    "bookSourceGroup": "免费",
    "bookSourceName": "🐈 猫眼看书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://download.maoyankanshu.la",
    "customButton": false,
    "customOrder": 290,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>sort.push({\n\t\t\t\ttitle: title,\n\t\t\t\turl: url,\n\t\t\t\tstyle: {\n\t\t\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t\t\t}\n\t\t\t});\n$$=(a,b,c)=>{\n\t\turi = c ? `/module/${a}channel=${b}` : `/novel?sort=${a}&categoryId=${b}`;\n\t\treturn `data:;base64,{{java.base64Encode(\"${uri}&page=\"+page)}\\},{\"type\":\"maoyankanshu\"}`;\n\t}\n;[\n\t\t[\"男\",[[\"玄幻\",\"lejRej\"],[\"武侠\",\"nel5aK\"],[\"都市\",\"mbk5ez\"],[\"仙侠\",\"vbmOeY\"],[\"军事\",\"penRe7\"],[\"历史\",\"xbojag\"],[\"游戏\",\"mep2bM\"],[\"科幻\",\"zbq2dp\"],[\"轻小说\",\"YerEdO\"]]],\n\t\t[\"女\",[[\"现代言情\",\"9avmeG\"],[\"古代言情\",\"DdwRb1\"],[\"幻想言情\",\"7ax9by\"],[\"青春校园\",\"Pdy7aQ\"],[\"唯美纯爱\",\"kazYeJ\"],[\"同人衍生\",\"9aAOdv\"]]]\n].map(([title,list],channel)=>{\n\t\tchannel++;\n\t\tpush(\"༺ˇ»`ʚ \"+title+\"生频道 ɞ´«ˇ༻\",null,1);\n\t\tpush(\"༺ˇ»`ʚ 榜单 ɞ´«ˇ༻\",null,1);\n\t\t[\"必读榜\",\"完本榜\",\"更新榜\",\"搜索榜\",\"潜力榜\",\"评论榜\",\"人气完本\",\"新书速递\"].map((title,i)=>{\n\t\t\t\ti++\n\t\t\t\tif(i<7){\n\t\t\t\t\t\ti = \"rank?type=\"+i+\"&\";\n\t\t\t\t\t}\n\t\t\t\telse{\n\t\t\t\t\t\ti = i<8?\"mep2bM?\":\"YerEdO?\";\n\t\t\t\t\t}\n\t\t\t\tpush(title,$$(i,channel,1),0.25);\n\t\t\t});\n\t\tpush(\"༺ˇ»`ʚ 分类 ɞ´«ˇ༻\",null,1);\n\t\tlist.map([title,B]=>{\n\t\t\t\tpush(\"༺ \"+title+\" ༻\",$$(1,B,0),1);\n\t\t\t\t[\"热度\",\"更新\",\"评分\",\"新书\"].map((title,A)=>{\n\t\t\t\t\t\tA++;\n\t\t\t\t\t\t[\"[\"+title+\"]\",\"连载\",\"完结\"].map((title,C)=>{\n\t\t\t\t\t\t\t\tC=C?\"&isComplete=\"+(C-1):\"\";\n\t\t\t\t\t\t\t\tpush(title,$$(A,B+C,0),0.25);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t});\n\t}); \nJSON.stringify(sort);",
    "header": "{\n    \"client-version\": \"2.3.0\",\n    \"client-brand\": \"HONOR\",\n    \"client-source\": \"android\",\n    \"client-name\": \"app.maoyankanshu.novel\",\n    \"User-Agent\": \"okhttp/4.9.2\"\n}",
    "lastUpdateTime": 1745853264143,
    "loginUrl": "",
    "respondTime": 10429,
    "ruleBookInfo": {
      "author": "$.authorName",
      "coverUrl": "$.cover",
      "init": "@js:\neval(String(source.bookSourceComment));\nrun(\"data\");\n$$.tocUrl = eurl('/novel/'+$$.novelId+'/chapters');\nJSON.stringify($$);",
      "intro": "{{'\\n&lrm;\\n'}}🏷️ 标签：{{$..className&&$..tagName##\\n##, }}\n{{'\\n&lrm;\\n'}}📑 简介：{{$.summary}}",
      "kind": "{{$.averageScore}}分\n{{$..className}}\n连载中{{$.isComplete}}已完结\n{{$.lastChapter.decTime}}\n##连载中1|0已完结",
      "lastChapter": "{{$.lastChapter.chapterName}} • {{$.lastChapter.decTime}}",
      "name": "$.novelName",
      "tocUrl": "$.tocUrl",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "@js:\neval(String(source.bookSourceComment));\nrun(\"content\");",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "@js:\neval(String(source.bookSourceComment));\nrun(\"data\").map(($$,i)=>{\n\n$$.bookUrl = eurl('/novel/'+$$.novelId);\nreturn JSON.stringify($$);\n});",
      "bookUrl": "$.bookUrl",
      "coverUrl": "$.cover",
      "intro": "$.summary||$.rankInfo",
      "kind": "{{$.averageScore}}分\n{{$..className}}\n连载中{{$.status}}已完结\n{{$.lastChapter.decTime||$.createdAt##\\s.*}}\n##连载中2|1已完结|连载中已完结",
      "lastChapter": "{{$.lastChapter.chapterName}} • {{$.lastChapter.decTime}}##^•$",
      "name": "$.novelName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "@js:\neval(String(source.bookSourceComment));\n\nList = run(\"data\").list;\n\nCipher = java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\", aesKey, \"0123456789abcdef\");\n\nList.map($$=>{\n\tpath = Cipher.decryptStr($$.path);\ntry{\n\tpath = String(path).split(_reg)[2];\n}catch(err){}\n\treturn {\n\t\tname: $$.chapterName,\n\t\tpath: eurl(path),\n\t\tinfo: `章节字数：${$$.wordNum}　更新时间：${$$.updatedAt}`\n\t\t}\n});",
      "chapterName": "name",
      "chapterUrl": "path",
      "updateTime": "info"
    },
    "searchUrl": "data:;base64,{{java.base64Encode(\"/search?keyword=\"+key+\"&page=\"+page)}},{\"type\":\"maoyankanshu\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "趣悦小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://vreader.vivo.com.cn/",
    "customButton": false,
    "customOrder": 291,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"男频\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"主题\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"都市\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"都市\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"玄幻\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"武侠\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"奇幻\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"悬疑\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"灵异\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"仙侠\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"历史\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"科幻\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"游戏\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"同人\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"出版\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"出版\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情节\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"穿越\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"穿越\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"重生\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"乡村\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"乡村\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"系统\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"系统\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神豪\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"神豪\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"校园\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"凡人流\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"凡人流\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"鉴宝\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"鉴宝\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"洪荒\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"洪荒\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"末世\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"末世\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"诸天流\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"诸天流\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"签到\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"签到\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"热血\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强者归来\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"强者归来\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"异能\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"异能\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市生活\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"都市生活\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"外卖\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"外卖\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"直播\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"直播\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"聊天群\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"聊天群\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵气复苏\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"灵气复苏\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"无限流\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"无限流\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"美食\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"美食\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}},{\"title\":\"召唤流\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"召唤流\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}},{\"title\":\"角色\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"赘婿\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"赘婿\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学生\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"重生\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"兵王\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"兵王\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"天骄\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"天骄\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"剑仙\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"剑仙\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙帝\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"仙帝\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玩家\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"玩家\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奶爸\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"奶爸\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"保安\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"保安\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"风流\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"风流\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"扮猪吃虎\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"扮猪吃虎\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"医生\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"医生\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神医\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"6087874\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675860531433\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"0\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"神医\\\",\\\"size\\\":20,\\\"page\\\":{{page-1}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}},{\"title\":\"女频\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"主题\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"现代言情\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"现代言情\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"豪门总裁\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"豪门总裁\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"古代言情\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"幻想言情\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"幻想言情\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宅斗\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"宅斗\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"娱乐圈\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"娱乐圈\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"农女\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"农女\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"虐文\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"虐文\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"校园\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宫斗\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"宫斗\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"灵异\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"同人\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情节\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"甜宠\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"甜宠\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"重生\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌宝\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"萌宝\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"穿越\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女尊女强\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"女尊女强\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"马甲\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"马甲\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"代嫁\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"代嫁\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"快穿\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"快穿\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"隐婚\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"隐婚\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职场\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"职场\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"师徒\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"师徒\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"错嫁\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"错嫁\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"角色\",\"url\":\"\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":1}},{\"title\":\"总裁\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"总裁\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王妃\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"王妃\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"王爷\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"王爷\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"嫡女\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"嫡女\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"神医\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"神医\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"弃妇\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"弃妇\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"庶女\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"庶女\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"将军\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"将军\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"魔君\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"魔君\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女帝\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"女帝\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"鬼王\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"鬼帝\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"宫女\",\"url\":\"https://vreader.vivo.com.cn/book/store/labels/landing/page.do,{'method':'POST','body':'{\\\"model\\\":\\\"MI PAD 4\\\",\\\"imei\\\":\\\"123456789012345\\\",\\\"clientVersion\\\":\\\"121020\\\",\\\"elapsedtime\\\":\\\"8889774\\\",\\\"sysver\\\":\\\"\\\",\\\"nt\\\":\\\"wifi\\\",\\\"ver\\\":\\\"121020\\\",\\\"u\\\":\\\"\\\",\\\"pver\\\":\\\"0\\\",\\\"resolution\\\":\\\"1920*1200\\\",\\\"bookVersion\\\":\\\"30800\\\",\\\"vreaderVersion\\\":121020,\\\"pixel\\\":\\\"600\\\",\\\"av\\\":\\\"27\\\",\\\"adrVerName\\\":\\\"8.1.0\\\",\\\"timestamp\\\":\\\"1675863333329\\\",\\\"openudid\\\":\\\"b443cebc6f614746\\\",\\\"udid\\\":\\\"\\\",\\\"channel\\\":\\\"1\\\",\\\"personalRecommend\\\":0,\\\"bookshelfBookIds\\\":[\\\"N1000000000000083458\\\",\\\"N1000000000000122315\\\",\\\"N0600000000003317821\\\"],\\\"bookShelfListenBookIds\\\":[],\\\"packageName\\\":\\\"com.vivo.vreader\\\",\\\"featureValues\\\":\\\"2\\\",\\\"androidId\\\":\\\"b443cebc6f614746\\\",\\\"label\\\":\\\"宫女\\\",\\\"size\\\":20,\\\"page\\\":{{page-0}},\\\"completeStatus\\\":2}'}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; Android 8.1.0; MI PAD 4 Build/OPM1.171019.019; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/71.0.3578.99 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1743555754559,
    "respondTime": 1176,
    "ruleBookInfo": {
      "author": "$.author@put:{bid:bookId}",
      "coverUrl": "$.cover",
      "init": "$.data",
      "intro": "$.description",
      "kind": "{{java.timeFormat(java.getString('$.latestChapterTimestamp'))}}\n{{$.typeLabel}}\n{{$.categoryLabel}}##/##-",
      "lastChapter": "$.latestChapter",
      "name": "$.title",
      "tocUrl": "https://vreader.vivo.com.cn/book/catalogue.do,{'method': 'POST',\n'body': '{\"model\":\"MI PAD 4\",\"imei\":\"\",\"clientVersion\":\"121020\",\"elapsedtime\":\"981277\",\"sysver\":\"\",\"nt\":\"wifi\",\"ver\":\"121020\",\"u\":\"\",\"pver\":\"0\",\"resolution\":\"1920*1200\",\"sessionId\":\"11901470641675854550446\",\"pixel\":\"320\",\"av\":\"27\",\"adrVerName\":\"8.1.0\",\"timestamp\":\"1675855424862\",\"browserSystem\":\"1\",\"browserSubSystem\":\"1\",\"personalRecommend\":\"1\",\"bookVersion\":\"30800\",\"vreaderVersion\":\"121020\",\"packageName\":\"com.vivo.vreader\",\"udid\":\"\",\"openudid\":\"b443cebc6f614746\",\"bookshelfBookIds\":[],\"bookShelfListenBookIds\":[],\"featureValues\":\"2\",\"bookId\":\"{{$.bookId}}\"}'\n}",
      "wordCount": "$.wordCount"
    },
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$..bookList[*]",
      "bookUrl": "https://vreader.vivo.com.cn/book/detail.do,{'method': 'POST',\n'body': '{\"model\":\"MI PAD 4\",\"imei\":\"\",\"clientVersion\":\"121020\",\"elapsedtime\":\"980289\",\"sysver\":\"\",\"nt\":\"wifi\",\"ver\":\"121020\",\"u\":\"\",\"pver\":\"0\",\"resolution\":\"1920*1200\",\"sessionId\":\"11901470641675854550446\",\"pixel\":\"320\",\"av\":\"27\",\"adrVerName\":\"8.1.0\",\"timestamp\":\"1675855423873\",\"browserSystem\":\"1\",\"browserSubSystem\":\"1\",\"personalRecommend\":\"1\",\"bookVersion\":\"30800\",\"vreaderVersion\":\"121020\",\"packageName\":\"com.vivo.vreader\",\"udid\":\"\",\"openudid\":\"b443cebc6f614746\",\"bookshelfBookIds\":[],\"bookShelfListenBookIds\":[],\"featureValues\":\"2\",\"bookId\":\"{{$.bookId}}\",\"order\":1}'\n}",
      "checkKeyWord": "",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "{{$.typeLabel}}\n{{$.categoryLabel}}",
      "lastChapter": "",
      "name": "$.title",
      "wordCount": "$.wordCount"
    },
    "ruleToc": {
      "chapterList": "$.data[*]",
      "chapterName": "$.title",
      "chapterUrl": "https://vreader.vivo.com.cn/book/chapter/content.do,{'method': 'POST',\n'body': '{\"model\":\"MI PAD 4\",\"imei\":\"\",\"clientVersion\":\"121020\",\"elapsedtime\":\"981290\",\"sysver\":\"\",\"nt\":\"wifi\",\"ver\":\"121020\",\"u\":\"\",\"pver\":\"0\",\"resolution\":\"1920*1200\",\"sessionId\":\"11901470641675854550446\",\"pixel\":\"320\",\"av\":\"27\",\"adrVerName\":\"8.1.0\",\"timestamp\":\"1675855424879\",\"browserSystem\":\"1\",\"browserSubSystem\":\"1\",\"personalRecommend\":\"1\",\"bookVersion\":\"30800\",\"vreaderVersion\":\"121020\",\"packageName\":\"com.vivo.vreader\",\"udid\":\"\",\"openudid\":\"b443cebc6f614746\",\"bookshelfBookIds\":[],\"bookShelfListenBookIds\":[],\"featureValues\":\"2\",\"bookId\":\"@get:{bid}\",\"order\":\"{{$.order}}\"}'\n}",
      "updateTime": "字数::{{$.wordCount}}"
    },
    "searchUrl": "https://vreader.vivo.com.cn/book/search.do,{'method': 'POST',\n'body': '{\"model\":\"MI PAD 4\",\"imei\":\"123456789012345\",\"clientVersion\":\"121020\",\"elapsedtime\":\"343343\",\"sysver\":\"\",\"nt\":\"wifi\",\"ver\":\"121020\",\"u\":\"\",\"pver\":\"0\",\"resolution\":\"1920*1200\",\"bookVersion\":\"30800\",\"vreaderVersion\":121020,\"pixel\":\"320\",\"av\":\"27\",\"adrVerName\":\"8.1.0\",\"timestamp\":\"1675854786926\",\"openudid\":\"b443cebc6f614746\",\"udid\":\"\",\"channel\":\"0\",\"personalRecommend\":1,\"bookshelfBookIds\":[],\"bookShelfListenBookIds\":[],\"packageName\":\"com.vivo.vreader\",\"featureValues\":\"2\",\"androidId\":\"b443cebc6f614746\",\"page\":0,\"size\":20,\"keyword\":\"{{key}}\",\"tab\":0}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "万层中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.oneceng.com",
    "customButton": false,
    "customOrder": 292,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"作品分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"全部\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"都市异能\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_1_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑灵异\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_2_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_3_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠修真\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_4_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"军事历史\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_5_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_6_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻未来\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_7_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_8_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_9_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"灵异惊悚\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_10_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠情缘\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_11_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"浪漫青春\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_12_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想言情\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_13_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美同人\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_14_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"书名首字母\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"不限\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_0_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"[A]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_A_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[B]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_B_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[C]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_C_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[D]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_D_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[E]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_E_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[F]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_F_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[G]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_G_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[H]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_H_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[I]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_I_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[J]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_J_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[K]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_K_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[L]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_L_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[M]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_M_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[N]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_N_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[O]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_O_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[P]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_P_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[Q]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_Q_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[R]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_R_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[S]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_S_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[T]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_T_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[U]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_U_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[V]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_V_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[W]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_W_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[X]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_X_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[Y]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_Y_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"[Z]\",\"url\":\"http://www.oneceng.com/shuku/lastupdate_0_0_0_0_Z_0_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}\n]",
    "lastUpdateTime": 1733520270546,
    "respondTime": 6275,
    "ruleBookInfo": {
      "author": "span a@text",
      "coverUrl": "a img@src",
      "intro": ".tabvalue td@text&&.tabvalue div@text",
      "kind": "td[width]:nth-of-type(1)@text",
      "lastChapter": "div.title@text",
      "name": ".divbox > div > div > span:nth-of-type(1)@text",
      "tocUrl": "a.catalogbtn@href"
    },
    "ruleContent": {
      "content": "div.acontent@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "td:nth-of-type(3)@text",
      "bookList": "#jieqi_page_contents tr",
      "bookUrl": "a.pop@href",
      "coverUrl": "a.pop@href<js>java.ajax(result)</js>a img@src",
      "kind": "td:nth-of-type(6)@text",
      "lastChapter": "#jieqi_page_contents td:nth-of-type(2) a@text",
      "name": "a.pop@text",
      "wordCount": "td:nth-of-type(4)@text"
    },
    "ruleSearch": {
      "author": "div.c_tag:nth-of-type(2) a@text",
      "bookList": "div.c_row",
      "bookUrl": ".c_subject a@href",
      "checkKeyWord": "我的",
      "coverUrl": "a img@src",
      "intro": "div.c_description@text",
      "kind": "div.c_tag:nth-of-type(2) span:nth-of-type(4)@text&&span:nth-of-type(n+7)@text",
      "lastChapter": "div:nth-of-type(4) .c_value a@text",
      "name": ".c_subject a@text",
      "wordCount": "span:nth-of-type(6)@text"
    },
    "ruleToc": {
      "chapterList": "dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.oneceng.com/modules/article/search.php,{\n\"method\":\"POST\",\n\"charset\":\"GBK\",\n\"body\":\"searchtype=articlename&searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "潇湘书院",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xxsy.net/",
    "bookUrlPattern": "https://www.xxsy.net/book/\\d+",
    "customButton": false,
    "customOrder": 293,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"💮                  分类                  💮\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"古代言情\",\"url\": \"/category/1.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"现代言情\",\"url\": \"/category/2.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"玄幻仙侠\",\"url\": \"/category/3.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"浪漫青春\",\"url\": \"/category/6.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"悬       疑\",\"url\": \"/category/5.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"改编频道\",\"url\": \"/ip.html\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"男生频道\",\"url\": \"/search?channel=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"💮                  排行榜                  💮\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"潇湘票榜\",\"url\": \"/rank/xxyuepiao\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"新书榜\",\"url\": \"/rank/new\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"畅销榜\",\"url\": \"/rank/bestsales\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完结榜\",\"url\": \"/rank/finish\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"阅读榜\",\"url\": \"/rank/reading\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"收藏榜\",\"url\": \"/rank/collections\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}}\n]",
    "header": "{\n\"user-agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36\",\n\"Accept-Language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,\n\"Referer\": \"https://www.xxsy.net/\",\n\"Host\": \"www.xxsy.net\"\njava.getCookie(\"https://www.xxsy.net/\", null) => userid=1234;pwd=adbcdjava.getCookie(\"https://www.xxsy.net/\", \"userid\") => 123\n}",
    "lastUpdateTime": 1753975379451,
    "loginUi": "",
    "loginUrl": "https://www.xxsypro.com/personal",
    "respondTime": 2472,
    "ruleBookInfo": {
      "author": "@get:{B}##[文\\ / ]*",
      "coverUrl": "@get:{G}",
      "init": "@put:{\nA:\"class.title@h1@text\",\nB:\"class.title@span@text\",\nC:\"class.sub-cols@span!-1@text&&class.sub-tags@text\",\nD:\"class.sub-data@span@text\",\nE:\"class.sub-newest@p.1@a@text\",\nF:\"id.book_intro@text\",\nG:\"class.book-cover.0@img.0@src\",\nH:\"class.box-hd click-hd@h3@a@href\"\n}",
      "intro": "@get:{F}",
      "kind": "@get:{C}##类别：",
      "lastChapter": "@get:{E}",
      "name": "@get:{A}",
      "tocUrl": "@get:{H}",
      "wordCount": "@get:{D}"
    },
    "ruleContent": {
      "content": "id.content@p@text||id.content@html",
      "nextContentUrl": "text.下一章@href"
    },
    "ruleExplore": {
      "author": "class.info@p.0@text||dt@p.0@text##[ \\/ 著文]*|[·\\d+].*",
      "bookList": "class.book-list cl@li&&class.book-show@dt&&class.unusual-list cl@li&&class.seria-box@a&&class.flex flex-wrap relative@a",
      "bookUrl": "li@a@href||dt@a@href||class.seria-box@a@href||class.flex@href",
      "coverUrl": "img@data-src||class.book@img@src||class.book-cover@img@src",
      "intro": "class.info@p.1@text||dt@p.1@text||class.row2@text",
      "kind": "class.row1@text",
      "name": "class.info@h4@text||dt@h4@text||class.text-t34@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "class.subtitle@a.0@text##[\\ ]*",
      "bookList": "class.result-list@ul@li",
      "bookUrl": "li@a@href",
      "checkKeyWord": "簪星",
      "coverUrl": "img@src",
      "intro": "class.info@p.0@text",
      "kind": "{{@@class.subtitle@text}}##{{@@class.subtitle@a.0@text}}",
      "name": "class.info@h4@a.0@text",
      "wordCount": "class.info@p.1@text"
    },
    "ruleToc": {
      "chapterList": "class.works-main cl@class.profile-main@ul@li",
      "chapterName": "li@text",
      "chapterUrl": "li@a@href"
    },
    "searchUrl": "https://www.xxsy.net/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "绾书文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.wanshu.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 294,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "月点击榜::/novel/libraryList?page={{page}}&pageSize=20&order=mouth_view_count\n总字数榜::/novel/libraryList?page={{page}}&pageSize=20&order=word_num\n最近更新::/novel/libraryList?page={{page}}&pageSize=20&order=update\n都市言情::/novel/libraryList?page={{page}}&pageSize=20&category_id=1\n时空穿越::/novel/libraryList?page={{page}}&pageSize=20&category_id=2\n总裁豪门::/novel/libraryList?page={{page}}&pageSize=20&category_id=3\n玄幻仙侠::/novel/libraryList?page={{page}}&pageSize=20&category_id=4\n浪漫青春::/novel/libraryList?page={{page}}&pageSize=20&category_id=5\n悬疑灵异::/novel/libraryList?page={{page}}&pageSize=20&category_id=6\n都市异能::/novel/libraryList?page={{page}}&pageSize=20&category_id=7",
    "lastUpdateTime": 1732962702090,
    "loginUrl": "https://account.wanshu.com/login",
    "respondTime": 1779,
    "ruleBookInfo": {
      "intro": ""
    },
    "ruleContent": {
      "content": "data.content",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "data",
      "bookUrl": "/novel/chapterList?page=1&pageSize=19999&novel_id={{$.novel_id}}",
      "coverUrl": "cover",
      "intro": "description",
      "kind": "complete_status&&category_name",
      "lastChapter": "latest_chapter_update_time&&latest_chapter##\\h[\\d:]+\\d\\n##▪",
      "name": "name",
      "wordCount": "word_num"
    },
    "ruleToc": {
      "chapterList": "data",
      "chapterName": "name",
      "chapterUrl": "/novel/chapterInfo?novel_chapter_id={{$.id}}",
      "isVip": "¥{{$.is_free}}##¥true",
      "updateTime": ""
    },
    "searchUrl": "/novel/search?pageSize=100&kw={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "日语\n使用记得开魔法。目前只支持搜索书名，最好直接去搜全名。只搜部分的话会容易被海量无关结果淹没。。。\n还待添加的功能：支持卷名、支持简介分段、搜索结果二次筛选、搜索为空时给予反馈",
    "bookSourceGroup": "免费",
    "bookSourceName": "风扇枕说（日+）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://kakuyomu.jp/",
    "customButton": false,
    "customOrder": 296,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759754302378,
    "respondTime": 3003,
    "ruleBookInfo": {
      "intro": "class.CollapseTextWithKakuyomuLinks_lineHeight-m__sr9Tu@text"
    },
    "ruleContent": {
      "content": "class.widget-episode-inner@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.WorkTitle_workLabelAuthor__Kxy5E@children@text",
      "bookList": "class.NewBox_borderSize-bb-m__wEqyb",
      "bookUrl": "class. Gap_size-4s__F67Nf Gap_direction-x__RsHk8@tag.a@href",
      "checkKeyWord": "僕",
      "kind": "class.Meta_metaTruncatedItem__X_PoQ@text",
      "name": "class. Gap_size-4s__F67Nf Gap_direction-x__RsHk8@text",
      "wordCount": "class.WorkMetaBasicInformation_bg-none__s41TO@children@children@class.Meta_metaItemWrapper__JzV2P.3@children@text"
    },
    "ruleToc": {
      "chapterList": "class.WorkTocSection_link__ocg9K",
      "chapterName": "class.WorkTocSection_title__H2007@text##《　|　》",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/search?q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "快看漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.kuaikanmanhua.com#Haxc1107",
    "customButton": false,
    "customOrder": 297,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✿　　　　　　　榜    单　　　　　　　✿\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"国漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=9\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=10\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=11\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=6\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=5\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=7\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=8\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新作榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=2\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=12\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"口碑榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=3\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"畅销榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=4\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　状    态　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"推荐\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最火热\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=2&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新上架\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=3&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"连载中\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=1&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"已完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=2&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►免费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=1&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►付费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=2&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►抢先看\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=3&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　分    类　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"恋爱\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=20&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强剧情\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=82&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古风\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=46&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=47&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=22&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"唯美\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=58&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=67&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=57&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=60&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大女主\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=77&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=40&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=80&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌系\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=62&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=32&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=63&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞笑\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=71&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=48&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"正能量\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=54&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总裁\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=52&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"投稿\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=76&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 SearchCraft/3.6.5 (Baidu; P1 9.0)\"\n}",
    "lastUpdateTime": 1778811284269,
    "loginUrl": "http://m.kuaikanmanhua.com/mob/booklist",
    "respondTime": 2015,
    "ruleBookInfo": {
      "author": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].topicInfo.user.nickname",
      "coverUrl": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.vertical_image_url",
      "intro": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.description",
      "kind": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.tags",
      "lastChapter": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.update_status.replace(/^.*?已更/,\"\")",
      "name": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.title"
    },
    "ruleContent": {
      "content": "class.ComicPics@img@html##data-src##src",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author_name",
      "bookList": "$.data.topics||$.data.cards||$.hits.topicMessageList||$.hits",
      "bookUrl": "$.id||$.topic_id@js:\"http://m.kuaikanmanhua.com/mobile/\"+result+\"/list/\"",
      "coverUrl": "$.vertical_image_url||$.image_url||$.cover_image_info.images[*].url",
      "intro": "description",
      "kind": "$.category||$.recommend_tag[1].title",
      "lastChapter": "$.latest_comic_title",
      "name": "$.title.text||$.title"
    },
    "ruleToc": {
      "chapterList": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].comicList[*]",
      "chapterName": "$.title",
      "chapterUrl": "$.id\n@js:\"http://m.kuaikanmanhua.com/mobile/comics/\"+result",
      "isVip": "$.is_free\n@js:result=='true'?false:true",
      "updateTime": "@js:java.timeFormat({{$.updated_at}})"
    },
    "searchUrl": "http://m.kuaikanmanhua.com/search/mini/topic/title_and_author?page={{page}}&size=24&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "漫客栈子",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.mkzhan.com#♤Haxc",
    "bookUrlPattern": "https://m.mkzhan.com/\\d+/",
    "customButton": false,
    "customOrder": 298,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "修真::https://www.mkzhan.com/category/?theme_id=2&page={{page}}\n恋爱::https://www.mkzhan.com/category/?theme_id=3&page={{page}}\n校园::https://www.mkzhan.com/category/?theme_id=4&page={{page}}\n冒险::https://www.mkzhan.com/category/?theme_id=5&page={{page}}\n搞笑::https://www.mkzhan.com/category/?theme_id=6&page={{page}}\n生活::https://www.mkzhan.com/category/?theme_id=7&page={{page}}\n热血::https://www.mkzhan.com/category/?theme_id=8&page={{page}}\n架空::https://www.mkzhan.com/category/?theme_id=9&page={{page}}\n后宫::https://www.mkzhan.com/category/?theme_id=10&page={{page}}\n耽美::https://www.mkzhan.com/category/?theme_id=11&page={{page}}\n玄幻::https://www.mkzhan.com/category/?theme_id=12&page={{page}}\n悬疑::https://www.mkzhan.com/category/?theme_id=13&page={{page}}\n恐怖::https://www.mkzhan.com/category/?theme_id=14&page={{page}}\n灵异::https://www.mkzhan.com/category/?theme_id=15&page={{page}}\n动作::https://www.mkzhan.com/category/?theme_id=16&page={{page}}\n科幻::https://www.mkzhan.com/category/?theme_id=17&page={{page}}\n战争::https://www.mkzhan.com/category/?theme_id=18&page={{page}}\n古风::https://www.mkzhan.com/category/?theme_id=19&page={{page}}\n穿越::https://www.mkzhan.com/category/?theme_id=20&page={{page}}\n竞技::https://www.mkzhan.com/category/?theme_id=21&page={{page}}\n百合::https://www.mkzhan.com/category/?theme_id=22&page={{page}}\n励志::https://www.mkzhan.com/category/?theme_id=23&page={{page}}\n同人::https://www.mkzhan.com/category/?theme_id=24&page={{page}}\n真人::https://www.mkzhan.com/category/?theme_id=26&page={{page}}\n霸总::https://www.mkzhan.com/category/?theme_id=1&page={{page}}",
    "lastUpdateTime": 1733776999673,
    "respondTime": 4937,
    "ruleBookInfo": {
      "author": "class.name@text",
      "intro": "class.intro-total@text",
      "kind": "class.comic-status@tag.span.0@text##题材:",
      "lastChapter": "class.update-time@text",
      "name": "class.comic-title.0@text"
    },
    "ruleContent": {
      "content": "$..image@js:result.split(\"\\n\").map(x=>'<img src=\\\"'+x+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": "class.cate-comic-list clearfix@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@text"
    },
    "ruleSearch": {
      "bookList": "class.search-comic-list@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "-class.chapter__list-box@tag.li",
      "chapterName": "a@text",
      "chapterUrl": ".j-chapter-link@data-chapterid\n@js:\r\ncid=result;\r\nbid=baseUrl.match(/\\/(\\d+)\\//)[1],\n\n'https://comic.mkzcdn.com/chapter/content/v1/?chapter_id='+cid+'&comic_id='+bid+'&format=1&quality=1&sign=0&type=1&uid=0'",
      "updateTime": ".data@text"
    },
    "searchUrl": "https://www.mkzhan.com/search/?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "夜天连看",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yetianlian.cc#",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 300,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734432209685,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2763,
    "ruleBookInfo": {
      "author": "class.info@tag.span.0@text##作者：",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text##简介：|作者.*",
      "kind": "class.info@tag.span.1@text##分类：",
      "lastChapter": "class.info@class.last.1@tag.a@text&&class.info@class.last.0@text##更新时间：|..\\:.*",
      "name": "class.info@tag.h2@text",
      "wordCount": "class.info@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html",
      "imageStyle": "0",
      "replaceRegex": "##http://www.yetianlian.com.*.html|请记住本书首发.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text",
      "name": "tag.h4@text"
    },
    "ruleToc": {
      "chapterList": "class.listmain@tag.dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.yetianlian.cc/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "20231123 整体修复-尐哖\n旧域名：https://api.aixdzs.com",
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "爱下小说（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://apiv2hans.aixdzs.com##@尐哖",
    "customButton": false,
    "customOrder": 301,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nsort=[];\n\tpush=(title,url,type,fp)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: fp,\n\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t}\n\t});\n\tu=\"https://apiv2hans.aixdzs.com/sort\"\n\txx=(a,b)=>{\n\t\treturn `list,{\"method\": \"POST\",\"body\":'{\"bookTypeId\":\"${a}\",\"type\": \"${b}\",\"pageNum\": \"{{page}}\"}'}`;\n\t}\n\tfls = JSON.parse(java.post(u,'',{}).body());\n\tpush(\"最新\",'',1,1)\n\tfor(f of fls.data.allType){\n\t\tpush(f.categoryName,u+xx(f.bookTypeId,1),0.25,0.25);\n\t}\n\tpush(\"——\",'',0.25,0.25)\n\tpush(\"——\",'',0.25,0.25)\n\tpush(\"大热\",'',1,1)\n\tfor(l of fls.data.allType){\n\t\tpush(l.categoryName,u+xx(l.bookTypeId,2),0.25,0.25);\n\t}\n\tpush(\"——\",'',0.25,0.25)\n\tpush(\"——\",'',0.25,0.25)\n\t//完本:3\n\tJSON.stringify(sort);\n</js>",
    "header": "@js:\nJSON.stringify({\n\t\"User-Agent\":\"Dalvik/2.1.0 (Linux; U; Android 10; MIX  Build/PKQ1.190118.001)\"\n});",
    "lastUpdateTime": 1753360915438,
    "respondTime": 7804,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "https://img22.aixdzs.com/{{$.cover}}",
      "init": "$.data.book",
      "intro": "$.longIntro",
      "kind": "{{$.updated##T.*}}\n{{$.cat}}\n{{$.zt}}",
      "lastChapter": "$.lastChapter\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求更谢乐发推票盟补加字Kk\\/].*[\\)\\}）｝】]/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "name": "$.title",
      "tocUrl": "{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/catalog,{\n  \"body\": '{\"bookId\":\"{{$.bookId}}\"}',\n  \"method\": \"POST\"\n}",
      "wordCount": "$.wordCount"
    },
    "ruleContent": {
      "content": "<js>\ns=\"2c6689f91ee4d4e87d798397d47310ebbe1dad79ixdzs\";\nfor (i = 0, h = \"\"; i < 8; i++) {\n\tx=\"abcdefghijklmnopqrstuvwxyz0123456789\";\n\tr = parseInt(Math.random() * (36 - 0 +1) + 0, 10);\n\th += x.charAt(r);\n}\na=String(Math.round(new Date()));\nsha = s + h + a + h;\nsha1 = java.digestHex(sha,'SHA-1');\n\nb = baseUrl.match(/\"chapterId\":(\\d+),\"bookId\":\"(\\d+)\"/)\nu=source.getKey().match(/([^\\#]+)\\#/)[1];\nurl = u + \"/chapter/content,\";\npost=`{\n  \"method\": \"POST\",\n  \"body\":'{\"chapterId\": ${b[1]},\"bookId\":\"${b[2]}\"}',\n  \"headers\":{\"checkSumDTO\":'{\"appid\":\"ixdzs\",\"checksum\":\"${sha1}\",\"curtime\":\"${a}\",\"nonce\":\"${h}\"}'}\n}`\n\nresult = java.ajax(url+post);\n</js>$.data.chapter.chapterContent",
      "replaceRegex": "##\\n\\s*[\\（(]本章完[\\)）]$|\\n\\s*第.*章.*\\n|.*武林中文网.*最新章节！"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data.bookList",
      "bookUrl": "{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/book/detail,{\n  \"body\":'{\"bookId\":\"{{$.bookId}}\"}',\n  \"method\": \"POST\"\n}",
      "coverUrl": "https://img22.aixdzs.com/{{$.cover}}",
      "intro": "$.shortIntro",
      "kind": "{{$.updated##T.*}}\n{{$.cat}}\n{{$.zt}}",
      "lastChapter": "{{$.lastChapter##最新:}} • {{$.updated##T.*}}",
      "name": "$.title"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.bookList",
      "bookUrl": "{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/book/detail,{\n  \"body\":'{\"bookId\":\"{{$.bookId}}\"}',\n  \"method\": \"POST\"\n}",
      "checkKeyWord": "",
      "coverUrl": "https://img22.aixdzs.com/{{$.cover}}",
      "intro": "$.shortIntro",
      "kind": "{{$.updated##T.*}}\n{{$.cat}}\n{{$.zt}}",
      "lastChapter": "{{$.lastChapter##最新[:：]}} • {{$.updated##T.*}}",
      "name": "$.title",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList[*]",
      "chapterName": "$.chapterName",
      "chapterUrl": "{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/chapter/content,{\n\t\"body\": '{\"chapterId\":{{$.chapterId}},\"bookId\":\"{{$.bookId}}\"}',\n  \"method\": \"POST\"\n}",
      "updateTime": "时间：{{java.timeFormat(java.getString('$.createTime'))}}"
    },
    "searchUrl": "{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/search,{\n  \"body\": '{\"searchTerms\":\"{{key}}\",\"pageSize\": \"20\",\"pageNum\":\"{{page}}\"}',\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "嘛小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.77shuku.la",
    "customButton": false,
    "customOrder": 302,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",
    "lastUpdateTime": 1721152723637,
    "respondTime": 3661,
    "ruleBookInfo": {
      "author": ".item:nth-child(1)@text",
      "coverUrl": ".img_in > img@src",
      "init": "",
      "intro": "#intro@text",
      "kind": ".nav-mbx > a:nth-child(3)@text",
      "lastChapter": ".update > a@text",
      "name": "h1@text",
      "wordCount": ".item:nth-child(2)@text##字数："
    },
    "ruleContent": {
      "content": "#ChapterContents@html##最新网址：www.77shuku.la|全集txt下载.*|txt下载地址.*|手机阅读.*|你现在所看的.*",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.span.0@text##作者：",
      "bookList": "class.BOX@tag.tr!0",
      "bookUrl": ".red.0@href",
      "checkKeyWord": "我的",
      "coverUrl": "",
      "intro": "",
      "kind": "tr:nth-child(2) > td:nth-child(2) > a@text",
      "lastChapter": ".chapter.0@text",
      "name": ".red.0@text",
      "wordCount": "tr:nth-child(2) > td:nth-child(8)@text"
    },
    "ruleToc": {
      "chapterList": ".zjlist@tag.dd",
      "chapterName": "tag.a.0@text",
      "chapterUrl": "tag.a.0@href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🙈腐文屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.fuwenwu.me",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 305,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "                               分  类                                 \n 玄幻 ::/sort/1_{{page}}/\n 武侠 ::/sort/2_{{page}}/\n 都市 ::/sort/3_{{page}}/\n 穿越 ::/sort/4_{{page}}/\n 科幻 ::/sort/5_{{page}}/\n 网游 ::/sort/6_{{page}}/\n 精品 ::/sort/7_{{page}}/\n                               榜  单                                 \n最近更新::/top/lastupdate_{{page}}/\n最新入库::/top/postdate_{{page}}/\n总点击榜::/top/allvisit_{{page}}/\n月点击榜::/top/monthvisit_{{page}}/\n周点击榜::/top/weekvisit_{{page}}/\n日点击榜::/top/dayvisit_{{page}}/\n总推荐榜::/top/allvote_{{page}}/\n月推荐榜::/top/monthvote_{{page}}/\n周推荐榜::/top/weekvote_{{page}}/\n日推荐榜::/top/dayvote_{{page}}/\n总收藏榜::/top/goodnum_{{page}}/\n字数排行::/top/size_{{page}}/",
    "lastUpdateTime": 1746069724148,
    "loginUrl": "",
    "respondTime": 13738,
    "ruleBookInfo": {
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": "class.intro@p@textNodes",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "lastChapter": "class.infotype@tag.p.3@a@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "id.novelcontent@p@html"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.author@text||class.p3@text",
      "bookList": "class.searchresult@p||class.article||class.articlegeneral",
      "bookUrl": "a@href",
      "coverUrl": "img@src||tag.a.0@href##.*/book/(\\d+)(\\d{3})/##http://img.fuwenwu.me/image/$1/$1$2/$1$2s.jpg",
      "intro": "class.content@p.simple@text",
      "kind": "class.p1@text##\\[|]",
      "name": "h6@a@text||tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.chapters@li@a",
      "chapterName": "text##.*vIP|.*мē|.*иéτ",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&submit=&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "免费",
    "bookSourceName": "Webtoon XYZ🌐",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.webtoon.xyz/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 306,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "ALL::/webtoons//page/{{page}}\nAction::/webtoon-genre/action/page/{{page}}\nAdventure::/webtoon-genre/adventure/page/{{page}}\nBL::/webtoon-genre/bl/page/{{page}}\nComedy::/webtoon-genre/comedy/page/{{page}}\nDrama::/webtoon-genre/drama/page/{{page}}\nEcchi::/webtoon-genre/ecchi/page/{{page}}\nFantasy::/webtoon-genre/fantasy/page/{{page}}\nGL::/webtoon-genre/gl/page/{{page}}\nHarem::/webtoon-genre/harem/page/{{page}}\nHorror::/webtoon-genre/horror/page/{{page}}\nMature::/webtoon-genre/mature/page/{{page}}\nMystery::/webtoon-genre/mystery/page/{{page}}\nPsychological::/webtoon-genre/psychological/page/{{page}}\nRomance::/webtoon-genre/romance/page/{{page}}\nSchool Life::/webtoon-genre/school-life/page/{{page}}\nSci-Fi::/webtoon-genre/sci-fi/page/{{page}}\nSlice of life::/webtoon-genre/slice-of-life/page/{{page}}\nSmut::/webtoon-genre/smut/page/{{page}}\nSupernatural::/webtoon-genre/supernatural/page/{{page}}\nThriller::/webtoon-genre/thriller/page/{{page}}",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.1.0; JKM-AL00b Build/HUAWEIJKM-AL00b; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044807 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1716227168492,
    "loginUrl": "",
    "respondTime": 180804,
    "ruleBookInfo": {
      "author": "class.artist-content@tag.a.0@text",
      "coverUrl": "class.summary_image@tag.img@data-src",
      "init": "",
      "intro": "class.description-summary@class.summary__content@tag.p.1@text",
      "kind": "class.genres-content@tag.a@text",
      "name": "class.post-title@tag.h1@text##18\\+|NEW|end\\s?"
    },
    "ruleContent": {
      "content": "class.page-break no-gaps@tag.img@data-src@js:\nlist=result.split(\"\\n\");\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)}\nhtml='';\nfor(i=0;i<=list.length-7;i++){\nhtml+='<img src=\"'+list[i]+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": "class.col-12 col-md-6 badge-pos-2",
      "bookUrl": "class.col-12 col-md-6 badge-pos-2@class.h5@tag.a.0@href",
      "coverUrl": "class.page-item-detail manga@tag.img@data-src",
      "lastChapter": "class.chapter-item@tag.a.0@text",
      "name": "class.col-12 col-md-6 badge-pos-2@class.h5@tag.a.0@text"
    },
    "ruleSearch": {
      "author": "tag.a.3@text",
      "bookList": "class.row c-tabs-item__content",
      "bookUrl": "class.post-title@tag.a.0@href",
      "coverUrl": "class.tab-thumb c-image-hover@tag.img@data-src",
      "kind": "tag.a.!0:1:2:3:-1:-2@text",
      "lastChapter": "tag.a.-1@text",
      "name": "class.post-title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "-class.main version-chap@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.webtoon.xyz/?s={{key}}&post_type=wp-manga",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "R 玩文学小说网🐶 ",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.wanwx.com/##Rosiapng",
    "customButton": false,
    "customOrder": 307,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::https://www.wanwx.com/xuanhuan?page={{page}}\n武侠仙侠::https://www.wanwx.com/xianxia?page={{page}}\n都市言情::https://www.wanwx.com/dushi?page={{page}}\n历史军事::https://www.wanwx.com/lishi?page={{page}}\n游戏竞技::https://www.wanwx.com/wangyou?page={{page}}\n科幻传奇::https://www.wanwx.com/kehuan?page={{page}}\n恐怖灵异::https://www.wanwx.com/kongbu?page={{page}}\n",
    "lastUpdateTime": 1739268068371,
    "respondTime": 3805,
    "ruleBookInfo": {
      "coverUrl": "//meta[@property=\"og:image\"]/@content",
      "intro": "//meta[@property=\"og:description\"]/@content"
    },
    "ruleContent": {
      "content": "//div[@id=\"htmlContent\"]/p/text()",
      "nextContentUrl": "//a[text()='下一页']/@href"
    },
    "ruleExplore": {
      "author": "//td[3]/text()",
      "bookList": "//table[@class=\"mytable table\"]//tr[position()>1]",
      "bookUrl": "//td[1]/a/@href",
      "lastChapter": "//td[2]/a/text()",
      "name": "//td[1]/a/text()"
    },
    "ruleSearch": {
      "author": "//p[@class=\"booktag\"]/a/text()",
      "bookList": "<js>\nkey = java.get('key')\nfunction extractFormActionAndToken(html) {\n    // Extract form action\n    const actionMatch = html.match(/<form[^>]+action=['\"]([^'\"]+)['\"]/);\n    const action = actionMatch ? actionMatch[1] : null;\n\n    // Extract hidden input value (_token)\n    const tokenMatch = html.match(/<input[^>]+name=['\"]_token['\"][^>]+value=['\"]([^'\"]+)['\"]/);\n    const token = tokenMatch ? tokenMatch[1] : null;\n\n    return token;\n}\ntoken =extractFormActionAndToken(result)\n\nf = `https://www.wanwx.com/search`\n\nlet e = `${java.encodeURI(key, 'utf-8')}`\n\n\n\nvar body = `keyword=${key}&_token=${token}`\n\n// Define the option object\nvar option = { \n\"method\": \"POST\",\n\t\"body\": body\n\t};\n\n// Construct the result\nf =`https://www.wanwx.com/search,` +\n    JSON.stringify(option);\n\n//Fetch data from the new URL\nr2 = java.ajax(f)\n \n \n  // Regex patterns to match <div class=\"col-md-10\"> and <div class=\"col-md-2 col-xs-4\">\nlet regexPatternMd10 = /<div class=\"col-md-10\">(.*?)<\\/div>/gs;\nlet regexPatternMd2 = /<div class=\"col-md-2 col-xs-4\">(.*?)<\\/div>/gs;\n\n// Find all occurrences\nlet matchesMd10 = r2.match(regexPatternMd10) || [];\nlet matchesMd2 = r2.match(regexPatternMd2) || [];\n\n// Combine both lists into a single HTML string\nlet combinedHtml = '';\n\nfor (let i = 0; i < Math.min(matchesMd10.length, matchesMd2.length); i++) {\n    combinedHtml += `\n    <div class=\"combined-entry\">\n        ${matchesMd10[i].trim()}\n        ${matchesMd2[i].trim()}\n    </div>\n    `;\n}\n\n// Wrap the combined entries in a parent container if needed\nlet finalHtmlOutput = `<div class=\"combined-container\">${combinedHtml}</div>`;\n\n\nfinalHtmlOutput\n\n</js>\n//div[@class=\"combined-entry\"]",
      "bookUrl": "//h4/a/@href",
      "checkKeyWord": "闪婚",
      "coverUrl": "//img[1]/@src",
      "intro": "//p[@id=\"bookIntro\"]/text()",
      "lastChapter": "//div[@class=\"col-md-10\"]//p[3]/a/text()",
      "name": "//h4/a/@title##<[^>]*>"
    },
    "ruleToc": {
      "chapterList": "//div[@id=\"list-chapterAll\"]//dd[@class=\"col-md-3\"]",
      "chapterName": "//a/text()",
      "chapterUrl": "//a/@href"
    },
    "searchUrl": "@js:\n\njava.put('key',key)\n\nurl='https://www.wanwx.com/'",
    "weight": 60
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "书城网包",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shucw.net",
    "customButton": false,
    "customOrder": 308,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",
    "lastUpdateTime": 1734979815511,
    "respondTime": 1728,
    "ruleBookInfo": {
      "author": "i > a@text",
      "coverUrl": "img@src",
      "intro": ".intro > p:nth-child(2)@text",
      "kind": "p > span:nth-child(1)@text",
      "lastChapter": ".to100 > a@text",
      "name": "h1@text",
      "tocUrl": "class.act@tag.a@href"
    },
    "ruleContent": {
      "content": "id.article@html",
      "nextContentUrl": "id.next_url@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p:nth-child(2)@text## .*",
      "bookList": ".searchresult",
      "bookUrl": "class.img_span@tag.a.0@href",
      "checkKeyWord": "我的",
      "coverUrl": "class.lazy@tag.img@src",
      "intro": ".searchresult_p@text",
      "kind": ".img_span span@text##(.*)/(.*)##$1##",
      "lastChapter": "p:nth-child(4)@text",
      "name": "tag.h3@text",
      "wordCount": "p:nth-child(2)@text##(.*)( .*)( .*)( .*)##$2$3##"
    },
    "ruleToc": {
      "chapterList": "#ul_all_chapters@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\n\nvar url=source.getKey();\n\nvar html = java.ajax(url);\n\nso = org.jsoup.Jsoup.parse(html).select('form[name=t_frmsearch]').attr('action');\n\ncookie.removeCookie(url)\n\nurl+so+\",\"+JSON.stringify({\n  \"body\": \"searchkey={{key}}&searchtype=all\",\n  \"method\": \"post\"\n})",
    "weight": 0
  },
  {
    "bookSourceComment": "登录未测试，没有账号，不知道付费章可不可以看\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "悦读小说（繁体）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://hareading.com/",
    "customButton": false,
    "customOrder": 309,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "古代::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=12\"}\n實境::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=11\"}\n奇幻::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=1\"}\n靈異::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=2\"}\n言情::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=3\"}\n都會::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=4\"}\n武俠::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=5\"}\n耽美::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=6\"}\n同人::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=7\"}\n懸疑::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=8\"}\n推理::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=9\"}\n科幻::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=10\"}\n百合::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=13\"}\n成人::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=14\"}\n宮鬥::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=15\"}\n網遊::website/getNewChaptersCache,{\"method\":\"POST\",\"body\": \"classifyId=16\"}",
    "lastUpdateTime": 1729756300504,
    "loginUrl": "",
    "respondTime": 1879,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "//*[@property=\"og:image\"]/@content",
      "intro": "//*[@property=\"og:description\"]/@content",
      "kind": "<js>list=result.match(/var classify = ([\\s\\S]+?);/)[1];</js>\n$.[*].classifyName",
      "name": "//*[@property=\"og:title\"]/@content",
      "tocUrl": "https://hareading.com/books/getChapterList,{\n\"method\": \"POST\",\n\"body\": \"bookId={{baseUrl.match(/(\\d+)/)[1]}}\"\n}",
      "wordCount": "@js:unescape(result.match(/\"overStatus\":\".*? : ([^\"]+)\"/)[1].replace(/\\\\/g,'%'))"
    },
    "ruleContent": {
      "content": "$.chapterArticle\n<js>doc=org.jsoup.Jsoup.parse(result)\ndoc.select(\".articleHide\").remove();\ndoc</js>"
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$.[*].data[*]",
      "bookUrl": "https://hareading.com/books?bookId={{$.bookId}}",
      "coverUrl": "https://storage.googleapis.com/something.hareading.com/hareading/assets/uploads/images/{{$.bookPhoto}}",
      "intro": "$.bookDescription",
      "kind": "$.classify[*].classifyName",
      "lastChapter": "$.chapterName",
      "name": "$.bookName"
    },
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "$.searchResult.data",
      "bookUrl": "/books?bookId={$.bookId}",
      "coverUrl": "https://storage.googleapis.com/something.hareading.com/hareading/assets/uploads/images/{$.bookPhoto}",
      "intro": "$.bookDescription",
      "name": "$.bookName"
    },
    "ruleToc": {
      "chapterList": "$.[*]",
      "chapterName": "$.chapterName",
      "chapterUrl": "https://hareading.com/chapters/getArticle,{\n\"method\": \"POST\",\n\"body\": \"chapterId={{$.chapterId}}&isAdult=1\"}",
      "isVip": "$.chapterCoinStatus\n@js:result.indexOf('免費')>-1?'':1",
      "updateTime": "{{$.chapterDatePublish}}•{{$.chapterCoinStatus}}"
    },
    "searchUrl": "search/getSearchResult,{\n\"method\": \"POST\",\n\"body\": \"datas[searchString]={{key}}&datas[page]={{page}}&datas[pageRow]=20\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "无奈书库",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.52shuku123.org",
    "bookUrlPattern": "https?://www.52shuku123.org/go/\\d+/",
    "customButton": false,
    "customOrder": 310,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\",\n\"Referer\": \"{{baseUrl}}\"\n\t}",
    "lastUpdateTime": 1732532034207,
    "respondTime": 2493,
    "ruleBookInfo": {
      "author": "a.0@text",
      "coverUrl": "img@src",
      "init": ".book",
      "intro": ".bookintro@text",
      "kind": "span.2@text&&p.-1@text\n##更新时间：",
      "lastChapter": "a.-1@text",
      "name": "h1@text",
      "wordCount": "span.0@text"
    },
    "ruleContent": {
      "content": ".readcontent@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author.0@text",
      "bookList": ".bookbox",
      "bookUrl": "a.0@href",
      "checkKeyWord": "寒山",
      "coverUrl": "a.0@href##\\D+((\\d+)\\d{3})\\D*##https://tu.52shuku123.org/$2/$1/$1s.jpg###",
      "intro": ".update@ownText",
      "kind": "span.0@text",
      "lastChapter": "a.1@text",
      "name": "h4@text",
      "wordCount": ".author.1@text##字数：|字"
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.52shuku123.org/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&action=login\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "4020",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xwurexs.com",
    "bookUrlPattern": "http://www.xwurexs.com/read/\\d+/",
    "customButton": false,
    "customOrder": 311,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"🔹排行🔹\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"最新小说\",\"url\":\"/new/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"小说推荐\",\"url\":\"/tuijian/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"金牌推荐\",\"url\":\"/jinpaituijian/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"封推小说\",\"url\":\"/fengtui/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日排行榜\",\"url\":\"/dpaihangbang/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周排行榜\",\"url\":\"/wpaihangbang/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月排行榜\",\"url\":\"/mpaihangbang/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总排行榜\",\"url\":\"/paihangbang/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹分类🔹\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/wuxia/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/yanqing/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美小说\",\"url\":\"/danmei/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"/xuanhuan/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青春校园\",\"url\":\"/qingchun/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/wangyou/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异推理\",\"url\":\"/kongbu/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"纪实文学\",\"url\":\"/jishi/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军事历史\",\"url\":\"/lishi/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/kehuan/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"管理哲学\",\"url\":\"/zhexue/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学习资料\",\"url\":\"/xuexi/{{page==1?'':'index_'+page+'.html'}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36\"}",
    "lastUpdateTime": 1743169815622,
    "respondTime": 9001,
    "ruleBookInfo": {
      "author": ".small.0@text",
      "coverUrl": "img@src",
      "init": ".detail_info",
      "intro": ".small.4@text##作者：.*|简介：",
      "kind": ".small.2@text##更新日期：",
      "lastChapter": ".small.3@text##最新章节：",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##请记住本书首发域名：.*"
    },
    "ruleExplore": {
      "author": "text.作者@text##\\s.*",
      "bookList": ".listBox ul li",
      "bookUrl": "a.0@href##(\\d+)##http://www.xwurexs.com/read/$1/###",
      "coverUrl": "a.0@href<js>\nvar id = result.match(/(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.xwurexs.com/headimgs/'+iid+'/'+id+'/s'+id+'.jpg';\n</js>",
      "intro": ".u@text",
      "kind": "text.更新@text##.*更新：",
      "lastChapter": "div@a@text",
      "name": "a.0@text##txt下载"
    },
    "ruleSearch": {
      "author": ".even.1@text",
      "bookList": ".detail_info tr!0",
      "bookUrl": ".even.0@a@href",
      "checkKeyWord": "逼我重生是吧",
      "coverUrl": ".even.0@a@href<js>\nvar id = result.match(/(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.xwurexs.com/headimgs/'+iid+'/'+id+'/s'+id+'.jpg';\n</js>",
      "kind": ".odd.2@text",
      "lastChapter": ".odd.1@text",
      "name": ".even.0@text"
    },
    "ruleToc": {
      "chapterList": ".showInfo.1@li@a",
      "chapterName": "text@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "chapterUrl": "href"
    },
    "searchUrl": "/so.html?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "黑岩阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xheiyan.info",
    "customButton": false,
    "customOrder": 312,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1735620251958,
    "respondTime": 5599,
    "ruleBookInfo": {
      "intro": "class.book_info@p.-1@text##简介：",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content&&class.infos@span.-1@a.0@text&&class.infos@span.-1@a.1@text&&class.infos@span.-1@a.2@text&&class.infos@span.-1@a.3@text&&class.infos@span.-1@a.4@text&&class.infos@span.-1@a.5@text&&class.infos@span.-1@a.6@text",
      "lastChapter": "class.upd@a.-1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]"
    },
    "ruleContent": {
      "content": "class.contentbox@textNodes"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.infos@span.0@a@text",
      "bookList": "class.container@class.so new",
      "bookUrl": "class.pic@a@href",
      "checkKeyWord": "我的美女总裁老婆",
      "coverUrl": "img@src",
      "intro": "p.-1@text",
      "kind": "class.infos@span.-1@a.0@text&&class.infos@span.-1@a.1@text&&class.infos@span.-1@a.2@text&&class.infos@span.-1@a.3@text&&class.infos@span.-1@a.4@text&&class.infos@span.-1@a.5@text&&class.infos@span.-2@text&&class.infos@span.-3@text##.*：",
      "name": "h2@text",
      "wordCount": "class.infos@span.-4@text##.*："
    },
    "ruleToc": {
      "chapterList": "class.book_list@li",
      "chapterName": "a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "a@href",
      "preUpdateJs": ""
    },
    "searchUrl": "/plus/search.php?kwtype=0&searchtype=&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "繁体",
    "bookSourceGroup": "免费",
    "bookSourceName": "琦书网啦（魔法）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.7shuwu.org",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 313,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"总点击榜\",\"url\":\"https://www.7shuwu.org/top/allvisit_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"月点击榜\",\"url\":\"https://www.7shuwu.org/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"周点击榜\",\"url\":\"https://www.7shuwu.org/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"日点击榜\",\"url\":\"https://www.7shuwu.org/top/dayvisit_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"总推荐榜\",\"url\":\"https://www.7shuwu.org/top/allvote_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"最新入库\",\"url\":\"https://www.7shuwu.org/top/postdate_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"最近更新\",\"url\":\"https://www.7shuwu.org/top/lastupdate_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}},\n{\"title\":\"字数排行\",\"url\":\"https://www.7shuwu.org/top/size_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.3}}]",
    "header": "",
    "lastUpdateTime": 1733234047095,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 8145,
    "ruleBookInfo": {
      "author": "class.infotype@p.0@tag.a@text",
      "coverUrl": "",
      "intro": "class.intro@text",
      "kind": "class.infotype@p.1@text&&class.infotype@p.2@text##类型：|更新时间：",
      "lastChapter": "class.infotype@p.3@tag.a@text",
      "name": "class.cataloginfo@h3@text",
      "tocUrl": "class.infolink@tag.li.1@tag.a@href"
    },
    "ruleContent": {
      "content": "class.content@html",
      "imageDecode": "",
      "imageStyle": "TEXT",
      "nextContentUrl": "class.chapterPages@tag.a@href"
    },
    "ruleExplore": {
      "author": "tag.p.2@tag.a@text",
      "bookList": "class.articlegeneral",
      "bookUrl": "tag.p.1@tag.a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "tag.p.0@text##\\[|\\]",
      "lastChapter": "",
      "name": "tag.p.1@tag.a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "class.author@text",
      "bookList": "class.sone",
      "bookUrl": "class.sone@tag.a@href",
      "checkKeyWord": "二公子的日常",
      "lastChapter": "",
      "name": "tag.a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.chapters@tag.li",
      "chapterName": "li.0@tag.a.0@text",
      "chapterUrl": "li.0@tag.a.0@href",
      "nextTocUrl": "text.下一页@href",
      "preUpdateJs": ""
    },
    "searchUrl": "/s.html,{\n  \"body\": \"s={{key}}&type=articlename\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"webView\": true\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\n\n注意：默认为文件模式，可切换为文本，文本模式下正文部分有乱码\"�\"。\n需要在线阅读的请自行切换为文本。\n备用域名：\nhttps://www.627txt.com\nhttps://www.272txt.com\n网站地址：www.227txt.com\n本站最新网址：www.527txt.net\n备用域名网址1：www.927txt.com\n备用域名网址2：www.827txt.com\n备用域名网址3：www.727txt.com\n备用域名网址4：www.27txt.La\n备用域名网址5：www.527txt.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱去小说（导入）",
    "bookSourceType": 3,
    "bookSourceUrl": "http://www.aiqu222.com##可下",
    "customButton": false,
    "customOrder": 314,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732982854660,
    "respondTime": 183323,
    "ruleBookInfo": {
      "author": "##作者：([^<]+)<##$1###",
      "canReName": "1",
      "coverUrl": "",
      "downloadUrls": "center:nth-of-type(1)>p>a@href##^##{{source.getKey().match(/([^\\#]+)\\#/)[1]}}\n<js>\njava.ajax(result);\n</js>\nid.mainDownInfo@table@tr.5@a.1@href\n",
      "init": "",
      "intro": "center.1@html##<strong>.*<\\/strong>",
      "kind": "##更新时间：<font[^<]+>([^<]+)<\\/##$1###",
      "name": "##书名：《?([^<]+)<##$1###<js>result</js>##》|txt.*",
      "tocUrl": "center:nth-of-type(1)>p>a@href##^##{{source.getKey().match(/([^\\#]+)\\#/)[1]}}\n<js>\njava.ajax(result);\n</js>\nid.mainDownInfo@table@tr.5@a.0@href",
      "wordCount": "##小说大小：<font[^<]+>([^<]+)<\\/##$1###"
    },
    "ruleContent": {
      "content": "table[class=\"layui-code\"]@html",
      "imageStyle": "",
      "replaceRegex": "##推荐一个.*网址：.*\\n|每天更新，喜欢的去看看。\\n*|书名：《{{book.name}}》\\s*作者：{{book.author}}\\s*文案：\\n*"
    },
    "ruleExplore": {
      "bookList": ".mainSoftName",
      "bookUrl": "a@href",
      "name": "a@text##《|》|txt.*"
    },
    "ruleSearch": {
      "author": "",
      "bookList": "<js>\nm=java.getElements('#searchmain@class.searchTopic');\nn=java.getElements('#searchmain@class.searchInfo');\nlist = [];\nfor(i in m){\n\tcon = {};\n\tcon.n= String(m[i].select('.searchtitle').text())\n\t.replace(/《|》|txt.*/g,'')\n\tcon.k = n[i].select('a').get(0).text();\n\tcon.l = n[i].select('.oldDate').text();\n\tcon.w = String(n[i].ownText()).replace(/.*大小：|日期.*/g,'');\n\tcon.b = n[i].select('a').get(1).attr('href');\n\tlist.push(con);\n\t}\nlist\n</js>",
      "bookUrl": "b",
      "checkKeyWord": "",
      "kind": "k",
      "lastChapter": "l",
      "name": "n",
      "wordCount": "w"
    },
    "ruleToc": {
      "chapterList": "<js>\nn=result.match(/第1页 \\/ 共(\\d+) 页/)[1];\nvar list=[];\nvar n = parseInt(n);\nul=java.getString('ul a.0@href');\nui=baseUrl.match(/(.*\\/\\/[^\\/]+)\\//)[1];\n\nfor(var i=1;i<=n;i++)\n{\n\turl=ui+String(ul).replace(/page=1/,\"page=\"+i);\n\tme='第'+i+'页';\n\tlist.push({\"text\":me,\"href\":url});\n}\nlist\n</js>",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.bookSourceUrl)}}\n{{source.getKey().match(/([^\\#]+)\\#/)[1]}}/search.asp?page={{page}}&m=0&act=&classid=0&word={{key}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "盗墓笔记（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.daomubiji.com",
    "customButton": false,
    "customOrder": 315,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "盗墓笔记::http://www.daomubiji.com/",
    "lastUpdateTime": 1759387475979,
    "respondTime": 1837,
    "ruleBookInfo": {
      "intro": "class.focusbox-text@text"
    },
    "ruleContent": {
      "content": "class.article-content@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "text##(|)",
      "bookList": "class.container@tag.li!0",
      "bookUrl": "tag.a@href",
      "name": "class.menu-item@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.excerpts-wrapper@tag.a",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "-",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "年代小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.4xiaoshuo.info",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 316,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuan_{{page}}.html\n武侠仙侠::/wuxia_{{page}}.html\n都市言情::/dushi_{{page}}.html\n历史军事::/lishi_{{page}}.html\n科幻灵异::/kehuan_{{page}}.html\n网游竞技::/wangyou_{{page}}.html\n女生频道::/mm_{{page}}.html",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36\"\n}",
    "lastUpdateTime": 1733247234539,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2977,
    "ruleBookInfo": {
      "author": "class.info@class.small@tag.span.0@text##作者：",
      "canReName": "",
      "coverUrl": "class.info@class.cover@img@src",
      "init": "",
      "intro": "class.info@class.intro@text##简介：",
      "kind": "class.info@class.small@tag.span.4@text&&\nclass.info@class.small@tag.span.1@text&&&&\nclass.info@class.small@tag.span.2@text##分类：|状态：|更新时间：",
      "lastChapter": "class.info@class.small@tag.span.4@a@text",
      "name": "class.info@h2@text",
      "tocUrl": "",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书首发.*com",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.xyusk.com/headimgs/'+iid+'/'+id+'/s'+id+'.jpg';\n</js>",
      "intro": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": "",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@a@text",
      "name": "h4@a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.listmain@tag.dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href@js:result+',{webView:“true”}'",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search.php?searchkey={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-3",
    "customButton": false,
    "customOrder": 318,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732129499685,
    "respondTime": 1358,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-6",
    "customButton": false,
    "customOrder": 319,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1741627271015,
    "respondTime": 1597,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "轻小说",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-8",
    "customButton": false,
    "customOrder": 320,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1766365211672,
    "respondTime": 1283,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-a",
    "customButton": false,
    "customOrder": 321,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732129192064,
    "respondTime": 1607,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃我爱读者🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.52dzxy.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 322,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "百科知识::https://www.52dzxy.com/bkzs/all.html\n父母必读::https://www.52dzxy.com/fmbd/all.html\n新民周刊::https://www.52dzxy.com/xmzk/all.html\n第一财经::https://www.52dzxy.com/dycj/all.html\n南风窗::https://www.52dzxy.com/nfc/all.html\n环球人物::https://www.52dzxy.com/hqrw/all.html\n轻兵器::https://www.52dzxy.com/qbq/all.html\n知识就是力量::https://www.52dzxy.com/zsjsll/all.html\n中小学心理健康教育::https://www.52dzxy.com/zxxxljkjy/all.html\n中国经济周刊::https://www.52dzxy.com/zgjjzk/all.html\n证券市场周刊::https://www.52dzxy.com/zqsczk/all.html\n股市状态分析::https://www.52dzxy.com/gsdtfx/all.html\n财经::https://www.52dzxy.com/caijing/all.html\n婚姻与家庭·性情读本::https://www.52dzxy.com/hyyjtxqdb/all.html\n南方人物周刊::https://www.52dzxy.com/nfrwzk/all.html\n中国新闻周刊::https://www.52dzxy.com/zgxwzk/all.html\n看世界::https://www.52dzxy.com/ksj/all.html\n阅读时代::https://www.52dzxy.com/ydsd/all.html\n格言·校园版::https://www.52dzxy.com/gyxyb/all.html\n海外文摘::https://www.52dzxy.com/hwwz/all.html\n思维与智慧·上半月::https://www.52dzxy.com/swyzhsby/all.html\n青年文摘::https://www.52dzxy.com/qnwz/all.html\n今日文摘::https://www.52dzxy.com/jrwz/all.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9; MIX 2 Build/PKQ1.190118.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.99 Mobile Safari/537.36\"}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 713,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": ".sidebar@img@src",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleContent": {
      "content": "tag.p@html##我爱读者校园网",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "bookList": ".magazine-grid .magazine-item",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "a@text"
    },
    "ruleSearch": {
      "bookList": ".magazine-grid .magazine-item",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "a@text##更多..."
    },
    "ruleToc": {
      "chapterList": ".catalog-section-title,.article-title a||.maglistbox dt,.maglistbox dl dd a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVolume": ".catalog-section-title@text||span@text",
      "nextTocUrl": ""
    },
    "searchUrl": "#",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "西瓜免费",
    "bookSourceType": 0,
    "bookSourceUrl": "🥝西瓜免费小说App🍒",
    "customButton": false,
    "customOrder": 323,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734381068021,
    "respondTime": 952,
    "ruleBookInfo": {
      "author": "data.book.author",
      "coverUrl": "data.book.coverWap",
      "intro": "data.book.introduction",
      "kind": "data.book.tagList",
      "lastChapter": "data.lastChapter.chapterName",
      "name": "data.book.bookName",
      "tocUrl": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto,\n    Packages.javax.crypto.spec,\n    Packages.java.security,\n    Packages.java.security.interfaces,\n    Packages.java.security.spec,\n    Packages.java.io,\n    Packages.java.util\n);\nwith(javaImport){\n    function encrypt(str){\n        var bArr = String(str).getBytes(\"UTF-8\");\n        var mac = Mac.getInstance(\"HmacSHA256\");\n        mac .init(SecretKeySpec(String(\"wj3imab73kwceuf51lf01ORHe2cmo8X0YrZwF4p2uv3WEfmqxrT2oIBwRFRNErXW20UKal15ZTDdxPKU43puZFqcuXkvrQmadhp1wn6YPEDO4WRgInp8NNNQo4uNsWF1CELOzx7yPOS4pQbhTRWB4qRm0a4ENIegN0SH7K2STbsyaCuWh7m7s3rTpb5dK3CcDdsT35vo0xNbPZI2dJmKoIeKk9p3YhBLNWp9WoZqn9Qihpvn4nvgJzVSacgy2MTo\").getBytes(\"UTF-8\"),\"HmacSHA256\"));\n        return mac.doFinal(bArr)\n    }\n  function encode(bArr) {\n        if (bArr === null) {\n            return null;\n        }\n        var length = bArr.length * 8;\n        if (length === 0) {\n            return \"\";\n        }\n        var i10 = length % 24;\n        var i11 = parseInt(length / 24);\n        var cArr = new Array((i10 !== 0 ? i11 + 1 : i11) * 4);\n        var i12 = 0;\n        var i13 = 0;\n        var i14 = 0;\n        while (i12 < i11) {\n                var i15 = i13 + 1;\n                var b10 = bArr[i13];\n                var i16 = i15 + 1;\n                var b11 = bArr[i15];\n                var i17 = i16 + 1;\n                var b12 = bArr[i16];\n                var b13 = (b11 & 15)&255;\n                var b14 = (b10 & 3)&255;\n                var i18 = b10 & -128;\n                var i19 = b10 >> 2;\n                if (i18 !== 0) {\n                    i19 ^= 192;\n                }\n                var b15 = i19 & 255;\n                var i20 = b11 & -128;\n                var i21 = b11 >> 4;\n                if (i20 !== 0) {\n                    i21 ^= 240;\n                }\n                var b16 = (i21 & 255);\n                var i22 = (b12 & -128) === 0 ? b12 >> 6 : (b12 >> 6) ^ 252;\n                var i23 = i14 + 1;\n                var cArr2 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n                cArr[i14] = cArr2[b15];\n                var i24 = i23 + 1;\n                cArr[i23] = cArr2[(b14 << 4) | b16];\n                var i25 = i24 + 1;\n                cArr[i24] = cArr2[(b13 << 2) | (i22&255)];\n                cArr[i25] = cArr2[b12 & 63];\n                i12++;\n                i14 = i25 + 1;\n                i13 = i17;\n\t\t\t\t}\n        if (i10 === 8) {\n            var b17 = bArr[i13];\n            var b18 = b17 & 3;\n            var i26 = b17 & -128;\n            var i27 = b17 >> 2;\n            if (i26 !== 0) {\n                i27 ^= 192;\n            }\n            var i28 = i14 + 1;\n            var cArr3 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr3[i27];\n            var i29 = i28 + 1;\n            cArr[i28] = cArr3[b18 << 4];\n            cArr[i29] = '=';\n            cArr[i29 + 1] = '=';\n\t\t}else if (i10 === 16) {\n            var b19 = bArr[i13];\n            var b20 = bArr[i13 + 1];\n            var b21 = (b20 & 15)&255;\n            var b22 = (b19 & 3)&255;\n            var i30 = b19 & -128;\n            var i31 = b19 >> 2;\n            if (i30 !== 0) {\n                i31 ^= 192;\n            }\n            var b23 = i31&255;\n            var i32 = b20 & -128;\n            var i33 = b20 >> 4;\n            if (i32 !== 0) {\n                i33 ^= 240;\n            }\n            var i34 = i14 + 1;\n            var cArr4 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr4[b23];\n            var i35 = i34 + 1;\n            cArr[i34] = cArr4[(i33&255) | (b22 << 4)];\n            cArr[i35] = cArr4[b21 << 2];\n            cArr[i35 + 1] = '=';\n        }\n        return cArr.join('');\n    }\n\n}\n\nvar bookId= java.getString(\"data.book.bookId\");\n\nvar myDate = new Date();\nvar timestamp = myDate.getFullYear() + \n\"0\" + (myDate.getMonth()+1) + \n\"0\" + myDate.getDate() + \n\"0\" + myDate.getDay() + \nmyDate.getMinutes() + \nmyDate.getSeconds();\n\n\n\nvar sign = encode(encrypt(\"appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\"+ timestamp +\"{\\\"chapterId\\\":\\\"\\\",\\\"needBlockList\\\":\\\"1\\\",\\\"chapterOffset\\\":\\\"666666\\\",\\\"bookId\\\":\\\"\" + bookId + \"\\\",\\\"chapterEndId\\\":\\\"\\\"}8cfaaedef7a7e24a716732ff5428958f\"))\n\nurl = \"https://xgmf.zuanqianyi.com/glory/free/111?appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\" + timestamp + \",\";\npost={\n  \"method\": \"POST\",\n  \"headers\": {\n    \"pname\": \"com.dzmf.zmfxsdq\",\n    \"sign\": sign,\n    \"signType\": \"1\"\n  },\n  \"body\":'{\"chapterId\":\"\",\"needBlockList\":\"1\",\"chapterOffset\":\"666666\",\"bookId\":\"'+bookId+'\",\"chapterEndId\":\"\"}'\n}\nurl+JSON.stringify(post)\n</js>",
      "wordCount": "data.book.totalWordSize"
    },
    "ruleContent": {
      "content": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.java.io,\n    Packages.java.util,\n    Packages.java.security.spec,\n    Packages.java.security,\n    Packages.javax.crypto,\n    Packages.javax.crypto.spec,\n    Packages.java.security.interfaces,\n    Packages.java.security.spec\n);\nwith(javaImport){\n\tfunction encrypt(str){\n                var bArr = String(str).getBytes(\"UTF-8\");\n\t\tvar pKCS8EncodedKeySpec =PKCS8EncodedKeySpec([48,-126,4,-65,2,1,0,48,13,6,9,42,-122,72,-122,-9,13,1,1,1,5,0,4,-126,4,-87,48,-126,4,-91,2,1,0,2,-126,1,1,0,-118,121,-93,-123,61,113,-87,-20,-33,52,-70,-125,-13,67,-61,92,-49,-41,-14,60,-49,31,-68,-88,-7,-38,-52,-62,-31,-76,-123,90,-28,-70,-23,-106,93,-93,-5,-57,22,62,51,45,-88,80,-38,-55,75,-3,-73,-96,65,-15,-110,11,-121,-91,105,-91,-11,-62,-111,96,17,-68,-82,113,-116,-82,-108,51,-100,31,61,14,-26,-5,-48,14,-36,-110,-90,113,46,-31,-67,-64,95,98,95,-123,2,-83,16,-105,74,-42,-100,3,-125,53,126,-72,-72,-76,79,108,1,-71,-82,-51,0,60,-94,84,-65,73,-44,-88,-107,-81,44,3,40,-33,-87,114,88,21,-53,111,-84,-88,-83,112,41,101,-118,50,22,-74,29,47,-51,-106,-89,-26,55,44,66,118,-7,-45,-72,78,-125,-37,73,72,-80,-11,38,-82,65,54,103,9,43,-106,-88,-81,29,50,56,-127,104,122,56,-38,-93,-76,-12,-99,-17,-87,97,-128,21,118,-78,-13,-67,15,-74,-116,71,63,122,5,-59,120,93,90,-104,116,21,-13,108,10,-50,-103,-33,-21,125,113,86,-73,46,-84,-92,106,-86,8,23,7,95,-65,80,83,6,-85,53,85,-85,43,-73,41,-84,-10,76,106,-36,119,99,-125,121,-92,-122,-94,-73,-15,125,115,120,-63,2,3,1,0,1,2,-126,1,1,0,-121,-55,-103,-48,-55,28,-47,125,102,-81,37,10,-55,28,52,-47,-87,58,95,-34,-61,88,-94,-66,-84,43,-93,72,-94,-35,75,59,-125,57,-54,94,-39,-70,56,-27,-45,-24,-16,116,-96,45,-111,45,125,103,-15,-115,-93,-68,-121,-14,-24,116,10,-14,99,-39,4,-121,73,61,85,110,33,126,-5,-14,-45,-16,74,6,119,-8,-117,-32,86,-23,51,111,-97,-126,91,120,-19,-49,-32,76,-28,-1,-30,90,9,88,3,42,-22,-102,37,-122,108,16,-36,36,-44,88,73,-111,-38,-34,-102,108,50,27,-22,-3,-39,-78,41,-99,123,-110,63,108,85,22,-119,93,-85,-98,-114,70,-31,-120,-122,10,-92,-31,87,117,-119,-49,25,1,20,-42,-61,35,96,-41,-46,-50,-114,-31,-36,-21,95,-70,113,110,62,-28,62,76,36,-57,81,-21,100,36,124,-74,112,-52,-73,109,-117,37,-3,-40,-111,-102,-13,62,118,-93,-119,-118,-33,-82,20,53,64,-57,24,63,-113,-126,-61,-69,90,-72,-56,120,80,-95,-14,124,-2,74,80,53,22,3,57,61,113,-117,-5,-54,61,-1,-105,-96,-68,7,-98,-49,95,-61,-16,51,-65,82,66,-125,-66,-92,115,75,-116,32,14,68,-51,124,-126,32,-63,52,84,117,2,-127,-127,0,-15,-52,16,-109,-8,94,1,-65,14,-119,72,18,115,86,17,19,-68,-19,24,86,12,5,-97,55,-16,-75,84,110,-126,23,-33,-56,120,17,-32,-127,-106,-54,-27,54,20,40,92,70,-18,94,31,-79,-42,69,74,18,85,17,-64,-80,60,4,-102,23,36,-52,-112,124,11,-30,-15,5,-92,125,51,-42,26,109,27,-19,93,10,49,-48,-106,91,-38,12,-45,73,-44,-26,37,114,21,105,36,-38,96,39,-5,-8,-4,-70,-11,106,-107,69,68,14,-43,-123,-127,6,127,65,-25,-49,75,110,99,-50,-32,-33,-54,-26,117,125,-18,24,-89,107,2,-127,-127,0,-110,-101,-24,103,-95,2,-73,-114,-109,-97,107,126,-32,75,-124,-39,-92,-98,-127,-33,2,-65,49,-80,24,118,94,4,-117,122,-70,-41,-42,59,-90,-53,-81,-101,-57,75,-99,-67,-87,-67,-35,40,-66,53,-45,95,79,-10,-120,-111,71,-12,-110,76,-74,82,-79,83,-84,3,43,111,-44,-109,4,61,-22,3,99,113,113,-121,-15,-108,44,-32,-28,46,-83,-115,-99,-86,108,-111,3,-11,-43,121,67,-73,-68,99,107,55,-119,-77,20,-68,-77,98,-113,-21,39,-128,-21,119,113,57,-99,-30,-65,-128,-76,-100,40,8,39,-72,18,9,-17,-99,-89,-125,2,-127,-128,108,110,19,93,23,-70,-88,83,-46,35,-13,-30,-6,63,-75,70,-63,-87,29,9,-79,56,112,46,-8,-51,-120,0,74,108,-124,88,-12,-89,39,-93,85,72,-59,66,-36,5,65,100,57,-114,-111,-18,0,-27,111,-109,10,-4,-4,8,-53,-47,80,124,98,111,45,-73,-62,-24,-47,38,-77,-99,-59,-70,20,125,-85,81,101,48,-90,40,32,-43,45,-46,36,-119,-18,100,10,-108,-65,79,56,76,-119,100,68,-43,98,24,64,-25,-69,-22,-92,-37,118,26,-7,66,61,-99,3,99,-19,50,-94,-91,106,40,81,103,-55,118,96,104,67,-29,2,-127,-127,0,-121,39,-59,-77,-85,34,119,23,-80,-115,-38,42,-120,25,-10,-86,49,-15,-110,102,-122,0,-66,-116,-55,-80,109,114,33,39,-114,-110,37,-60,-82,58,-66,116,-116,-32,-17,-43,-122,99,43,60,65,70,27,-53,-107,75,0,-111,118,85,72,126,1,-30,-17,-24,-29,-3,-76,16,-113,86,-51,37,74,-45,-66,-36,57,62,-118,-3,-1,-11,127,70,108,-26,-51,-1,-21,-64,48,119,116,74,43,-100,121,-58,-23,115,-76,-76,-20,28,29,-1,114,15,-26,70,26,76,-19,-117,-95,59,5,50,96,-50,72,-75,99,-16,116,104,-58,-122,127,-125,2,-127,-127,0,-105,-116,-61,-50,-11,-71,-17,-45,114,88,67,113,51,37,-77,53,82,-22,36,70,-19,34,93,22,-103,-36,28,-47,-113,120,-57,4,-95,11,-82,-62,-127,13,115,93,104,-110,-44,39,42,-125,64,-111,53,-14,82,73,69,0,-66,37,-56,-115,3,-103,5,-69,55,75,-113,7,-18,-32,97,-56,28,85,-48,72,27,-115,119,63,1,41,115,-27,-73,24,-63,57,-72,107,-9,39,13,120,-75,-42,33,9,-39,-93,72,-122,66,33,-36,-1,-18,-102,11,-49,28,-61,-120,6,102,-37,-106,-6,5,-111,107,-76,49,78,-40,19,53,106,-37,-125]);\n\t\tvar signature = Signature.getInstance(\"SHA256WithRSA\");\n\t\tsignature.initSign(KeyFactory.getInstance(\"RSA\").generatePrivate(pKCS8EncodedKeySpec));\n\t\tsignature.update(bArr);\n\t\treturn signature.sign();        \n    }\n\tfunction encode(bArr) {\n        if (bArr === null) {\n            return null;\n        }\n        var length = bArr.length * 8;\n        if (length === 0) {\n            return \"\";\n        }\n        var i10 = length % 24;\n        var i11 = parseInt(length / 24);\n        var cArr = new Array((i10 !== 0 ? i11 + 1 : i11) * 4);\n        var i12 = 0;\n        var i13 = 0;\n        var i14 = 0;\n        while (i12 < i11) {\n                var i15 = i13 + 1;\n                var b10 = bArr[i13];\n                var i16 = i15 + 1;\n                var b11 = bArr[i15];\n                var i17 = i16 + 1;\n                var b12 = bArr[i16];\n                var b13 = (b11 & 15)&255;\n                var b14 = (b10 & 3)&255;\n                var i18 = b10 & -128;\n                var i19 = b10 >> 2;\n                if (i18 !== 0) {\n                    i19 ^= 192;\n                }\n                var b15 = i19 & 255;\n                var i20 = b11 & -128;\n                var i21 = b11 >> 4;\n                if (i20 !== 0) {\n                    i21 ^= 240;\n                }\n                var b16 = (i21 & 255);\n                var i22 = (b12 & -128) === 0 ? b12 >> 6 : (b12 >> 6) ^ 252;\n                var i23 = i14 + 1;\n                var cArr2 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n                cArr[i14] = cArr2[b15];\n                var i24 = i23 + 1;\n                cArr[i23] = cArr2[(b14 << 4) | b16];\n                var i25 = i24 + 1;\n                cArr[i24] = cArr2[(b13 << 2) | (i22&255)];\n                cArr[i25] = cArr2[b12 & 63];\n                i12++;\n                i14 = i25 + 1;\n                i13 = i17;\n\t\t\t\t}\n        if (i10 === 8) {\n            var b17 = bArr[i13];\n            var b18 = b17 & 3;\n            var i26 = b17 & -128;\n            var i27 = b17 >> 2;\n            if (i26 !== 0) {\n                i27 ^= 192;\n            }\n            var i28 = i14 + 1;\n            var cArr3 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr3[i27];\n            var i29 = i28 + 1;\n            cArr[i28] = cArr3[b18 << 4];\n            cArr[i29] = '=';\n            cArr[i29 + 1] = '=';\n\t\t}else if (i10 === 16) {\n            var b19 = bArr[i13];\n            var b20 = bArr[i13 + 1];\n            var b21 = (b20 & 15)&255;\n            var b22 = (b19 & 3)&255;\n            var i30 = b19 & -128;\n            var i31 = b19 >> 2;\n            if (i30 !== 0) {\n                i31 ^= 192;\n            }\n            var b23 = i31&255;\n            var i32 = b20 & -128;\n            var i33 = b20 >> 4;\n            if (i32 !== 0) {\n                i33 ^= 240;\n            }\n            var i34 = i14 + 1;\n            var cArr4 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr4[b23];\n            var i35 = i34 + 1;\n            cArr[i34] = cArr4[(i33&255) | (b22 << 4)];\n            cArr[i35] = cArr4[b21 << 2];\n            cArr[i35 + 1] = '=';\n        }\n        return cArr.join('');\n    }\n\n}\n\tvar bookId = java.get(\"bookId\");\n\tvar str = baseUrl;\n\tvar chapterId = str.match(/\\d+/).toString();\n\n\n\tfunction getTransferRespond(Urltype){\n\t\t\n\t\tvar myDate = new Date();\n\t\tvar timestamp = myDate.getFullYear() + \n\t\t\"0\" + (myDate.getMonth()+1) + \n\t\t\"0\" + myDate.getDate() + \n\t\t\"0\" + myDate.getDay() + \n\t\tmyDate.getMinutes() + \n\t\tmyDate.getSeconds();\n\t\t\n\t\t\n\t\tvar url;\n\t\tvar body;\n\t\tvar body;\n\t\tif(Urltype == 1)\n\t\t{\n\t\n\t\t\tvar url = \"https://xgmf.zuanqianyi.com/glory/free/1152?appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\" + timestamp;\n\n\t\t\tvar sign = encode(encrypt(\"appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\"+ timestamp +\"{\\\"autoPay\\\":\\\"1\\\",\\\"chapterId\\\":\\\"\"+chapterId+\"\\\",\\\"keepShowAd\\\":1,\\\"confirmPay\\\":\\\"1\\\",\\\"bookId\\\":\\\"\"+bookId+\"\\\"}8cfaaedef7a7e24a716732ff5428958f\"))\n\n\t\t\tvar body =\n\t\t\t\"{\\\"autoPay\\\":\\\"1\\\",\\\"chapterId\\\":\\\"\"+chapterId+\"\\\",\\\"keepShowAd\\\":1,\\\"confirmPay\\\":\\\"1\\\",\\\"bookId\\\":\\\"\"+bookId+\"\\\"}\";\n\n\t\t\tvar header = {};\n\n\t\t\theader[\"uid\"]=\"1706970565\";\n\t\t\theader[\"pname\"]=\"com.dzmf.zmfxsdq\";\n\t\t\theader[\"sign\"]=sign;\n\t\t\theader[\"signType\"]=\"2\";\n\t\t\theader[\"Content-Type\"]=\"application/json; charset=UTF-8\";\n\t\t\t//header[\"Content-Length\"]=93;\n\t\t\theader[\"Host\"]=\"xgmf.zuanqianyi.com\";\n\t\t\n\t\t}else\n\t\t{\n\t\t\tvar url = \"https://xgmf.zuanqianyi.com/glory/free/1153?appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\" + timestamp;\n\n\t\t\tvar sign = encode(encrypt(\"appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\"+ timestamp +\"{\\\"autoPay\\\":\\\"1\\\",\\\"keepShowAd\\\":1,\\\"chapterIds\\\":[\\\"\"+chapterId+\"\\\"],\\\"bookId\\\":\\\"\"+bookId+\"\\\"}8cfaaedef7a7e24a716732ff5428958f\"))\n\n\t\t\tvar body =\n\t\t\t\"{\\\"autoPay\\\":\\\"1\\\",\\\"keepShowAd\\\":1,\\\"chapterIds\\\":[\\\"\"+chapterId+\"\\\"],\\\"bookId\\\":\\\"\"+bookId+\"\\\"}\";\n\t\t\t\n\t\t\tvar header = {};\n\n\t\t\theader[\"uid\"]=\"1706970565\";\n\t\t\theader[\"pname\"]=\"com.dzmf.zmfxsdq\";\n\t\t\theader[\"sign\"]=sign;\n\t\t\theader[\"signType\"]=\"2\";\n\t\t\theader[\"Content-Type\"]=\"application/json; charset=UTF-8\";\n\t\t\t//header[\"Content-Length\"]=79;\n\t\t\theader[\"Host\"]=\"xgmf.zuanqianyi.com\";\t\t\n\t\t}\n\t\t\n\t\tvar respond= java.post(url,body,header);\n\t\treturn respond;\n\t}\n\t\n\tvar UrltypeNum = 1;\n\t\n\tvar respond = getTransferRespond(UrltypeNum);\n\n\tvar transferHtml=respond.body();\n\n\tvar is = String(transferHtml).search(/不合法/);\n\n\twhile(is > 0){\n\t\tif(UrltypeNum == 1){UrltypeNum = 2}else{UrltypeNum = 1}\n\t\tvar respond = getTransferRespond(UrltypeNum);\n\t\tvar transferHtml=respond.body();\n\t\tvar is = String(transferHtml).search(/不合法/);\n\t}\n\t//java.log(transferHtml);\n\tvar transferJson=JSON.parse(transferHtml);\n\tvar chapterUrl =transferJson.data.chapterInfo[0].cdnUrls[0];\n\tchapterHtml = java.ajax(chapterUrl);\n\t//java.log(chapterUrl);\n\t//java.log(java.ajax(chapterUrl));\n</js>",
      "nextContentUrl": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "data.searchList",
      "bookUrl": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto,\n    Packages.javax.crypto.spec,\n    Packages.java.security,\n    Packages.java.security.interfaces,\n    Packages.java.security.spec,\n    Packages.java.io,\n    Packages.java.util\n);\nwith(javaImport){\n    function encrypt(str){\n        var bArr = String(str).getBytes(\"UTF-8\");\n        var mac = Mac.getInstance(\"HmacSHA256\");\n        mac .init(SecretKeySpec(String(\"wj3imab73kwceuf51lf01ORHe2cmo8X0YrZwF4p2uv3WEfmqxrT2oIBwRFRNErXW20UKal15ZTDdxPKU43puZFqcuXkvrQmadhp1wn6YPEDO4WRgInp8NNNQo4uNsWF1CELOzx7yPOS4pQbhTRWB4qRm0a4ENIegN0SH7K2STbsyaCuWh7m7s3rTpb5dK3CcDdsT35vo0xNbPZI2dJmKoIeKk9p3YhBLNWp9WoZqn9Qihpvn4nvgJzVSacgy2MTo\").getBytes(\"UTF-8\"),\"HmacSHA256\"));\n        return mac.doFinal(bArr)\n    }\n  function encode(bArr) {\n        if (bArr === null) {\n            return null;\n        }\n        var length = bArr.length * 8;\n        if (length === 0) {\n            return \"\";\n        }\n        var i10 = length % 24;\n        var i11 = parseInt(length / 24);\n        var cArr = new Array((i10 !== 0 ? i11 + 1 : i11) * 4);\n        var i12 = 0;\n        var i13 = 0;\n        var i14 = 0;\n        while (i12 < i11) {\n                var i15 = i13 + 1;\n                var b10 = bArr[i13];\n                var i16 = i15 + 1;\n                var b11 = bArr[i15];\n                var i17 = i16 + 1;\n                var b12 = bArr[i16];\n                var b13 = (b11 & 15)&255;\n                var b14 = (b10 & 3)&255;\n                var i18 = b10 & -128;\n                var i19 = b10 >> 2;\n                if (i18 !== 0) {\n                    i19 ^= 192;\n                }\n                var b15 = i19 & 255;\n                var i20 = b11 & -128;\n                var i21 = b11 >> 4;\n                if (i20 !== 0) {\n                    i21 ^= 240;\n                }\n                var b16 = (i21 & 255);\n                var i22 = (b12 & -128) === 0 ? b12 >> 6 : (b12 >> 6) ^ 252;\n                var i23 = i14 + 1;\n                var cArr2 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n                cArr[i14] = cArr2[b15];\n                var i24 = i23 + 1;\n                cArr[i23] = cArr2[(b14 << 4) | b16];\n                var i25 = i24 + 1;\n                cArr[i24] = cArr2[(b13 << 2) | (i22&255)];\n                cArr[i25] = cArr2[b12 & 63];\n                i12++;\n                i14 = i25 + 1;\n                i13 = i17;\n\t\t\t\t}\n        if (i10 === 8) {\n            var b17 = bArr[i13];\n            var b18 = b17 & 3;\n            var i26 = b17 & -128;\n            var i27 = b17 >> 2;\n            if (i26 !== 0) {\n                i27 ^= 192;\n            }\n            var i28 = i14 + 1;\n            var cArr3 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr3[i27];\n            var i29 = i28 + 1;\n            cArr[i28] = cArr3[b18 << 4];\n            cArr[i29] = '=';\n            cArr[i29 + 1] = '=';\n\t\t}else if (i10 === 16) {\n            var b19 = bArr[i13];\n            var b20 = bArr[i13 + 1];\n            var b21 = (b20 & 15)&255;\n            var b22 = (b19 & 3)&255;\n            var i30 = b19 & -128;\n            var i31 = b19 >> 2;\n            if (i30 !== 0) {\n                i31 ^= 192;\n            }\n            var b23 = i31&255;\n            var i32 = b20 & -128;\n            var i33 = b20 >> 4;\n            if (i32 !== 0) {\n                i33 ^= 240;\n            }\n            var i34 = i14 + 1;\n            var cArr4 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr4[b23];\n            var i35 = i34 + 1;\n            cArr[i34] = cArr4[(i33&255) | (b22 << 4)];\n            cArr[i35] = cArr4[b21 << 2];\n            cArr[i35 + 1] = '=';\n        }\n        return cArr.join('');\n    }\n\n}\n\nvar bookId= java.getString(\"bookId\");\n\nvar myDate = new Date();\nvar timestamp = myDate.getFullYear() + \n\"0\" + (myDate.getMonth()+1) + \n\"0\" + myDate.getDate() + \n\"0\" + myDate.getDay() + \nmyDate.getMinutes() + \nmyDate.getSeconds();\n\nvar sign = encode(encrypt(\"appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\"+ timestamp +\"{\\\"bookId\\\":\\\"\"+bookId+\"\\\"}8cfaaedef7a7e24a716732ff5428958f\"))\n\nurl = \"https://xgmf.zuanqianyi.com/glory/free/1110?appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\" + timestamp + \",\";\npost={\n  \"method\": \"POST\",\n  \"headers\": {\n    \"pname\": \"com.dzmf.zmfxsdq\",\n    \"sign\": sign,\n    \"signType\": \"1\"\n  },\n  \"body\":'{\"bookId\":\"'+bookId+'\"}'\n}\nurl+JSON.stringify(post)\n</js>",
      "coverUrl": "coverWap",
      "intro": "introduction",
      "kind": "tag",
      "lastChapter": "",
      "name": "bookName",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "<js>\nvar obj = JSON.parse(result); \nvar chapterNameList= obj.data.chapterNameList;\nvar chapterIdList= obj.data.chapterIdList;\nvar bookId = obj.data.bookId;\nvar length = parseInt(obj.data.chapterNameList.length);\nvar list = [];\nvar ret;\nfor(var i = 0; i < length; i++)\n{ \t list.push({\"chapterName\":String(chapterNameList[i]), \"chapterId\":String(chapterIdList[i])});\n}\njava.put(\"bookId\",bookId);\n\nlist\n</js>\n",
      "chapterName": "chapterName",
      "chapterUrl": "chapterId"
    },
    "searchUrl": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto,\n    Packages.javax.crypto.spec,\n    Packages.java.security,\n    Packages.java.security.interfaces,\n    Packages.java.security.spec,\n    Packages.java.io,\n    Packages.java.util\n);\nwith(javaImport){\n    function encrypt(str){\n        var bArr = String(str).getBytes(\"UTF-8\");\n        var mac = Mac.getInstance(\"HmacSHA256\");\n        mac .init(SecretKeySpec(String(\"wj3imab73kwceuf51lf01ORHe2cmo8X0YrZwF4p2uv3WEfmqxrT2oIBwRFRNErXW20UKal15ZTDdxPKU43puZFqcuXkvrQmadhp1wn6YPEDO4WRgInp8NNNQo4uNsWF1CELOzx7yPOS4pQbhTRWB4qRm0a4ENIegN0SH7K2STbsyaCuWh7m7s3rTpb5dK3CcDdsT35vo0xNbPZI2dJmKoIeKk9p3YhBLNWp9WoZqn9Qihpvn4nvgJzVSacgy2MTo\").getBytes(\"UTF-8\"),\"HmacSHA256\"));\n        return mac.doFinal(bArr)\n    }\n  function encode(bArr) {\n        if (bArr === null) {\n            return null;\n        }\n        var length = bArr.length * 8;\n        if (length === 0) {\n            return \"\";\n        }\n        var i10 = length % 24;\n        var i11 = parseInt(length / 24);\n        var cArr = new Array((i10 !== 0 ? i11 + 1 : i11) * 4);\n        var i12 = 0;\n        var i13 = 0;\n        var i14 = 0;\n        while (i12 < i11) {\n                var i15 = i13 + 1;\n                var b10 = bArr[i13];\n                var i16 = i15 + 1;\n                var b11 = bArr[i15];\n                var i17 = i16 + 1;\n                var b12 = bArr[i16];\n                var b13 = (b11 & 15)&255;\n                var b14 = (b10 & 3)&255;\n                var i18 = b10 & -128;\n                var i19 = b10 >> 2;\n                if (i18 !== 0) {\n                    i19 ^= 192;\n                }\n                var b15 = i19 & 255;\n                var i20 = b11 & -128;\n                var i21 = b11 >> 4;\n                if (i20 !== 0) {\n                    i21 ^= 240;\n                }\n                var b16 = (i21 & 255);\n                var i22 = (b12 & -128) === 0 ? b12 >> 6 : (b12 >> 6) ^ 252;\n                var i23 = i14 + 1;\n                var cArr2 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n                cArr[i14] = cArr2[b15];\n                var i24 = i23 + 1;\n                cArr[i23] = cArr2[(b14 << 4) | b16];\n                var i25 = i24 + 1;\n                cArr[i24] = cArr2[(b13 << 2) | (i22&255)];\n                cArr[i25] = cArr2[b12 & 63];\n                i12++;\n                i14 = i25 + 1;\n                i13 = i17;\n\t\t\t\t}\n        if (i10 === 8) {\n            var b17 = bArr[i13];\n            var b18 = b17 & 3;\n            var i26 = b17 & -128;\n            var i27 = b17 >> 2;\n            if (i26 !== 0) {\n                i27 ^= 192;\n            }\n            var i28 = i14 + 1;\n            var cArr3 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr3[i27];\n            var i29 = i28 + 1;\n            cArr[i28] = cArr3[b18 << 4];\n            cArr[i29] = '=';\n            cArr[i29 + 1] = '=';\n\t\t}else if (i10 === 16) {\n            var b19 = bArr[i13];\n            var b20 = bArr[i13 + 1];\n            var b21 = (b20 & 15)&255;\n            var b22 = (b19 & 3)&255;\n            var i30 = b19 & -128;\n            var i31 = b19 >> 2;\n            if (i30 !== 0) {\n                i31 ^= 192;\n            }\n            var b23 = i31&255;\n            var i32 = b20 & -128;\n            var i33 = b20 >> 4;\n            if (i32 !== 0) {\n                i33 ^= 240;\n            }\n            var i34 = i14 + 1;\n            var cArr4 = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'];\n            cArr[i14] = cArr4[b23];\n            var i35 = i34 + 1;\n            cArr[i34] = cArr4[(i33&255) | (b22 << 4)];\n            cArr[i35] = cArr4[b21 << 2];\n            cArr[i35 + 1] = '=';\n        }\n        return cArr.join('');\n    }\n\n}\n\n\nvar myDate = new Date();\nvar timestamp = myDate.getFullYear() + \n\"0\" + (myDate.getMonth()+1) + \n\"0\" + myDate.getDate() + \n\"0\" + myDate.getDay() + \nmyDate.getMinutes() + \nmyDate.getSeconds();\n\nvar sign = encode(encrypt(\"appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\"+ timestamp +\"{\\\"size\\\":15,\\\"searchType\\\":\\\"\\\",\\\"index\\\":\"+page+\",\\\"keyword\\\":\\\"\"+key+\"\\\"}8cfaaedef7a7e24a716732ff5428958f\"))\n\nurl = \"https://xgmf.zuanqianyi.com/glory/free/1141?appId=100398183&country=CN&lang=zh_CN&ver=10009248&appVer=1.0.9.248&timestamp=\" + timestamp + \",\";\npost={\n  \"method\": \"POST\",\n  \"headers\": {\n    \"pname\": \"com.dzmf.zmfxsdq\",\n    \"sign\": sign,\n    \"signType\": \"1\"\n  },\n  \"body\":'{\"size\":15,\"searchType\":\"\",\"index\":'+page+',\"keyword\":\"'+key+'\"}'\n}\nurl+JSON.stringify(post)\n</js>",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "天堂深圳（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://tiantangxiangzuoshenzhenwangyou.qwyd.net",
    "customButton": false,
    "customOrder": 324,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759402749615,
    "respondTime": 3460,
    "ruleBookInfo": {
      "author": "class.container@tag.p.0@text##一段悲.*\n版权所有©2013-2016 天堂向左 深圳往右 作者慕容雪村",
      "intro": "class.container@tag.p.0@text##作者：.*",
      "name": "tag.h1@text"
    },
    "ruleContent": {
      "content": "class.span12@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.active",
      "bookUrl": "tag.a@href",
      "name": "tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.thumbnail",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://tiantangxiangzuoshenzhenwangyou.qwyd.net/",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "快眼看书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.booksky.cc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 325,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734873224883,
    "loginUrl": "",
    "respondTime": 2748,
    "ruleBookInfo": {
      "author": "class.novelinfo-l@tag.li.0@text##作者：",
      "coverUrl": "class.novelinfo-r@tag.a@tag.img@src",
      "intro": "class.novelintro@text##各位书友要是.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "lastChapter": "class.novelinfo-l@li@a@text",
      "name": "class.w-left@tag.h1@text"
    },
    "ruleContent": {
      "content": "id.chaptercontent@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.info@tag.span.1@text",
      "bookList": "class.librarylist@tag.li",
      "bookUrl": "class.info@tag.span.0@tag.a@href",
      "coverUrl": "class.pt-ll-l@tag.a@tag.img@src",
      "lastChapter": "class.last@tag.a@text",
      "name": "class.info@tag.span.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.fulldir@tag.ul@tag.li@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.booksky.cc/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "独步小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dbxsn.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 326,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻.奇幻::nav/xh-qh-{{page}}.html\n科幻.游戏::nav/kh-yx-{{page}}.html\n仙侠.武侠::nav/xx-wx-{{page}}.html\n女生.言情::nav/ns-yq-{{page}}.html\n都市.娱乐::nav/ds-yl-{{page}}.html\n历史.军事::nav/ls-js-{{page}}.html\n悬疑.灵异::nav/xy-ly-{{page}}.html\n耽美.纯爱::nav/dm-ca-{{page}}.html\n轻小说::nav/qxs-{{page}}.html",
    "header": "{\n\t'User-Agent': \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 EdgA/127.0.0.0\"\n}",
    "lastUpdateTime": 1733518405783,
    "respondTime": 4054,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{i}",
      "downloadUrls": "",
      "init": "@put:{n:\"[property$=og:title]@content\",\na:\"[property$=author]@content\",\nc:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content||[property$=lastest_chapter_name]@content\",\nd:\"class.book-detail@text\",\ni:\"[property$=image]@content\"}",
      "intro": "@get:{d}",
      "kind": "@get:{c}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "#cont-body@p@text",
      "imageStyle": "",
      "nextContentUrl": "class.col-md-6 text-center@a.-1@href",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "class.col-md-12 b10@class.media",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "class.media-info@text",
      "name": "class.media-title@a@text"
    },
    "ruleSearch": {
      "author": "td.1@text",
      "bookList": "tbody@tr",
      "bookUrl": "td.0@a@href",
      "name": "td.0@a@text"
    },
    "ruleToc": {
      "chapterList": "class.col-md-6 item@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "",
      "preUpdateJs": ""
    },
    "searchUrl": "/plus/search.php?q={{key}},\n{\"body\": \"id\"=\"search-form\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "七七读书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shuku.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 327,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1723369452505,
    "loginUrl": "",
    "respondTime": 36,
    "ruleBookInfo": {
      "coverUrl": "tag.img.1@src",
      "init": "",
      "intro": "id.intro@text",
      "lastChapter": "class.update@a@text",
      "name": "tag.h1@text##搜索关键词.*"
    },
    "ruleContent": {
      "content": "id.ChapterContents@html##(txt下载地址：|更新速度最快赶|全集txt下载)[\\s\\S]+"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "tag.td.5@text||class.shu_xinxi@h4@small@text",
      "bookList": "class.BOX@tag.tr!0||class.shu_cont@children",
      "bookUrl": "class.red@href||class.shu_xinxi@h4@a@href",
      "coverUrl": "img@src|class.red@href<js>'/files/article/image'+String(result).replace(/.*?(\\d*?)(\\d{1,3})\\//,'/$1/$1$2/$1$2s.jpg').replace('//','/0/')</js>",
      "kind": "tag.td.1@text##\\[|\\]",
      "lastChapter": "tag.td.3@text",
      "name": "tag.td.2@text||class.shu_xinxi@h4@a@text##搜索关键词.*"
    },
    "ruleToc": {
      "chapterList": "class.zjlist@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.77shuku.la/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biqg8.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 328,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1733278881313,
    "loginUrl": "",
    "respondTime": 2032,
    "ruleBookInfo": {
      "author": "[property=og:novel:author]@content",
      "coverUrl": "[property=og:image]@content",
      "init": "",
      "intro": "[property=og:description]@content",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "[property=og:novel:latest_chapter_name]@content##免费章节 |正文卷 |正文 |VIP章节 |卷1",
      "name": "[property=og:novel:book_name]@content##|\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|小说|笔趣阁|免费.*",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##一秒记住.*无弹窗免费阅读！|笔趣阁.*最新章节！"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.1@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |卷1",
      "name": "tag.td.0@tag.a@text##\\（+.*",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "//*[@id=\"list\"]//dt[2]/following-sibling::dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": ""
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nError: 搜索内容和发现书籍为空",
    "bookSourceGroup": "免费",
    "bookSourceName": "哪读吧",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.nadu8.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 331,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=0\n热血::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=2\n冒险::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=6\n神魔::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=11\n恋爱::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=16\n悬疑::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=14\n运动::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=4\n搞笑::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=9\n社会::https://www.nadu8.com/nodeapi/comic/list?size=10&page={{page}}&type=15",
    "header": "",
    "lastUpdateTime": 1647346887894,
    "loginUrl": "",
    "respondTime": 180134,
    "ruleBookInfo": {
      "author": "class.comic-author@tag.dd.0@text",
      "init": "",
      "intro": "class.comic-synopsis-content@text",
      "kind": "class.comic-types@tag.a@text",
      "lastChapter": "span.lastest-chapter@text",
      "name": "h1.comic-name@text"
    },
    "ruleContent": {
      "content": "data.curr.images@js:\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "bookList": "$..list.*",
      "bookUrl": "$.comic_id@js:'https://www.nadu8.com/ac/'+result",
      "coverUrl": "$.cover.c3r4@js:'https://img.nadu8.com/'+result+'-normal.webp'",
      "kind": "$.types..name",
      "lastChapter": "$.latest.chapter_name",
      "name": "$.comic_name"
    },
    "ruleToc": {
      "chapterList": "-class.chapter-list@li@a",
      "chapterName": "text##\\d+-\\d+|,\\S+",
      "chapterUrl": "href##\\/ac\\/(\\d+)\\/(\\d+).html##https:\\/\\/www.nadu8.com\\/nodeapi\\/comic\\/chapter\\?comic_id=$1&chapter_id=$2&isWebp=1"
    },
    "searchUrl": "https://nadu8.com/nodeapi/comic/list?size=12&page={{page}}&type=0&keywords={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "逐浪小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.zhulang.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 332,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732998635550,
    "loginUrl": "",
    "respondTime": 1105,
    "ruleBookInfo": {
      "author": "class.yellow@text",
      "coverUrl": "class.bk-info@img@data-src",
      "intro": "id.bk-brief@p@text",
      "name": "tag.h3.0@text",
      "tocUrl": "text.开始阅读@href"
    },
    "ruleContent": {
      "content": "class.rd-txt@p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "h4@text",
      "bookList": "id.ret-list@li",
      "bookUrl": "a@href",
      "coverUrl": "img@data-src",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "class.idx-ol@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "class.blue.0@option!0@value"
    },
    "searchUrl": "https://m.zhulang.com/search/index.html?k={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "九五书包",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.95shubao.la",
    "customButton": false,
    "customOrder": 333,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻魔法\",\"url\":\"/mulu/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠修真\",\"url\":\"/mulu/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/mulu/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/mulu/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"侦探推理\",\"url\":\"/mulu/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游动漫\",\"url\":\"/mulu/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/mulu/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/mulu/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/mulu/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他类型\",\"url\":\"/mulu/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"完本小说\",\"url\":\"/modules/article/articlelist.php?fullflag=1&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1716222824600,
    "loginUrl": "",
    "respondTime": 2685,
    "ruleBookInfo": {
      "author": ".author@a@text",
      "coverUrl": ".con_limg@img@src",
      "intro": ".r_cons@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".txt_nav@a.1@text&&.lastrecord@ownText##小说|.*\\(|\\).*",
      "lastChapter": ".lastrecord@a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".info@h1@text",
      "tocUrl": ".r_tools@a.1@href"
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##\\.pbtxt."
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "#alistbox",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "",
      "lastChapter": "",
      "name": "a.1@text##《|》",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "td.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": ".novel_list@dd@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?ie=gbk&searchkey={{key}}&ct=2097152",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "殓师灵异（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.rulianshi.org/#pb1101",
    "customButton": false,
    "customOrder": 334,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759386366650,
    "respondTime": 1164,
    "ruleBookInfo": {
      "author": "class.info@class.small@tag.span.0@text",
      "coverUrl": "class.cover@img@src",
      "intro": "class.info@ownText",
      "kind": "class.info@class.small@tag.span.4@text&&\nclass.info@class.small@tag.span.1@text&&\nclass.info@class.small@tag.span.2@text##分类：|状态：|更新时间：",
      "lastChapter": "class.info@class.small@tag.span.5@a@text",
      "name": "class.info@h2@text",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|请记住本书首发.*org",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text",
      "bookList": "class.bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "lastChapter": "class.update@a@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.rulianshi.org/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "书旗小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://read.xiaoshuo1-sm.com#🎃",
    "customButton": false,
    "customOrder": 335,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1749886120229,
    "respondTime": 1178,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "ChapterContent\n@js:\nfunction U(e) {\n    return e.split(\"\").map( e => {\n        return e.match(/[A-Za-z]/) ? (c = Math.floor(e.charCodeAt(0) / 97), k = (e.toLowerCase().charCodeAt(0) - 83) % 26 || 26, String.fromCharCode(k + (0 == c ? 64 : 96))) : e\n   }).join(\"\")\n}\nresult && result.length > 10 ? java.base64Decoder(U(result)) : '这是 🔒 付费章节 哦！\\n';"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "@js:\n    var aladdin = JSON.parse(result).aladdin;\n    var list= [];\n\n    var bid = aladdin.bid;\n    var html = String(java.ajax( 'https://t.shuqi.com/catalog/' + bid ) );\n    var scpubKey = html.match(/bscpubKey\":\"(\\w+)\"/)[1];  \n    var timestamp =~~(Date.now()/1e3);\n    var userId = '8000000';\n    var sign =  java.md5Encode(String(bid) + timestamp + userId + scpubKey); \n//java.md5Encode hex_md5 str_md5\n    var params ='&bookId=' + bid + '&user_id=' + userId + '&timestamp=' + timestamp + '&sign=' + sign ;\n\n    let e = { cata: 'http://content.shuqireader.com/openapi/book/chapterlist?shuqi_h5=205&platform=0'+ params };\n    Object.assign(aladdin, e);\n\n    list.push(aladdin);\n    list;",
      "bookUrl": "cata",
      "coverUrl": "cover",
      "intro": "desc",
      "kind": "category",
      "lastChapter": "latest_chapter.cname",
      "name": "title"
    },
    "ruleToc": {
      "chapterList": "$..volumeList[*]@put:{freeUrl:$..freeContUrlPrefix}",
      "chapterName": "🆓{$.chapterName}",
      "chapterUrl": "@get:{freeUrl}{$.contUrlSuffix}"
    },
    "searchUrl": "/novel/i.php?do=is_serchpay&q={{key}}&filterMigu=1&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "/*\n\t2024.08.23 明月照大江\n*/",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 飛天小說",
    "bookSourceType": 0,
    "bookSourceUrl": "飛龍在天",
    "customButton": false,
    "customOrder": 336,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\t\"User-Agent\": \"okhttp/5.0.0-alpha.14\"\n}",
    "jsLib": "time = Math.floor(Date.now() / 1000).toString()\n\nfunction getSign (key, type, num) {\n  const { java } = this\n  const secret = 'magic2019'\n  let baseString\n\n  switch (type) {\n    case 's':\n      baseString = `channel=ft0001&gid=2&nci=1&nsc=0&query=${java.encodeURI(key)}&timestamp=${time}&secret=${secret}`\n      break\n    case 't':\n      baseString = `bid=${key}&channel=ft0001&gid=1&nci=1&nsc=1&timestamp=${time}&secret=${secret}`\n      break\n    case 'c':\n      baseString = `bid=${key}&channel=ft0001&chapterid=${num}&gid=2&nci=1&nsc=1&timestamp=${time}&secret=${secret}`\n      break\n    default:\n      throw new Error('Invalid type')\n  }\n\n  return java.md5Encode(baseString).toUpperCase()\n}",
    "lastUpdateTime": 1738412151524,
    "respondTime": 1721,
    "ruleBookInfo": {
      "author": "author",
      "canReName": "",
      "init": "data",
      "intro": "description",
      "kind": "catename",
      "lastChapter": "lastchaptertitle",
      "name": "title",
      "tocUrl": "@js:\nlet bid = java.get(\"bid\");\nlet sign = getSign(bid, \"t\");\n`http://s1.ftn178.com/v3/book/chapter.api?app=FTNovel&os=Android&pbv=v1.0.57&_t=${time}&channel=ft0001&vs=14&sign=${sign},{\n  \"body\": \"bid=${bid}&nsc=1&nci=1&gid=1&channel=ft0001&timestamp=${time}\",\n  \"method\": \"POST\"\n}`"
    },
    "ruleContent": {
      "content": "<js>\ncid = java.hexDecodeToString(result)\nbid = java.get('bid')\nsign = getSign(bid, 'c', cid)\ncu = `http://s1.ftn178.com/v3/book/content.api?bid=${bid}&timestamp=${time}&sign=${sign}&app=FTNovel`\nbody = `bid=${bid}&chapterid=${cid}&nsc=1&nci=1&gid=2&channel=ft0001&timestamp=${time}`\njava.post(cu, body, {}).body()\n</js>\n$.data.body"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "search",
      "bookUrl": "@js:\nlet tsign = java.get('tsign').split(',')\nlet bid = java.getString('$.bid')\njava.put('bid', bid);\n`http://s1.ftn178.com/v3/book6/detail.api?nci=1&channel=ft0001&bid=${bid}&timestamp=${tsign[1]}&nsc=1&sign=${tsign[0]}&app=FTNovel`",
      "coverUrl": "thumb",
      "intro": "description",
      "kind": "catename",
      "name": "title",
      "wordCount": "wordcount"
    },
    "ruleToc": {
      "chapterList": "data.chapters",
      "chapterName": "title",
      "chapterUrl": "@js:`data:;base64,${java.base64Encode({{$.id}})},{\"type\":\"num\"}`",
      "updateTime": "@js:java.timeFormatUTC({{$.time}}, \"yyyy-MM-dd\", 0)"
    },
    "searchUrl": "@js:\nlet sign = getSign(key, 's')\njava.put('tsign', [sign, time]);\n\n`http://s1.ftn178.com/server/v3/search?sign=${sign}&app=FTNovel&os=Android&pbv=v1.0.57&_t=${time}&channel=ft0001&vs=14,{\n  \"body\": \"nsc=0&nci=1&query=${key}&timestamp=${time}&gid=2&channel=ft0001\",\n  \"method\": \"POST\"\n}`",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "手机小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.sjwx.info/",
    "customButton": false,
    "customOrder": 337,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732531045948,
    "respondTime": 4095,
    "ruleBookInfo": {
      "intro": "class.intro_info@text##最新章节[\\S\\s]+",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.nr1@html##最新网址：wap.sjwx.info|（本章未完，.*）|{{chapter.title+\"(.*)\"}}",
      "nextContentUrl": "id.pb_next@href",
      "replaceRegex": "##最新网址.*|\\s*（.*）\\s.*\\n|第\\d+章|\\(.*|.*\\).*\\n|第.*卷"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.-2@text",
      "bookList": "class.block",
      "bookUrl": "a.0@href",
      "checkKeyWord": "我的",
      "coverUrl": "tag.img@src",
      "intro": "",
      "kind": "p.-3@text",
      "lastChapter": "p.-1@text##最新章节：",
      "name": "h2@a@text"
    },
    "ruleToc": {
      "chapterList": ".chapter.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "http://wap.sjwx.info/search.php?keyword={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣网③",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ibiquw.info#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 338,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1742545454238,
    "loginUrl": "",
    "respondTime": 4242,
    "ruleBookInfo": {
      "author": "//*[@property='og:novel:author']/@content",
      "coverUrl": "//*[@property='og:image']/@content",
      "intro": "class.bookinfo_intro@textNodes##您要是觉得《|》还不错.*",
      "kind": "//*[@property='og:novel:category']/@content",
      "lastChapter": "//*[@property='og:novel:latest_chapter_name']/@content",
      "name": "//*[@property='og:novel:book_name']/@content"
    },
    "ruleContent": {
      "content": "id.htmlContent@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.s3@text||class.book_other@tag.span@text",
      "bookList": "class.toplist@tag.li||class.sitebox@tag.dl",
      "bookUrl": "class.s1@tag.a@href||tag.h3@tag.a@href",
      "coverUrl": "class.s1@tag.a@href|tag.h3@tag.a@href@js:var o=result.match(/\\/book\\/(\\d+)/); if(o!=null){'/files/article/image/'+parseInt(o[1]/1000)+'/'+o[1]+'/'+o[1]+'s.jpg';}",
      "intro": "class.book_des@textNodes",
      "kind": "class.s5@text||class.uptime@text",
      "lastChapter": "class.s2@tag.a@text||class.book_other@tag.a@text##正文_",
      "name": "class.s1@tag.a@text||tag.h3@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.book_list@tag.li@tag.a",
      "chapterName": "text##正文_",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchtype=articlename&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "@MR.无名",
    "bookSourceGroup": "免费",
    "bookSourceName": "看书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.kanshuw.com",
    "customButton": false,
    "customOrder": 339,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js: var result = [];\njava.toast(\"🔥动态获取发现中……\");\nvar push=(title,url,size)=>result.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\nvar top = java.ajax(\"https://www.kanshuw.com/top/all_0_1.html\");\nvar full = java.ajax(\"https://www.kanshuw.com/full/0_1.html\")\nif (top&&full) {\na=org.jsoup.Jsoup.parse(top).select(\".row\").eq(2);\na=org.jsoup.Jsoup.parse(a).select(\"a\");\nb=org.jsoup.Jsoup.parse(full).select(\".row\").eq(1);\nb=org.jsoup.Jsoup.parse(b).select(\"a\");\nc=org.jsoup.Jsoup.parse(full).select(\".container a\")\npush(\"排行总榜分类\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        if (url.endsWith(\"_1.html\")) {\n        url=String(url).replace(/_1\\.html$/,\"_{{page}}.html\")\n        size=0.3;\n        push(title,url,size)\n    }};\n    push(\"完本分类\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n        if (url.endsWith(\"_1.html\")) {\n        url=String(url).replace(/_1\\.html$/,\"_{{page}}.html\")\n        size=0.3;\n        push(title,url,size)\n    }};\n    \n    push(\"分类\",null,1)\n    for(i in c){\n        title=c[i].text()\n        url=c[i].attr(\"href\")\n        if(url.match(/\\/list/)){\n         url=url+\"1.html\"\n         if (url.endsWith(\"1.html\")) {\n        url=String(url).replace(/1\\.html$/,\"{{page}}.html\")\n        size=0.3;\n        push(title,url,size)\n    }}};\n      } else { \n      java.toast(\"🚫发现获取失败……\");\n}\nJSON.stringify(result);",
    "lastUpdateTime": 1733932666780,
    "respondTime": 8422,
    "ruleBookInfo": {
      "author": "class.row book_info@a[0]@text",
      "coverUrl": "class.row book_info@img@src",
      "init": "",
      "intro": "class.row book_info@id.intro_pc@oweText",
      "kind": "class.title@a[1]@text",
      "lastChapter": "class.row book_info@a[2]@text",
      "name": "class.row book_info@h1@text##免费阅读.*",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": ".font_max@html##第\\(\\d+/\\d+\\)页",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##[a-zA-Z0-9-]+[a-zA-Z0-9-].*\\.[a-zA-Z0-9-].*"
    },
    "ruleExplore": {
      "author": "span@text",
      "bookList": ".row[-1]@dl",
      "bookUrl": "a[0]@href",
      "coverUrl": "img@src",
      "kind": ".book_other[1]@text",
      "lastChapter": ".book_other[-1]@text",
      "name": "h3@text##\\[|.*\\]|免费阅读.*"
    },
    "ruleSearch": {
      "author": "span@text",
      "bookList": ".row@dl",
      "bookUrl": "a[0]@href",
      "checkKeyWord": "我的",
      "coverUrl": "tag.dt@tag.a@img@src",
      "kind": "h3@text##\\[|\\].*",
      "lastChapter": "a[-1]@text",
      "name": "h3@text##\\[|.*\\]|免费阅读.*"
    },
    "ruleToc": {
      "chapterList": ".row[-1]@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "class.pages@tag.ul@tag.li.!0:1:-1@tag.a@href"
    },
    "searchUrl": "/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "\n /**\n    * href##$##,{\"webView\":true}\"\n     * 在js中这样使用\n     * java.createSymmetricCrypto(transformation, key, iv).decrypt(data)\n     * java.createSymmetricCrypto(transformation, key, iv).decryptStr(data)\n     * java.createSymmetricCrypto(transformation, key, iv).encrypt(data)\n     * java.createSymmetricCrypto(transformation, key, iv).encryptBase64(data)\n     * java.createSymmetricCrypto(transformation, key, iv).encryptHex(data)\n     */\n",
    "bookSourceGroup": "🔞",
    "bookSourceName": "小说[自写]特殊写法",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.texasreadyblog.net/",
    "customButton": false,
    "customOrder": 340,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36',\"Cookie\":\"0\",\"Origin\":\"https://www.texasreadyblog.net\",\"Referer\":\"https://www.texasreadyblog.net/\"\n}",
    "lastUpdateTime": 1770711057059,
    "respondTime": 4134,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{\nn:\"[property~=book_name|title]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property~=latest_chapter_name|lastest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\",\ntac:\"[property$=read_url]@content\"\n}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "class.bookmore.bookmore-34e68100@a.1@href##$##,{\"webView\":true}\"",
      "wordCount": "p[class^=lastchapter-]@a@title||p[^lastchapter-]@a@title||.caption-bookinfo .btn-primary@textNodes"
    },
    "ruleContent": {
      "content": "#chaptercontent@html##看后求收藏.*.再看更方便|本章未完.*.退出阅读模式即可，谢谢！|更多内容.*.请稍候|本站只支持手机浏览器访问.*.其他浏览器阅读！##\n@js:\n/*\nvar data = src.match(/\\$\\('#booktxthtml'\\).html\\(x\\((.+)\\)\\)/)[1].replace(/\"|'/g,'').split(\",\")\n\nresult + java.createSymmetricCrypto(\n\"AES/CBC/ZeroPadding\",\n`${data[1].replace(/^\\s+|\\s+$/g,\"\")}`,\n`${data[2].replace(/^\\s+|\\s+$/g,\"\").slice(0,16)}`\n).decryptStr(`${data[0]}`)\n*/\nresult ",
      "nextContentUrl": "text.下一页@text\n@js:\nnext=((src.match(/const next_page+( = |=)+(\"(.+)\"|'(.+)')/)||[])[2]||'').replace(/\"|'/g,'')\nif(next.includes(\"_\")){\nresult = next\n}else{\nresult = ''\n}\n//result\nresult+\",\"+JSON.stringify({\"webView\":true})",
      "replaceRegex": "##.*{{book.name}}.*|.*{{book.author}}.*|.*{{chapter.title}}.*|本章未完.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".book-coverlist",
      "bookUrl": "h4@a@href",
      "checkKeyWord": "三国之我的霸业在三国",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": ".status .label@text",
      "name": "h4@a@title"
    },
    "ruleToc": {
      "chapterList": "dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{\"webView\":true}\"\n@js:\n// result\nresult+\",\"+JSON.stringify({\"webView\":true})",
      "nextTocUrl": "class.onclick@href##$##,{\"webView\":true}\""
    },
    "searchUrl": "@js:\nvar su=source.getKey()\nvar htmlUrl=java.get(su,{}).headers('Location')\njava.log(`重定向：${htmlUrl[0]}`)\nvar posturl=htmlUrl[0]?htmlUrl[0]:(su.includes(\"#\")?su.match(/([^\\#]+)\\#/)[1]:su)\nposturl = posturl.slice(-1)=='/'?posturl.slice(0,-1):posturl\ncookie.removeCookie(posturl)\njava.log(`请求：${posturl}`)\n\nck=cookie.getCookie(posturl);\n\ncookie.setCookie(posturl,String(ck).replace(/search_delay=.*/,\"\"));\n\nso=posturl+\"/search,\"+JSON.stringify({\n  \"body\": \"searchkey=\"+key,\n  \"method\": \"POST\"\n});\njava.put(\"url\",String(so))\nso",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "超星网站（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://yz4.chaoxing.com#",
    "customButton": false,
    "customOrder": 341,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nu1='::/circlemarket/getBook,{\"method\":\"POST\",\"body\":\"start={{page-1}}&size=25&channelId=';\nu2='\"}';\nlist=[[\"❀超星推荐❀\",130],[\"❀世界名著❀\",1000000007],[\"名家名作\",1000000008],[\"流行小说\",1000000010],[\"古典文学\",1000000009],[\"诗歌散文\",1000000033],[\"文学理论\",1000000063],[\"纪实文学\",1000000498],[\"少儿文学\",1000001204],[\"外文原著\",1000000438],[\"❀中国历史❀\",1000000057],[\"史学研究\",1000000072],[\"人物传记\",1000000066],[\"文物考古\",1000000069],[\"通俗演绎\",1000000060],[\"世界历史\",1000001049],[\"❀中国哲学❀\",1000000013],[\"西方哲学\",1000000014],[\"马列哲学\",1000000015],[\"宗教\",1000000393],[\"❀艺术摄影❀\",1000000051],[\"美术书法\",1000000042],[\"音乐舞蹈\",1000000045],[\"建筑雕塑\",1000000048],[\"戏曲戏剧\",1000000081],[\"电影电视\",1000001046],[\"艺术理论\",1000000075],[\"❀经济管理❀\",1000000102],[\"投资理财\",1000000105],[\"金融会计\",1000000108],[\"成功励志\",1000000111],[\"创业创新\",1000000138],[\"❀政法政治❀\",1000000414],[\"法学\",1000000417],[\"国际关系\",1000000420],[\"❀社科心理❀\",1000000090],[\"社会学\",1000000087],[\"语言文字\",1000000135],[\"新闻传播\",1000000435],[\"❀军事理论❀\",1000000426],[\"军事技术\",1000000429],[\"军事百科\",1000000432],[\"❀工业技术❀\",1000000026],[\"航空航天\",1000000027],[\"交通运输\",1000000030],[\"环境科学\",1000000031],[\"农业科学\",1000000032],[\"计算机学\",1000000036],[\"❀公共卫生❀\",1000000471],[\"基础医学\",1000000474],[\"中医学\",1000000477],[\"临床医学\",1000000480],[\"药学\",1000000483],[\"❀高等教育❀\",1000000399],[\"基础教育\",1000000402],[\"职业教育\",1000000405],[\"理论管理\",1000000408],[\"❀大众烹饪❀\",1000000120],[\"旅游\",1000000123],[\"保健\",1000000126],[\"育儿\",1000000129],[\"体育\",1000001048],[\"小人书\",1000000522],[\"生活百科\",1000000486],[\"❀科普读物❀\",1000000017],[\"数理化学\",1000000019],[\"天文地球\",1000000020],[\"生物科学\",1000000022],[\"自然科学\",1000000023]];\nlist.map(a=>a[0]+u1+a[1]+u2).join(\"&&\").replace(/❀/g,\"❀　　　　　❀\")\n</js>",
    "lastUpdateTime": 1759385192691,
    "respondTime": 1474,
    "ruleBookInfo": {
      "author": "class.artCon@tag.p@text##\\s*编?著",
      "intro": "##[\\s\\S]*##<br>★★★     超星·出版     ★★★<br>★★★   本书暂无简介  ★★★###",
      "lastChapter": "class.con@tag.a.-1@text",
      "name": "tag.h2.0@text"
    },
    "ruleContent": {
      "content": "class.ztArtCon@tag.p@html||body@html##([\\w，、。！？]{26}[。！？；]+[”’]?)(?=[^\\n]{27})##$1<br>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "author##\\s*编?著",
      "bookList": "subject",
      "bookUrl": "mobileulr",
      "coverUrl": "coverUrl",
      "name": "name"
    },
    "ruleSearch": {
      "author": "author##\\s*编?著",
      "bookList": "$.[*]",
      "bookUrl": "mobileulr",
      "coverUrl": "coverUrl",
      "name": "name"
    },
    "ruleToc": {
      "chapterList": "<js>\nresult=result.match(/Html = \"(.*?)\"/)[1]\nunescape(result)\n</js>li a",
      "chapterName": "text##^目录$",
      "chapterUrl": "attr##&name=.+"
    },
    "searchUrl": "http://yz4.chaoxing.com/circlemarket/getsearch,{\n  \"method\": \"POST\",\n  \"body\": \"&channelId=52&sw={{key}}&start=0&size=25\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "平凡文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.pfwx.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 342,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1735039456103,
    "loginUrl": "",
    "respondTime": 4761,
    "ruleBookInfo": {
      "author": "class.jieshaokaishi@tag.h2.0@text",
      "coverUrl": "class.jieshaoTu@tag.img@src",
      "intro": "class.jieshaokaishi@tag.h3@text##介 绍：|－－－.*",
      "lastChapter": "class.zuixin@tag.a@text",
      "name": "class.jieshaokaishi@tag.h1@text",
      "wordCount": "class.jieshaokaishi@tag.h2.1@text##更新时间："
    },
    "ruleContent": {
      "content": "id.booktext@html##<!--.*-->|★★.*朋友吧！"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.h3.0@text",
      "bookList": "class.tutui",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "lastChapter": "tag.a.2@text",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "class.zhangjiekaishi@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.pfwx.com/modules/article/search.php?searchkey={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁[qbi]",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.qbiqus.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 343,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1730467233241,
    "loginCheckJs": "cookie.removeCookie(source.getKey())\nresult",
    "loginUrl": "",
    "respondTime": 1377,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "img@src",
      "intro": "id.intro@p.0@text",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "div#content@html##千千小说网.*$",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "td:nth-of-type(3)@text",
      "bookList": "tr:nth-of-type(n+2)",
      "bookUrl": ".odd a@href",
      "coverUrl": "td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\nsource.bookSourceUrl + 'files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "td.5:4@text",
      "lastChapter": ".even a@text",
      "name": ".odd a@text",
      "wordCount": "td:nth-of-type(4)@text"
    },
    "ruleToc": {
      "chapterList": "dd a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "夫妻小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dfu7.com",
    "customButton": false,
    "customOrder": 344,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733580415511,
    "respondTime": 18868,
    "ruleBookInfo": {
      "author": "class.detail@p.0@a@text",
      "coverUrl": "class.info flex@img@src",
      "intro": "class.con gray@text",
      "name": "class.detail@h1@text",
      "tocUrl": "class.loading@a@href"
    },
    "ruleContent": {
      "content": "class.articlecon font-large@html",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.1@a@text",
      "bookList": "class.imgtextlist searchlist@li",
      "bookUrl": "p.0@a@href",
      "lastChapter": "p.2@a@text",
      "name": "p.0@a@text"
    },
    "ruleToc": {
      "chapterList": "class.cataloglist@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href##$##,{\"webView\":true}",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "search.asp?S={{key}}&objectType=2,{\"charset\": \"gb2312\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "//搜索间隔30秒",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本小说🉑",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.apap.net",
    "bookUrlPattern": "http://www.iqb8.cc/[\\d_]+/",
    "customButton": false,
    "customOrder": 345,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/class/xuanhuan/{{page}}/\n修真::/class/xiuzhen/{{page}}/\n都市::/class/dushi/{{page}}/\n穿越::/class/chuanyue/{{page}}/\n网游::/class/wangyou/{{page}}/\n科幻::/class/kehuan/{{page}}/\n其他::/class/qita/{{page}}/\n全本::/quanben/class/{{page}}/",
    "header": "{\n\t\"x-requested-with\": \"XMLHttpRequest\",\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; SK) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1737360106940,
    "respondTime": 4810,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=lastest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "#next_url@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span@text",
      "bookList": ".category-div",
      "bookUrl": "a.1@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@data-original",
      "intro": ".intro@text",
      "kind": "0",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": ".info-chapters.1@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\nhp = java.ajax(source.key);\nsu = hp.match(/action=\"([^\"]+?)\"/)[1];\n\n`${su},{\n  \"body\": \"searchkey=${key}&Submit=\",\n  \"method\": \"POST\"\n}`",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.1.27by.◎辞晨◎",
    "bookSourceGroup": "免费",
    "bookSourceName": "无双小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.buxia.la/",
    "customButton": false,
    "customOrder": 346,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🌊分类\",null,1,1)\npush(\"🌊全部🌊\",`/all/{{page}}.html`,1,1)\npush(\"🌊完本🌊\",`/end/{{page}}.html`,1,1)\n\tarList=[\"玄幻魔法\",\"武侠修真\",\"都市言情\",\"历史军事\",\"网游动漫\",\"科幻星际\",\"恐怖灵异\",\"其他类型\"]\n\tarList.map((tag,index)=>{\n\t\turl=`/mulu/${index+1}/{{page}}.html`;\n\t\tpush(tag, url, 1, 0.25);\n\t\t});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "@js:\nJSON.stringify({\n  'User-Agent': \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0\",\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': baseUrl,\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'referer': baseUrl,\n  'accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "lastUpdateTime": 1737913267167,
    "respondTime": 1989,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "<js>\nresult=java.getElements(\"#txt p\")\nresult.sort((a,b)=>a.attr(\"data-id\")-b.attr(\"data-id\"))\nresult.select(\"p\")\n</js>\n##.*第\\d\\/\\d页.*|.*本章未完.*|.*www\\..*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author.0@a@text",
      "bookList": ".bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@data-original",
      "intro": "span.-1@text##简介：",
      "kind": ".author!0@text##更新时间：|阅读量：|分类：",
      "lastChapter": "a.-2@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": ".fulllistall@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "{{source.getKey()}}modules/article/search.php,{\n \"body\": \"searchkey={{key}}&action=login&submit=\",\n \"charset\": \"\", \n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "五五读书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.changduzw.com",
    "customButton": false,
    "customOrder": 347,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "总点击榜::/top/allvisit_{{page}}/\n月点击榜::/top/monthvisit_{{page}}/\n周点击榜::/top/weekvisit_{{page}}/\n日点击榜::/top/dayvisit_{{page}}/\n总收藏榜::/top/goodnum_{{page}}/\n总推荐榜::/top/weekvote_{{page}}/\n数字排行::/top/size_{{page}}/\n最近更新::/top/lastupdate_{{page}}/\n最新入库::/top/postdate_{{page}}/\n完本小说::/modules/article/articlelist.php/?fullflag=1&page={{page}}\n玄幻魔法::/fenlei/1_{{page}}/\n仙侠修真::/fenlei/2_{{page}}/\n都市言情::/fenlei/3_{{page}}/\n历史军事::/fenlei/4_{{page}}/\n网游竞技::/fenlei/5_{{page}}/\n科幻小说::/fenlei/6_{{page}}/\n恐怖灵异::/fenlei/7_{{page}}/\n其他小说::/fenlei/8_{{page}}/",
    "lastUpdateTime": 1748429405082,
    "respondTime": 2276,
    "ruleBookInfo": {
      "author": ".status@.author@text",
      "coverUrl": ".imgbox@img@data-src",
      "intro": ".jianjie@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".status@a.0@text&&.status@span.-1:0@text##小说",
      "lastChapter": ".status@a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]|K",
      "name": ".status@h1@text",
      "tocUrl": ".read@href"
    },
    "ruleContent": {
      "content": "id.htmlContent@html",
      "replaceRegex": "##欢迎广大书友.*|.*55读书.*|.*520小说.*"
    },
    "ruleExplore": {
      "author": ".sp_3@text",
      "bookList": ".sk_cont@li!0",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": ".sp_1,.sp_6,.sp_4@text##\\[|\\]|小说",
      "name": ".sp_2@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "a.1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".mulu_list@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]|K",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"method\": \"post\",\n  \"body\": \"searchkey={{key}}&searchtype=articlename&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "松鹤阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "DQuestQBall#001",
    "customButton": false,
    "customOrder": 348,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"　　　　　　 男频分类 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 都市 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=异术超能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 玄幻 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"高武世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=高武世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王朝争霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=王朝争霸\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 仙侠 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"幻想修仙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=幻想修仙\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神话修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=神话修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=修真文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 奇幻 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"史诗奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=史诗奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"另类幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=另类幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"剑与魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=剑与魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=现代魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=历史神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 历史 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"架空历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=架空历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"秦汉三国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=秦汉三国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两宋元明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两宋元明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两晋隋唐\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两晋隋唐\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=历史传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古先秦\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=上古先秦\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"清史民国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=清史民国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"外国历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=外国历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 军事 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"抗战烽火\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=抗战烽火\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战争幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=战争幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"谍战特工\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=谍战特工\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军旅生涯\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军旅生涯\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事战争\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军事战争\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科幻空间 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=星际文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 悬疑侦探 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1508&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 游戏竞技 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"虚拟网游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=虚拟网游\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏系统\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏系统\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏主播\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏主播\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 武侠 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"传统武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=传统武侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武未来\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=古武未来\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国术无双\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=国术无双\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 体育 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"篮球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=篮球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"足球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=足球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育赛事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=体育赛事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 轻小说 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"衍生同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=衍生同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"原生幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=原生幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"搞笑吐槽\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=搞笑吐槽\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 短篇 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"短篇小说\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=短篇小说\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生活随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=生活随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视剧本\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=影视剧本\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"诗歌散文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=诗歌散文\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人物传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=人物传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"美文游记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=美文游记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"评论文集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=评论文集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 现实 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"现实百态\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=现实百态\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爱情婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=爱情婚姻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"成功励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=成功励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会乡土\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=社会乡土\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=青春文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学艺术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=文学艺术\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 女频分类 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 现代言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=豪门世家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市异能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市异能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民国情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=民国情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"官场沉浮\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=官场沉浮\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 古代言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫闱宅斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=宫闱宅斗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经商种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=经商种田\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊王朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=女尊王朝\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血江湖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=热血江湖\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古蛮荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=上古蛮荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 悬疑侦探 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"推理侦探\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=推理侦探\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=悬疑探险\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神秘文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=神秘文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"恐怖惊悚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=恐怖惊悚\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幽冥情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=幽冥情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 仙侠奇缘 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侣奇缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=仙侣奇缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=武侠情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古洪荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=远古洪荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 玄幻言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法幻情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=魔法幻情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能超术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异能超术\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异族恋情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异族恋情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=西方奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=远古神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 浪漫青春 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春纯爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春纯爱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春疼痛\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春疼痛\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"叛逆成长\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=叛逆成长\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科幻空间 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际恋歌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=星际恋歌\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 游戏竞技 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"网游情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=网游情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=体育竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 纯爱 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 出版文学 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 小说 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"社会\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=社会\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情感\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=情感\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"侦探/悬疑/推理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=侦探/悬疑/推理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"作品集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=作品集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=科幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=武侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界名著\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=世界名著\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 励志 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"成功/激励\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=成功/激励\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心灵与修养\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=心灵与修养\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青少年励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=青少年励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人际交往\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人际交往\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人生哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"口才/演讲/辩论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=口才/演讲/辩论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人在职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人在职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=女性励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 心理 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"心理百科\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理百科\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学入门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学入门\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"应用心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=应用心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人格心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=人格心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心灵疗愈\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心灵疗愈\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学理论与研究\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学理论与研究\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=社会心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 军事 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"武器装备\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=武器装备\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=世界军事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经典军事著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=经典军事著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战略战术战役\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=战略战术战役\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=中国军事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 政治 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"政治理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=政治理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"党政读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=党政读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国政治\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=中国政治\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界政治\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=世界政治\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"法律普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=法律普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"政治热点\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=政治热点\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"公共管理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=公共管理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"法律法规\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=法律法规\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 文学 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"中国现当代随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国现当代随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国现当代诗歌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国现当代诗歌\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"纪实文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=纪实文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学评论与鉴赏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文学评论与鉴赏\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"名家作品\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=名家作品\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国古诗词\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国古诗词\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 文化 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=中国文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地域文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=地域文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=民族文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"艺术理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=艺术理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国学普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=国学普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 历史 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"历史普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=历史普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=中国史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=世界史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地方史志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=地方史志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=历史随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文物考古\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=文物考古\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"史料典籍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=史料典籍\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"史学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=史学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 社科 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"教育\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=教育\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"语言文字\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=语言文字\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会科学总论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=社会科学总论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=社会学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经典名家作品集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=经典名家作品集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人类学/人口学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=人类学/人口学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"新闻传播出版\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=新闻传播出版\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=民族学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 养生 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"健康百科\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=健康百科\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"饮食健康\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=饮食健康\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"常见病预防和治疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=常见病预防和治疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"药膳食疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=药膳食疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中医养生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=中医养生\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性/儿童\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=女性/儿童\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理健康\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=心理健康\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中老年养生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=中老年养生\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 投资 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"理财技巧\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=理财技巧\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性理财\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=女性理财\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"证券/股票\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=证券/股票\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"投资指南\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=投资指南\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"外汇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=外汇\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 经济 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"经济通俗读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济通俗读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"各部门经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=各部门经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=中国经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国际经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=国际经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"财政税收\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=财政税收\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 亲子 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"家教方法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=家教方法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"育儿/亲子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=育儿/亲子\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"孕产知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=孕产知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"素质教育\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=素质教育\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"母婴喂养/护理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=母婴喂养/护理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"胎教/早教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=胎教/早教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家教理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=家教理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"养育女孩\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=养育女孩\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 管理 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"一般管理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=一般管理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市场/营销\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=市场/营销\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"企业与企业家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=企业与企业家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"金融/投资\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=金融/投资\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子商务\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=电子商务\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"会计/财务\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=会计/财务\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商业史传\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=商业史传\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战略管理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=战略管理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 两性 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"恋爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=恋爱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=婚姻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚恋综合\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=婚恋综合\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"性知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=性知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 哲学 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"中国哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=中国哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学知识读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学知识读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=西方哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=东方哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"伦理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=伦理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学理论与流派\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学理论与流派\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"马克思哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=马克思哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 宗教 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"佛教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=佛教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"道教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=道教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教理论与概况\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教理论与概况\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"伊斯兰教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=伊斯兰教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 传记 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"人物合集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=人物合集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=历史人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"财经人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=财经人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"政治人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=政治人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=文学家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历代帝王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=历代帝王\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=其他\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科学家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=科学家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科普 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"百科知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=百科知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科学世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=科学世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人类故事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=人类故事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宇宙知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=宇宙知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生物世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=生物世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生态环境\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=生态环境\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神秘现象\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=神秘现象\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"数理化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=数理化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 自然 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"总论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=总论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地球科学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=地球科学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=天文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科技史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=科技史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生物科学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=生物科学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"化学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=化学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"物理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=物理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 美食 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"家常菜谱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=家常菜谱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"药膳食疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=药膳食疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地方美食\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=地方美食\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"茶酒饮料\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=茶酒饮料\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"烹饪理论/手册\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=烹饪理论/手册\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"饮食文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=饮食文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西餐料理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=西餐料理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 休闲 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"幽默笑话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=幽默笑话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"旅游随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=旅游随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宠物杂事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=宠物杂事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=游戏\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家庭园艺\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=家庭园艺\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"户外探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=户外探险\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国内自助旅游指南\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=国内自助旅游指南\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"车载户外\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=车载户外\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 艺术 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=中国文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地域文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=地域文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=民族文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"艺术理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=艺术理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国学普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=国学普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 时尚 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"护肤/美容整形\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=护肤/美容整形\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家事窍门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家事窍门\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=时尚\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家装方法指导\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家装方法指导\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"瘦身美体\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=瘦身美体\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"服饰搭配/配饰\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=服饰搭配/配饰\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家装策略秘籍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家装策略秘籍\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"彩妆/美发/美甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=彩妆/美发/美甲\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1759387191336,
    "respondTime": 1987,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.rows[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.resourceID}}",
      "coverUrl": "$.picurl",
      "intro": "$.summary",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,'')}}",
      "lastChapter": "$.lastSerialname",
      "name": "$.resourceName##（.*",
      "wordCount": "$.contentsize"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.booklist[*]",
      "bookUrl": "$.bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.categoryInfoV4\n##\\d.*?\\:(.*?)\\:.*?(,|$)##$1$2}}\n{{$.updateInfo##已更新至.*##连载中}}\n##小说,",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree"
    },
    "searchUrl": "https://newopensearch.reader.qq.com/wechat?keyword={{key}}&start={{page-1}}&end=19",
    "weight": 100
  },
  {
    "bookSourceComment": "//20231225By_遇知\n/*\n备用①：https://s.pjxhmy.com值得阅读\n备用②：https://s.klzdp.com\n备用③：https://s.mocaiys.com\n备用④：https://s.fjwhcbsh.com\n备用⑤：https://s.hngxt.cn\n备用⑥：https://s.4billion.tv书香之家\n备用⑦：https://s.mysignal.cn\n备用⑧：https://s.lhdqsb.cn/\n备用⑨：https://s.chuangke.tv小小阅读\n备用⑩：https://s.bzatgv.com\n备用⑪：https://s.ibbxtx.com\n备用⑫：https://s.lansheweb.com\nApp：\n值得阅读：\n\"com.ruffianhankin.meritreader\",\nhttps://zdydapp.com\n点点阅读： \"com.diandianbook.androidreading\",\n1：https://ddydapp.com\n2：https://xxydapps.com/ddyd/\n小小追书： \n\"com.xiaoxiaobook.zuiread\",\n1：https://xxzs.app\n2：http://zsdqapp.net/xxzs/\n小小阅读：\n\"com.xxyuedu.chasingbooks\",\nhttps://xxydapps.com/xxyd/\n天天追书：\n\"com.tiantianzhuishu.books\",\nhttps://ttzs123.com\n追书大师：\n\"com.zhuishudashi.read\",\n1：https://zsdsapps.com\n2：https://zsds.app\n3：https://zsdsapp6.com/zsds/\n追书大全：\n\"com.zshuall.fread\",\nhttps://zsdq6.com\n极速笔趣：\n\"com.kkmfxs.xsfmkkapp\",\nhttps://biqugejisuapp.com\n书香之家：\n\"com.shuxiangzhijia.xyz\",\n1：https://shuxiangzhijiaapp.com\n2：http://queww.top\n3：https://ttzsapp.com/sxzj/\n笔趣阁开心版：\n\"c\u0000o\u0000m\u0000.\u0000b\u0000q\u0000k\u0000k\u0000x\u0000b\u00002\u00000\u00002\u00003\u0000.\u0000r\u0000e\u0000a\u0000d\u0000.\u0000t\u0000t\u0000\u0000\u0000\"\nhttps://bqgkxb.com/\n*/\n//解密(by  尐哖 & landseer)\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto.spec,\n    Packages.javax.crypto,\n    Packages.java.util,\n    Packages.java.io\n);\nwith(javaImport) {\n    function decode(str) {\n        data=java.base64DecodeToByteArray(str);\n        datas=Arrays.copyOfRange(data,16,data.length-16);\n        k=String(Arrays.copyOfRange(data, 0, 16));\n        k=java.digestHex(k,'sha-256');\n        ks=[];\n        length = k.length();\n        if (length % 2 == 1) {\n            length++;\n            k = \"0\" + k;\n        }\n        i = 0;\n        i2 = 0;\n        while (i < length) {\n            i3 = i + 2;\nks[i2] =intToByte( Integer.parseInt(k.substring(i, i3),16));\n            i2++;\n            i = i3;\n        }\n        i=String(Arrays.copyOfRange(data,data.length-16, data.length));\n         v=java.md5Encode(i);\n        bytes = i.getBytes();\n        bytes2 = v.getBytes();\n        ivs=[];\n        for (i = 0; i < 16; i++) {\n            ivs[i] = (bytes2[i] ^ bytes[i]) ^ (-1); \n        }\n       key = SecretKeySpec(ks, \"AES\");  \n       iv = IvParameterSpec(ivs);\n        var chipher = Cipher.getInstance(\"AES/CBC/PKCS5Padding\");\n        chipher.init(2, key, iv);\n        return String(chipher.doFinal(datas));\n    }\n}\nfunction intToByte(i) {\n        var b = i & 0xFF;\n        var c = 0;\n        if (b >= 128) {\n            c = b % 128;\n            c = -1 * (128 - c);\n        } else {\n            c = b;\n        }\n        return c;\n    }",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "小小阅读/书香之家app",
    "bookSourceType": 0,
    "bookSourceUrl": "https://s.mysignal.cn",
    "customButton": false,
    "customOrder": 349,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\nburl=source.getKey().replace('//s','//book');\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\t\n\tpush(\"❤推荐\", null, 1, 1);\ntj = \t[\"每日优选\",\"高分好书\",\"真香新书\",\"爆肝书单\",\"宝藏好书\",\"猜你喜欢\"];\n\ttj.map((title,type)=>{\n\turl = burl + `/book_city/v7_more/index/1/20/${type+1}/{{page}}.html`\n\t\tpush(title, url, 1, 0.25);\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\t\t\t\n\t\n\teval(String(source.bookSourceComment));\n\tfl_url = burl + \"/classify/v4/index.html\";\n\tfl_content = JSON.parse(java.ajax(fl_url)).data.content;\t\n  fl = JSON.parse(decode(fl_content));\n    \n\t[\n\t [\"❤男频-分类\",\"1\",fl.male],\n\t\t[\"❤女频-分类\",\"2\",fl.female],\n\t].map([title,gender,list]=>{\t\t\n\t\tpush(title, null, 1, 1);\n\t\t\tlist.map(($,index)=>{\t   \t    \n \t    \n \t    ltype_name = $.ltype_name;\n \t    ltype_id=$.ltype_id;\n \t    ltype_url = burl + `/classify/v4/all/${gender}/${ltype_id}/-1/-1/-1/{{page}}.html`; \t\t\t\t\t\t\t\t\t\t\n \t    push(\"@\"+ltype_name+\"@\", ltype_url, 1, 1);\n     \t\n     \tD=$.ltype_list;\n   \tD.map(($,index)=>{\t   \t     \t    \n   \t\t title = $.stype_name;\n     \tstype_id=$.stype_id;\n     \t\n     url = burl + `/classify/v4/all/${gender}/${ltype_id}/${stype_id}/-1/-1/{{page}}.html`; \t\t\t\t\t\t\t\t\t\t\t  \n     \tif(D.length > 3&&D.length!=4){\n\t\tif(index+1 <= D.length - D.length%3)\n\t\t\t {\tpush(title, url, 1, 0.25);}\n\t\t\t\telse{ push(title, url, 0, 0.29);}\n\t\t\t\t}\n\t\t\t\telse if(D.length == 4){ push(title, url, 1, 0.4);}\n\t\t\t\telse{ push(title, url, 1, 0.25);}\n        });  \n     });\n  });\n     \t\n     \t\nJSON.stringify(sort);",
    "header": "@js:\npackage = \"com.xxyuedu.chasingbooks\";\n//package = \"com.diandianbook.androidreading\";\n//package = \"com.zhuishudashi.read\";\n\ntime = Math.round(new Date()/1000);\nsign = java.md5Encode(package+1+time+\"vhjJVz1St6tK7!8n#B0MqRIuE2Dh7!C#\");\n\nJSON.stringify({\n\t\t\"pt\": 1,\n\t\t\"time\": time,\n\t\t\"sign\": sign,\n\t\t\"package\": package,\n\t\t\"User-Agent\": \"Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_2 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D167 Safari/9537.53_\"+package\n\t});",
    "lastUpdateTime": 1754560727201,
    "respondTime": 11700,
    "ruleBookInfo": {
      "author": "$.author",
      "coverUrl": "$.image",
      "init": "<js>\neval(String(source.bookSourceComment));\ninfo = JSON.parse(result).data.content;\nresult=JSON.parse(decode(info));\n\nsource_url = baseUrl.replace('/details/','/source/');\nsource_info = JSON.parse(java.ajax(source_url)).data.content;\n$ = JSON.parse(decode(source_info));\n\nv=String(book.getVariable(\"custom\"));\nx=v.match(/^\\d+$/)?v:0;\nx=parseInt(x)<$.length?x:0;\n\nresult.updated_at = $[x].updated_at;\nresult.last_chapter_name = $[x].last_chapter_name;\nresult.tocUrl = source.getKey().replace('//s','//catalog')+\"/\"+$[x].site_path;\nresult.image = source.getKey().replace('//s','//res') + '/'+result.image;\n\n\nif($.length>1){\n\t\ty = '\\n📌使用说明： 根据序号设置书籍变量来切换来源(默认0)\\n🎯当前源：序号🔺'+x+'🔻【'+$[x].site_name+'】'+(x==0?' (默认)':'');\nfor(i in $){\n\t\ty += '\\n❤序号🔺'+i+'🔻【'+$[i].site_name+'】 \\n选用率：'+$[i].choose+' \\n更新时间： '+$[i].updated_at+'\\n最新章节： '+$[i].last_chapter_name;\n\t}\nresult.remark += y\n}\n\n\nresult = JSON.stringify(result);\n</js>",
      "intro": "$.remark##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.ltype}}\n{{$.stype}}\n{{r=java.getString('$.status');\nif(r!=\"\") r=='1'?'完结':'连载';}}\n{{r=java.getString('$.score');\nr!=0.0?r+'分':\"\";}}\n{{$.updated_at## .*}}",
      "lastChapter": "$.last_chapter_name",
      "name": "$.name",
      "tocUrl": "$.tocUrl",
      "wordCount": "$.words_number"
    },
    "ruleContent": {
      "content": "$..content@js:java.aesBase64DecodeToString(result,\"Pxga!h*e4@T8xfOm\",\"AES/CBC/PKCS5Padding\",\"E&z!EHGLd$fli*8R\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author",
      "bookList": "<js>\neval(String(source.bookSourceComment));\nresult = JSON.parse(result).data.content;\nresult=JSON.parse(decode(result));\nif(baseUrl.match(/\\?keyword=/)){\nif(result.book[0]==undefined){\nsourl = source.getKey()+\"/v1/lists.api?keyword=\"+java.get('key');\nresult = JSON.parse(java.ajax(sourl)).data;\t\n}\n}\t\nresult = JSON.stringify(result);\n</js>\n$.book[*]||$..lists[*]||$.[*]",
      "bookUrl": "{{source.getKey().replace('//s','//d')}}/book/details/v4/{{parseInt(java.getString('$.book_id')/1000)}}/{{$.book_id}}.html",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "{{source.getKey().replace('//s','//res')}}/{{$.image}}",
      "intro": "$.remark",
      "kind": "{{$.ltype}}\n{{$.stype}}\n{{r=java.getString('$.status');\nif(r!=\"\") r=='1'?'完结':'连载';}}\n{{r=java.getString('$.score');\nr!=0.0?r+'分':\"\";}}",
      "name": "$.name",
      "wordCount": "$.words_number"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.name@js:java.aesBase64DecodeToString(result,\"Pxga!h*e4@T8xfOm\",\"AES/CBC/PKCS5Padding\",\"E&z!EHGLd$fli*8R\")",
      "chapterUrl": "{{source.getKey().replace('//s','//chapter')}}/{{$.path}}",
      "preUpdateJs": "java.refreshTocUrl();",
      "updateTime": "{{java.timeFormatUTC(java.getString('$.updated_at')*1000,'yyyy-MM-dd',8)}}"
    },
    "searchUrl": "/v4/1/lists.api?keyword={{java.put('key',key)}}&form=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "新酷书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xkushu.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 350,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1735040257042,
    "loginUrl": "",
    "respondTime": 1110,
    "ruleBookInfo": {
      "intro": "id.intro@text",
      "lastChapter": "id.details@tag.a.2@text",
      "name": "id.info@tag.h1@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tr",
      "bookUrl": "class.odd.0@tag.a.0@href",
      "coverUrl": "tag.a.0@href##^.+?(\\d+)\\D(\\d+).+##/35zwhtml/$1/$2/$2s.jpg",
      "kind": "class.even.2@text",
      "lastChapter": "class.even@a@text",
      "name": "class.odd@a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.xkushu.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频,🔞",
    "bookSourceName": "耽美小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.blxsw.cc#",
    "customButton": false,
    "customOrder": 351,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "现代都市::https://m.blxsw.cc/xiandaidushi/index_{{page}}.html\n古代架空::https://m.blxsw.cc/gudaijiakong/index_{{page}}.html\n穿越重生::https://m.blxsw.cc/chuanyuechongsheng/index_{{page}}.html\n玄幻灵异::https://m.blxsw.cc/xuanhuanlingyi/index_{{page}}.html\n推理悬疑::https://m.blxsw.cc/tuilixuanyi/index_{{page}}.html\n网游竞技::https://m.blxsw.cc/wangyoujingji/index_{{page}}.html\nＢＬ同人::https://m.blxsw.cc/BLtongren/index_{{page}}.html\nＧＬ百合::https://m.blxsw.cc/GLbaihe/index_{{page}}.html",
    "lastUpdateTime": 1728332637016,
    "respondTime": 2119,
    "ruleBookInfo": {
      "kind": "//td[@class='info_text']/text()"
    },
    "ruleContent": {
      "content": "//td[@id='text']/p[position() < last()-1]"
    },
    "ruleExplore": {
      "author": "//span[1]/text()",
      "bookList": "//ul/li[@class='book-li']",
      "bookUrl": "/a/@href",
      "kind": "//span[2]/text()",
      "lastChapter": "//span[3]/text()",
      "name": "/a//h4/text()"
    },
    "ruleSearch": {
      "author": "//h2/span[2]/text()",
      "bookList": "//h2",
      "bookUrl": "//h2/a//@href",
      "name": "//h2/a//text()"
    },
    "ruleToc": {
      "chapterList": "//option",
      "chapterName": "/text()",
      "chapterUrl": "/@value"
    },
    "searchUrl": "https://m.blxsw.cc/e/search/index.php,{\n\"method\":\"post\",\n\"body\":\"keyboard={{key}}&show=title&tempid=1&tbname=article\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "️爱看小说️",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.2kk.la#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 353,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1734984469427,
    "respondTime": 2918,
    "ruleBookInfo": {
      "author": "p.author@text",
      "coverUrl": ".synopsisArea_detail img@src",
      "intro": "p.review@text",
      "kind": ".synopsisArea_detail p.1:2:3@text\n##类别：|状态：|更新：",
      "lastChapter": ".str-over-dot a@text",
      "name": "span.title@text",
      "tocUrl": "text.完整目录@href"
    },
    "ruleContent": {
      "content": "#chaptercontent>p@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##（本章未完.*继续阅读）|{{chapter.title}}| \\(第.+页\\)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@data-original",
      "intro": "p.2@text##简介：",
      "kind": "0",
      "name": "p.0@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist p!0@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🍅 疯读小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://fiction.fengduxiaoshuo.com",
    "customButton": false,
    "customOrder": 354,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "❀                       男 生 频 道                      ❀::\n都市小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=4&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=82eaf9444d8db8b985b2ac71cde4b691&api_version=v1&_sv=v1&_ts=1602868844&_sign=M2RjM2U2ZjhkMzZkMzljMDFhNTRjYjVlZTk4YWY0OW\n玄幻小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=13&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=9a66ac1561a4dfc28ee20d6f120b5033&api_version=v1&_sv=v1&_ts=1602869126&_sign=YzhkNzc0YTlkNzYwMWU2MmFmNmY3NTJiMzQ0NWU2ZW\n仙侠小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=12&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=26577fc884ce13bdb6bf14c098743daf&api_version=v1&_sv=v1&_ts=1602869270&_sign=ZTMwNDM2NjJlNmY1YTNkYWNjMTRjOGY3ZWU5ZTQyND\n历史小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=17&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=bc656761c4d77e09bdc29901a4921b24&api_version=v1&_sv=v1&_ts=1602869361&_sign=ZmRmOTE4ZjZkMWMwZGRlYzI4NzFhNzlmNzNhOTU3YW\n科幻小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=16&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=d02610e08301e8309c9d1079d8755352&api_version=v1&_sv=v1&_ts=1602869576&_sign=OGYwMzQ3YTZlMDlkYTk3NDJmZjI2YjMxNjVhYzU5N2\n游戏小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=18&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=38a98da018285f5d480c18576d4723f3&api_version=v1&_sv=v1&_ts=1602869741&_sign=NTIxNzBmMmNhMzBjOGYzOWUwZGNhY2QzZjllYmExNT\n奇幻小说::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=0&classificationId=9&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201705000&nid=a11af07a6f283b0894d7cad041b11862&api_version=v1&_sv=v1&_ts=1602869796&_sign=ZWYzOWVjMGUyZDVmYzBiNDg2NjI5NDhiYzZkNzA5ZG\n❀                       女 生 频 道                      ❀::\n现代言情::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=10&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=30ddfb4846022b495872a142c9371fc0&api_version=v1&_sv=v1&_ts=1602870028&_sign=NWJkYTNjZDQ3OGQ0ZDkzNGUxMDdiNjhlMTYxMTdlMG\n古代言情::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=5&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=1546e2d86a13ed58a044f176c1d21a8e&api_version=v1&_sv=v1&_ts=1602870140&_sign=OTVkYzVhZjg2ZDZiNmM5M2U1YjdiZjY3OGI3ZTI3YT\n浪漫青春::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=6&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=91961c794a395c96871d14b9109e59d9&api_version=v1&_sv=v1&_ts=1602870180&_sign=MjZlMWNkZTNlMjI0YmEzZjVkZDllYTAzNGI1ZTc0MT\n玄幻言情::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=3&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=e0973f2178612332a06d430d7feb3b0b&api_version=v1&_sv=v1&_ts=1602870273&_sign=ZjM3MzllMzg2NTlkNDA2ZWY1Y2I5ZWE0ZjQ0MGNjMW\n仙侠奇缘::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=7&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=d5a1b3706c4619e9d4ddfa541f66ef39&api_version=v1&_sv=v1&_ts=1602870313&_sign=YzgyZjBjMTQwOWE2OWEzNWI2ZGRjMmM1NTg4MTBmN2\nN次い元::https://fiction.fengduxiaoshuo.com/doReader/get_book_info_by_tab?_token=7cbd25c8-07fa-4d93-8b0f-fe09908e3d28&gender=1&classificationId=29&wordsNum=-1&bookIsFinished=-1&sortTitle=0&page={{page}}&count=10&ntu=1201805000&nid=935a7398dffe11653d9c3b2052f5b4d2&api_version=v1&_sv=v1&_ts=1602870359&_sign=YTEwMTUwN2MzN2VjNjljNGM3YWM4ZTY1NTRhMDc2ZW",
    "lastUpdateTime": 1743751304780,
    "respondTime": 830,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "@js:result",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "$.bookAuthor",
      "bookList": "$..classficationBooks[*]",
      "bookUrl": "https://fiction.fengduxiaoshuo.com/doReader/enter_bookinfo_index?_token=869b9667-c66c-44d1-bba4-73e82cf2daee&bookId={{$.bookId}}",
      "coverUrl": "$.bookCoverImage",
      "intro": "$.bookDesc",
      "kind": "$.c_class_name&&{$.crazy_rating}分&&\n$.chapters_update_time",
      "lastChapter": "第{$.bookChapterNumber}章",
      "name": "$.bookTitle",
      "wordCount": "{$.book_words_num}字"
    },
    "ruleSearch": {
      "author": "$.bookAuthor",
      "bookList": "$.result[*]",
      "bookUrl": "https://fiction.fengduxiaoshuo.com/doReader/enter_bookinfo_index?_token=869b9667-c66c-44d1-bba4-73e82cf2daee&bookId={{$.bookId}}",
      "coverUrl": "$.bookCoverImage",
      "intro": "$.bookDesc",
      "kind": "$.c_class_name&&{$.crazy_rating}分&&\n$.chapters_update_time",
      "lastChapter": "第{$.bookChapterNumber}章",
      "name": "$.bookTitle",
      "wordCount": "{$.book_words_num}字"
    },
    "ruleToc": {
      "chapterList": "$..detailedBookInfo.bookChapterAllInfo[*]",
      "chapterName": "$.chapterTitle##[\\(（].*[求更谢乐发推].*[）\\)]",
      "chapterUrl": "$.content_url"
    },
    "searchUrl": "https://fiction.fengduxiaoshuo.com/doReader/search_book?_token=869b9667-c66c-44d1-bba4-73e82cf2daee&action=search_book&search_keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "目录下页修复 by: yk游客2580",
    "bookSourceGroup": "免费",
    "bookSourceName": "星星小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xxtxt.com",
    "customButton": false,
    "customOrder": 355,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734548977936,
    "loginCheckJs": "",
    "respondTime": 2191,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "{{@@[property$=chapter_name]@content}}\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "name": "[property$=book_name]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "class.font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".book_other.0@span.0@text",
      "bookList": "class.col-12 col-md-6",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "kind": ".book_other.1:2@text##.*：|.*：",
      "lastChapter": ".book_other.3@a@text",
      "name": "h3@a@text##.*\\]"
    },
    "ruleToc": {
      "chapterList": ".book_list2 li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "isVip": "",
      "nextTocUrl": ".page-link@a@href\n@js:\nnext = [];\nurl = result[0];\nlength = result.length;\np = src.match(/page-link\">1\\/(\\d+)/)||[];\npage = Number(p[1]);\nif(length < page){\n\tfor(i = 2; i <= page; i++){\n\t\tlink = String(url).replace(/_\\d+/,`_${i}`);\n\t\tnext.push(link)\n\t\t}\n\t\tnext;\n\t}else result"
    },
    "searchUrl": "http://www.xxtxt.com/search.php?q={{key}},{\n  \"method\": \"GET\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "半废了。但还可用。\n大概最新的十章+不能看。\nby.Thomas哟\n小说交流群462030508。\nA群637775313不加人。若家炸了查看此群群资料找新家。\n✱✱资源取自网络，仅供学习参考，请同学们在24小时内删除✱✱\n🆙💯Dragon Quest QB\n{{book.origin}}/wenxue/buy/ad-chapter/v4?apn=1&resourceId={{baseUrl.match(/bookId=(\\d+)/)[1]}}&serialId={{$.serialID}}",
    "bookSourceGroup": "免费",
    "bookSourceName": "硬币女宝",
    "bookSourceType": 0,
    "bookSourceUrl": "DragonQuestQBqqnv",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 356,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✱　　　　　　✱ 畅  销  榜 ✱　　　　　　✱\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/listDispatch?action=rank&actionTag=girl&actionId=523346&pagestamp={{page}}&plan=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　上架30天内　\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/listDispatch?action=rank&actionTag=girl&actionId=523318&pagestamp={{page}}&plan=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　上架120天内　\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/listDispatch?action=rank&actionTag=girl&actionId=523320&pagestamp={{page}}&plan=1&signal=nextpage　\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　上架300天内？　\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/listDispatch?action=rank&actionTag=girl&actionId=523323&pagestamp={{page}}&plan=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　上架300天以上　\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/listDispatch?action=rank&actionTag=girl&actionId=523324&pagestamp={{page}}&plan=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱  书    库  ✱　　　　　　✱\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 古  言 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30013&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30013&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30013&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30013&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    女尊王朝\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30014&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    古典架空\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30015&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    古代情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30016&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    穿越奇情\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30017&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    宫闱宅斗\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30018&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    经商种田\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30019&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    西方时空\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30094&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    清穿民国\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30095&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    上古蛮荒\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30096&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    热血江湖\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30097&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 现  言 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30020&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30020&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30020&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30020&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    都市生活\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30021&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    婚恋情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30022&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    娱乐明星\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30023&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    商战职场\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30026&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    都市异能\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30027&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    豪门世家\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30028&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    极道江湖\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30029&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    民国情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30030&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    异国情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30098&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 幻  情 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30001&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30001&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30001&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30001&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    东方玄幻\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30002&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    异世大陆\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30003&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    远古神话\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30004&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    异族恋情\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30005&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    魔法幻情\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30006&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    西方奇幻\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30007&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    异能超术\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30092&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 仙  侠 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30008&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30008&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30008&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30008&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    武侠情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30009&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    古典仙侠\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30010&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    现代修真\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30011&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    远古洪荒\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30012&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    仙侣奇缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30093&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 青  春 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30031&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30031&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30031&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30031&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    叛逆成长\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30032&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    青春纯爱\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30033&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    青春疼痛\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30034&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    青春校园\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30035&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 游  戏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30050&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30050&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30050&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30050&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    电子竞技\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30051&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    网游情缘\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30052&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    游戏异界\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30053&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    体育竞技\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30054&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 科  幻 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30042&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30042&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30042&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30042&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    星际恋歌\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30043&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    时空穿梭\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30044&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    未来世界\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30045&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    古武机甲\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30046&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    超级科技\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30047&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    进化变异\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30048&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    末世危机\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30049&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 悬  疑 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30036&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30036&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30036&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30036&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    推理侦探\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30037&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    悬疑探险\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30039&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    奇妙世界\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30040&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    神秘文化\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30041&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 轻  文 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30055&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30055&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30055&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30055&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    同人衍生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30100&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    唯美幻想\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30101&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    萌系变身\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30102&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    青春日常\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30103&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    搞笑吐槽\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30104&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    古典衍生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30105&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    影视衍生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30106&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    动漫衍生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30107&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    其他衍生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30108&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 短  篇 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30083&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30083&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30083&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30083&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    生活随笔\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30086&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    短篇小说\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30089&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱ 现  实 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30120&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 收  藏 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,3&actionId=30120&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字  数 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,9&actionId=30120&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 更  新 \",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,2&actionId=30120&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    家与情感\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30121&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    行业人生\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30122&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    探索科幻\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30123&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    人文博览\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?actionTag=,-1,-1,-1,-1,6&actionId=30124&action=categoryV2&pagestamp={{page}}&categoryFlag=1&signal=nextpage\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"    　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱  风  格  ✱　　　　　　✱\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?searchFrom=61000012&actionTag=61000012,-1,-1,-1,-1,10&actionId=&page=1&base_tagid=61000012&action=tagV2&needHiddenCondition=0&categoryFlag=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"甜宠\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"轻松\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"温馨\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=630001002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=630001002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爆笑\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"虐文\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌系\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=630001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=630001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"正剧\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悲剧\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爽文\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=63000005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=63000005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱  流  派  ✱　　　　　　✱\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?searchFrom=61000012&actionTag=61000012,-1,-1,-1,-1,10&actionId=&page=1&base_tagid=61000012&action=tagV2&needHiddenCondition=0&categoryFlag=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 1V1\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"HE\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"日久生情\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"权谋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢喜冤家\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000025,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000025\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"扮猪吃虎\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000021,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000021\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"逆袭\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"强强\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家长里短\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000026,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000026\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫斗\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"先婚后爱\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000074,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000074\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚恋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000051,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000051\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"相爱相杀\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000029,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000029\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61004002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61004002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青梅竹马\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000024,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000024\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"破镜重圆\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000031,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000031\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修仙\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000039,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000039\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女扮男装\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000023,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000023\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"一见钟情\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000028,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000028\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"独宠\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001026,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001026\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"双向暗恋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"同居\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"致富\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000063,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000063\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"马甲\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000056,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000056\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"年代文\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"虐渣\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000059,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000059\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"隐婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"美食\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"前世今生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000062,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000062\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000041,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000041\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄学\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑推理\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000076,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000076\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"职场商战\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"巧娶\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000053,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000053\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世家\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"契约婚姻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"位面\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"黑化\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000055,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000055\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"初恋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游情缘\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61006003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61006003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电竞\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000034,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000034\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奋斗\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61007003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61007003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"闪婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"清穿\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"攻略\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61003004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61003004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"农门\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001030,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001030\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"师徒\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000075,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000075\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无CP\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000068,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000068\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"竞技\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61006001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61006001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"直播\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生死大爱\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000044,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000044\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61006004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61006004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"姐弟恋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000043,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000043\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"代嫁\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000071,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000071\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宠\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000046,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000046\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"追妻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001038,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001038\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"开挂\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001024,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001024\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婆媳\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000049,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000049\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"失忆\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"倒追\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000061,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000061\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"治愈\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001035,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001035\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"御兽流\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61003007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61003007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王者荣耀\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61006002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61006002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"机甲\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61007004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61007004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"合约恋爱\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000054,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000054\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"探险\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001029,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001029\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"兽世\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000047,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000047\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"反穿\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"近水楼台\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000065,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000065\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末穿现\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000066,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000066\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"逃婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000064,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000064\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"创业\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"死对头\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000057,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000057\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"双重生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000067,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000067\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西幻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000050,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000050\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61009002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61009002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"反转\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"离婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001031,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001031\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"崩人设\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古蛮荒\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"真假千金\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001025,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001025\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"催婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000045,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000045\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001020,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001020\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"替身\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000069,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000069\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"灵魂转换\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000036,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000036\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"相亲\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科举\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000052,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000052\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"赌石\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000018,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000018\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"权臣\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001039,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001039\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爆红\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001021,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001021\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"吐槽\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"CP\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001032,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001032\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"读心术\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000060,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000060\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"群穿\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000035,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000035\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"翻车\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育竞技\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000048,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000048\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再婚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001033,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001033\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"错嫁\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001023,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001023\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"正史\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视原著\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000077,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000077\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"满级流\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女强\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000073,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000073\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宅斗\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61001004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61001004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宝\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统流\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000072,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000072\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐圈\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61002009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61002009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"打脸\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61007002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61007002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"空间\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿书\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000019,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000019\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"金手指\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=61000017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=61000017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"别后重逢\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001019,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001019\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"基建\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=610001034,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=610001034,\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱  人  物  ✱　　　　　　✱\",\"url\":\"https://commontgw6.reader.qq.com/v7_6_6/book/search?searchFrom=61000012&actionTag=61000012,-1,-1,-1,-1,10&actionId=&page=1&base_tagid=61000012&action=tagV2&needHiddenCondition=0&categoryFlag=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"腹黑\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"帝王\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王爷\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"痴情\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王妃\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"霸道\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"双洁\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"护短\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"杀伐果断\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"皇后\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"高冷\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"明星\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"男神\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"可盐可甜\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古灵精怪\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"傲娇\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"公主\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神医\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校草\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超A\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"贵女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"醋王\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400026,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400026\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"首席\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"呆萌\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"嫔妃\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100030,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100030\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"忠犬\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400020,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400020\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"戏精\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"双商爆表\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001019,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001019\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"秀外慧中\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"颜控\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200030,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200030\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"白月光\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200024,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200024\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"庶女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"大神\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"白富美\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"妖孽\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"将军\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"自强\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女帝\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"闷骚\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"黑莲花\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200028,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200028\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上神\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300034,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300034\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"善良\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"御姐\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200020,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200020\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萝莉\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"医生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"才女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"万人迷\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200031,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200031\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"财迷\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200035,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200035\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"杀手\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙尊\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"特工\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悍妻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200037,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200037\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"小狼狗\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400018,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400018\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙君\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300039,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300039\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玩世不恭\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宠妻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=624001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=624001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影帝\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=623001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=623001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女汉子\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200033,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200033\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"作精\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200038,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200038\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心机\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"反差萌\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001023,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001023\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"旺夫\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200036,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200036\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"弃妇\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天才\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"毒医\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"小野猫\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200042,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200042\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"痞帅\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"毒舌\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"厨娘\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"淡定\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001020,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001020\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"小奶狗\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神帝\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300032,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300032\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"恶魔\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"甜妻\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=622001005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=622001005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"丑女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200015,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200015\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"妖艳\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200039,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200039\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"学生\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"糙汉\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400024,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400024\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女主萌娃\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=622001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=622001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"酷帅\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001018,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001018\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"精分\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"大叔\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300030,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300030\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"召唤师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001017,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001017\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"男配\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=623001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=623001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"逗比\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"首富\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"精英\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔尊\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"傻白甜\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200019,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200019\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"狐狸\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"妖精\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"极品\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001026,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001026\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"剩女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"纨绔\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"丫环\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"佛系\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"咸鱼\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001025,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001025\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"相师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001019,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001019\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"福晋\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62101001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62101001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"律师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001000,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001000\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"警察\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"钢铁直男\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400027,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400027\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"顶流\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001028,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001028\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"低智\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001021,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001021\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"吸血鬼\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女神\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=622001006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=622001006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300043,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300043\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宅女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200026,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200026\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"学渣\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001022,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001022\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"设计师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"白领\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600013,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600013\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网红\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001018,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001018\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"法医\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"老师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神偷\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"白莲花\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200023,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200023\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"皇叔\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=623001004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=623001004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"首辅\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"侦探\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"毒妃\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=622001007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=622001007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天师\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001006,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"教授\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"NPC\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600009,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"小妾\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"精灵\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100033,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100033\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"败家\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"黑客\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科学家\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"蛇王\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300016,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300016\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"丞相\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300041,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300041\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"龙族\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001005,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"掌门\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62300035,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62300035\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"死神\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62600008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62600008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女仆\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100011,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"总裁\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=626001004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=626001004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"大佬\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700003,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"嫡女\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100007,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女配\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100032,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100032\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"偏执\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001008,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影后\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62100023,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62100023\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"全能\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200029,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200029\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"反派\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001012,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001012\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"炮灰\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700004,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"学霸\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700001,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"病娇\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001010,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"逆袭\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"吃货\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=627001014,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=627001014\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"福气包\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200040,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200040\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"锦鲤\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200018,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200018\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"团宠\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62700002,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62700002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢脱\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62200041,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62200041\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"暖男\",\"url\":\"https://commontgw.reader.qq.com/v7_6_6/book/search?action=tagV2&actionTag=62400025,-1,-1,-1,-1,6&actionId=-1&pagestamp={{page}}&categoryFlag=1&signal=nextpage&searchFrom=62400025\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1734862206536,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1621,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$..author",
      "bookList": "$..second[*]&&$..bookList[*]&&$..rankList[*]",
      "bookUrl": "$..bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "coverUrl": "$..bid\n@js:\ns = result\nfunction gt(s){\n\ta = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$..intro",
      "kind": "$..catel2name&&$..catel3name",
      "lastChapter": "$..lastChapterName",
      "name": "$..title",
      "wordCount": "$..totalWords"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.booklist[*]",
      "bookUrl": "$.bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.categoryInfoV4\n##\\d.*?\\:(.*?)\\:.*?(,|$)##$1$2}}\n{{$.updateInfo##已更新至.*##连载中}}\n##小说,",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isPay": "$.isFree",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree",
      "isVolume": "",
      "nextTocUrl": "",
      "preUpdateJs": "",
      "updateTime": ""
    },
    "searchUrl": "https://newopensearch.reader.qq.com/wechat?keyword={{key}}&start={{page-1}}&end=19",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞自制永久有效】",
    "bookSourceType": 0,
    "bookSourceUrl": "https://po18to.rouwenapp.com",
    "customButton": false,
    "customOrder": 359,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "都市言情::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=22\n奇幻玄幻::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=25\n武侠仙侠::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=27\n穿越重生::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=28\n综合其他::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=29\n校园言情::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=21\n科幻异能::https://api.rouwenapp.com/reader/book/category/book?app_key=4037465544&page=<{{page}}>&cateId=26\n",
    "header": "{\n  \"User-Agent\" : \"okhttp\\/3.11.0\"\n}",
    "lastUpdateTime": 1756039717355,
    "respondTime": 4804,
    "ruleBookInfo": {
      "intro": "@JSon:$.data.intro",
      "tocUrl": "@JSon:https://api.rouwenapp.com/reader/book/chapter?bookId={$.data.id}&number=0"
    },
    "ruleContent": {
      "content": "id.rtext@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@JSon:$.author",
      "bookList": "@JSon:$.data.*",
      "bookUrl": "@JSon:$.id@js:\"https://api.rouwenapp.com/reader/book/detail?bookId=\"+result",
      "coverUrl": "@JSon:$.cover",
      "lastChapter": "@JSon:$.last_update_chapter_name||$..intro",
      "name": "@JSon:$.title"
    },
    "ruleToc": {
      "chapterList": "@JSon:$.data.chapterList.*",
      "chapterName": "@JSon:$.title",
      "chapterUrl": "@JSon:$.contentUrl",
      "nextTocUrl": "https://api.rouwenapp.com/reader/book/chapter/next?chapterId={$.data.chapterId}"
    },
    "searchUrl": "https://api.rouwenapp.com/reader/book/search?app_key=4037465544&page=<{{page}}>&keyword={{key}}&bookSource=po18to",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔仙阁子",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.bixiange.me",
    "customButton": false,
    "customOrder": 360,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "都市言情::/dsyq/index<,_{{page}}>.html\n武侠修真::/wxxz/index<,_{{page}}>.html\n玄幻奇幻::/xhqh/index<,_{{page}}>.html\n穿越架空::/cyjk/index<,_{{page}}>.html\n科幻竞技::/khjj/index<,_{{page}}>.html\n鬼话悬疑::/ghxy/index<,_{{page}}>.html\n军事历史::/jsls/index<,_{{page}}>.html\n官场商战::/guanchang/index<,_{{page}}>.html\n乡土风情::/xtfq/index<,_{{page}}>.html\n耽美小说::/dmtr/index<,_{{page}}>.html\n同人小说::/trxs/index<,_{{page}}>.html\n精品小说::/jqxs/index<,_{{page}}>.html\n排行榜::/sort/index<,_{{page}}>.html",
    "header": "{\n\t\"cookie\":\"eltphlastsearchtime=1658574421\"\n\t}",
    "lastUpdateTime": 1733731162193,
    "respondTime": 3798,
    "ruleBookInfo": {
      "author": "##作者：([^<]+)<##$1###",
      "intro": "class.descInfo@text",
      "kind": "##分类：([^<]+)<##$1###",
      "lastChapter": "class.catalog@li.-1@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#mycontent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "##作者：([^<]+)<##$1###",
      "bookList": "class.clearfix@li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@src",
      "intro": "class.descript@text",
      "kind": "",
      "lastChapter": "",
      "name": "class.title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://m.bixiange.me/e/search/indexpage.php,{\n  \"body\": \"keyboard={{key}}&show=title&classid=0\",\n  \"method\": \"POST\",\n  \"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "\t//By情无羁25.04.26，部分规则借用仓库源\nobj={\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ilOK5L.png\">': \"口\",\n    \n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Xf9aJq.png\">': \"殖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/turna7.png\">': \"睾\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ArDW8p.png\">': \"茎\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/AaWgxR.png\">': \"柱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/AANm7Y.png\">': \"殖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fApFna.png\">': \"茎\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/LyXOOy.png\">': \"水\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3QCgRJ.png\">': \"姐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pBHCx8.png\">': \"物\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/tBmeuv.png\">': \"庭\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7jTtWR.png\">': \"顶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/r4xj9c.png\">': \"高\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/SsU0mw.png\">': \"性\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/h2MvMb.png\">': \"欢\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NzIgrB.png\">': \"爱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/DLwFwF.png\">': \"美\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4wgeTe.png\">': \"春\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OB0pIY.png\">': \"道\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CbJPLb.png\">': \"种\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZiMHwh.png\">': \"色\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8hIwIG.png\">': \"花\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Bckft8.png\">': \"身\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NH7oMT.png\">': \"做\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GKZeZ8.png\">': \"子\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HOK3wx.png\">': \"眼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1WM5JJ.png\">': \"头\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gmsivF.png\">': \"入\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/L45hsM.png\">': \"进\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2G97O6.png\">': \"感\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qxkXTG.png\">': \"牛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eefsZa.png\">': \"裤\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/itSd75.png\">': \"挺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jYTCiy.png\">': \"臀\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9bcSIE.png\">': \"部\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7sa0Wv.png\">': \"胸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yW5LmB.png\">': \"体\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UShyYf.png\">': \"点\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fKA3ec.png\">': \"道\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/srzIy6.png\">': \"水\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PARTrc.png\">': \"子\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TJrr1J.png\">': \"高\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YyLHKH.png\">': \"毛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7gZhax.png\">': \"进\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/aSLjvr.png\">': \"身\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ODCbMU.png\">': \"宠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2ZiKGZ.png\">': \"爱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KKhsp7.png\">': \"性\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/SykKhb.png\">': \"头\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/plFfIo.png\">': \"入\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Ay9JDT.png\">': \"管\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1qnWZR.png\">': \"欢\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/b0CfE0.png\">': \"花\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yDtfbB.png\">': \"美\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/j2ws4j.png\">': \"热\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YkGLUA.png\">': \"马\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3Qufi9.png\">': \"出\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kq3TcT.png\">': \"巴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kfltfq.png\">': \"露\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XkP7SS.png\">': \"种\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kYf9aG.png\">': \"处\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Bf1Z4P.png\">': \"融\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/t2wX8D.png\">': \"精\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xTgVF8.png\">': \"感\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2P08K2.png\">': \"深\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JbfyxS.png\">': \"紧\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fHz6z2.png\">': \"股\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/LRaKVW.png\">': \"点\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sN3aFm.png\">': \"毛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0mnZkw.png\">': \"道\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ljjkpE.png\">': \"马\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cMy3y2.png\">': \"高\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HV69Sf.png\">': \"花\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Ir9tAR.png\">': \"爽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7c1JeG.png\">': \"姐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ehw9wJ.png\">': \"做\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eOSvYn.png\">': \"出\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/c3SuSK.png\">': \"种\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/M6EiT7.png\">': \"皮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/n3lz2M.png\">': \"眼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hFJu7D.png\">': \"配\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2MM0bU.png\">': \"流\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cJvz3o.png\">': \"部\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kxhoea.png\">': \"露\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/C5mkg5.png\">': \"点\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bvDKfN.png\">': \"吸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bzJPvS.png\">': \"感\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oWXxBb.png\">': \"紧\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zqggeB.png\">': \"乱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VmLKxC.png\">': \"具\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/014kbn.png\">': \"强\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YY31En.png\">': \"道\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/DVM8PI.png\">': \"美\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3pDD5J.png\">': \"高\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wXHIxb.png\">': \"子\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/lQ9J6Y.png\">': \"种\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/IetNaz.png\">': \"眼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kpDE1d.png\">': \"交\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5oiGN5.png\">': \"骚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JlRj8s.png\">': \"口\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QQWz5s.png\">': \"进\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Tk1nSu.png\">': \"身\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KoI08O.png\">': \"融\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NBUQ5T.png\">': \"部\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pBxHZ3.png\">': \"吹\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/AM0fIa.png\">': \"花\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HYK9uE.png\">': \"出\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ICRDdC.png\">': \"欢\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JmwaNM.png\">': \"精\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/URWg6F.png\">': \"爱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cY9SIz.png\">': \"身\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/z6ReYb.png\">': \"入\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/St4M28.png\">': \"处\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/H7e9A7.png\">': \"胸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Smtw59.png\">': \"摩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TKPXt8.png\">': \"擦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YDHglI.png\">': \"性\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sQlQuU.png\">': \"物\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WRqsih.png\">': \"欲\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VzfdNi.png\">': \"流\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OPJ2bs.png\">': \"跳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FZSjec.png\">': \"顶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/479pPU.png\">': \"庭\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/x3lcl4.png\">': \"交\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Wz0a4W.png\">': \"根\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/laxIIx.png\">': \"娇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XaKORg.png\">': \"口\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VcI9kR.png\">': \"挺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/RVbdMh.png\">': \"臀\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/E0PoOj.png\">': \"深\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xAtU1H.png\">': \"紧\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Kyrg6p.png\">': \"乳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/inePU1.png\">': \"荡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KIiTZ6.png\">': \"软\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TFhygq.png\">': \"眼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9BjstR.png\">': \"唇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/A8FzvU.png\">': \"缝\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8EfHre.png\">': \"跳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1VF3S8.png\">': \"出\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3He8Bp.png\">': \"胸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oKnqt5.png\">': \"摩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5aURgW.png\">': \"擦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UJWSl3.png\">': \"滑\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/USTRo1.png\">': \"润\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qGGJy5.png\">': \"臀\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bdILAO.png\">': \"头\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9dUKaI.png\">': \"肥\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9Rs4U8.png\">': \"揉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eNv9Q2.png\">': \"捏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/o7KNCt.png\">': \"美\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xUUtAe.png\">': \"色\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EjYbHr.png\">': \"滚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Sh1G9u.png\">': \"硬\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/go1Itw.png\">': \"肉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/IJaCTb.png\">': \"棒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WgOOBk.png\">': \"顶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Uvrt2V.png\">': \"腿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8MKgbw.png\">': \"肿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/mxDVDt.png\">': \"喘\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/doePOF.png\">': \"粗\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VYtuSj.png\">': \"吸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/mpi4Ho.png\">': \"巨\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZAvQVT.png\">': \"乳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8v53CJ.png\">': \"呻\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xfxbY7.png\">': \"吟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CGVSpK.png\">': \"含\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/T0eXGu.png\">': \"头\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gEJwn2.png\">': \"摩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5rOOID.png\">': \"擦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UtPcjY.png\">': \"子\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/St59JF.png\">': \"按\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Vsm2rM.png\">': \"虐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Tdb8Pr.png\">': \"抽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FjRhET.png\">': \"插\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/c5ShnK.png\">': \"性\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yRHC5w.png\">': \"骚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/uFeBTq.png\">': \"欲\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NaHoOC.png\">': \"体\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Huu9DB.png\">': \"裸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6akHXK.png\">': \"水\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/720HsY.png\">': \"穴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qAwS0V.png\">': \"坚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/SHWIR0.png\">': \"硬\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sJMa0q.png\">': \"肉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/INIbnU.png\">': \"塞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rEVw1D.png\">': \"进\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fYCbHq.png\">': \"乱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZuFQv4.png\">': \"揉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1JsL4C.png\">': \"捏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ff2ADZ.png\">': \"魔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZhYaRZ.png\">': \"干\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jrqmdu.png\">': \"淫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/K50TFd.png\">': \"深\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iNTxVX.png\">': \"热\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KNZ7Je.png\">': \"操\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/aOqp2G.png\">': \"拔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kSzfd1.png\">': \"胯\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NcS8PC.png\">': \"根\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qcIGcG.png\">': \"做\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rUtCIr.png\">': \"吮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9J1iZi.png\">': \"吸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ImUdOs.png\">': \"奴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nWN7tS.png\">': \"喉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/R0bdEJ.png\">': \"射\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xGGUPI.png\">': \"精\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/O8adJp.png\">': \"液\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8njezL.png\">': \"流\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Hdn1Na.png\">': \"蛋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/B17CKY.png\">': \"巴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OBdTL5.png\">': \"淫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rpmSPh.png\">': \"跳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/IwWuCO.png\">': \"呻\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7EpQYz.png\">': \"弄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yS5Tkx.png\">': \"毛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hvJCXu.png\">': \"慰\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KPAWRO.png\">': \"精\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1RkBBF.png\">': \"泄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/l3HckR.png\">': \"乱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/M79Nts.png\">': \"皮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kFqQ6D.png\">': \"塞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FLSs5y.png\">': \"干\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sKXQJ7.png\">': \"食\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bhd9l7.png\">': \"色\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JdS7Tc.png\">': \"腿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/whYnKt.png\">': \"牛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/x4YJ9s.png\">': \"巴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Jmshps.png\">': \"润\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iWXEfK.png\">': \"胸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1CaDvL.png\">': \"拔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Uhg8zk.png\">': \"软\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2oVqoi.png\">': \"水\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8mjbou.png\">': \"暖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TkQheK.png\">': \"姐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nKNumT.png\">': \"处\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/mtedsY.png\">': \"感\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/x85W3O.png\">': \"腿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/77fCwa.png\">': \"瘫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hImtX5.png\">': \"软\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oUD8Qz.png\">': \"色\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/LcYPGD.png\">': \"配\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Pny45r.png\">': \"棒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/q7iesT.png\">': \"强\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5RBvm2.png\">': \"欲\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5zRSDU.png\">': \"浓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/BtoYbi.png\">': \"露\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JQi3e4.png\">': \"套\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NzPvlf.png\">': \"部\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/64C1Rv.png\">': \"巨\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Uzsejp.png\">': \"欢\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XJYAkX.png\">': \"蛋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/uewEvO.png\">': \"春\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5PGrrZ.png\">': \"奴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/S44KBO.png\">': \"管\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sGR4oa.png\">': \"捏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3gYxgH.png\">': \"巴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5XDLQE.png\">': \"奴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/p139WM.png\">': \"姐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EfHShT.png\">': \"肉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/BROarP.png\">': \"触\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZXXZqQ.png\">': \"体\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YFdww5.png\">': \"深\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fgbHRY.png\">': \"强\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sRDCf1.png\">': \"紧\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/RwkYLf.png\">': \"马\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pzjSl5.png\">': \"魔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Yi7fw4.png\">': \"根\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EvEDGW.png\">': \"奴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PZ09AR.png\">': \"阴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5DSCyJ.png\">': \"阳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/scLmAv.png\">': \"硬\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CdPORz.png\">': \"肉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sYeI1S.png\">': \"喷\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nlkQIt.png\">': \"马\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CjjjaL.png\">': \"撸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EVKy9X.png\">': \"润\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OIzxWa.png\">': \"呻\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jx5pzD.png\">': \"插\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kdcXrY.png\">': \"入\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/lDEjbZ.png\">': \"蜜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NeidiD.png\">': \"穴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VjeprZ.png\">': \"弄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FYgtVw.png\">': \"挺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YZsCIB.png\">': \"娇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/dl8OW7.png\">': \"欲\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TjQtn3.png\">': \"舔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/tCevO8.png\">': \"淫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3oymT5.png\">': \"食\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/seK78b.png\">': \"射\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4qoddK.png\">': \"伦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/phhKls.png\">': \"触\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jJfs5x.png\">': \"乱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/paLfX2.png\">': \"口\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UYjnaR.png\">': \"骚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Syw09t.png\">': \"皮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/n5GcvO.png\">': \"臀\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wyB4nH.png\">': \"插\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/57h9qx.png\">': \"湿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4VIqmc.png\">': \"蜜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OLZwYF.png\">': \"穴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yw8ylq.png\">': \"娇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NOUIlc.png\">': \"牛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0aaCUJ.png\">': \"裤\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/33t1i9.png\">': \"棒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nX55dd.png\">': \"塞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wItDKi.png\">': \"抽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3lplvB.png\">': \"腿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0WMp51.png\">': \"乳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qcwU8J.png\">': \"弄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UeuPsZ.png\">': \"荡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Ucu67m.png\">': \"潮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fbIoVY.png\">': \"交\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1xGccU.png\">': \"嫩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3Vd6ER.png\">': \"粗\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/I2oZoV.png\">': \"爽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9F5vGV.png\">': \"奶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UvBDrj.png\">': \"唇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ik0rhP.png\">': \"浓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4jEOYD.png\">': \"液\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NLqnhG.png\">': \"滑\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nYoFPx.png\">': \"舔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Cohbia.png\">': \"瘫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OHRlFw.png\">': \"点\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9V0tbC.png\">': \"滚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hDFASa.png\">': \"烫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PEfxJN.png\">': \"液\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oZydur.png\">': \"灌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zhj7ul.png\">': \"宫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zCzn8w.png\">': \"舌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eSLvbk.png\">': \"舔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hXgp1A.png\">': \"滑\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9mc5aW.png\">': \"揉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MuTlcG.png\">': \"捏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0UUxqH.png\">': \"瓣\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fh0ckZ.png\">': \"吟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MDXMeL.png\">': \"屁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0aSzDB.png\">': \"股\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/RgMIL6.png\">': \"抽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rLViPN.png\">': \"裸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KXBBHQ.png\">': \"蜜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QObbVj.png\">': \"晕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ieC03d.png\">': \"庭\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qDK7v2.png\">': \"唇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Sgb7hr.png\">': \"插\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/58XkzN.png\">': \"泄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EkGMew.png\">': \"奸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qrD7R7.png\">': \"具\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fCpf2U.png\">': \"潮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/LoC2TD.png\">': \"射\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/H1obkD.png\">': \"顶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nCOO3r.png\">': \"吹\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ljxFVc.png\">': \"做\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zMxgZQ.png\">': \"逼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FWXXkE.png\">': \"露\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hkXMg4.png\">': \"撸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qCpuUD.png\">': \"鸡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4V2GIv.png\">': \"壁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4eKmM6.png\">': \"筋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KmS4Ge.png\">': \"管\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sATgP4.png\">': \"毛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zkZyEZ.png\">': \"筋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6aLpfL.png\">': \"荡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HAPIjR.png\">': \"轮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fHceb7.png\">': \"器\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/tjWQG1.png\">': \"管\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Q1nd7X.png\">': \"挺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ntOxzF.png\">': \"物\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/K9ZuDw.png\">': \"敏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Lv6knF.png\">': \"体\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7zuFMT.png\">': \"宫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9C0lZB.png\">': \"户\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3AgUho.png\">': \"缝\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8ADyfn.png\">': \"爱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pxinyw.png\">': \"物\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/uG5a05.png\">': \"触\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2N02xy.png\">': \"裸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wJsIa3.png\">': \"按\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cq6NBC.png\">': \"强\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/e7esy9.png\">': \"宫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sKji9N.png\">': \"魔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/v0Y7Se.png\">': \"荡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/43owDW.png\">': \"胯\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/2syqxW.png\">': \"套\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hDdo2f.png\">': \"坚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jPQ9dG.png\">': \"痒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EGX3Q6.png\">': \"勃\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HAuw8A.png\">': \"揉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/N6WkoO.png\">': \"喘\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/lmtikj.png\">': \"潮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kcAqHs.png\">': \"龟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OqKB00.png\">': \"瓣\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kzcAFw.png\">': \"配\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KuEImG.png\">': \"舌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VWnW7q.png\">': \"处\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fx3hvm.png\">': \"爽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VZtaoR.png\">': \"具\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3ZkDJ4.png\">': \"交\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gdAFuf.png\">': \"喘\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1z2eDD.png\">': \"吸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/znllVr.png\">': \"蜜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/71ngwo.png\">': \"龟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ecvOu0.png\">': \"器\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Bui5fD.png\">': \"催\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/vxtD2A.png\">': \"器\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ExlFjv.png\">': \"乳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wJyQ32.png\">': \"屁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/lhCRiX.png\">': \"股\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ohBPMl.png\">': \"含\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oa3EHb.png\">': \"棒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HeEvXw.png\">': \"滑\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WQbR9W.png\">': \"魔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iNq1kV.png\">': \"吟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XLuwG9.png\">': \"胯\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nZ6Sil.png\">': \"囊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4MoTWV.png\">': \"撸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GnMJou.png\">': \"按\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HvxP4o.png\">': \"壁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CVdaOj.png\">': \"热\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/641lDm.png\">': \"庭\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rQjazI.png\">': \"囊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XRnUMA.png\">': \"嫩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/55c8cw.png\">': \"操\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PTFqXf.png\">': \"套\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MvlC6Z.png\">': \"胯\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6fxL1o.png\">': \"干\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Jv025p.png\">': \"裆\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/AUPIYS.png\">': \"滚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0xlo81.png\">': \"蛋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/dVMbBR.png\">': \"唇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/boQHaq.png\">': \"瓣\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sPgNyv.png\">': \"宠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XWRTkb.png\">': \"干\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1H74Qg.png\">': \"巨\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TTRAra.png\">': \"阳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WmPkc8.png\">': \"龟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZuOmv7.png\">': \"阴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FQVl5N.png\">': \"戴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xOvdd5.png\">': \"按\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WbRB1x.png\">': \"抽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UQ5cwB.png\">': \"屌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PleNul.png\">': \"裤\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ntrBUA.png\">': \"热\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Imoh0J.png\">': \"裤\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/msAwBv.png\">': \"舔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/42MoAt.png\">': \"淫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TZEL8t.png\">': \"坚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fBUNSf.png\">': \"筋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/E3unFF.png\">': \"根\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jCzggn.png\">': \"粗\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CMYj3U.png\">': \"吹\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/71WKrD.png\">': \"爽\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pXJuf3.png\">': \"操\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VS3mmY.png\">': \"吮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bsF6bg.png\">': \"喉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HjHxoR.png\">': \"虐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8Jxdgx.png\">': \"喷\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eArYhU.png\">': \"含\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ugMPKc.png\">': \"撸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pjqd9o.png\">': \"屁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qnkGM4.png\">': \"塞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Cz64oU.png\">': \"触\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8z9VK5.png\">': \"伦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/35l220.png\">': \"巨\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4SdpDG.png\">': \"娇\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/u4EwCa.png\">': \"呻\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/m9odLl.png\">': \"泄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sBaBrf.png\">': \"奶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ci8sVm.png\">': \"屌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gtoWMw.png\">': \"含\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Qfdbk5.png\">': \"春\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xoo7o8.png\">': \"吟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XoIQtJ.png\">': \"穴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/L3YaF5.png\">': \"瘫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xTsqHI.png\">': \"软\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Z8bZWW.png\">': \"潮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XZSucU.png\">': \"操\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JL3yeS.png\">': \"湿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/LRoaGl.png\">': \"虐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/t1ZBzZ.png\">': \"孕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/AZw0L3.png\">': \"泌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/RTSvD6.png\">': \"烫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sKBas0.png\">': \"牛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rLuoPv.png\">': \"逼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KmFWak.png\">': \"丸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/06NTCF.png\">': \"龟\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UCKoQN.png\">': \"丸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VtDBSo.png\">': \"嫩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GWS6vt.png\">': \"妓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6fWycA.png\">': \"勃\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/uFCdXH.png\">': \"慰\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8OYRwM.png\">': \"阳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Dio2Px.png\">': \"拔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/pQnT63.png\">': \"喷\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VjzhlN.png\">': \"滚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KPZt3K.png\">': \"配\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/R9jPTT.png\">': \"拔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XISJcn.png\">': \"缝\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gLPk3z.png\">': \"蕾\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NRXF8T.png\">': \"晕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4vfopf.png\">': \"缝\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PeqDme.png\">': \"蛋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xbsBXu.png\">': \"骚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/alnFq3.png\">': \"催\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6kHcyn.png\">': \"痒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Vz7CKN.png\">': \"宠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7culIs.png\">': \"流\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ho0hjY.png\">': \"敏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Yl0ARB.png\">': \"慰\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PopEBN.png\">': \"弄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/uHjCT5.png\">': \"湿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XsE2fp.png\">': \"喘\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hMCIOB.png\">': \"泄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/zUQS9v.png\">': \"晕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oZa5xA.png\">': \"射\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5FVE4I.png\">': \"瓣\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/k4ty7h.png\">': \"菊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sbmbNu.png\">': \"蕾\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/OBkjDi.png\">': \"菊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1HtDW7.png\">': \"洞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wBQwWy.png\">': \"液\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ohmgnp.png\">': \"擦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/u4HKAe.png\">': \"宫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8sHlcB.png\">': \"戴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wx1wcX.png\">': \"食\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7UBfB3.png\">': \"伦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZQ2EN2.png\">': \"吹\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WWwH4P.png\">': \"屌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Uo1A51.png\">': \"跳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rKZCT2.png\">': \"舌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/vhBLLN.png\">': \"虐\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YYxQWw.png\">': \"皮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8bO1ng.png\">': \"痒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/JIK4mB.png\">': \"套\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gIaauk.png\">': \"舌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5ggwcM.png\">': \"瘫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/l11HPa.png\">': \"润\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/p3mRFC.png\">': \"股\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/dOqhju.png\">': \"捅\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4yGbNJ.png\">': \"嫩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1VWeZm.png\">': \"菊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/b1myQD.png\">': \"硬\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5n3Ppo.png\">': \"鸡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3TLw6r.png\">': \"食\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kr91EF.png\">': \"奸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0881r2.png\">': \"喷\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3SYqXY.png\">': \"裸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/DMiqem.png\">': \"烫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/c2LfcP.png\">': \"晕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/CVxcRB.png\">': \"浓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/jUAK6q.png\">': \"奸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PzAFte.png\">': \"洞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iMZkcW.png\">': \"壁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GxCItP.png\">': \"暖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6Hp2rc.png\">': \"粗\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/aRaABn.png\">': \"屁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Cbi9mb.png\">': \"坚\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iyWFS6.png\">': \"菊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ogSpe6.png\">': \"催\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ctHfr9.png\">': \"奸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/w3SwU3.png\">': \"轮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/mxnt62.png\">': \"洞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/leCt2y.png\">': \"肥\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5DnsVk.png\">': \"烫\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YHqsav.png\">': \"戴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3JdvaF.png\">': \"肥\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/X2H18i.png\">': \"湿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/z24xgy.png\">': \"春\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UgBPUg.png\">': \"肿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0su7X0.png\">': \"奶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nxfi48.png\">': \"阴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3p3yRD.png\">': \"催\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/egIbWJ.png\">': \"捅\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/T1DSuM.png\">': \"尿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/xVJWjM.png\">': \"喉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/n4CbSc.png\">': \"逼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/sRkskt.png\">': \"奶\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TDB8dX.png\">': \"敏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KwiLUZ.png\">': \"核\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/y3HjFd.png\">': \"脔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/XKfT0q.png\">': \"浓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9SKBiF.png\">': \"丸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bFeTeD.png\">': \"戴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/0DMvwh.png\">': \"丸\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ODCkaO.png\">': \"宠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/oeq6sh.png\">': \"喉\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/x8sPiw.png\">': \"囊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wi7VUl.png\">': \"蒂\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/aQKaAT.png\">': \"妓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rdFFGK.png\">': \"蕾\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Q4Ghiq.png\">': \"腺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rcydo2.png\">': \"轮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/eyNyoj.png\">': \"柱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/72s5DO.png\">': \"具\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/D9NylB.png\">': \"妓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/yR3Wy1.png\">': \"吮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Jk9vz6.png\">': \"轮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/732e43.png\">': \"阴\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ldA1Dl.png\">': \"脔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/FXghbS.png\">': \"蒂\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NeyUu8.png\">': \"肠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NPtDJ8.png\">': \"壁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/bSxCeg.png\">': \"洞\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hFotXw.png\">': \"吮\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/E6ukPR.png\">': \"脔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ExHfIs.png\">': \"膜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/B4t9hV.png\">': \"膜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/iMsrif.png\">': \"捅\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MhsemB.png\">': \"鸡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rJJfXj.png\">': \"膜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/q17ZyY.png\">': \"屌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3dcOr9.png\">': \"暖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/vgttGz.png\">': \"蕊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/dsYq6j.png\">': \"肠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kVuvcX.png\">': \"摩\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/m7AEjF.png\">': \"汁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/chrEiq.png\">': \"伦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/knHeq2.png\">': \"妓\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MCg39r.png\">': \"逼\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/RtQpCx.png\">': \"阳\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/4HOyG1.png\">': \"蕾\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EJc0aL.png\">': \"灌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GdLemw.png\">': \"肠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/THVAsJ.png\">': \"囊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Psvk0V.png\">': \"雏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QBtsn9.png\">': \"膜\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/5QCD4c.png\">': \"慰\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ZorZAm.png\">': \"棍\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/tFbdld.png\">': \"汁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UW77rD.png\">': \"敏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/SZZRhO.png\">': \"孕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/3uvvcJ.png\">': \"户\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cMPkeI.png\">': \"痒\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/vVNd9r.png\">': \"茎\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rBEHkI.png\">': \"睪\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TzdfHF.png\">': \"茎\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/ti0q1M.png\">': \"灌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/fOp4HF.png\">': \"肿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Rr6rV9.png\">': \"肛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/gy1mlh.png\">': \"筋\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nDpLwJ.png\">': \"蕊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/7ejnlO.png\">': \"暖\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/H40uwm.png\">': \"雏\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QZpTDf.png\">': \"户\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/GOyR9Y.png\">': \"器\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/b6FwnI.png\">': \"裆\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/wRaSg1.png\">': \"柱\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/x42mCU.png\">': \"棍\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/YBYP2W.png\">': \"蒂\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/HKClha.png\">': \"勃\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QvFvyy.png\">': \"葡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/MOVfqX.png\">': \"萄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/KCq0jj.png\">': \"孕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/cvBtQH.png\">': \"鸡\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Ik130N.png\">': \"灌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/U5feXg.png\">': \"尿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Rmq9pb.png\">': \"融\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/9wpLY5.png\">': \"汁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/nIE3yV.png\">': \"融\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/DLxOxW.png\">': \"棍\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/DmDqR7.png\">': \"汁\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/qItDfs.png\">': \"尿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/VlPQ1Q.png\">': \"蕊\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/viUK3y.png\">': \"腺\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/UnZI75.png\">': \"肛\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/s1M11M.png\">': \"泌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EYgtKI.png\">': \"裆\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/hLZNIJ.png\">': \"捅\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/QZMs9w.png\">': \"孕\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/kOgpfC.png\">': \"肥\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/rm8QWW.png\">': \"棍\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EVQrOF.png\">': \"肿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/PdMAvy.png\">': \"萄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/EAroqq.png\">': \"睪\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/c2tHMe.png\">': \"邦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/Jt0VgV.png\">': \"泌\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/1nFzJJ.png\">': \"户\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/mmhTm9.png\">': \"勃\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/TjxhN0.png\">': \"邦\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/8M7rPy.png\">': \"核\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/akqH9f.png\">': \"裆\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/t7Mhks.png\">': \"尿\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/6vJQ0W.png\">': \"脔\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/WftkXZ.png\">': \"肠\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/tVqkw1.png\">': \"屄\",\n    '<img src=\"https://www.xiguashuwu4.com/wzbodyimg/NzRu8y.png\">': \"核\"\n}",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞西瓜书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xiguashuwu4.com/",
    "customButton": false,
    "customOrder": 361,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 1748234150378,
    "respondTime": 2572,
    "ruleBookInfo": {
      "intro": "&nbsp;{{@@.time@text##\\s.*}}\n{{@@.BGsectionTwo-bottom@text##(。)##$1<br>}}",
      "lastChapter": ".newestChapter@text##最新章节：",
      "tocUrl": "text.章节目录@href##(\\/book\\/\\d+\\/catalog\\/)##$11.html"
    },
    "ruleContent": {
      "content": "#C0NTENT@html||all\n<js>\nif (baseUrl.includes(\"_2\")) {\n\na=java.getString(\"meta[7]@content\")\ne=String(java.base64Decode(a)).split(/[A-Z]+%/);\n\nfunction UpWz(m, i) {\n\t\tvar k = Math.ceil((i + 1) % code);\n\t\tk = Math.ceil(m - k);\n\t\treturn k\n\t}\n\ncode=src.match(/codeurl=\"(\\d+)\"/)[1]\nnrid=\"#\"+src.match(/nrid=\"(.*?)\"/)[1]+\"@p\"\n\njava.log(nrid)\nbox=java.getElements(nrid)\n\nlist=[]\nfor (var i = 0; i < e.length; i++) {\n\t\t\tvar k = UpWz(e[i], i);\n\t\t\tlist[k] = box[i]\n\t\t};\n\nlist.join(\"\")\n\n\t} else if(baseUrl.includes(\"_\")) {\n\t\t\na=decodeURIComponent(src.match(/decodeURIComponent.\"(.*)\"/)[1])\nb=src.match(/d.newcon,\"(.*)\"/)[1]\njava.log(b)\n\n{{java.importScript(source.getKey()+\"js/cryptojs_min.js\")}}\n\nfunction d(a, b) {\n            b = CryptoJS.MD5(b).toString();\n            var d = CryptoJS.enc.Utf8.parse(b.substring(0, 16));\n            var e = CryptoJS.enc.Utf8.parse(b.substring(16));\n            return CryptoJS.AES.decrypt(a, e, { iv: d, padding: CryptoJS.pad.Pkcs7 }).toString(CryptoJS.enc.Utf8)\n        }\n        \nd(a,b)\n\n\t\t} else result \n\t\n</js>",
      "imageStyle": "Text",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "<js>\neval(String(source.bookSourceComment))\nsource.setVariable(Object.entries(obj).length)\n\nresult.replace(/<img src=.*?>/g,(o,v)=>{\n\t\no=o.replace(source.getKey(), \"https://www.xiguashuwu4.com/\")\n\ttext=obj[String(o)]\n\tif (text!=undefined)\n\treturn text\n\telse\n\treturn o\n\t})\n\n</js>\n##\\s*本章尚未读完.*\\s*|本章已阅读完毕.*|本站新（短）域名：.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.-1@text",
      "bookList": ".SHsectionThree-middle p",
      "bookUrl": "a@href",
      "kind": "span.0@text##\\[|\\]",
      "name": "span.1@text"
    },
    "ruleToc": {
      "chapterList": ".BCsectionTwo-top li a\n@js:\nlet elements = org.jsoup.Jsoup.parse(result).select(\"a\");\nlet dataList = [];\nelements.forEach(element => {\n    let href = String(element.attr(\"href\")).replace(/.*\\('(\\d+)'\\,'(\\d+)'\\).*/,\"/book/$1/$2.html\")\n    let text = element.text();\n    let match = href.match(/(\\d+)\\.html/);\n    if (match) {\n        dataList.push({\n            href: href,\n            cid: parseInt(match[1]),\n            text: text\n        });\n    }\n});\n\ndataList.sort((a, b) => a.cid - b.cid);\nresult = dataList.map(item => ({\n    href: item.href,\n    text: item.text\n}));",
      "chapterName": "text\n@js:var title = result; \nvar cleanRegex = /第(\\d+|[零一二三四五六七八九十百千万]+)[章页卷回][\\s、.:]?|^(\\d+)[\\s、.:]?|^([零一二三四五六七八九十百千万]+)[\\s、.:]?|Chapter\\s(\\d+)[\\s、.:]?/g;\nvar tempTitle = title\n.replace(cleanRegex, '').trim(); \nif (tempTitle === '') { title; } else { tempTitle; }",
      "chapterUrl": "href",
      "formatJs": "'第' + index + '章 ' + title.replace(/第(\\d+|[零一二三四五六七八九十百千万]+)[章页卷回][\\s、.:]?|^(\\d+)[\\s、.:]?|^([零一二三四五六七八九十百千万]+)[\\s、.:]?|Chapter\\s(\\d+)[\\s、.:]?/g, '').trim()",
      "nextTocUrl": ".CGsectionTwo-right-bottom-detail@span.1@text\n<js>\na=String(result[0])\nlist=[]\nfor (i=2;i<=a;i++){\n\tlist.push(baseUrl.replace(/$/,i+'.html'))\n\t}list\n</js>"
    },
    "searchUrl": "https://www.xiguashuwu4.com/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨 漫画戏说[修|仅发现]",
    "bookSourceType": 3,
    "bookSourceUrl": "https://comic.acgn.cc#仅发现",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 362,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "冒險::https://comic.acgn.cc/cate-1.htm?page={{page}}\n搞笑::https://comic.acgn.cc/cate-2.htm?page={{page}}\n格鬥::https://comic.acgn.cc/cate-3.htm?page={{page}}\n科幻::https://comic.acgn.cc/cate-4.htm?page={{page}}\n愛情::https://comic.acgn.cc/cate-5.htm?page={{page}}\n偵探::https://comic.acgn.cc/cate-6.htm?page={{page}}\n競技::https://comic.acgn.cc/cate-7.htm?page={{page}}\n魔法::https://comic.acgn.cc/cate-8.htm?page={{page}}\n東方神鬼::https://comic.acgn.cc/cate-9.htm?page={{page}}\n校園::https://comic.acgn.cc/cate-10.htm?page={{page}}\n恐怖::https://comic.acgn.cc/cate-11.htm?page={{page}}\n其他::https://comic.acgn.cc/cate-12.htm?page={{page}}\n四格::https://comic.acgn.cc/cate-13.htm?page={{page}}\n生活親情::https://comic.acgn.cc/cate-14.htm?page={{page}}\n百合::https://comic.acgn.cc/cate-15.htm?page={{page}}\n偽娘::https://comic.acgn.cc/cate-16.htm?page={{page}}\n懸疑::https://comic.acgn.cc/cate-17.htm?page={{page}}\n耽美::https://comic.acgn.cc/cate-18.htm?page={{page}}\n熱血::https://comic.acgn.cc/cate-19.htm?page={{page}}\n後宮::https://comic.acgn.cc/cate-20.htm?page={{page}}\n歷史::https://comic.acgn.cc/cate-21.htm?page={{page}}\n戰爭::https://comic.acgn.cc/cate-22.htm?page={{page}}\n萌系::https://comic.acgn.cc/cate-23.htm?page={{page}}\n宅男腐女::https://comic.acgn.cc/cate-24.htm?page={{page}}\n治癒::https://comic.acgn.cc/cate-25.htm?page={{page}}\n勵志::https://comic.acgn.cc/cate-26.htm?page={{page}}\n武俠::https://comic.acgn.cc/cate-27.htm?page={{page}}\n機戰::https://comic.acgn.cc/cate-28.htm?page={{page}}\n音樂舞蹈::https://comic.acgn.cc/cate-29.htm?page={{page}}\n美食::https://comic.acgn.cc/cate-30.htm?page={{page}}\n職場::https://comic.acgn.cc/cate-31.htm?page={{page}}\n西方魔幻::https://comic.acgn.cc/cate-32.htm?page={{page}}\n高清單行本::https://comic.acgn.cc/cate-33.htm?page={{page}}\nA::https://comic.acgn.cc/pinyin-a.htm?page={{page}}\nB::https://comic.acgn.cc/pinyin-b.htm?page={{page}}\nC::https://comic.acgn.cc/pinyin-c.htm?page={{page}}\nD::https://comic.acgn.cc/pinyin-d.htm?page={{page}}\nE::https://comic.acgn.cc/pinyin-e.htm?page={{page}}\nF::https://comic.acgn.cc/pinyin-f.htm?page={{page}}\nG::https://comic.acgn.cc/pinyin-g.htm?page={{page}}\nH::https://comic.acgn.cc/pinyin-h.htm?page={{page}}\nI::https://comic.acgn.cc/pinyin-i.htm?page={{page}}\nJ::https://comic.acgn.cc/pinyin-j.htm?page={{page}}\nK::https://comic.acgn.cc/pinyin-k.htm?page={{page}}\nL::https://comic.acgn.cc/pinyin-l.htm?page={{page}}\nM::https://comic.acgn.cc/pinyin-m.htm?page={{page}}\nN::https://comic.acgn.cc/pinyin-n.htm?page={{page}}\nO::https://comic.acgn.cc/pinyin-o.htm?page={{page}}\nP::https://comic.acgn.cc/pinyin-p.htm?page={{page}}\nQ::https://comic.acgn.cc/pinyin-q.htm?page={{page}}\nR::https://comic.acgn.cc/pinyin-r.htm?page={{page}}\nS::https://comic.acgn.cc/pinyin-s.htm?page={{page}}\nT::https://comic.acgn.cc/pinyin-t.htm?page={{page}}\nU::https://comic.acgn.cc/pinyin-u.htm?page={{page}}\nV::https://comic.acgn.cc/pinyin-v.htm?page={{page}}\nW::https://comic.acgn.cc/pinyin-w.htm?page={{page}}\nX::https://comic.acgn.cc/pinyin-x.htm?page={{page}}\nY::https://comic.acgn.cc/pinyin-y.htm?page={{page}}\nZ::https://comic.acgn.cc/pinyin-z.htm?page={{page}}\n0-9::https://comic.acgn.cc/pinyin-0-9.htm?page={{page}}\nnull",
    "lastUpdateTime": 1700987891919,
    "loginUrl": "",
    "respondTime": 181122,
    "ruleBookInfo": {
      "author": "class.mss.0@tag.a@text",
      "intro": "class.gameshows@tag.dd.1@text##\\s",
      "kind": "class.mss.3@tag.a@text",
      "lastChapter": "class.mss.4@tag.a@text",
      "name": "tag.h3@text"
    },
    "ruleContent": {
      "content": "id.pic_list@class.pic@html",
      "sourceRegex": ".*\\.(jpg|png).*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.display@tag.li",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "-id.comic_chapter@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://comic.acgn.cc/searchcse?cx=008124722090293425135:i6inzsizmqg&cof=FORID:11&ie=UTF-8&q={{key}}&sa=搜尋",
    "weight": 59
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.bbiquge8.net",
    "customButton": false,
    "customOrder": 363,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1751331522171,
    "respondTime": 24,
    "ruleBookInfo": {
      "author": ".pt-info.0@a@text",
      "coverUrl": ".baseinfo@img@src",
      "init": "",
      "intro": ".intro@text",
      "kind": ".pt-info.1@a@text",
      "lastChapter": ".ptm-list-view-cell.0@text",
      "name": ".pt-name.0@a@text",
      "tocUrl": ".ptm-card-footer@a@href"
    },
    "ruleContent": {
      "content": ".chaptercontent@p@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".pt-info.0@a@text",
      "bookList": ".pt-novel",
      "bookUrl": ".pt-name@a@href",
      "checkKeyWord": "之上",
      "kind": ".pt-info.1@a@text",
      "lastChapter": ".ptm-text-cut@text",
      "name": ".pt-name@a@text"
    },
    "ruleToc": {
      "chapterList": ".ptm-list-view-cell",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.bbiquge8.net/search.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// 登录模板",
    "bookSourceGroup": "免费",
    "bookSourceName": "👍 三五中文网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xkushu.info",
    "bookUrlPattern": "https://www.xkushu.info/35zwhtml/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 364,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻奇幻\",\"url\":\"/zwwsort1/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真武侠\",\"url\":\"/zwwsort2/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/zwwsort3/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/zwwsort4/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人名著\",\"url\":\"/zwwsort5/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"/zwwsort6/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻灵异\",\"url\":\"/zwwsort7/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美动漫\",\"url\":\"/zwwsort8/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总榜\",\"url\":\"/zwwtopallvisit/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月榜\",\"url\":\"/zwwtopmonthvisit/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周榜\",\"url\":\"/zwwtopweekvisit/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总榜\",\"url\":\"/zwwtopallvote/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月榜\",\"url\":\"/zwwtopmonthvote/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周榜\",\"url\":\"/zwwtopweekvote/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"收藏榜\",\"url\":\"/zwwtopgoodnum/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数榜\",\"url\":\"/zwwtopsize/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新更新\",\"url\":\"/zwwtoplastupdate/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新入库\",\"url\":\"/zwwtoppostdate/0/{{page}}.htm\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"我的书架\",\"url\":\"/modules/article/bookcase.php\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\n\t\"x-requested-with\": \"XMLHttpRequest\",\n\t\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.92 Safari/537.36\"\n}",
    "lastUpdateTime": 1719639386257,
    "loginCheckJs": "if ( (cookie.getKey(source.key, \"username\")) == \"User\" ) {\n\tjava.log(\"登录状态：已登录\")\n}else{\n\tjava.log(\"登录状态：未登录\")\n}result",
    "loginUi": "[\n    {\n        name: \"用户名\",\n        type: \"text\"\n    },\n    {\n        name: \"密码\",\n        type: \"password\"\n    },\n    {\n    \t   name: \"注册\",\n    \t   type: \"button\",\n    \t   action: \"http://www.xkushu.info/register.php\"\n    \t},\n    \t{\n    \t\t  name: \"清除登录信息\",\n    \t\t  type: \"button\",\n    \t\t  action: \"clearLogin()\"\n    \t}\n]",
    "loginUrl": "function login() {\n  let une = source.getLoginInfoMap().get(\"用户名\");\n  let pwd = source.getLoginInfoMap().get(\"密码\");\n\n  if (une && pwd) {\n    let url = source.key + '/login.php';\n    let body = `LoginForm%5Busername%5D=${une}&LoginForm%5Bpassword%5D=${pwd}&action=login&jumpurl=http%3A%2F%2Fwww.xkushu.info%2F&usecookie=1&submit=%E7%99%BB%E5%BD%95`;\n    let head = JSON.parse(source.header);\n    var login = java.post(url, body, head).body();\n  }\n\n  source.putLoginHeader(login);\n}\n\nfunction clearLogin() {\n  cookie.removeCookie(source.getKey());\n  source.removeLoginHeader();\n  java.longToast('清除成功！');\n}",
    "respondTime": 3771,
    "ruleBookInfo": {
      "author": "id.details@tag.a.0@text",
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": "class.bookinfo_intro@text",
      "kind": "id.details@text##.*更新时间：|\\|| |手机阅读.*",
      "lastChapter": "id.details@tag.a.2@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.title@h1@text##全文阅读"
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "nextContentUrl": "",
      "payAction": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "",
      "kind": "tag.td.4@text&&\ntag.td.5@text",
      "lastChapter": "tag.td.1@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": ""
    },
    "searchUrl": "{{java.connect(source.getKey()).raw().request().url()}}modules/article/search.php,{\n\"charset\": \"\",\n\"method\": \"POST\",\n\"body\": \"searchtype=articlename&searchkey={{key}}&Submit=+%E6%90%9C+%E7%B4%A2+\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "加载较慢",
    "bookSourceGroup": "免费",
    "bookSourceName": "安月书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.roushuwu.com/",
    "customButton": false,
    "customOrder": 365,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻奇幻\",\"url\":\"/xuanhuan/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"武侠仙侠\",\"url\":\"/wuxia/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"都市言情\",\"url\":\"/dushi/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"历史穿越\",\"url\":\"/lishi/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"网游竞技\",\"url\":\"/wangyou/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"科幻穿越\",\"url\":\"/kehuan/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"恐怖惊悚\",\"url\":\"/kongbu/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"其他类型\",\"url\":\"/qita/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}]",
    "lastUpdateTime": 1732977548406,
    "respondTime": 2002,
    "ruleBookInfo": {
      "coverUrl": ".catalog_pic img@src",
      "init": "",
      "intro": ".catalognovel_intro@html",
      "kind": ".catalognovel_type p@text"
    },
    "ruleContent": {
      "content": ".chapter_content@html"
    },
    "ruleExplore": {
      "author": ".novel_author a@text",
      "bookList": ".novel_box",
      "bookUrl": ".novel_name a@href",
      "coverUrl": "img@src",
      "intro": ".novel_intro@html",
      "lastChapter": ".novel_newest a@text",
      "name": ".novel_name a@text"
    },
    "ruleSearch": {
      "author": ".p3@text",
      "bookList": ".list_ul li",
      "bookUrl": ".p1 a@href",
      "coverUrl": "",
      "intro": "",
      "kind": ".p4@text&&.p5@text&&.p6@text",
      "lastChapter": ".p2 a@text",
      "name": ".p1 a@text"
    },
    "ruleToc": {
      "chapterList": ".listchapter.-1@ul@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "modules/article/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "超凡小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.pan.org",
    "customButton": false,
    "customOrder": 366,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 0,
    "respondTime": 1365,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "dt@img@src",
      "intro": ".intro clearfix@text##阅读.*最新章节请关注.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "<js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<p>元素的<dd>元素\nvar dds = document.select('div.content > dd');\n\n// 将dds转换为数组以便排序\nvar ddArray = [];\nfor (var i = 0; i < dds.size(); i++) {\n    ddArray.push(dds.get(i));\n}\n\n// 按照data-id属性对ddArray进行排序\nddArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\nvar data = {\n    mergedText: \"\"\n};\n\n// 遍历排序后的ddArray\nfor (var i = 0; i < ddArray.length; i++) {\n    var dd = ddArray[i];\n    var dataId = dd.attr('data-id');\n    // 获取当前dd下的所有<p>元素的文本内容，保持原有顺序\n    var paragraphs = dd.select('p');\n    var paragraphTexts = [];\n    for (var j = 0; j < paragraphs.size(); j++) {\n        var paragraph = paragraphs.get(j);\n        paragraphTexts.push(paragraph.text());\n    }\n    list.push({\n        id: dataId, // 使用data-id属性\n        paragraphs: paragraphTexts // 存储所有<p>元素的文本内容为数组，保持原有顺序\n    });\n    // 合并文本内容，每个<p>内容后添加换行符，保持原有顺序\n    data.mergedText += paragraphTexts.join(\"\\n\") + \"\\n\"; // 添加额外换行符以便分隔每个dd的内容\n}\n\n// 输出结果\njava.log(JSON.stringify(list));\njava.log(data.mergedText);\n\n// 返回data对象\nresult = data.mergedText;\n</js>",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##阅读.*最新章节.*超凡小说网.*|最新网址.*|.*请点击下一页继续.*|.*第.*页.*",
      "title": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a@ownText##.*\\(|\\)",
      "bookList": ".bd@li",
      "bookUrl": "a@href",
      "coverUrl": "",
      "kind": "span@text##\\[|\\]",
      "lastChapter": "",
      "name": "a@textNodes##\\(.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": " <js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<li>元素的<div>元素\nvar divs = document.select('ul.list > div');\n\n// 将divs转换为数组以便排序\nvar divArray = [];\nfor (var i = 0; i < divs.size(); i++) {\n    divArray.push(divs.get(i));\n}\n\n// 按照data-id属性对divArray进行排序\ndivArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\n// 遍历排序后的divArray\nfor (var i = 0; i < divArray.length; i++) {\n    var div = divArray[i];\n    var dataId = div.attr('data-id');\n    // 获取当前div下的所有<li>元素\n    var lis = div.select('li');\n    for (var j = 0; j < lis.size(); j++) {\n        var li = lis.get(j);\n        var a = li.select('a').first();\n        if (a != null) {\n            list.push({\n                text: a.text(),\n                id: dataId, // 使用data-id属性\n                url: a.attr('href')\n            });\n        }\n    }\n}\n\n//java.log(JSON.stringify(list));\nlist;\n</js>",
      "chapterName": "text",
      "chapterUrl": "url",
      "formatJs": "",
      "isVolume": ""
    },
    "searchUrl": "http://wap.pan8.org/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "开心文学网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.kxwx.org",
    "customButton": false,
    "customOrder": 367,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1719736526816,
    "respondTime": 2541,
    "ruleBookInfo": {
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content"
    },
    "ruleContent": {
      "content": ".mainContenr@p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".grid@tr!0",
      "bookUrl": "a.0@href",
      "kind": "td.-1:-2@text",
      "lastChapter": "a.1@text",
      "name": "a.0@text",
      "wordCount": "td.-3@text"
    },
    "ruleToc": {
      "chapterList": ".chapterNum@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search/{{key}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "免费",
    "bookSourceName": "📥伪宝书",
    "bookSourceType": 3,
    "bookSourceUrl": "https://m.baoshu7.com",
    "customButton": false,
    "customOrder": 368,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "文学名著::/txt/wenxue/<,index_{{page}}.html>\n其他小说::/txt/qita/<,index_{{page}}.html>",
    "lastUpdateTime": 32500886400000,
    "respondTime": 182640,
    "ruleBookInfo": {
      "coverUrl": "img@src",
      "downloadUrls": "td>a@href##^##{{source.getKey()}}\n<js>java.ajax(result)</js>\n.downbtn@href",
      "init": ".module",
      "intro": ".con@text##(^|[。！？……；]+[”」）】]?)##$1<br>",
      "kind": "p:containsOwn(分类：)@text##小说|分类："
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author[0]@text",
      "bookList": ".imgtextlist>li",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": ".intro@text##简介：",
      "name": ".orange@text##《|》",
      "wordCount": ".author[-1]@text##大小：|\\s"
    },
    "searchUrl": "@js:\nurl=source.getKey()+\"/e/search/index.php\";\nbody=`show=title,softsay,softwriter&keyboard=${key}&tbname=download&tempid=1&Submit22=搜索`;\nsurl=java.post(url,body,{}).header(\"location\");\nString(surl).replace(/result.*searchid/,\n\"/e/search/result/index.php?page={{page-1}}&searchid\")",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nqishu66.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "📥伪奇书",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.80qishu.com",
    "customButton": false,
    "customOrder": 369,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "文学名著::/wenxue/<,index_{{page}}.html>\n其他小说::/qita/<,index_{{page}}.html>",
    "lastUpdateTime": 32500886400000,
    "respondTime": 182407,
    "ruleBookInfo": {
      "coverUrl": "img@src",
      "downloadUrls": "td>a@href##^##{{source.getKey()}}\n<js>java.ajax(result)</js>\n.downbtn@href",
      "init": ".module",
      "intro": ".con@text##(^|[。！？……；]+[”」）】]?)##$1<br>",
      "kind": "p:containsOwn(分类：)@text##小说|分类："
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author[0]@text",
      "bookList": ".imgtextlist>li",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": ".intro@text##简介：",
      "name": ".orange@text##《|》",
      "wordCount": ".author[-1]@text##大小：|\\s"
    },
    "searchUrl": "@js:\nurl=source.getKey()+\"/e/search/index.php\";\nbody=`show=title,softsay,softwriter&keyboard=${key}&tbname=download&tempid=1&Submit22=搜索`;\nsurl=java.post(url,body,{}).header(\"location\");\nString(surl).replace(/result.*searchid/,\n\"/e/search/result/index.php?page={{page-1}}&searchid\")",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱读书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.changduba.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 370,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733523729552,
    "loginUrl": "",
    "respondTime": 386,
    "ruleBookInfo": {
      "author": "class.author@text##作者：",
      "coverUrl": "class.imgbox@tag.img@data-src",
      "intro": "class.jianjie@tag.p.0@textNodes",
      "lastChapter": "class.status@tag.p.-1@tag.a@text",
      "name": "class.status@tag.h1@text",
      "tocUrl": "class.read@href"
    },
    "ruleContent": {
      "content": "class.yd_text2@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.odd.0@tag.a@href",
      "coverUrl": "class.odd.0@tag.a@href@js:result.replace(/\\/(\\d+)\\//,'/files/article/image/$1/$2/$2s.jpg')",
      "lastChapter": "class.even.0@text##正文",
      "name": "class.odd.0@text"
    },
    "ruleToc": {
      "chapterList": "class.mulu_list@tag.li@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&searchtype=articlename&submit=搜索",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "三八小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.38xs.net/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 371,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/1/{{page}}.html\n武侠::/2/{{page}}.html\n仙侠::/3/{{page}}.html\n都市::/4/{{page}}.html\n言情::/5/{{page}}.html\n历史::/6/{{page}}.html\n穿越::/7/{{page}}.html\n科幻::/8/{{page}}.html\n恐怖::/9/{{page}}.html\n动漫::/10/{{page}}.html\n耽美::/11/{{page}}.html\n文学::/12/{{page}}.html\n其他::/13/{{page}}.html\n激情::/14/{{page}}.html\nH文::/15/{{page}}.html\n                                                                        ::\n日排行::/top/0-0-{{page}}.html\n周排行::/top/1-0-{{page}}.html\n月排行::/top/2-0-{{page}}.html\n总排行::/top/3-0-{{page}}.html\n日推荐::/top/4-0-{{page}}.html\n周推荐::/top/5-0-{{page}}.html\n月推荐::/top/6-0-{{page}}.html\n总推荐::/top/7-0-{{page}}.html\n日收藏::/top/8-0-{{page}}.html\n周收藏::/top/9-0-{{page}}.html\n月收藏::/top/10-0-{{page}}.html\n总收藏::/top/11-0-{{page}}.html\n字数排行::/top/12-0-{{page}}.html\n更新排行::/top/13-0-{{page}}.html\n                                                                        ::\n玄幻小说日排行::/top/0-1-{{page}}.html\n玄幻小说周排行::/top/1-1-{{page}}.html\n玄幻小说月排行::/top/2-1-{{page}}.html\n玄幻小说总排行::/top/3-1-{{page}}.html\n玄幻小说日推荐::/top/4-1-{{page}}.html\n玄幻小说周推荐::/top/5-1-{{page}}.html\n玄幻小说月推荐::/top/6-1-{{page}}.html\n玄幻小说总推荐::/top/7-1-{{page}}.html\n玄幻小说日收藏::/top/8-1-{{page}}.html\n玄幻小说周收藏::/top/9-1-{{page}}.html\n玄幻小说月收藏::/top/10-1-{{page}}.html\n玄幻小说总收藏::/top/11-1-{{page}}.html\n玄幻小说字数排行::/top/12-1-{{page}}.html\n玄幻小说更新排行::/top/13-1-{{page}}.html\n                                                                        ::\n武侠小说日排行::/top/0-2-{{page}}.html\n武侠小说周排行::/top/1-2-{{page}}.html\n武侠小说月排行::/top/2-2-{{page}}.html\n武侠小说总排行::/top/3-2-{{page}}.html\n武侠小说日推荐::/top/4-2-{{page}}.html\n武侠小说周推荐::/top/5-2-{{page}}.html\n武侠小说月推荐::/top/6-2-{{page}}.html\n武侠小说总推荐::/top/7-2-{{page}}.html\n武侠小说日收藏::/top/8-2-{{page}}.html\n武侠小说周收藏::/top/9-2-{{page}}.html\n武侠小说月收藏::/top/10-2-{{page}}.html\n武侠小说总收藏::/top/11-2-{{page}}.html\n武侠小说字数排行::/top/12-2-{{page}}.html\n武侠小说更新排行::/top/13-2-{{page}}.html\n                                                                        ::\n仙侠小说日排行::/top/0-3-{{page}}.html\n仙侠小说周排行::/top/1-3-{{page}}.html\n仙侠小说月排行::/top/2-3-{{page}}.html\n仙侠小说总排行::/top/3-3-{{page}}.html\n仙侠小说日推荐::/top/4-3-{{page}}.html\n仙侠小说周推荐::/top/5-3-{{page}}.html\n仙侠小说月推荐::/top/6-3-{{page}}.html\n仙侠小说总推荐::/top/7-3-{{page}}.html\n仙侠小说日收藏::/top/8-3-{{page}}.html\n仙侠小说周收藏::/top/9-3-{{page}}.html\n仙侠小说月收藏::/top/10-3-{{page}}.html\n仙侠小说总收藏::/top/11-3-{{page}}.html\n仙侠小说字数排行::/top/12-3-{{page}}.html\n仙侠小说更新排行::/top/13-3-{{page}}.html\n                                                                        ::\n都市小说日排行::/top/0-4-{{page}}.html\n都市小说周排行::/top/1-4-{{page}}.html\n都市小说月排行::/top/2-4-{{page}}.html\n都市小说总排行::/top/3-4-{{page}}.html\n都市小说日推荐::/top/4-4-{{page}}.html\n都市小说周推荐::/top/5-4-{{page}}.html\n都市小说月推荐::/top/6-4-{{page}}.html\n都市小说总推荐::/top/7-4-{{page}}.html\n都市小说日收藏::/top/8-4-{{page}}.html\n都市小说周收藏::/top/9-4-{{page}}.html\n都市小说月收藏::/top/10-4-{{page}}.html\n都市小说总收藏::/top/11-4-{{page}}.html\n都市小说字数排行::/top/12-4-{{page}}.html\n都市小说更新排行::/top/13-4-{{page}}.html\n                                                                        ::\n言情小说日排行::/top/0-5-{{page}}.html\n言情小说周排行::/top/1-5-{{page}}.html\n言情小说月排行::/top/2-5-{{page}}.html\n言情小说总排行::/top/3-5-{{page}}.html\n言情小说日推荐::/top/4-5-{{page}}.html\n言情小说周推荐::/top/5-5-{{page}}.html\n言情小说月推荐::/top/6-5-{{page}}.html\n言情小说总推荐::/top/7-5-{{page}}.html\n言情小说日收藏::/top/8-5-{{page}}.html\n言情小说周收藏::/top/9-5-{{page}}.html\n言情小说月收藏::/top/10-5-{{page}}.html\n言情小说总收藏::/top/11-5-{{page}}.html\n言情小说字数排行::/top/12-5-{{page}}.html\n言情小说更新排行::/top/13-5-{{page}}.html\n                                                                        ::\n历史小说日排行::/top/0-6-{{page}}.html\n历史小说周排行::/top/1-6-{{page}}.html\n历史小说月排行::/top/2-6-{{page}}.html\n历史小说总排行::/top/3-6-{{page}}.html\n历史小说日推荐::/top/4-6-{{page}}.html\n历史小说周推荐::/top/5-6-{{page}}.html\n历史小说月推荐::/top/6-6-{{page}}.html\n历史小说总推荐::/top/7-6-{{page}}.html\n历史小说日收藏::/top/8-6-{{page}}.html\n历史小说周收藏::/top/9-6-{{page}}.html\n历史小说月收藏::/top/10-6-{{page}}.html\n历史小说总收藏::/top/11-6-{{page}}.html\n历史小说字数排行::/top/12-6-{{page}}.html\n历史小说更新排行::/top/13-6-{{page}}.html\n                                                                        ::\n穿越小说日排行::/top/0-7-{{page}}.html\n穿越小说周排行::/top/1-7-{{page}}.html\n穿越小说月排行::/top/2-7-{{page}}.html\n穿越小说总排行::/top/3-7-{{page}}.html\n穿越小说日推荐::/top/4-7-{{page}}.html\n穿越小说周推荐::/top/5-7-{{page}}.html\n穿越小说月推荐::/top/6-7-{{page}}.html\n穿越小说总推荐::/top/7-7-{{page}}.html\n穿越小说日收藏::/top/8-7-{{page}}.html\n穿越小说周收藏::/top/9-7-{{page}}.html\n穿越小说月收藏::/top/10-7-{{page}}.html\n穿越小说总收藏::/top/11-7-{{page}}.html\n穿越小说字数排行::/top/12-7-{{page}}.html\n穿越小说更新排行::/top/13-7-{{page}}.html\n                                                                        ::\n科幻小说日排行::/top/0-8-{{page}}.html\n科幻小说周排行::/top/1-8-{{page}}.html\n科幻小说月排行::/top/2-8-{{page}}.html\n科幻小说总排行::/top/3-8-{{page}}.html\n科幻小说日推荐::/top/4-8-{{page}}.html\n科幻小说周推荐::/top/5-8-{{page}}.html\n科幻小说月推荐::/top/6-8-{{page}}.html\n科幻小说总推荐::/top/7-8-{{page}}.html\n科幻小说日收藏::/top/8-8-{{page}}.html\n科幻小说周收藏::/top/9-8-{{page}}.html\n科幻小说月收藏::/top/10-8-{{page}}.html\n科幻小说总收藏::/top/11-8-{{page}}.html\n科幻小说字数排行::/top/12-8-{{page}}.html\n科幻小说更新排行::/top/13-8-{{page}}.html\n                                                                        ::\n恐怖小说日排行::/top/0-9-{{page}}.html\n恐怖小说周排行::/top/1-9-{{page}}.html\n恐怖小说月排行::/top/2-9-{{page}}.html\n恐怖小说总排行::/top/3-9-{{page}}.html\n恐怖小说日推荐::/top/4-9-{{page}}.html\n恐怖小说周推荐::/top/5-9-{{page}}.html\n恐怖小说月推荐::/top/6-9-{{page}}.html\n恐怖小说总推荐::/top/7-9-{{page}}.html\n恐怖小说日收藏::/top/8-9-{{page}}.html\n恐怖小说周收藏::/top/9-9-{{page}}.html\n恐怖小说月收藏::/top/10-9-{{page}}.html\n恐怖小说总收藏::/top/11-9-{{page}}.html\n恐怖小说字数排行::/top/12-9-{{page}}.html\n恐怖小说更新排行::/top/13-9-{{page}}.html\n                                                                        ::\n动漫小说日排行::/top/0-10-{{page}}.html\n动漫小说周排行::/top/1-10-{{page}}.html\n动漫小说月排行::/top/2-10-{{page}}.html\n动漫小说总排行::/top/3-10-{{page}}.html\n动漫小说日推荐::/top/4-10-{{page}}.html\n动漫小说周推荐::/top/5-10-{{page}}.html\n动漫小说月推荐::/top/6-10-{{page}}.html\n动漫小说总推荐::/top/7-10-{{page}}.html\n动漫小说日收藏::/top/8-10-{{page}}.html\n动漫小说周收藏::/top/9-10-{{page}}.html\n动漫小说月收藏::/top/10-10-{{page}}.html\n动漫小说总收藏::/top/11-10-{{page}}.html\n动漫小说字数排行::/top/12-10-{{page}}.html\n动漫小说更新排行::/top/13-10-{{page}}.html\n                                                                        ::\n耽美小说日排行::/top/0-11-{{page}}.html\n耽美小说周排行::/top/1-11-{{page}}.html\n耽美小说月排行::/top/2-11-{{page}}.html\n耽美小说总排行::/top/3-11-{{page}}.html\n耽美小说日推荐::/top/4-11-{{page}}.html\n耽美小说周推荐::/top/5-11-{{page}}.html\n耽美小说月推荐::/top/6-11-{{page}}.html\n耽美小说总推荐::/top/7-11-{{page}}.html\n耽美小说日收藏::/top/8-11-{{page}}.html\n耽美小说周收藏::/top/9-11-{{page}}.html\n耽美小说月收藏::/top/10-11-{{page}}.html\n耽美小说总收藏::/top/11-11-{{page}}.html\n耽美小说字数排行::/top/12-11-{{page}}.html\n耽美小说更新排行::/top/13-11-{{page}}.html\n                                                                        ::\n文学小说日排行::/top/0-12-{{page}}.html\n文学小说周排行::/top/1-12-{{page}}.html\n文学小说月排行::/top/2-12-{{page}}.html\n文学小说总排行::/top/3-12-{{page}}.html\n文学小说日推荐::/top/4-12-{{page}}.html\n文学小说周推荐::/top/5-12-{{page}}.html\n文学小说月推荐::/top/6-12-{{page}}.html\n文学小说总推荐::/top/7-12-{{page}}.html\n文学小说日收藏::/top/8-12-{{page}}.html\n文学小说周收藏::/top/9-12-{{page}}.html\n文学小说月收藏::/top/10-12-{{page}}.html\n文学小说总收藏::/top/11-12-{{page}}.html\n文学小说字数排行::/top/12-12-{{page}}.html\n文学小说更新排行::/top/13-12-{{page}}.html\n                                                                        ::\n其他小说日排行::/top/0-13-{{page}}.html\n其他小说周排行::/top/1-13-{{page}}.html\n其他小说月排行::/top/2-13-{{page}}.html\n其他小说总排行::/top/3-13-{{page}}.html\n其他小说日推荐::/top/4-13-{{page}}.html\n其他小说周推荐::/top/5-13-{{page}}.html\n其他小说月推荐::/top/6-13-{{page}}.html\n其他小说总推荐::/top/7-13-{{page}}.html\n其他小说日收藏::/top/8-13-{{page}}.html\n其他小说周收藏::/top/9-13-{{page}}.html\n其他小说月收藏::/top/10-13-{{page}}.html\n其他小说总收藏::/top/11-13-{{page}}.html\n其他小说字数排行::/top/12-13-{{page}}.html\n其他小说更新排行::/top/13-13-{{page}}.html\n                                                                        ::\n激情小说日排行::/top/0-14-{{page}}.html\n激情小说周排行::/top/1-14-{{page}}.html\n激情小说月排行::/top/2-14-{{page}}.html\n激情小说总排行::/top/3-14-{{page}}.html\n激情小说日推荐::/top/4-14-{{page}}.html\n激情小说周推荐::/top/5-14-{{page}}.html\n激情小说月推荐::/top/6-14-{{page}}.html\n激情小说总推荐::/top/7-14-{{page}}.html\n激情小说日收藏::/top/8-14-{{page}}.html\n激情小说周收藏::/top/9-14-{{page}}.html\n激情小说月收藏::/top/10-14-{{page}}.html\n激情小说总收藏::/top/11-14-{{page}}.html\n激情小说字数排行::/top/12-14-{{page}}.html\n激情小说更新排行::/top/13-14-{{page}}.html\n                                                                        ::\nH小说日排行::/top/0-15-{{page}}.html\nH小说周排行::/top/1-15-{{page}}.html\nH小说月排行::/top/2-15-{{page}}.html\nH小说总排行::/top/3-15-{{page}}.html\nH小说日推荐::/top/4-15-{{page}}.html\nH小说周推荐::/top/5-15-{{page}}.html\nH小说月推荐::/top/6-15-{{page}}.html\nH小说总推荐::/top/7-15-{{page}}.html\nH小说日收藏::/top/8-15-{{page}}.html\nH小说周收藏::/top/9-15-{{page}}.html\nH小说月收藏::/top/10-15-{{page}}.html\nH小说总收藏::/top/11-15-{{page}}.html\nH小说字数排行::/top/12-15-{{page}}.html\nH小说更新排行::/top/13-15-{{page}}.html",
    "header": "",
    "lastUpdateTime": 1729254332258,
    "loginUrl": "",
    "respondTime": 11561,
    "ruleBookInfo": {
      "coverUrl": "class.fm@tag.img@src",
      "intro": "id.jj@text",
      "kind": "id.submenu@tag.a.1@text",
      "name": "tag.h1@text##上传者+.{0,}"
    },
    "ruleContent": {
      "content": "text.章@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "bookList": "id.sort_newbook@class.sort_list||class.rankcontent",
      "bookUrl": "class.title@tag.a@href||class.ranktitle@tag.a.0@href",
      "coverUrl": "class.fm@tag.img@src||class.rankdetail@tag.img@src",
      "intro": "class.intro@text||class.rankdetailright@text##简介：",
      "kind": "class.tj@tag.label.3@text##分类：",
      "name": "class.title@tag.a@text||class.ranktitle@tag.a.0@text##《|》"
    },
    "ruleSearch": {
      "bookList": "class.list@tbody",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text##电子书简介：",
      "name": "class.name@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.list-item@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/search.php?keyword={{key}}&submit=%CB%D1+%CB%F7,{\n\"charset\":\"gb2312\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "https://www.fushuwang.org",
    "bookSourceGroup": "免费",
    "bookSourceName": "福书网程",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.fushucun.com#yc1101",
    "customButton": false,
    "customOrder": 372,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"专题\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"本站推荐\",\"url\":\"/best/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"重生专题\",\"url\":\"/chshwzt/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"修真专题\",\"url\":\"/xzhwztindex<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越专题\",\"url\":\"/chywzt/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"兽人专题\",\"url\":\"/shrwzt/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"末世专题\",\"url\":\"/mshwzt/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"穿越重生\",\"url\":\"/chuanyuechongsheng/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻网游\",\"url\":\"/xuanhuanwangyou/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代都市\",\"url\":\"/xiandaixiaoshuo/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代架空\",\"url\":\"/gudaixiaoshuo/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人ＢＬ\",\"url\":\"/tongrenxiaoshuo/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"百合ＧＬ\",\"url\":\"/baihexiaoshuo/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"年份\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"2021年\",\"url\":\"/2021/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2020年\",\"url\":\"/2020/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2019年\",\"url\":\"/2019/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2018年\",\"url\":\"/2018/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2017年\",\"url\":\"/2017/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2016年\",\"url\":\"/2016/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2015年\",\"url\":\"/2015/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2014年\",\"url\":\"/2014/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2013年\",\"url\":\"/2013/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2012年\",\"url\":\"/2012/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2011年\",\"url\":\"/2011/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2010年\",\"url\":\"/2010/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"2009年\",\"url\":\"/2009/index<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1735058640315,
    "loginUrl": "",
    "respondTime": 2130,
    "ruleBookInfo": {
      "intro": "#text div@html"
    },
    "ruleContent": {
      "content": "@js:org.jsoup.Jsoup.parse(String(result).match(/<td id=\"text\">([\\s\\S]*?)<p align=\"center\"/)[1]).html()",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "a.0@title##.*—",
      "bookList": "tbody tr li",
      "bookUrl": "a.0@href",
      "kind": "span@text",
      "lastChapter": "",
      "name": "a.0@title##—.*|（.*"
    },
    "ruleSearch": {
      "author": "",
      "bookList": ".article-list li",
      "bookUrl": "a.0@href",
      "kind": "",
      "name": "a.0@title"
    },
    "ruleToc": {
      "chapterList": "//select[@name=\"titleselect\"]/option",
      "chapterName": "text##.*\\((\\d+)\\)##第$1页",
      "chapterUrl": "//@value"
    },
    "searchUrl": "/e/search/index.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"keyboard={{key}}&show=title&classid=\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n海棠书屋 https://m.9n9h.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "👔 肉文屋⑦",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.nprouwen.org",
    "customButton": false,
    "customOrder": 373,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "                               榜  单                              \n最近更新::/top/lastupdate_{{page}}/\n最新入库::/top/postdate_{{page}}/\n总点击榜::/top/allvisit_{{page}}/\n月点击榜::/top/monthvisit_{{page}}/\n周点击榜::/top/weekvisit_{{page}}/\n日点击榜::/top/dayvisit_{{page}}/\n总推荐榜::/top/allvote_{{page}}/\n月推荐榜::/top/monthvote_{{page}}/\n周推荐榜::/top/weekvote_{{page}}/\n日推荐榜::/top/dayvote_{{page}}/\n总收藏榜::/top/goodnum_{{page}}/\n字数排行::/top/size_{{page}}/\n                               分  类                               \n 玄幻 ::/sort/1_{{page}}/\n 仙侠 ::/sort/2_{{page}}/\n 都市 ::/sort/3_{{page}}/\n 穿越 ::/sort/4_{{page}}/\n 科幻 ::/sort/5_{{page}}/\n 网游 ::/sort/6_{{page}}/\n 精品 ::/sort/7_{{page}}/\n 完本 ::/full/{{page}}/",
    "lastUpdateTime": 1724318302767,
    "respondTime": 7482,
    "ruleBookInfo": {
      "author": ".tab@tag.p.0@text##.*：",
      "coverUrl": ".tu@img@src",
      "intro": ".jj@p@html",
      "kind": ".tab1@tag.p.0@text&&.tab1@tag.p.1@text##小说",
      "lastChapter": ".tab@a@text",
      "name": "tag.h1.0@text##\\_.*",
      "wordCount": ".tab1@tag.p.2@text"
    },
    "ruleContent": {
      "content": "#novelcontent@textNodes",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##分卷阅读.*|.*作者.*"
    },
    "ruleExplore": {
      "author": ".p4@text||.p3 a@text",
      "bookList": ".tt||.content_link",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href##.*/(\\d+)/(\\d+)/##https://img.nprouwen.org/image/$1/$2/$2s.jpg",
      "intro": ".p5@text##.*简介.|\\s",
      "kind": "p@.p2@text&&.p1 a@text##\\[|\\]",
      "name": "tag.a.1@text##\\_.*",
      "wordCount": "p@.p3@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": ".search_list",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href##.*/(\\d+)/(\\d+)/##https://img.nprouwen.org/image/$1/$2/$2s.jpg",
      "kind": "tag.a.1@text",
      "name": "tag.a.0@text##\\_.*"
    },
    "ruleToc": {
      "chapterList": "tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "系统小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xitongliu.cn",
    "customButton": false,
    "customOrder": 374,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/xclass/xuanhuan/{{page}}/\n武侠修真::/xclass/wuxia/{{page}}/\n都市言情::/xclass/dushi/{{page}}/\n历史军事::/xclass/lishi/{{page}}/\n科幻小说::/xclass/kehuan/{{page}}/\n网游动漫::/xclass/youxi/{{page}}/\n女生频道::/xclass/nvsheng/{{page}}/\n其他类型::/xclass/qita/{{page}}/",
    "header": "{\n\"User-Agent\":\n\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.58\"\n\n\n}",
    "lastUpdateTime": 1721193992160,
    "loginUrl": "https://xitongliu.cn/login/",
    "respondTime": 4380,
    "ruleBookInfo": {
      "author": "class.bookright@class.d_title@a@text",
      "coverUrl": "id.bookimg@img@src",
      "name": "class.bookright@class.d_title@h1@text"
    },
    "ruleContent": {
      "content": "id.TextContent@html",
      "replaceRegex": "##系统流小说(.*?)cn|如果您还没有登录.*?您还不是本站会员请点击.*?本站会员！|系统流 .*?cn\n|您还没有登录，请登录后在继续阅读本部小说!"
    },
    "ruleExplore": {
      "bookList": "id.sitebox@tag.dl",
      "bookUrl": "dt.0@a@href",
      "coverUrl": "class.lazy@img@data-original",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span.0@text",
      "name": "dd.0@a@text"
    },
    "ruleSearch": {
      "author": "dd.1@span.0@text",
      "bookList": "id.nr",
      "bookUrl": "dd.0@a@href",
      "coverUrl": "dt@a@img@data-original",
      "intro": "class.book_des@text",
      "kind": "dd.1@span.1@text",
      "lastChapter": "dd.3@a@text",
      "name": "dd.0@a@text",
      "wordCount": "dd.1@span.2@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterList@tag.li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "https://xitongliu.cn/search/?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "斗破苍穹",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.doupocangqiong.info",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 376,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734830849369,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 4855,
    "ruleBookInfo": {
      "author": "//meta[@property=\"og:novel:author\"]/@content",
      "coverUrl": "//meta[@property=\"og:image\"]/@content",
      "intro": "//meta[@property=\"og:description\"]/@content",
      "kind": "//meta[@property=\"og:novel:category\"]/@content",
      "lastChapter": "//meta[@property=\"og:novel:latest_chapter_name\"]/@content",
      "name": "//meta[@property=\"og:novel:book_name\"]/@content"
    },
    "ruleContent": {
      "content": "id.chaptercontent@html",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.marklist.0@tag.li[0:19]",
      "bookUrl": "class.novelname.0@href",
      "coverUrl": "tag.img.0@src",
      "lastChapter": "class.info.0@tag.a.0@text",
      "name": "class.novelname.0@text"
    },
    "ruleToc": {
      "chapterList": "class.dirlist.0@tag.a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{\"webView\":true}"
    },
    "searchUrl": "/search.html?searchtype=novelname&searchkey={{key}}",
    "weight": 50
  },
  {
    "bookSourceComment": "笛寄明月楼",
    "bookSourceGroup": "免费",
    "bookSourceName": "腐文小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.fuxsb.cc/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 377,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "现代耽美::/xiandai/<,list_{{page}}.html>\n古代耽美::/gudai/<,list_{{page}}.html>\n穿越重生::/chuanyue/<,list_{{page}}.html>\n玄幻灵异::/qihuan/<,list_{{page}}.html>\n网游竞技::/wangyou/<,list_{{page}}.html>\n同人耽美::/tongren/<,list_{{page}}.html>\nＧＬ百合::/baihe/<,list_{{page}}.html>",
    "header": "",
    "lastUpdateTime": 1729755728984,
    "loginUrl": "",
    "respondTime": 597,
    "ruleBookInfo": {
      "author": "##作者：([^<]+)<##$1###",
      "coverUrl": "",
      "init": "",
      "intro": "tag.div.12@html##(?s)(?:☆、)?(?:楔子|第\\s*[一1]\\s*[卷章]).*|\\w{5}小说\\||\\耽美小说-腐小说",
      "kind": "tag.div.10@tag.a.-1@text&&tag.div.11@tag.span.1@tag.a@text&&tag.div.11@tag.span.0@text##.*：|\\s.*",
      "lastChapter": "tag.div.13@tag.a.-1@text",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "tag.div.12@html##Fxsw.org",
      "imageStyle": "0",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "tag.a.0@text##.*作者：",
      "bookList": "class.list_article@li",
      "bookUrl": "tag.a@href",
      "coverUrl": "@js:'https://c-ssl.dtstatic.com/uploads/blog/202202/28/20220228112536_59b28.thumb.700_0.jpeg_webp'",
      "intro": "class.desc@text",
      "kind": "tag.p.0@text##\\(|\\)",
      "lastChapter": "",
      "name": "h2@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "##作者：([^<]+)<##$1###",
      "bookList": "class.list_article@ul@li",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "@js:'https://c-ssl.dtstatic.com/uploads/blog/202202/28/20220228112536_59b28.thumb.700_0.jpeg_webp'",
      "intro": "class.desc.0@text",
      "kind": "tag.a.0@text&&tag.p.0@text##\\(|\\)",
      "lastChapter": "class.time.0@text",
      "name": "tag.a.1@text##\\作者：.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "+<js>\nvar n=result.match(/共(\\d+)页/)[1];\nvar list=[{k:'1',v:baseUrl}];\nfor(var i=2;i<=n;i++){\nlist.push({k:''+i,v:baseUrl.replace(/\\.html/,'_'+i+'.html')});\n}\nlist\n</js>",
      "chapterName": "k",
      "chapterUrl": "v",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/e/search/index.php,{\n\"method\": \"POST\",\n\"body\": \"keyboard={{key}}&show=title,writer,ftitle,keyboard&tempid=1&tbname=article\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱电子书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.iwurexs.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 378,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "武侠仙侠::/wuxia/index_{{page}}.html\n都市言情::/yanqing/index_{{page}}.html\n耽美小说::/danmei/index_{{page}}.html\n玄幻小说::/xuanhuan/index_{{page}}.html\n青春校园::/xiaoyuan/index_{{page}}.html\n网游竞技::/wangyou/index_{{page}}.html\n灵异推理::/kongbu/index_{{page}}.html\n纪实小说::/jishi/index_{{page}}.html\n军事历史::/lishi/index_{{page}}.html\n科幻小说::/kehuan/index_{{page}}.html\n管理哲学::/zhexue/index_{{page}}.html\n学习资料::/xuexi/index_{{page}}.html\n总排行榜::/paihangbang/index_{{page}}.html\n月排行榜::/mpaihangbang/index_{{page}}.html\n周排行榜::/wpaihangbang/index_{{page}}.html\n日排行榜::/dpaihangbang/index_{{page}}.html\n封推小说::/fengtui/index_{{page}}.html\n金牌推荐::/jinpaituijian/index_{{page}}.html\n网站推荐::/tuijian/index_{{page}}.html\n最新书籍::/new/index_{{page}}.html",
    "lastUpdateTime": 1743750659835,
    "loginUrl": "",
    "respondTime": 2408,
    "ruleBookInfo": {
      "author": "class.detail_right@ul@tag.li.0@a@text",
      "coverUrl": "class.detail_right@img@src",
      "intro": "class.detail_right@ul@tag.li.4@text##简介：",
      "kind": "class.detail_right@ul@tag.li.2@text##更新日期：",
      "lastChapter": "class.detail_right@ul@tag.li.3@a@text",
      "name": "class.detail_right@h1@text"
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书.*|最新网址.*|书快书快.*|书快电子书.*|-",
      "imageStyle": "0",
      "nextContentUrl": "text.下一章@href"
    },
    "ruleExplore": {
      "author": "##作者：([^<]+)<##$1###",
      "bookList": "//div[5]/div[2]/div/ul/li",
      "bookUrl": "class.red@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.iwurexs.net/headimgs/$2/$1/s$1.jpg###",
      "intro": "class.u@textNodes",
      "kind": "##更新：([^<]+)<##$1###",
      "lastChapter": "tag.a.1@text",
      "name": "tag.a.0@text##txt.*",
      "wordCount": "##大小：([^<]+)<##$1###"
    },
    "ruleSearch": {
      "author": "tag.td.3@text",
      "bookList": "tag.tbody@tag.tr!0",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.iwurexs.net/headimgs/$2/$1/s$1.jpg###",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.2@text",
      "name": "tag.td.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.showInfo.1@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.iwurexs.net/so.html?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "平板电子书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.qiqixs.info/",
    "customButton": false,
    "customOrder": 380,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1746522688265,
    "respondTime": 1347,
    "ruleBookInfo": {
      "author": "class.block_txt2@p.2@text",
      "coverUrl": "class.block_img2@tag.img@src",
      "intro": "class.intro_info@text",
      "kind": "class.block_txt2@p.3@a@text",
      "lastChapter": "class.block_txt2@p.6 @a@text",
      "name": "class.block_txt2@h2@a@text",
      "tocUrl": "class.book_more@a@href"
    },
    "ruleContent": {
      "content": "id.nr1@text",
      "nextContentUrl": "id.pb_next.0@href"
    },
    "ruleSearch": {
      "author": "class.block_txt@tag.p.3@text",
      "bookList": "class.block.[0:-1]",
      "bookUrl": "class.block_txt@tag.h2@tag.a@href",
      "coverUrl": "class.block_img@tag.img@src",
      "kind": "class.block_txt@tag.p.2@text",
      "lastChapter": "class.block_txt@tag.p.4@tag.a@text",
      "name": "class.block_txt@tag.h2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.book_last@dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "class.right.0@a@href"
    },
    "searchUrl": "search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "https://celeter.github.io/SourceGo",
    "bookSourceGroup": "免费",
    "bookSourceName": "蚂蚁阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.mayitxt.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 381,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734840795291,
    "respondTime": 3856,
    "ruleBookInfo": {
      "author": "class.author.0@text",
      "coverUrl": "tag.img@src",
      "intro": "class.intro@text",
      "name": "class.book_name@tag.h1@text",
      "tocUrl": "class.button_list@tag.a.2@href"
    },
    "ruleContent": {
      "content": "class.page-content@textNodes##一秒记住.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text||tag.span@text",
      "bookList": "class.bd@tag.tr!0||class.BOX@tag.tr!0",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "class.book-cover-img@tag.img@src",
      "kind": "class.tag@text||tag.a.0@text##\\[|\\]",
      "lastChapter": "class.chapter@text##正文.*?第##第",
      "name": "class.red@text||tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "class.float-list fill-block@tag.li",
      "chapterName": "tag.a@text##\\|",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.imayitxt.com/modules/article/search.php?q={{key}}&searchtype=all,{\n  \"charset\": \"utf-8\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "正文解密by转义字符 = = ",
    "bookSourceGroup": "免费",
    "bookSourceName": "基友书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.gaysay.com#成功",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 382,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"排行\",\"url\":\"/rank/all/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"飞魔幻\",\"url\":\"/rank/all/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"飞言情\",\"url\":\"/rank/all/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"桃之夭夭\",\"url\":\"/rank/all/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"花火\",\"url\":\"/rank/all/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"/rank/all/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/rank/all/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/rank/all/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现代\",\"url\":\"/rank/all/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"外国\",\"url\":\"/rank/all/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"历史\",\"url\":\"/rank/all/10/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/rank/all/11/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"/rank/all/12/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"军史\",\"url\":\"/rank/all/13/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"/rank/all/14/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"其他\",\"url\":\"/rank/all/15/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/rank/all/16/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"灵异\",\"url\":\"/rank/all/17/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"网游\",\"url\":\"/rank/all/18/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"/rank/all/19/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"侦探\",\"url\":\"/rank/all/20/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/rank/all/21/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/rank/all/22/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"竞技\",\"url\":\"/rank/all/23/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"军事\",\"url\":\"/rank/all/24/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/rank/all/25/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"完本\",\"url\":\"/category/finish/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"飞魔幻\",\"url\":\"/category/finish/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"飞言情\",\"url\":\"/category/finish/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"桃之夭夭\",\"url\":\"/category/finish/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"花火\",\"url\":\"/category/finish/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"/category/finish/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/category/finish/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/category/finish/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"现代\",\"url\":\"/category/finish/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"外国\",\"url\":\"/category/finish/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"历史\",\"url\":\"/category/finish/10/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/category/finish/11/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"/category/finish/12/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"军史\",\"url\":\"/category/finish/13/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"/category/finish/14/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"其他\",\"url\":\"/category/finish/15/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/category/finish/16/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"灵异\",\"url\":\"/category/finish/17/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"网游\",\"url\":\"/category/finish/18/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"/category/finish/19/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"侦探\",\"url\":\"/category/finish/20/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖\",\"url\":\"/category/finish/21/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/category/finish/22/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"竞技\",\"url\":\"/category/finish/23/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"军事\",\"url\":\"/category/finish/24/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/category/finish/25/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1738918247657,
    "loginCheckJs": "",
    "loginUrl": "",
    "respondTime": 3185,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content||[property=\"og:novel:lastest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ".BGsectionOne-bottom@a.1@href"
    },
    "ruleContent": {
      "content": "<js>\ntry {\n\nfunction d(a, b) {\nb = java.md5Encode(b);\nvar d = b.substring(0, 16);\nvar e = b.substring(16);\nreturn java.aesBase64DecodeToString(a,e,\"AES/CBC/PKCS5Padding\",d)\n}\n\nresult=eval(src.match(/(d\\(\"[\\s\\S]+\"\\))\\);/)[1])\n} catch(err) {\n\nresult=result\n}\n\na=escape(result).replace(/%u200[ABDCEF]/g,\"\")\nunescape(a)\n\n</js>",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "p.1@a@text",
      "bookList": ".book_list_img@li&&.CGsectionTwo-right-content-unit",
      "bookUrl": "a.0@href",
      "coverUrl": "img@_src",
      "intro": "p.2@text",
      "kind": "p.3@text##.*\\s",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".SHsectionThree-middle@p",
      "bookUrl": "a.1@href",
      "intro": "",
      "kind": "a.0@text",
      "lastChapter": "",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "<js>\ntemp=result\nR=org.jsoup.Jsoup.parse(temp).select(\".BCsectionTwo-top-chapter a\")\nc=[]\nR.forEach(r=>{\n\ti=String(r.attr('href')).replace(/.+\\/\\d+\\/(\\d+)\\.html/,`$1`)\n\t//java.log(i)\n\tc.push({\n\t\tname:r.text(),\n\t\turl:r.attr('href'),\n\t\tindex:i\n\t\t})\n\t})\ntry{\n\to=temp.match(/originalOrder[^=]*=[^\\[]*\\[([^\\]]+)\\]/)[1]\n\to=o.split(\",\")\n\tc.sort((a,b)=>o[c.indexOf(a)]-o[c.indexOf(b)])\n\t}catch (err){\n\t\tjava.log(err)\n\t\tc.sort((a,b)=>a.index-b.index)\n\t\t}\n\tresult=c\n</js>",
      "chapterName": "name",
      "chapterUrl": "url",
      "nextTocUrl": "id.next@href"
    },
    "searchUrl": "/search/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "高辣书屋🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.gaolashuwu.com#🎃",
    "customButton": false,
    "customOrder": 383,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36\"\n},\n{\n  \"webView\": true\n}",
    "lastUpdateTime": 1770711065886,
    "respondTime": 11581,
    "ruleBookInfo": {
      "author": "class.infotype@tag.p.0@text",
      "intro": "class.intro@text",
      "kind": "class.infotype@tag.p.1@text",
      "lastChapter": "class.list_xm@tag.li.0@text",
      "name": "class.cataloginfo@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "<js>\njm=java.base64Decode(java.getString('[name=\"client\"]@content'));\nif(jm.length()>1){\nvar conts = [],list=[];\ncode=result.match(/codeurl=\"(\\d+)\";/)[1];\ndata=org.jsoup.Jsoup.parse(result);\ndatas=data.select(\"p[style*='text-indent']\");\njm=String(jm).split(/[A-Z]+%/);\nfor(i=0;i<jm.length;i++){\n\tk=Math.ceil((i + 1) % parseInt(code));\n\tj=Math.ceil(jm[i] - k);\n\tconts[j]=datas[i];\n\t}\n\tfor(i in conts){\n\t\tc=String(conts[i]).replace(/.*本章尚未读完,请.*一页继续阅读.*/g,'');\n\t\tlist.push(c);\n\t\tlist.join(\"\\n\");\n\t\t}\n\t}else{java.getString(\".novelcontent@html\")}\n</js>",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.a.1@text",
      "bookList": "class.sone",
      "bookUrl": "tag.a.0@href",
      "name": "tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.chapters@tag.li@tag.a",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://www.gaolashuwu.com/s.html,\n{\n  \"charset\": \"utf-8\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "手机小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xiaxs.la#",
    "customButton": false,
    "customOrder": 384,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "武侠小说::/soft/1/Soft_001_{{page}}.html&&玄幻小说::/soft/2/Soft_002_{{page}}.html&&都市言情::/soft/3/Soft_003_{{page}}.html&&恐怖灵异::/soft/4/Soft_004_{{page}}.html&&现代文学::/soft/5/Soft_005_{{page}}.html&&侦探推理::/soft/6/Soft_006_{{page}}.html&&科幻小说::/soft/7/Soft_007_{{page}}.html&&穿越架空::/soft/9/Soft_009_{{page}}.html&&古典名著::/soft/10/Soft_010_{{page}}.html&&名人自传::/soft/11/Soft_011_{{page}}.html&&历史军事::/soft/12/Soft_012_{{page}}.html&&制作工具::/soft/13/Soft_013_{{page}}.html&&网游小说::/soft/14/Soft_014_{{page}}.html&&推荐小说::http://www.xiaxs.la/soft/best/index_{{page}}.html&&热门小说::http://www.xiaxs.la/soft/hot/index_{{page}}.html&&最新小说::http://www.xiaxs.la/soft/new/index_{{page}}.html&&全本小说::http://www.xiaxs.la/soft/quanben/index_{{page}}.html&&",
    "lastUpdateTime": 1733303855276,
    "respondTime": 1315,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "init": "<js>\nvar act=org.jsoup.Jsoup.parse(result).select(\".downButton\").attr(\"href\");\nvar url = \"http://www.xiaxs.la\"+act;\njava.put(\"url\",url);\njava.ajax(url)</js>\n",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "@get:{url}",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#content1@html##.*?www.xiaxs.la.*",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "##作者：([^<]+)<##$1###",
      "bookList": ".listBox ul li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@src",
      "intro": ".u@text",
      "lastChapter": "tag.a.1@text##最新章节[:：]",
      "name": "tag.a.0@text##全集"
    },
    "ruleSearch": {
      "author": "em@text",
      "bookList": ".listBox ul li",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "name": "a@text##全集"
    },
    "ruleToc": {
      "chapterList": ".pc_list a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.xiaxs.la/search.php?s=&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.cxzz.com",
    "customButton": false,
    "customOrder": 385,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🌊分类\",null,1,1)\npush(\"🌊全本🌊\",`http://m.cxzz958.com/wanben/{{page}}.html`,1,1)\n\tarList=[\"玄幻小说\",\"仙侠小说\",\"都市小说\",\"军史小说\",\"网游小说\",\"科幻小说\",\"恐怖小说\",\"其它小说\"]\n\tarList.map((tag,index)=>{\n\t\turl=`/fenlei/${index+1}/{{page}}.html`;\n\t\tpush(tag, url, 1, 0.25);\n\t\t});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "{'User-Agent':'Mozilla/5.0 (Linux; Android 14; V2304A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36',\n\"Referer\":\"http://www.cxzz958.com/\"}",
    "lastUpdateTime": 0,
    "respondTime": 1177,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#content@html",
      "replaceRegex": "##.*首发域名.*|.*\\.html"
    },
    "ruleExplore": {
      "author": "{{@@.s4@text}}{{@@##a\\>\\/(.*?)\\<\\/##$1###}}",
      "bookList": ".bd@ul@li&&.cover@p",
      "bookUrl": "a.0@href\n<js>\nif(result!=\"\"){\n\tlet pi=result.match(/\\/(.*?)\\/$/)[1];\nurl=\"http://www.cxzz958.com/\"+pi\n}\nresult=url\n</js>",
      "coverUrl": "",
      "intro": "",
      "kind": "{{@@span.0@text##\\[|\\]}}{{@@.line@text##\\[|\\].*}}",
      "lastChapter": "span.2@a@text",
      "name": "a.0@text",
      "wordCount": "span.-1@text"
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "kind": ".cat@text##分类：",
      "lastChapter": ".update@text##最新章节：",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "dl@dt:nth-of-type(2)~dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.cxzz958.com/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2024.10.27 by.GEd520\n//2024.10.29 完善部分规则，目录判断与正文解密代码 by.夜泽川",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁_书友",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.suimeng.la",
    "customButton": false,
    "customOrder": 386,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部\",\"url\":\"/sort/0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻魔法\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"武侠修真\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"都市言情\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"军事历史\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"侦探科幻\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"网游动漫\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"灵异耽美\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"其他小说\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1730365071992,
    "respondTime": 20388,
    "ruleBookInfo": {
      "author": "i.0@text##\\/著",
      "intro": ".xs_introduce@ownText",
      "name": "h2.0@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "<js>\nvar bes = result.match(/PHA\\+[A-Za-z0-9+\\/]+={0,2}/g);\n//java.log(String(bes))\nif (!bes) {\n    var ml = java.webView(null,baseUrl,null);\n    var txt = java.getString(\"#txt@html\");\n    java.longToast(\"正文解密失败，转为webView动态加载。\");\n} else {\nvar result = [];\nfor (var i = 0; i < bes.length; i++) {\n    // 遍历数组，使用阅读内置Base64解码方法\n    var bsej = java.base64Decode(bes[i]);\n    var txtt = String(bsej);\n    result.push(txtt);\n      }\n\tvar txt = result.join('\\n');\n}\ntxt;\n</js>",
      "nextContentUrl": "@js: var nex = result.match(/hhekgv='([^']*)'\\;/)[1];\nvar ul = source.key + nex;\nif (ul.length === String(book.bookUrl).length) {\n\tresult = \"\"\n\t} else{\n\t\tresult = ul;\n\t\t}\n\t\tjava.log(result)\nresult;",
      "replaceRegex": "##.*退出浏览器阅读模式.*|(?m)^\\s*（）;（）",
      "title": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".index_qb > a",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": ".info@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": "@js: var result = []\nif (!baseUrl.includes('index')) {\n    //java.log(\"当前目录在详情页\")\n    var chnList = java.getStringList(\"ul[class=ph_list].1@a@text\");\n    var chfList = java.getStringList(\"ul[class=ph_list].1@a@href\");\n} else {\n    //java.log(\"当前目录跳转新页面\")\n    var chnList = java.getStringList(\".ph_list a@text\");\n    var chfList = java.getStringList(\".ph_list a@onclick\");\n}\n\nfor (var i = 0; i < chfList.length; i++) {\n\tchfList[i] = String(chfList[i]).replace(/read_tz\\((\\d+)\\)\\;/g,book.bookUrl + \"$1.html\");\n\tvar chn = Array.from(chnList);\n var chf = Array.from(chfList);\n    result.push({\n        title: chn[i],\n        url: chf[i]\n    });\n}\n\nif (result.length === 0) {\n    // 如果目录数据为空，则弹窗提示\n    java.longToast(\"当前书籍无数据\");\n} else {\n    result = result;\n}\nresult;",
      "chapterName": "title",
      "chapterUrl": "url",
      "formatJs": "",
      "isVolume": "",
      "nextTocUrl": "@js: var ml = source.key + java.getString(\"text.章节目录@href\");\nvar src = java.ajax(ml);\nvar next = java.getStringList(\"option@value\",src);\nnext;",
      "preUpdateJs": ""
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search.html,{\n \"body\": \"s={{key}}\",\n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "// 2025/1/9 by天天的鸟蛋蛋 修复正文下一页\n我的方法\n@js:\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\nvar document = JsDom.parse(src);\nvar png = /next.png/.test(src);\nvar matchResult = src.match(/eval(.function.*)/);\nvar next = matchResult ? matchResult[1] : \"\";\nvar url = next ? eval(next) : \"\";\njava.log(url);\nif (url) {\n    \n    var nextChapterElement = document.select(\"*:contains(下一章)\").first();\n    \n    if (nextChapterElement) {\n        java.log(\"找到下一章，停止执行。\");\n    } else {\n        eval(url.replace(/var/, \"\"));\n    }\n}\n@关耳 的方法\n@js:\nif(java.getString(\"@text.下一章@text\")==\"\"){\nvar png=/next.png/.test(src);\nnext=png?src.match(/eval(.function.*)/)[1]:\"\";\nvar url=next?eval(next):\"\";\n//java.log(url)\nresult = url?eval(url.replace(/var/,\"\")):\"\"\n}",
    "bookSourceGroup": "免费",
    "bookSourceName": "中文看",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.zwkan.cc",
    "customButton": false,
    "customOrder": 387,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/xuanhuanqihuan/<,{{page}}.html>\n仙侠::/wuxiaxianxia/<,{{page}}.html>\n都市::/dushiyanqing/<,{{page}}.html>\n历史::/lishijunshi/<,{{page}}.html>\n科幻::/kehuanchuanqi/<,{{page}}.html>\n恐怖::/kongbulingyi/<,{{page}}.html>\n其他::/qitaleixing/<,{{page}}.html>\n全本::/quanben/<,{{page}}.html>",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1745153755734,
    "respondTime": 8218,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "downloadUrls": "text.TXT下载@href",
      "intro": "[property=\"og:description\"]@content\n##简介：",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "#nr1@p@ownText",
      "nextContentUrl": "@js:\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n\nvar document = JsDom.parse(src);\n\nvar png = /next.png/.test(src);\nvar matchResult = src.match(/eval(.function.*)/);\nvar next = matchResult ? matchResult[1] : \"\";\nvar url = next ? eval(next) : \"\";\njava.log(url);\n\nif (url) {\n    \n    var nextChapterElement = document.select(\"*:contains(下一章)\").first();\n    \n    if (nextChapterElement) {\n        java.log(\"找到下一章，停止执行。\");\n    } else {\n        eval(url.replace(/var/, \"\"));\n    }\n}\n\n",
      "replaceRegex": "##\\s*本章未完.*\\s*|\\s*《.*?》,牢记网址:wap.zwkan.cc",
      "webJs": ""
    },
    "ruleExplore": {
      "author": ".s3@text",
      "bookList": ".lis@li",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"/images/default.jpg\"",
      "kind": ".s1@text##\\[|\\]",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": ".s3@text",
      "bookList": ".lis@li",
      "bookUrl": ".s2@a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "@js:\"/images/default.jpg\"",
      "kind": ".s1@text##\\[|\\]",
      "name": ".s2@a@text"
    },
    "ruleToc": {
      "chapterList": ".chapter.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "@js:\n\nhtml = java.ajax(source.getKey())\n\ntoken = org.jsoup.Jsoup.parse(html).select('input[name=_token]').attr('value')\n\n\"/search,\"+JSON.stringify({\n  \"body\": `_token=${token}&kw=${key}`,\n  \"method\": \"POST\"\n})",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "顶点小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ddxsku.com",
    "customButton": false,
    "customOrder": 388,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721324161443,
    "loginUrl": "{\n  \"url\": \"\"\n}",
    "respondTime": 3079,
    "ruleBookInfo": {
      "name": "tag.a.16@text"
    },
    "ruleContent": {
      "content": "id.contents@html",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tag.table@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a.0@href",
      "lastChapter": "tag.td.1@tag.a.0@text",
      "name": "tag.td.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.at@tag.td@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.ddxsku.com/search/?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "手机小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ixiatxt.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 389,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "武侠小说::/soft/1/Soft_001_{{page}}.html\n玄幻小说::/soft/2/Soft_002_{{page}}.html\n都市言情::/soft/3/Soft_003_{{page}}.html\n恐怖灵异::/soft/4/Soft_004_{{page}}.html\n现代文学::/soft/5/Soft_005_{{page}}.html\n侦探推理::/soft/6/Soft_006_{{page}}.html\n科幻小说::/soft/7/Soft_007_{{page}}.html\n穿越架空::/soft/9/Soft_009_{{page}}.html\n古典名著::/soft/10/Soft_010_{{page}}.html\n名人自传::/soft/11/Soft_011_{{page}}.html\n历史军事::/soft/12/Soft_012_{{page}}.html\n制作工具::/soft/13/Soft_013_{{page}}.html\n网游小说::/soft/14/Soft_014_{{page}}.html\n推荐下载::/soft/best/index_{{page}}.html\n下载排行::/soft/hot/index_{{page}}.html\n最近更新::/soft/new/index_{{page}}.html\n全本下载::/soft/quanben/index_{{page}}.html",
    "lastUpdateTime": 1734838824398,
    "loginUrl": "",
    "respondTime": 4321,
    "ruleBookInfo": {
      "tocUrl": "text.在线阅读@tag.a@href"
    },
    "ruleContent": {
      "content": "id.content1@html",
      "replaceRegex": "##最新网址.*[nmtca]"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.s@text##连载.*",
      "bookList": "class.list@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a@tag.img@src",
      "kind": "text.连载@text##.*连载.|更新.*",
      "lastChapter": "class.s@text##.*更新.",
      "name": "tag.a@text##\\《|\\》.*"
    },
    "ruleToc": {
      "chapterList": "class.pc_list.1@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.ixiatxt.com/search.php?s=&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "💦读万卷",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.duwanjuan.com/",
    "bookUrlPattern": "http://www.duwanjuan.com/book/info/\\d+/\\d+.html",
    "customButton": false,
    "customOrder": 390,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/book/sort1/0/{{page}}.html\n武侠修真::/book/sort2/0/{{page}}.html\n都市言情::/book/sort3/0/{{page}}.html\n历史军事::/book/sort4/0/{{page}}.html\n穿越架空::/book/sort5/0/{{page}}.html\n游戏竞技::/book/sort6/0/{{page}}.html",
    "lastUpdateTime": 1726725714572,
    "loginUrl": "",
    "respondTime": 2325,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "class.divbox cf@img@src",
      "intro": "class.tabcontent@class.tabvalue.0@text",
      "kind": "class.tabcontent@class.tabvalue.1@tag.td.2@text&&\nclass.tabcontent@class.tabvalue.1@tag.td.1@text&&\nclass.tabcontent@class.tabvalue.1@tag.td.0@text##最后更新：|连载状态：|作品分类：",
      "lastChapter": "h3@a@text",
      "name": "[property=\"og:novel:book_name\"]@content##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|小说|笔趣阁|免费.*",
      "tocUrl": "text.点击阅读@href"
    },
    "ruleContent": {
      "content": "id.acontent@textNodes##去读书推荐各位.*|读万卷.*com|如果您中途有事.*以便以后接着观看！|\\(|\\)"
    },
    "ruleExplore": {
      "author": "class.c_tag@tag.span.1@text&&",
      "bookList": "class.blockcontent@class.c_row",
      "bookUrl": "class.c_subject@tag.a.1@href",
      "coverUrl": "img@src",
      "intro": "class.c_description@text",
      "kind": "class.c_tag@tag.span.5@text&&\nclass.c_tag@tag.span.7@text",
      "lastChapter": "class.c_subject@tag.a.2@text",
      "name": "class.c_subject@tag.a.1@text"
    },
    "ruleSearch": {
      "author": "class.c_tag.0@tag.span.1@text",
      "bookList": "id.jieqi_page_contents@class.c_row",
      "bookUrl": "class.c_subject@a@href",
      "coverUrl": "img@src",
      "kind": "class.c_tag.0@tag.span.3@text&&\nclass.c_tag.0@tag.span.7@text&&\nclass.c_tag.1@tag.span.3@text",
      "lastChapter": "class.c_tag.1@tag.span.1@a@text",
      "name": "class.c_subject@a@text"
    },
    "ruleToc": {
      "chapterList": "class.index@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.duwanjuan.com/modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "懒得测试了，自己登录测试，不行就删",
    "bookSourceGroup": "免费",
    "bookSourceName": "看点小说（登录）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.kandzww.com",
    "customButton": false,
    "customOrder": 392,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733765411196,
    "respondTime": 3146,
    "ruleBookInfo": {
      "author": "class.con@span.0@text",
      "coverUrl": "class.img@img@src",
      "intro": "class.bd_text@class.word-break@text",
      "kind": "class.con@span.1@text",
      "lastChapter": "class.bd_text@h5@tag.a@text&&class.bd_text@h5@tag.span@text##>>##·",
      "name": "class.con@h3@text##作者.*",
      "tocUrl": "text.开始阅读@href"
    },
    "ruleContent": {
      "content": "id.text@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@tag.a@text",
      "bookList": "class.bd@li",
      "bookUrl": "class.left@tag.a@href",
      "checkKeyWord": "",
      "coverUrl": "class.left@img@src",
      "intro": "class.summary@text",
      "lastChapter": "class.status isfinish@text",
      "name": "class.right@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter@li",
      "chapterName": "tag.a@text##加入书架|联系我们",
      "chapterUrl": "tag.a@href##$##,{'webView': true}",
      "updateTime": "class.date@text"
    },
    "searchUrl": "https://www.kandzww.com/search,{\n  \"body\": \"searchkey={{key}}&submit=\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\",\n  \"webView\": true\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "💠 哇啊书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.pingshuku.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 393,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1720209060248,
    "loginUrl": "",
    "respondTime": 4501,
    "ruleBookInfo": {
      "coverUrl": "class.block_img2@img@src",
      "intro": "class.intro_info@text##最新章节.*",
      "lastChapter": "class.block_txt2@tag.p.6@a@text"
    },
    "ruleContent": {
      "content": "id.nr@textNodes##.*本章未完.*|.*第.*/.*页.*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.case_shuqian@text##作者：",
      "bookList": "class.bookone",
      "bookUrl": "a@href",
      "coverUrl": "tag.a.0@href##^.+?(\\d+)\\D(\\d+).+##http://www.pingshuku.com/files/article/image/$1/$2/$2s.jpg",
      "lastChapter": "class.case_last@a@text",
      "name": "class.case_name@a@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://wap.pingshuku.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 靠谱小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.kptxt.com",
    "bookUrlPattern": "http://www.kptxt.com/.+A-Za-z/\\d*.html",
    "customButton": false,
    "customOrder": 396,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1743672408477,
    "loginUrl": "",
    "respondTime": 12907,
    "ruleBookInfo": {
      "coverUrl": "class.fm@tag.img.0@src",
      "intro": "id.jj@tag.p@text",
      "name": "id.submenu@tag.a.2@text"
    },
    "ruleContent": {
      "content": "class.chapter@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@js:'网友上传'",
      "bookList": "class.book",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text",
      "name": "class.name@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.list-item@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.kptxt.com/search.php?keyword={{key}}&submit=,{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "闪爵小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.pokemon-card.net",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 397,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🏷分类\",null,1,1)\nxrList=[\n  [\"高辣\", \"/gaola/fl\"],\n  [\"言情\", \"/yanqing/fl\"],\n  [\"耽美\", \"/danmei/fl\"],\n  [\"都市\", \"/dushi/fl\"],\n  [\"玄幻\", \"/xuanhuan/fl\"],\n  [\"修仙\",\"/xiuxia/fl\"],\n  [\"其他\",\"/qita/fl\"],\n  [\"全本\",\"/full/all\"]\n]\nxrList.map([title,uri]=>{\n\turl=`${uri}/{{page}}/`;\n\tpush(title,url,1,0.25)\n\t})\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0\"}",
    "jsLib": "{\"crypto\":\"https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js\"}",
    "lastUpdateTime": 0,
    "respondTime": 8252,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.章节目录@href",
      "wordCount": "[property$=status]@content"
    },
    "ruleContent": {
      "content": "#chaptercontent@html\n@js:\n//java.log(result)\nfunction x(encryptedData, key, iv) {\n  const ciphertext = CryptoJS.enc.Base64.parse(encryptedData);\n  const ivBytes = CryptoJS.enc.Base64.parse(iv);\n  const keyBytes = CryptoJS.enc.Utf8.parse(key);\n  const decrypted = CryptoJS.AES.decrypt(\n    { ciphertext: ciphertext },\n    keyBytes,\n    { iv: ivBytes, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding }\n  );\n  const decryptedText = decrypted.toString(CryptoJS.enc.Utf8);\n return decryptedText;\n}\n  match=src.match(/#booktxthtml'\\).html\\((.*?\\))\\)/);\n//java.log(match[1])\nif(match){\nresult=eval(match[1])}else result",
      "nextContentUrl": "",
      "replaceRegex": "##.*小说网.*",
      "title": "",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".content@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-src",
      "intro": "dd.0@text",
      "kind": "span.2:0@text",
      "name": "##title\\=\\\"(.*?)\\\"##$1###",
      "wordCount": "span.1@text"
    },
    "ruleToc": {
      "chapterList": "ul!0@li",
      "chapterName": "a@text",
      "chapterUrl": "##location\\.href\\=\\'\\\\(.*?)\\\\(.*?)\\\\(.*?)\\'##https://www.pokemon-card.net$1$2$3###",
      "formatJs": "",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}/search,{\n \"body\": \"searchkey={{key}}\",\n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯包",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.cxbz958.info#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 398,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻小说\",\"url\":\"/fenlei/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠小说\",\"url\":\"/fenlei/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市小说\",\"url\":\"/fenlei/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军史小说\",\"url\":\"/fenlei/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游小说\",\"url\":\"/fenlei/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/fenlei/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖小说\",\"url\":\"/fenlei/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}}]",
    "lastUpdateTime": 1734837394991,
    "loginUrl": "",
    "respondTime": 976,
    "ruleBookInfo": {
      "author": "class.small@tag.span.0@text##作 者：",
      "coverUrl": "class.cover@img@src",
      "init": "",
      "intro": "class.intro@textNodes##作者.*|无弹窗.*",
      "kind": "class.info@class.small@tag.span.1@text&&\nclass.info@class.small@tag.span.2@text&&\nclass.info@class.small@tag.span.4@text##分类：|状态：|更新时间：",
      "lastChapter": "class.small@tag.span.5@a@text##百度搜索.*",
      "name": "class.info@h2@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|天才一秒记住.*com|请记住本书首发域.*"
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox@class.p10",
      "bookUrl": "class.bookname@tag.a@href",
      "coverUrl": "class.bookimg@img@src",
      "intro": "class.bookinfo@p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text##百度搜索.*",
      "name": "class.bookname@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "落霞小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.luoxia123.com#",
    "bookUrlPattern": "https://www.luoxia123.com/.*/",
    "customButton": false,
    "customOrder": 399,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻仙侠\",\"url\":\"/xuanhuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"都市言情\",\"url\":\"/yanqing/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"穿越架空\",\"url\":\"/chuanyue/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"历史军事\",\"url\":\"/lishi/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"科幻灵异\",\"url\":\"/lingyi/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"网游竞技\",\"url\":\"/wangyou/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"耽美同人\",\"url\":\"/danmei/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"文学经典\",\"url\":\"/wenxue/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1733987899251,
    "respondTime": 2034,
    "ruleBookInfo": {
      "author": "small@text",
      "coverUrl": "img@src",
      "intro": ".m-summary@text",
      "name": "h1@textNodes",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html",
      "nextContentUrl": "text.下一章@href||class.m-page@a.-1@href"
    },
    "ruleExplore": {
      "author": "td.1@text",
      "bookList": "tbody>tr",
      "bookUrl": " a.0@href",
      "kind": "td.2@text",
      "name": "td.0@text"
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody>tr",
      "bookUrl": " a.0@href",
      "kind": "td.-1@text",
      "lastChapter": "td.1@text",
      "name": "td.0@text"
    },
    "ruleToc": {
      "chapterList": "class.list-group@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.luoxia123.com/e/search/index.php,{\n  \"body\": \"tbname=bookname&show=title,writer&tempid=1&keyboard={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "author：Thomas哟",
    "bookSourceGroup": "正版",
    "bookSourceName": "全本小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://119.45.176.116:5006/",
    "customButton": false,
    "customOrder": 400,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>{\n\t\treturn sort.push(JSON.stringify({\n\t\t\t\ttitle: title,\n\t\t\t\turl: url?url:\"\",\n\t\t\t\tstyle: {\n\t\t\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t\t\t}\n\t\t\t}))\n\t}\n$$=(a,b,c)=>b?`http://119.45.176.116:5006/localBookListByCategory?ps=20&length=${a}&pn={{page-1}\\}&cid=${b}&order=${c}&status=2`:`http://119.45.176.116:5006/recList?gender=${a}&pn={{page-1}\\}`;\n[\n\t\t[\"男\",[[\"都市娱乐\",1],[\"玄幻奇幻\",5],[\"武侠仙侠\",6],[\"历史军事\",4],[\"悬疑推理\",29],[\"科幻游戏\",28]]],\n\t\t[\"女\",[[\"现代言情\",2],[\"古代情缘\",9],[\"灵异爱情\",34],[\"玄幻奇幻\",38],[\"耽美同人\",11],[\"短篇小说\",33],[\"其他小说\",31]]]\n].map(([title,list],gender)=>{\n\t\tgender++\n\t\tpush(\"\"+title+\"生频道\",$$(gender,null,null),1);\n\t\tlist.map([title,b]=>{\n\t\t\t\tpush(\"\"+title+\"\",$$(0,b,1),1);\n\t\t\t\t[\"热门\",\"评分\",\"字数\"].map((title,c)=>{\n\t\t\t\t\t\tc++;\n\t\t\t\t\t\t[\"[\"+title+\"]\",\"短篇\",\"中篇\",\"长篇\"].map((title,a)=>{\n\t\t\t\t\t\t\t\tpush(title,$$(a,b,c),a==0?0.25:0.15);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t});\n\t});\n\"[\"+sort.toString()+\"]\";",
    "lastUpdateTime": 1746071513264,
    "respondTime": 1229,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.list",
      "bookUrl": "http://119.45.176.116:5006/findChapterList?book_id={{$.bookId}}",
      "checkKeyWord": "",
      "coverUrl": "$.coverImg",
      "intro": "$.desc",
      "kind": "{$.score}分&&$.category&&$.tags",
      "lastChapter": "共{{$.chapterNum}}章 • {{$.time## \\d.*}}",
      "name": "$.title",
      "wordCount": "$.word"
    },
    "ruleToc": {
      "chapterList": "@js:\n$ = JSON.parse(result).data;\n\t\tbid = $.book_id;\n$.chapters.map($=>{\n\t\t$.url = `http://119.45.176.116:5006/chapterContent,{\"body\":{\"book_id\":${bid},\"chapterIdList\":\"${$.id},\"},\"method\":\"POST\"}`\n\t\treturn $;\n\t});",
      "chapterName": "name",
      "chapterUrl": "url"
    },
    "searchUrl": "http://119.45.176.116:5006/getsearchlist?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "20241025修复发现\n20240222By_zhbyjm77833\n免费：vip=0\n全部：vip=9",
    "bookSourceGroup": "免费",
    "bookSourceName": "⭐纵横中文网[搜书]",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.zongheng.com/##zhbyjm7783",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 401,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort = [];\npush = (title, url, type) => sort.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexBasisPercent: type\n    }\n});\n\npush(\"༺ˇ»`ʚ 排行榜 ɞ´«ˇ༻\", null, 1);\n [\n        [\"月票榜\", \"1\"],\n        [\"新书榜\", \"4\"],\n        [\"点击榜\", \"5\"],\n        [\"推荐榜\", \"6\"],\n        [\"捧场榜\",\"7\"],\n        [\"完结榜\",\"8\"],\n        [\"新书订阅\", \"9\"],\n        [\"24h畅销\",\"3\"],\n        [\"24h更新\",\"10\"],\n        [\"作者人气\",\"12\"]\n].map([title, Id] => {\n    title=title,\n    url= `https://www.zongheng.com/api/rank/details,{\"method\":\"POST\",\"body\":\"cateFineId=0&cateType=0&pageNum={{page}}&pageSize=20&period=0&rankNo=&rankType=${Id}\"}`,\n    push(title, url, 0.29)\n    });\n\npush(\"༺ˇ»`ʚ 男生 ɞ´«ˇ༻\", null, 1);\n [\n        [\"全部\", \"0\",\"\"],\n        [\"玄幻奇幻\", \"8101\",\"\"],\n        [\"王朝争霸\", \"8101\",\"8411\"],\n        [\"诸天万界\", \"8101\",\"8412\"],\n        [\"西方奇幻\", \"8101\",\"8413\"],\n        [\"异世大陆\", \"8101\",\"8414\"],\n        [\"东方玄幻\", \"8101\",\"8415\"],\n        [\"武侠仙侠\", \"8102\",\"\"],\n        [\"古典仙侠\", \"8102\",\"8351\"],\n        [\"上古洪荒\", \"8102\",\"8352\"],\n        [\"幻想修真\", \"8102\",\"8353\"],\n        [\"传统武侠\", \"8102\",\"8354\"],\n        [\"武侠幻想\", \"8102\",\"8355\"],\n        [\"都市\",\"8103\",\"\"],\n        [\"热血校园\",\"8103\",\"8471\"],\n        [\"商战职场\",\"8103\",\"8472\"],\n        [\"都市高手\",\"8103\",\"8473\"],\n        [\"乡村生活\",\"8103\",\"8474\"],\n        [\"明星娱乐\",\"8103\",\"8475\"],\n        [\"都市生活\",\"8103\",\"8476\"],\n        [\"都市高武\",\"8103\",\"8477\"],\n        [\"灵气复苏\",\"8103\",\"8478\"],\n        [\"官场\",\"8103\",\"8479\"],\n        [\"历史\",\"8104\",\"\"],\n        [\"架空历史\",\"8104\",\"8291\"],\n        [\"历史传记\",\"8104\",\"8292\"],\n        [\"穿越历史\",\"8104\",\"8293\"],\n        [\"科幻\",\"8105\",\"\"],\n        [\"未来幻想\",\"8105\",\"8441\"],\n        [\"末世危机\",\"8105\",\"8442\"],\n        [\"星际机甲\",\"8105\",\"8443\"],\n        [\"奇闻异事\",\"8106\",\"\"],\n        [\"侦探推理\",\"8106\",\"8321\"],\n        [\"寻宝探险\",\"8106\",\"8322\"],\n        [\"恐怖灵异\",\"8106\",\"8323\"],\n        [\"奇门秘术\",\"8106\",\"8324\"],\n        [\"游戏\", \"8107\",\"\"],\n        [\"虚拟网游\", \"8107\",\"8381\"],\n        [\"电子竞技\", \"8107\",\"8382\"],\n        [\"N次元\",\"8108\",\"\"],\n        [\"衍生同人\",\"8108\",\"8201\"],\n        [\"原生幻想\",\"8108\",\"8202\"],\n        [\"轻小说\",\"8108\",\"8203\"],\n        [\"现实题材\",\"8109\",\"\"],\n        [\"现实百态\",\"8109\",\"8501\"],\n        [\"体育\", \"8110\",\"\"],\n        [\"足球天下\", \"8110\",\"8231\"],\n        [\"篮球风云\", \"8110\",\"8232\"],\n        [\"其他竞技\", \"8110\",\"8233\"],\n        [\"军事\",\"8111\",\"\"],\n        [\"战争幻想\",\"8111\",\"8261\"],\n        [\"谍战特工\",\"8111\",\"8262\"],\n        [\"抗战烽火\",\"8111\",\"8263\"],\n        [\"现代军事\",\"8111\",\"8264\"]\n].map([title, Id, id] => {\n    title=title,\n    url= `https://www.zongheng.com/api2/catefine/storeSearch,{\"method\":\"POST\",\"body\":\"worksTypes=${Id}&bookType=0&subWorksTypes=${id}&totalWord=0&serialStatus=9&vip=9&categoryId=${id}&categoryPid=${Id}&naodongFilter=0&pageNum={{page}}&pageSize=20\"}`,\n    push(title, url, 0.29)\n    });\n    \npush(\"༺ˇ»`ʚ 女生 ɞ´«ˇ༻\", null, 1);\n [\n        [\"全部\", \"0\",\"\"],       \n        [\"现代言情\", \"8161\",\"\"],\n        [\"总裁豪门\", \"8161\",\"8531\"],\n        [\"都市奇幻\", \"8161\",\"8532\"],\n        [\"年代重生\", \"8161\",\"8533\"],\n        [\"现实生活\", \"8161\",\"8534\"],\n        [\"青春校园\", \"8161\",\"8535\"],\n        [\"娱乐明星\", \"8161\",\"8536\"],\n        [\"民国旧影\", \"8161\",\"8537\"],\n        [\"职场情缘\", \"8161\",\"8538\"],\n        [\"现代悬疑\", \"8161\",\"8539\"],\n        [\"古代言情\", \"8162\",\"\"],\n        [\"远古大陆\", \"8162\",\"8561\"],\n        [\"武侠江湖\", \"8162\",\"8562\"],\n        [\"权谋天下\", \"8162\",\"8563\"],\n        [\"古代情缘\", \"8162\",\"8564\"],\n        [\"宫闱宅斗\", \"8162\",\"8565\"],\n        [\"种田经商\", \"8162\",\"8566\"],\n        [\"古代悬疑\", \"8162\",\"8567\"],\n        [\"幻想言情\",\"8163\",\"\"],\n        [\"异世幻想\",\"8163\",\"8591\"],\n        [\"末世求生\",\"8163\",\"8592\"],\n        [\"无限快穿\",\"8163\",\"8593\"],\n        [\"未来科幻\",\"8163\",\"8594\"],\n        [\"玄幻仙侠\",\"8163\",\"8595\"],\n        [\"衍生言情\", \"8164\",\"\"],\n        [\"经典衍生\", \"8164\",\"8651\"],\n        [\"次元衍生\", \"8164\",\"8652\"],\n        [\"游戏竞技\", \"8165\",\"\"],\n        [\"运动竞技\", \"8165\",\"8621\"],\n        [\"网游电竞\", \"8165\",\"8622\"],\n        [\"现实主义\",\"8166\",\"\"],\n        [\"现实故事\",\"8166\",\"8711\"]\n].map([title, Id, id] => {\n    title=title,\n    url= `https://www.zongheng.com/api2/catefine/storeSearch,{\"method\":\"POST\",\"body\":\"worksTypes=${Id}&bookType=1&subWorksTypes=${id}&totalWord=0&serialStatus=9&vip=9&categoryId=${id}&categoryPid=${Id}&naodongFilter=0&pageNum={{page}}&pageSize=20\"}`,\n    push(title, url, 0.29)\n    });\n\nJSON.stringify(sort);",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36\"}",
    "lastUpdateTime": 1752218191297,
    "loginUrl": "",
    "respondTime": 2284,
    "ruleBookInfo": {
      "author": "",
      "canReName": "",
      "coverUrl": "",
      "downloadUrls": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".content@p@text"
    },
    "ruleExplore": {
      "author": "pseudonym||authorName",
      "bookList": "result.resultList||result.bookList",
      "bookUrl": "https://bookapi.zongheng.com/api/chapter/getChapterList,{\"method\":\"POST\",\"body\":\"bookId={{$.bookId}}\"}",
      "coverUrl": "bookCover||picUrl",
      "intro": "description",
      "kind": "{{$.cateFineName||$.categoryName}}\n{{$.latestChapterTime||$.orderColumnInfo}}\n连载{{$.serialStatus}}完结@js:result.replace(/连载1完结/g,'完结').replace(/连载0完结/g,'连载')",
      "lastChapter": "{{$.latestChapterName||$.theNewChapter}}{{$.latestChapterTime||$.orderColumnInfo}}",
      "name": "bookName||name",
      "wordCount": "number||totalWords"
    },
    "ruleSearch": {
      "author": "authorName",
      "bookList": "data.datas.list",
      "bookUrl": "https://bookapi.zongheng.com/api/chapter/getChapterList,{\"method\":\"POST\",\"body\":\"bookId={$.bookId}\"}",
      "checkKeyWord": "",
      "coverUrl": "https://static.zongheng.com/upload{{$.coverUrl}}",
      "intro": "description",
      "kind": "{{$.cateFineName&&$.tomeName&&$.catePName&&$.keyword&&$.updateTime}}\n连载{{$.serialStatus}}完结##\\<font color\\=\\\"RED\\\"\\>|\\<\\/font\\>\n@js:result.replace(/连载1完结/g,'完结').replace(/连载0完结/g,'连载')",
      "lastChapter": "chapterName&&updateTime",
      "name": "name##\\<font color\\=\\\"RED\\\"\\>|\\<\\/font\\>",
      "wordCount": "totalWord"
    },
    "ruleToc": {
      "chapterList": "result.chapterList[*].chapterViewList[*]",
      "chapterName": "chapterName",
      "chapterUrl": "https://read.zongheng.com/chapter/{$.bookId}/{$.chapterId}.html",
      "formatJs": "",
      "isVip": "level",
      "preUpdateJs": "",
      "updateTime": "{{$.createTime}} 字数：{{$.wordNums}}"
    },
    "searchUrl": "https://search.zongheng.com/search/book?keyword={{key}}&sort=null&pageNo=1&pageNum=20&isFromHuayu=0",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "森林ᵐᵘ -",
    "bookSourceType": 0,
    "bookSourceUrl": "http://23.224.242.55/",
    "customButton": false,
    "customOrder": 402,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1762004233601,
    "respondTime": 1208,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:novel:update_time\"]@content&&\n[property=\"og:description\"]@content@js:'更新时间：'+result",
      "kind": "[property~=category|status|tags]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "text.下一@a[href*=\"_\"]@href",
      "replaceRegex": "##（本章未完，请点击下一页继续阅读）|.* \\(第\\d/\\d页\\)"
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list li!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href\n@js:\nvar match = result.match(/(\\d+)(?=[^\\d]*$)/);\nvar id = match ? match[1] : '';\nvar iid = parseInt(id / 1000);\n'/files/article/image/' + iid + '/' + id + '/' + id + 's.jpg';",
      "kind": ".s1@text##[\\[\\]]",
      "lastChapter": ".s3@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".section-box a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/ar.php?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 芙蓉小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.frtxt.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 403,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "                                  排行榜                                   \n日人气::/top/0_0_{{page}}.html\n周人气::/top/1_0_{{page}}.html\n月人气::/top/2_0_{{page}}.html\n总人气::/top/3_0_{{page}}.html\n日推荐::/top/4_0_{{page}}.html\n周推荐::/top/5_0_{{page}}.html\n月推荐::/top/6_0_{{page}}.html\n总推荐::/top/7_0_{{page}}.html\n日收藏::/top/8_0_{{page}}.html\n周收藏::/top/9_0_{{page}}.html\n月收藏::/top/10_0_{{page}}.html\n总收藏::/top/11_0_{{page}}.html\n  字数  ::/top/12_0_{{page}}.html\n最新上传::/top/13_0_{{page}}.html\n                                     分  类                                   \n 玄幻 ::/xuanhuan/{{page}}.html\n 言情 ::/yanqing/{{page}}.html\n 科幻 ::/kehuan/{{page}}.html\n 穿越 ::/chuanyue/{{page}}.html\n武侠修真::/wuxia/{{page}}.html\n网游竞技::/wangyou/{{page}}.html\n恐怖悬拟::/kongbu/{{page}}.html\n历史军事::/lishi/{{page}}.html\n现代文学::/wenxue/{{page}}.html\n经管教育::/jiaoyu/{{page}}.html\n 激情 ::/jiqing/{{page}}.html\n 同人 ::/tongren/{{page}}.html\n 名著 ::/mingzhu/{{page}}.html\n 其他 ::/qita/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1724320462227,
    "loginUrl": "",
    "respondTime": 48337,
    "ruleBookInfo": {
      "author": "class.booktable@tag.td.3@text",
      "coverUrl": "class.booktable@tag.td.0@src",
      "intro": "class.jianjie@text",
      "kind": "class.booktable@tag.td.1@text#小说类别：",
      "name": "tag.h1@text"
    },
    "ruleContent": {
      "content": "class.chapter@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "bookList": "class.list@tag.tbody",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text",
      "name": "class.name@tag.a@text"
    },
    "ruleSearch": {
      "bookList": "class.list@tag.table",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text",
      "name": "class.name@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.list@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/search.php?keyword={{key}}&submit=%CB%D1+%CB%F7,{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.1.5",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯◎辞晨◎",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.cxzz958.com/",
    "customButton": false,
    "customOrder": 404,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🌊分类\",null,1,1)\npush(\"🌊全本🌊\",`http://m.cxzz958.com/wanben/{{page}}.html`,1,1)\n\tarList=[\"玄幻小说\",\"仙侠小说\",\"都市小说\",\"军史小说\",\"网游小说\",\"科幻小说\",\"恐怖小说\",\"其它小说\"]\n\tarList.map((tag,index)=>{\n\t\turl=`/fenlei/${index+1}/{{page}}.html`;\n\t\tpush(tag, url, 1, 0.25);\n\t\t});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "{'User-Agent':'Mozilla/5.0 (Linux; Android 14; V2304A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36',\n\"Referer\":\"http://www.cxzz958.com/\"}",
    "lastUpdateTime": 1736017522280,
    "respondTime": 489,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#content@html",
      "replaceRegex": "##.*首发域名.*|.*\\.html"
    },
    "ruleExplore": {
      "author": "{{@@.s4@text}}{{@@##a\\>\\/(.*?)\\<\\/##$1###}}",
      "bookList": ".bd@ul@li&&.cover@p",
      "bookUrl": "a.0@href\n<js>\nif(result!=\"\"){\n\tlet pi=result.match(/\\/(.*?)\\/$/)[1];\nurl=\"http://www.cxzz958.com/\"+pi\n}\nresult=url\n</js>",
      "coverUrl": "",
      "intro": "",
      "kind": "{{@@span.0@text##\\[|\\]}}{{@@.line@text##\\[|\\].*}}",
      "lastChapter": "span.2@a@text",
      "name": "a.0@text",
      "wordCount": "span.-1@text"
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "kind": ".cat@text##分类：",
      "lastChapter": ".update@text##最新章节：",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "dl@dt:nth-of-type(2)~dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.cxzz958.com/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "何以笙箫",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.yetianlian.la/",
    "customButton": false,
    "customOrder": 405,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1745854440487,
    "respondTime": 2932,
    "ruleBookInfo": {
      "intro": ".intro_info@html##最新章节推荐地址：[\\s\\S]+"
    },
    "ruleContent": {
      "content": "id.nr1@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\s*（本章未完，请点击下一页继续阅读）\\s*|.*?\\(第\\d+/\\d+页\\)\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "##作者.([^<]+)<##$1###",
      "bookList": ".block",
      "bookUrl": "a.0@href",
      "kind": "##分类.([^<]+)<##$1###",
      "lastChapter": "p.-1@a@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": ".chapter.-1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "http://m.yetianlian.la/s.php?q={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "逆鳞小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://fu44.pw",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 406,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "激情::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=13\n古代::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=14\n家庭::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=15\n浪漫::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=16\n绝品::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=1\n同居::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=2\n古典::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=3\n诱惑::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=4\n女子::https://fu44.pw/e/action/ListInfo/index.php?page={{page}}&classid=5",
    "lastUpdateTime": 1733856766002,
    "loginUrl": "",
    "respondTime": 3243,
    "ruleBookInfo": {
      "init": "",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content"
    },
    "ruleContent": {
      "content": "class.entry@html"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.author@text||span@text##.*作者：",
      "bookList": "class.result||class.blockLink",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "name": "class.title@textNodes||span@text##【|】|作者.*"
    },
    "ruleToc": {
      "chapterList": "class.contitle",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://fu44.pw/e/search/index.php,{\n  \"charset\": \"gb2312\",\n  \"method\": \"POST\",\n  \"body\": \"show=title&tempid=1&tbname=article&mid=1&dopost=search&keyboard={{key}}&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "猪猪小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://gg.zzxsa.com/",
    "customButton": false,
    "customOrder": 407,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort = [];\npush=(title,link,size)=>sort.push({\n    \"title\": title,\n    \"url\": link,\n    \"style\": {\n      \"layout_flexGrow\": 1,\n       \"layout_flexBasisPercent\": size\n    }\n  });\npush(\"男主角🔹♂️按分类\",\"\",1);\ntags=[\"玄幻\",\"奇幻\",\"武侠\",\"仙侠\",\n\"灵异\",\"科幻\",\"游戏\",\"竞技\",\n\"职场\",\"都市\",\"历史\",\"军事\",\"轻小说\",\n\"同人\",\"其他\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booksort/list?gender=0&type=star&major=${t}&minor=&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t push(\"男主角🔹♂️按题材\",\"\",1);\ntags=[\"装备\",\"赚钱\",\"轮回\",\"重生\",\n\"种田\",\"治愈\",\"直播\",\"征战\",\n\"征服\",\"争斗\",\"战争\",\"缘分\",\"游戏\",\n\"阴阳\",\"异世\",\"异能\",\"异界\",\"医术\",\"妖魔\",\n\"血脉\",\"悬疑\",\"虚拟\",\"修炼\",\n\"兄弟\",\"星辰\",\"信仰\",\"邪恶\",\"现实\",\n\"武道\",\"五行\",\"文明\",\"位面\",\"未来\",\"猥琐\",\n\"危机\",\"同人\",\"挑战\",\"体育\",\n\"逃亡\",\"守护\",\"生死\",\"生活\",\"神兽\",\n\"神魔\",\"神秘\",\"神话\",\"烧脑\",\"杀戮\",\"任务\",\n\"热血\",\"权谋\",\"求生\",\"奇幻\",\n\"破案\",\"泡妞\",\"逆袭\",\"逆天\",\"末世\",\n\"魔法\",\"命运\",\"秘术\",\n\"梦想\",\"冒险\",\"炼药\",\"恐怖\",\"空间\",\n\"科技\",\"科幻\",\"开局\",\n\"军事\",\"竞技\",\"惊悚\",\"僵尸\",\n\"鉴宝\",\"家族\",\"回忆\",\n\"荒岛\",\"红颜\",\"鬼怪\",\"功夫\",\"搞笑\",\n\"复仇\",\"封印\",\"奋斗\",\n\"废物\",\"犯罪\",\"电竞\",\"大唐\",\"传说\",\n\"称霸\",\"变异\",\"变身\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=0&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t push(\"男主角🔹♂️按流派\",\"\",1);\ntags=[\"金手指\",\"重生\",\"直播\",\"争霸流\",\n\"召唤流\",\"异兽流\",\"医生\",\"学院流\",\n\"校花\",\"乡村\",\"系统流\",\"武侠\",\"无限流\",\n\"无敌流\",\"文娱\",\"网游\",\"透视\",\"天才流\",\"随身流\",\n\"爽文\",\"升级流\",\"神豪\",\"软饭流\",\n\"轻小说\",\"奶爸\",\"练功流\",\"可爱流\",\"惊悚\",\n\"技术流\",\"洪荒流\",\"红包\",\"废材流\",\"凡人流\",\"恶搞\",\n\"都市\",\"兵王\",\"保镖\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=0&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t push(\"男主角🔹♂️按身份\",\"\",1);\ntags=[\"至尊\",\"战神\",\"宅男\",\"业界精英\",\n\"药师\",\"学生\",\"枭雄\",\"仙尊\",\n\"武神\",\"同人\",\"特种兵\",\"书生\",\"神医\",\n\"神豪\",\"少年\",\"商人\",\"杀手\",\"强者\",\"乞丐\",\n\"女婿\",\"农民\",\"奶爸\",\"明星\",\n\"美女\",\"流氓\",\"教师\",\"剑客\",\"火影\",\n\"黑客\",\"海贼\",\"贵族\",\"盗贼\",\"孤儿\",\"公子\",\n\"法医\",\"帝王\",\"道士\",\"大侠\",\"刺客\",\"吃货\",\"草根\",\"兵王\",\n\"保镖\",\"保安\",\"白领\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=0&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t \t push(\"男主角🔹♂️按性格\",\"\",1);\ntags=[\"装逼\",\"勇猛\",\"野蛮\",\"阳光\",\n\"嚣张\",\"侠义\",\"玩世不恭\",\"铁血\",\n\"杀伐果断\",\"懦弱\",\"狂傲\",\"狡猾\",\"坚毅\",\n\"搞笑\",\"疯狂\",\"风流\",\"逗逼\",\"暗黑\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=0&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t \t \t push(\"男主角🔹♂️按情节\",\"\",1);\ntags=[\"扮猪吃虎\",\"宝物\",\"超能力\",\"打脸\",\n\"丹药\",\"吊炸天\",\"发财\",\"翻身\",\n\"废材\",\"废材逆袭\",\"洪荒\",\"戒指\",\"金手指\",\n\"金庸\",\"坑爹\",\"逆天改命\",\"入侵\",\"三国\",\"神器\",\"随身空间\",\"特殊技能\",\"天书\",\n\"王者荣耀\",\"西游\",\"咸鱼翻身\",\"血腥\",\"一统天下\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=0&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t push(\"女主角🔸♀️按分类\",\"\",1);\ntags=[\"玄幻奇幻\",\"武侠仙侠\",\"悬疑灵异\",\"游戏竞技\",\n\"古代言情\",\"现代言情\",\"青春校园\",\"同人\",\n\"科幻\",\"女尊\",\"其他\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booksort/list?gender=1&type=star&major=${t}&minor=&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t push(\"女主角🔸♀️按题材\",\"\",1);\ntags=[\"总裁\",\"赚钱\",\"专宠\",\"重逢\",\n\"智谋\",\"职场\",\"正剧\",\"争斗\",\n\"争宠\",\"缘分\",\"冤家\",\"娱乐圈\",\"友情\",\n\"游戏\",\"音乐\",\"妖魔\",\"选秀\",\"相亲\",\"现实\",\n\"喜剧\",\"亡国\",\"吐槽\",\"甜心\",\n\"甜宠\",\"替身\",\"替嫁\",\"桃花\",\"守护\",\n\"嗜血\",\"生活\",\"深情\",\"烧脑\",\"商业\",\"伤痛\",\n\"闪婚\",\"三生三世\",\"日常\",\"权利\",\n\"情有独钟\",\"倾城\",\"青梅竹马\",\"青春\",\"契约\",\n\"婆媳\",\"虐渣\",\"男强\",\"命运\",\"美食\",\"卖萌\",\n\"励志\",\"江山\",\"家族\",\"家长里短\",\n\"婚姻\",\"回忆\",\"皇权\",\"欢乐\",\"豪门\",\n\"闺蜜\",\"古风\",\"孤独\",\n\"狗血\",\"宫斗宅斗\",\"搞笑\",\"感人\",\"复仇\",\n\"斗智斗勇\",\"初念\",\"宠妻\",\n\"宠溺\",\"宠婚\",\"车祸\",\"背叛\",\n\"爱情\",\"BE\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=1&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t push(\"女主角🔸♀️按流派\",\"\",1);\ntags=[\"搞笑\",\"种田文\",\"医生\",\"养成\",\n\"言情\",\"现言\",\"甜宠文\",\"爽文\",\n\"轻小说\",\"轻松文\",\"女尊文\",\"虐文\",\"虐恋\",\n\"暖文\",\"年代文\",\"脑洞\",\"萌宠\",\"可爱流\",\"婚恋\",\n\"古言\",\"总裁文\",\"穿越\",\"宝宝\",\n].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=1&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t push(\"女主角🔸♀️按身份\",\"\",1);\ntags=[\"御姐\",\"娱乐明星\",\"业界精英\",\"学霸\",\n\"校花\",\"王侯将相\",\"王妃\",\"替身\",\n\"特工\",\"庶女\",\"首席\",\"神医\",\"设计师\",\n\"商女\",\"人妻\",\"前妻\",\"千金\",\"弃妇\",\"女强\",\n\"女配\",\"农女\",\"明星\",\"萌宝\",\n\"灰姑娘\",\"皇后\",\"贵族\",\"公主\",\"高富帅\",\n\"毒医\",\"第三者\",\"嫡女\",\"变身\",\"白领\",\"BL\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=1&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t push(\"女主角🔸♀️按性格\",\"\",1);\ntags=[\"搞笑\",\"懦弱\",\"腹黑\",\"霸道\",\n\"冰冷\",\"温柔\",\"阳光\",\"可爱\",\n\"傲娇\",\"冷酷\",\"淡定\",\"纯真\",\"善良\",\n\"强势\",\"高冷\",\"八卦\",\"妖娆\",\"风流\",\"杀伐果断\",\n\"情深\",\"专情\",\"甜美\",\"张扬\",\n\"奇葩\",\"冰山\",\"冷血\",\"狡猾\",\"柔情\",\n\"毒舌\",\"呆萌\",\"玩世不恭\",\"刁蛮\",\"野蛮\",\"古灵精怪\",\n\"勇敢\",\"花心\",\"妖媚\",\"逗逼\",\n\"幽默\",\"多情\",\"机智\",\"暖心\",\"欢脱\",\n\"专一\",\"傻白甜\",\"萌萌哒\",\"高智商\",\"慢热\",\"敢爱敢恨\",\n\"逗比\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=1&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\n\t \t \t push(\"女主角🔸♀️按情节\",\"\",1);\ntags=[\"阴差阳错\",\"一往情深\",\"一见钟情\",\"未婚先孕\",\n\"逃婚\",\"死缠烂打\",\"生死大爱\",\"情有独钟\",\n\"青梅竹马\",\"强取豪夺\",\"破镜重圆\",\"女追男\",\"女强男尊\",\n\"虐渣打脸\",\"涅槃\",\"麻雀变凤凰\",\"浪漫情缘\",\"纠缠\",\"欢喜冤家\",\n\"黑化\",\"复婚\",\"复合\",\"反转\",\n\"反套路\",\"错嫁\",\"错爱\",\"变身\",\"出轨\",\n\"不离不弃\",\"春风一度\",\"爱而不得\"].map((t,i)=>push(\n\tjava.t2s(t), `https://gg.zzxsa.com/booktag/list?gender=1&type=star&tags=${t}&start={{(page-1)*20}}&limit=20&language=zh_cn`, \n\t t.length > 2 ? 0.25 : 0.2) );\nJSON.stringify(sort);",
    "lastUpdateTime": 1732779886336,
    "respondTime": 2969,
    "ruleBookInfo": {
      "author": "$.writer",
      "coverUrl": "$.cover",
      "init": "$.data",
      "intro": "$.bookJs",
      "kind": "$.tags",
      "lastChapter": "$.chapterLast",
      "name": "$.bookName@put:{xid:x_id}",
      "tocUrl": "https://gg.zzxsa.com/chapters/{{$._id}}?view=chapters&appName=com.zhuxshah.mszlhdgwa&https=1&language=zh_cn",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "$.chapter.body"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "$.writer",
      "bookList": "$.books[*]",
      "bookUrl": "https://gg.zzxsa.com/bookintro/{{$._id}}?language=zh_cn",
      "checkKeyWord": "寻飞",
      "coverUrl": "$.cover",
      "intro": "$.bookJs",
      "kind": "$.tags",
      "name": "$.bookName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "$.data.chapters",
      "chapterName": "$.tit",
      "chapterUrl": "https://xs.zzxsa.com/read/@get:{xid}/{{$.num}}?app_name=com.zhuxshah.mszlhdgwa&app_vn=2.7&dev_id=89b2628c-292f-32c6-b512-8ef3cbe58315&ts={{Date.now()}}&app_vc=20227&token=030590f5f9f4b2ab0879ea5cda0670a2"
    },
    "searchUrl": "https://gg.zzxsa.com/search/result?query={{key}}&language=zh_cn",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "古龙武侠（优）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.gulongbbs.com/wuxia",
    "customButton": false,
    "customOrder": 408,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1759402890747,
    "loginUrl": "{\n  \"url\": \"null\"\n}",
    "respondTime": 775,
    "ruleBookInfo": {
      "author": "##作者：(.*?)&##$1###",
      "name": "class.crumbs@tag.a.-1@text",
      "tocUrl": "class.crumbs@tag.a.-1@href"
    },
    "ruleContent": {
      "content": "id.div_content@html||class.content@html##<!--内容关联投票-->|[\\s\\S]+?敬请关注 \"古龙武侠网\" 微信公众号|.*全面支持https访问",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "@get:{author}@get:{author2}##武侠小说.*|侦探推理.*",
      "bookList": "table@tr@td@put:{author:'@@tag.th.0@text',author2:'@@class.ui-pagetitle@text'}",
      "bookUrl": "tag.a.0@href",
      "name": "text"
    },
    "ruleSearch": {
      "bookList": "class.c wrap@li",
      "bookUrl": "tag.a.0@href",
      "intro": "tag.p@text",
      "lastChapter": "class.adds@text##发布时间：",
      "name": "h5@text"
    },
    "ruleToc": {
      "chapterList": "table@tr@td@a||class.list@li@a||tag.html",
      "chapterName": "class.title@text||text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://m.gulongbbs.com/index.php?m=search&c=index&a=init&typeid=1&siteid=1&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "香书小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.ibiquges.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 409,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/fenlei/1_{{page}}.html\n修真小说::/fenlei/2_{{page}}.html\n都市小说::/fenlei/3_{{page}}.html\n穿越小说::/fenlei/4_{{page}}.html\n网游小说::/fenlei/5_{{page}}.html\n科幻小说::/fenlei/6_{{page}}.html",
    "header": "",
    "lastUpdateTime": 1734842526596,
    "loginUrl": "",
    "respondTime": 2276,
    "ruleBookInfo": {
      "author": "//meta[@property='og:novel:author']/@content",
      "coverUrl": "//meta[@property='og:image']/@content",
      "intro": "//meta[@property='og:description']/@content",
      "kind": "//meta[@property='og:novel:category']/@content",
      "lastChapter": "id.info.0@tag.a.-1@text",
      "name": "//meta[@property='og:novel:book_name']/@content"
    },
    "ruleContent": {
      "content": "id.content.0@textNodes",
      "replaceRegex": "##.*第.*章.*\\s"
    },
    "ruleExplore": {
      "author": "class.s5.0@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2.0@tag.a.0@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "class.s3.0@tag.a.0@text",
      "name": "class.s2.0@tag.a.0@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tag.tbody.0@tag.tr.!0",
      "bookUrl": "tag.td.0@tag.a.0@href",
      "kind": "",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list.0@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "有声",
    "bookSourceName": "🎼蜻蜓FM🎼",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.qingting.fm/",
    "customButton": false,
    "customOrder": 412,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\"User-Agent\":\"Mozilla/5.0 (Linux; Android 11; Redmi K30 Pro Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/92.0.4515.115 Mobile Safari/537.36\",\n\"referer\":\"https://m.qingting.fm/\"\n}",
    "lastUpdateTime": 1722358728274,
    "respondTime": 4265,
    "ruleBookInfo": {
      "init": "",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "<js>result</js>",
      "sourceRegex": ".*\\.(mp3|m4a).*"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": ".text.-1@text",
      "bookList": ".swiper-slide@a",
      "bookUrl": "a@href",
      "coverUrl": "img.0@src",
      "intro": ".text.0@html",
      "kind": ".text.1@text",
      "lastChapter": ".text.2@text",
      "name": ".title@text"
    },
    "ruleToc": {
      "chapterList": ".vchannel-play-list",
      "chapterName": "a@text",
      "chapterUrl": "a@href@js:result+',{webView:“true”}'"
    },
    "searchUrl": "https://m.qingting.fm/search/all/{{key}}/,{'webView': true}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "若初文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruochu.com嘚嘚.",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 413,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "短篇::http://search.ruochu.com/web/all?sort=110&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n婚恋::http://search.ruochu.com/web/all?sort=35&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n都市::http://search.ruochu.com/web/all?sort=4&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n职场::http://search.ruochu.com/web/all?sort=11&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n豪门::http://search.ruochu.com/web/all?sort=12&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n总裁::http://search.ruochu.com/web/all?sort=13&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n架空::http://search.ruochu.com/web/all?sort=15&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n穿越::http://search.ruochu.com/web/all?sort=17&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宫斗::http://search.ruochu.com/web/all?sort=19&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宅斗::http://search.ruochu.com/web/all?sort=20&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n青春::http://search.ruochu.com/web/all?sort=21&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n仙侠::http://search.ruochu.com/web/all?sort=7&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n修真::http://search.ruochu.com/web/all?sort=22&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n玄幻::http://search.ruochu.com/web/all?sort=6&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n武侠::http://search.ruochu.com/web/all?sort=8&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n历史::http://search.ruochu.com/web/all?sort=3&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n纯爱::http://search.ruochu.com/web/all?sort=23&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0",
    "lastUpdateTime": 1733276174628,
    "loginUrl": "",
    "respondTime": 2309,
    "ruleBookInfo": {
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": "class.page-content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "$.data.content",
      "bookUrl": "$.id@js:\"https://www.ruochu.com/book/\"+result",
      "coverUrl": "$.iconUrlSmall@js:\"https://b.heiyanimg.com\"+result",
      "intro": "$.introduce",
      "kind": "$.sortname",
      "lastChapter": "$.lastchaptername",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": "class.float-list fill-block@li",
      "chapterName": "html@js:if(result.match(/isvip/)){\nresult=\"🔒\"+result.match(/>([^<]+)<\\/a>/)[1];\n}else{result=result.match(/>([^<]+)<\\/a>/)[1];}",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://search.ruochu.com/web/search?queryString={{key}}&highlight=false&page=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🎃肉书屋网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.roushuwu7.com#🎃",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 414,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "[{\"title\":\"总点击榜\",\"url\":\"/paihang/allvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击榜\",\"url\":\"/paihang/monthvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击榜\",\"url\":\"/paihang/weekvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"/paihang/allvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月推荐榜\",\"url\":\"/paihang/monthvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周推荐榜\",\"url\":\"/paihang/weekvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏榜\",\"url\":\"/paihang/goodnum_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总字数榜\",\"url\":\"/paihang/size_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最近更新\",\"url\":\"/paihang/lastupdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最新入库\",\"url\":\"/paihang/postdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/xuanhuan_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/wuxia_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"/yanqing_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻网游\",\"url\":\"/kehuan_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"惊悚悬疑\",\"url\":\"/jingsong_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美同人\",\"url\":\"/danmei_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越架空\",\"url\":\"/chuanyue_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"高辣浓情\",\"url\":\"/gaola_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"禁忌百合\",\"url\":\"/baihe_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"精品文学\",\"url\":\"/jingpin_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},]",
    "header": "",
    "lastUpdateTime": 0,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 30661,
    "ruleBookInfo": {
      "author": ".author a@text",
      "canReName": "",
      "coverUrl": ".l img@src",
      "init": "",
      "intro": "p.p3@text",
      "kind": ".p2 p:nth-of-type(1)@text##类型：",
      "lastChapter": ".p4 a@text",
      "name": ".p1 h1@text##\\_.*",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".content p@html",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "span a@text||.author a@text",
      "bookList": ".listcon li||.lists li",
      "bookUrl": ".articlename a@href||a.articlename@href",
      "coverUrl": ".l2 img@src",
      "intro": "p.p3@text",
      "kind": ".articlename span@text||span.sortname@text##\\[|\\]|\\s",
      "lastChapter": ".lastchapter a@text",
      "name": ".articlename a@text||a.articlename@text",
      "wordCount": ".p2 span:nth-of-type(2)@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".searchresult li",
      "bookUrl": "a.articlename@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##http://img.roushuwu7.com/image/$2/$1/$1s.jpg###",
      "intro": "",
      "kind": "span.sortname@text##\\[|\\]|[\\s]",
      "lastChapter": ".lastchapter a@text",
      "name": "a.articlename@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".chapterlist li a",
      "chapterName": "text##本页章节.*",
      "chapterUrl": "href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "modules/article/search.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}&t_btnsearch=\"\n}",
    "variableComment": "",
    "weight": 2
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.biquge.info#🎃",
    "customButton": false,
    "customOrder": 415,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1721130680053,
    "respondTime": 3067,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作 者:",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.1@text&&\nid.info@tag.p.2@text##类 别:|最后更新 :",
      "lastChapter": "id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr)\n.replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{\nn=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t\n}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.odd.0@tag.a@href",
      "coverUrl": "class.odd.0@tag.a@href<js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquge.info/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.even.0@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.odd.0@tag.a@text",
      "wordCount": "class.even.1@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquge.info/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-7",
    "customButton": false,
    "customOrder": 417,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1725649541581,
    "respondTime": 1303,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "🎉 爱笔楼/笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.ibiquge.info/",
    "customButton": false,
    "customOrder": 418,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部\",\"url\":\"/xclass/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"玄幻奇幻\",\"url\":\"/xclass/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"修真仙侠\",\"url\":\"/xclass/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"都市青春\",\"url\":\"/xclass/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"历史军事\",\"url\":\"/xclass/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"网游竞技\",\"url\":\"/xclass/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"科幻灵异\",\"url\":\"/xclass/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"其它\",\"url\":\"/xclass/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}}]",
    "header": "{ \"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1721743642991,
    "respondTime": 3019,
    "ruleBookInfo": {
      "author": ".author@a@text",
      "coverUrl": "#thumb@img@src",
      "kind": "#book_detail@li.1:2:3@text\n##类别：|状态：|更新：",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "class.title@text",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "#chaptercontent@html##『.*』|.*\\(第.*页\\)",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##天才一秒记住.*|最新网址.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author.0@a.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".review@text",
      "kind": ".author.1@textNodes||.score@text\n##最近更新：\\s",
      "lastChapter": ".author.1@a@text",
      "name": "a@p@text"
    },
    "ruleToc": {
      "chapterList": "div@p!0@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.ibiquge.info/SearchBook.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨 漫客栈",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mkzhan.com已整理",
    "bookUrlPattern": "https://m.mkzhan.com/\\d+已校验",
    "customButton": false,
    "customOrder": 419,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "修真::https://www.mkzhan.com/category/?theme_id=2&page={{page}}\n恋爱::https://www.mkzhan.com/category/?theme_id=3&page={{page}}\n校园::https://www.mkzhan.com/category/?theme_id=4&page={{page}}\n冒险::https://www.mkzhan.com/category/?theme_id=5&page={{page}}\n搞笑::https://www.mkzhan.com/category/?theme_id=6&page={{page}}\n生活::https://www.mkzhan.com/category/?theme_id=7&page={{page}}\n热血::https://www.mkzhan.com/category/?theme_id=8&page={{page}}\n架空::https://www.mkzhan.com/category/?theme_id=9&page={{page}}\n后宫::https://www.mkzhan.com/category/?theme_id=10&page={{page}}\n耽美::https://www.mkzhan.com/category/?theme_id=11&page={{page}}\n玄幻::https://www.mkzhan.com/category/?theme_id=12&page={{page}}\n悬疑::https://www.mkzhan.com/category/?theme_id=13&page={{page}}\n恐怖::https://www.mkzhan.com/category/?theme_id=14&page={{page}}\n灵异::https://www.mkzhan.com/category/?theme_id=15&page={{page}}\n动作::https://www.mkzhan.com/category/?theme_id=16&page={{page}}\n科幻::https://www.mkzhan.com/category/?theme_id=17&page={{page}}\n战争::https://www.mkzhan.com/category/?theme_id=18&page={{page}}\n古风::https://www.mkzhan.com/category/?theme_id=19&page={{page}}\n穿越::https://www.mkzhan.com/category/?theme_id=20&page={{page}}\n竞技::https://www.mkzhan.com/category/?theme_id=21&page={{page}}\n百合::https://www.mkzhan.com/category/?theme_id=22&page={{page}}\n励志::https://www.mkzhan.com/category/?theme_id=23&page={{page}}\n同人::https://www.mkzhan.com/category/?theme_id=24&page={{page}}\n真人::https://www.mkzhan.com/category/?theme_id=26&page={{page}}\n霸总::https://www.mkzhan.com/category/?theme_id=1&page={{page}}",
    "lastUpdateTime": 1716229878611,
    "respondTime": 641,
    "ruleBookInfo": {
      "author": "class.name@text",
      "intro": "class.intro-total@text",
      "kind": "class.comic-status@tag.span.0@text##题材:",
      "lastChapter": "class.update-time@text",
      "name": "class.comic-title.0@text"
    },
    "ruleContent": {
      "content": "$..image@js:result.split(\"\\n\").map(x=>'<img src=\\\"'+x+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": "class.cate-comic-list clearfix@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@text"
    },
    "ruleSearch": {
      "bookList": "class.search-comic-list@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "-class.chapter__list-box@tag.li",
      "chapterName": "a@text",
      "chapterUrl": ".j-chapter-link@data-chapterid\n@js:\r\ncid=result;\r\nbid=baseUrl.match(/\\/(\\d+)\\//)[1],\n\n'https://comic.mkzcdn.com/chapter/content/v1/?chapter_id='+cid+'&comic_id='+bid+'&format=1&quality=1&sign=0&type=1&uid=0'",
      "updateTime": ".data@text"
    },
    "searchUrl": "https://www.mkzhan.com/search/?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "搜索间隔5秒",
    "bookSourceGroup": "免费",
    "bookSourceName": "圣墟小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shengxuxu.net",
    "bookUrlPattern": "http.*shengxuxu.net/book_\\d+/",
    "customButton": false,
    "customOrder": 421,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\n    \"title\": \"榜单\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"总点击榜\",\n    \"url\": \"/top/allvisit/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.4,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"月点击榜\",\n    \"url\": \"/top/monthvisit/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.4,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"周点击榜\",\n    \"url\": \"/top/weekvisit/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.4,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"收藏榜\",\n    \"url\": \"/top/marknum/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.4,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"推荐榜\",\n    \"url\": \"/top/votenum/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.4,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"全部小说\",\n    \"url\": \"/sort/all/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻小说\",\n    \"url\": \"/sort/xuanhuan/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"奇幻小说\",\n    \"url\": \"/sort/qihuan/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"武侠小说\",\n    \"url\": \"/sort/wuxia/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"仙侠小说\",\n    \"url\": \"/sort/xianxia/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"都市小说\",\n    \"url\": \"/sort/dushi/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"历史小说\",\n    \"url\": \"/sort/lishi/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"军事小说\",\n    \"url\": \"/sort/junshi/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"游戏小说\",\n    \"url\": \"/sort/youxi/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"科幻小说\",\n    \"url\": \"/sort/kehuan/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"灵异小说\",\n    \"url\": \"/sort/lingyi/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  },\n  {\n    \"title\": \"其他小说\",\n    \"url\": \"/sort/qita/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 0.25,\n      \"layout_flexBasisPercent\": -1\n    }\n  }\n]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1784359593955,
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=lastest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": ".content@html##.本章完.|^一秒记住ｈｔｔｐs://ｍ\\.\\/?$",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": ".librarylist li",
      "bookUrl": "a:nth-child(1)@href",
      "coverUrl": "tag.img@src",
      "intro": "@get:{i}",
      "kind": ".info span:nth-child(2)@text",
      "lastChapter": "a:nth-child(1)@text",
      "name": ".info span:nth-child(1)@text ##.*《|》.*"
    },
    "ruleSearch": {
      "author": ".info span:nth-child(2)@text",
      "bookList": ".librarylist li ",
      "bookUrl": "a:nth-child(1)@href",
      "coverUrl": "a.0@href##\\D((\\d+)\\d{3})##http://www.shengxuxu.net/headimgs/$2/$1/s$1.jpg###\na.0@href##\\/(\\d+)$##$1###",
      "intro": "@get:{i}",
      "kind": ".info span:nth-child(3) a@text",
      "lastChapter": ".last@text",
      "name": ".info span:nth-child(1)@text ##.*《|》.*"
    },
    "ruleToc": {
      "chapterList": ".dirlist@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search.html?/,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "🎉 宜搜小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.ieasou.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 423,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"❀ 男 生 分 类 ❀\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代都市\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%8E%B0%E4%BB%A3%E9%83%BD%E5%B8%82&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&appverion=1115&appid=10001\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代修真\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%8E%B0%E4%BB%A3%E4%BF%AE%E7%9C%9F&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市纵横\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%83%BD%E5%B8%82%E7%BA%B5%E6%A8%AA&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市异能\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%83%BD%E5%B8%82%E5%BC%82%E8%83%BD&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"娱乐明星\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%A8%B1%E4%B9%90%E6%98%8E%E6%98%9F&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"校园生活\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%A0%A1%E5%9B%AD%E7%94%9F%E6%B4%BB&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"升迁之路\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8D%87%E8%BF%81%E4%B9%8B%E8%B7%AF&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"职场商战\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%81%8C%E5%9C%BA%E5%95%86%E6%88%98&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"小康致富\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%B0%8F%E5%BA%B7%E8%87%B4%E5%AF%8C&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"玄幻奇幻\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%8E%84%E5%B9%BB%E5%A5%87%E5%B9%BB&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"东方玄幻\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E4%B8%9C%E6%96%B9%E7%8E%84%E5%B9%BB&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"西方魔幻\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%A5%BF%E6%96%B9%E9%AD%94%E5%B9%BB&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"异界争霸\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%BC%82%E7%95%8C%E4%BA%89%E9%9C%B8&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"洪荒神话\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%B4%AA%E8%8D%92%E7%A5%9E%E8%AF%9D&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%AD%A6%E4%BE%A0%E4%BB%99%E4%BE%A0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"传统武侠\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E4%BC%A0%E7%BB%9F%E6%AD%A6%E4%BE%A0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古典仙侠\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8F%A4%E5%85%B8%E4%BB%99%E4%BE%A0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%A7%91%E5%B9%BB%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"未来世界\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%9C%AA%E6%9D%A5%E4%B8%96%E7%95%8C&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"科技争霸\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%A7%91%E6%8A%80%E4%BA%89%E9%9C%B8&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古武机甲\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8F%A4%E6%AD%A6%E6%9C%BA%E7%94%B2&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"末世进化\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%9C%AB%E4%B8%96%E8%BF%9B%E5%8C%96&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"时空穿梭\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%97%B6%E7%A9%BA%E7%A9%BF%E6%A2%AD&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史军事\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8E%86%E5%8F%B2%E5%86%9B%E4%BA%8B&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"历史传记\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8E%86%E5%8F%B2%E4%BC%A0%E8%AE%B0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"架空穿越\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%9E%B6%E7%A9%BA%E7%A9%BF%E8%B6%8A&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"峥嵘岁月\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%B3%A5%E5%B5%98%E5%B2%81%E6%9C%88&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"谍战特工\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%B0%8D%E6%88%98%E7%89%B9%E5%B7%A5&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"灵异悬疑\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%81%B5%E5%BC%82%E6%82%AC%E7%96%91&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"推理悬念\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%8E%A8%E7%90%86%E6%82%AC%E5%BF%B5&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"灵异怪谈\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%81%B5%E5%BC%82%E6%80%AA%E8%B0%88&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"风水秘术\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%A3%8E%E6%B0%B4%E7%A7%98%E6%9C%AF&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"探险异闻\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%8E%A2%E9%99%A9%E5%BC%82%E9%97%BB&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏竞技\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%B8%B8%E6%88%8F%E7%AB%9E%E6%8A%80&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"虚拟网游\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%99%9A%E6%8B%9F%E7%BD%91%E6%B8%B8&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"电子竞技\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%94%B5%E5%AD%90%E7%AB%9E%E6%8A%80&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"体育竞技\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E4%BD%93%E8%82%B2%E7%AB%9E%E6%8A%80&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"宅小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%AE%85%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"同人幻想\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%90%8C%E4%BA%BA%E5%B9%BB%E6%83%B3&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"原生幻想\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8E%9F%E7%94%9F%E5%B9%BB%E6%83%B3&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"轻松搞笑\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%BD%BB%E6%9D%BE%E6%90%9E%E7%AC%91&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"❀ 女 生 分 类 ❀\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%8E%B0%E4%BB%A3%E8%A8%80%E6%83%85&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"都市情缘\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%83%BD%E5%B8%82%E6%83%85%E7%BC%98&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"总裁豪门\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%80%BB%E8%A3%81%E8%B1%AA%E9%97%A8&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"婚恋家庭\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%A9%9A%E6%81%8B%E5%AE%B6%E5%BA%AD&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"白领生涯\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%99%BD%E9%A2%86%E7%94%9F%E6%B6%AF&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"民国旧影\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%B0%91%E5%9B%BD%E6%97%A7%E5%BD%B1&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"娱乐巨星\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%A8%B1%E4%B9%90%E5%B7%A8%E6%98%9F&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"强势宠婚\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%BC%BA%E5%8A%BF%E5%AE%A0%E5%A9%9A&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8F%A4%E4%BB%A3%E8%A8%80%E6%83%85&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"古代情缘\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8F%A4%E4%BB%A3%E6%83%85%E7%BC%98&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"穿越架空\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%A9%BF%E8%B6%8A%E6%9E%B6%E7%A9%BA&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"女尊权谋\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%A5%B3%E5%B0%8A%E6%9D%83%E8%B0%8B&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"宫闱宅斗\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%AE%AB%E9%97%B1%E5%AE%85%E6%96%97&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"经商种田\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%BB%8F%E5%95%86%E7%A7%8D%E7%94%B0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%B9%BB%E6%83%B3%E8%A8%80%E6%83%85&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"仙侠奇缘\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E4%BB%99%E4%BE%A0%E5%A5%87%E7%BC%98&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"魔幻情缘\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%AD%94%E5%B9%BB%E6%83%85%E7%BC%98&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"穿越时光\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%A9%BF%E8%B6%8A%E6%97%B6%E5%85%89&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"末世危情\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%9C%AB%E4%B8%96%E5%8D%B1%E6%83%85&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"网配快穿\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%BD%91%E9%85%8D%E5%BF%AB%E7%A9%BF&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"浪漫青春\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%B5%AA%E6%BC%AB%E9%9D%92%E6%98%A5&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"青春校园\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%9D%92%E6%98%A5%E6%A0%A1%E5%9B%AD&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美绝恋\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%94%AF%E7%BE%8E%E7%BB%9D%E6%81%8B&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%BD%BB%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"衍生同人\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%A1%8D%E7%94%9F%E5%90%8C%E4%BA%BA&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"换身入替\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%8D%A2%E8%BA%AB%E5%85%A5%E6%9B%BF&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"青春日常\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E9%9D%92%E6%98%A5%E6%97%A5%E5%B8%B8&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"❀出版专区❀\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"短篇全部\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%9F%AD%E7%AF%87&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"儿童文学\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%84%BF%E7%AB%A5%E6%96%87%E5%AD%A6&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"影视剧本\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%BD%B1%E8%A7%86%E5%89%A7%E6%9C%AC&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人物传记\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E4%BA%BA%E7%89%A9%E4%BC%A0%E8%AE%B0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"短篇小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%9F%AD%E7%AF%87%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"美文游记\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%BE%8E%E6%96%87%E6%B8%B8%E8%AE%B0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"生活随笔\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%94%9F%E6%B4%BB%E9%9A%8F%E7%AC%94&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"诗词散文\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%AF%97%E6%AD%8C%E6%95%A3%E6%96%87&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"评论文集\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E8%AF%84%E8%AE%BA%E6%96%87%E9%9B%86&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"经典名著\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%BB%8F%E5%85%B8%E5%90%8D%E8%91%97&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"经管励志\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%BB%8F%E7%AE%A1%E5%8A%B1%E5%BF%97&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"社科科普\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%A4%BE%E7%A7%91%E7%A7%91%E6%99%AE&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"其他出版\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%85%B6%E4%BB%96%E5%87%BA%E7%89%88&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"文史传记\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%96%87%E5%8F%B2%E4%BC%A0%E8%AE%B0&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"悬疑出版\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%82%AC%E7%96%91%E5%87%BA%E7%89%88&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"现代文学\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E7%8E%B0%E4%BB%A3%E6%96%87%E5%AD%A6&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"文学小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%96%87%E5%AD%A6%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"原创出版\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E5%8E%9F%E5%88%9B%E5%87%BA%E7%89%88&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"情感小说\",\"url\": \"http://api.ieasou.com/api/bookapp/searchdzh.m?word=%E6%83%85%E6%84%9F%E5%B0%8F%E8%AF%B4&type=2&page_id={{page}}&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=c71b3fa8116bbfb1617fe655113be528202031df&appverion=1115&ch=blf1298_10928_001&session_id=-nEGwG-4MUZtO4c-8uVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=2&pushid=bbef69cfaca55486e580b709c59ff5ff&ptype=5&gender=1&userInitPay=3&birt=1630233177844&userNewMedia=0&instime=1630233176330&chType=3&recSw=1&appType=0\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}}\n]",
    "lastUpdateTime": 1738412161516,
    "loginUrl": "",
    "respondTime": 999,
    "ruleBookInfo": {
      "author": "",
      "init": "",
      "name": "",
      "tocUrl": "http://api.ieasou.com/api/bookapp/bookSummary.m?gid=@get:{gid}&nid=@get:{nid}&sort=1&size=1000&session_id=-nEGYU48h9ZiOcED3oVOOzJ&returnType=100&gsort=1&cid=eef_easou_book&version=002&os=android&udid=5f0523be952d7c668bc069ad38d9470ae15fc6c5&appverion=1122&ch=blf1298_12337_001&session_id=-nEGYU48h9ZiOcED3oVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=3&pushid=9f8b02370838a641dc4ddff894b98848&ptype=5&gender=0&userInitPay=3&birt=1660848272929&instime=1660848269464&instId=1660848269464&chType=3&bidType=0&recSw=1&appType=0"
    },
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "author@put:{gid:gid}",
      "bookList": "all_book_items",
      "bookUrl": "http://api.ieasou.com/api/bookapp/bookSummary.m?nid={{$.nid}}&gid={{$.gid}}&sort=1&size=50&returnType=010&cid=eef_easou_book&vm=5.4.3&os=android&appverion=1131",
      "checkKeyWord": "",
      "coverUrl": "imgUrl",
      "intro": "desc",
      "kind": "classes",
      "lastChapter": "lastChapterName",
      "name": "name@put:{nid:nid}",
      "wordCount": "wordCount"
    },
    "ruleToc": {
      "chapterList": "<js>\n  //showjname设置章节名显示卷名true or false\n  let obj = {showjname: false}\n  let $ = JSON.parse(String(result))\n  let array = []\n  $.volumes.forEach((booklet) => {\n  \t  java.put('jname',booklet.name)\n    array.push({ \n    \t    name:'◆◇'+String(booklet.name)+'◇◆',\n    \t    voltype:true\n    \t })\n    booklet.chapters.forEach((chapter) => {\nhref='http://api.ieasou.com/api/bookapp/chargeChapter.m?a=1&autoBuy=0&cid=eef_easou_book&version=002&os=android&udid=1c5b2618a57a0848e2510649dc1e03896f462284&appverion=1122&ch=blf1298_12337_001&session_id=-nEvkqSq_9ZyORN5OoVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=3&pushid=f97b7f81a269472c07708277b7c40b4f&ptype=5&gender=0&userInitPay=3&birt=1658424532472&instime=1658424529924&instId=1658424529924&chType=3&bidType=0&recSw=1&appType=0&gid='+java.get('gid')+'&nid='+chapter.nid+'&sort='+chapter.sort+'&gsort=0&sgsort=0&sequence=4&chapter_name='+chapter.chapter_name\n      array.push({\n        name: !java.get('jname')?chapter.chapter_name:((obj.showjname?'※'+java.get('jname')+'※ ':'').padStart(3,''))+chapter.chapter_name,\n        url: href,\n        time:\"本章字数:\"+String(chapter.wordCount)+\"字\",\n        voltype:false\n      })\n    })\n  })\n  array\n</js>",
      "chapterName": "name",
      "chapterUrl": "url",
      "isVolume": "voltype",
      "preUpdateJs": "",
      "updateTime": "time"
    },
    "searchUrl": "http://api.ieasou.com/api/bookapp/searchdzh.m?word={{key}}&type=0&page_id=1&count=20&sort_type=0&subclass=0&datasource=0&showj=1&wc=0&catalog=0&bookStatus=0&cid=eef_easou_book&version=002&os=android&udid=173a721b9bdfca6593765d05dc85e02b9a882541&appverion=1122&ch=blf1298_12337_001&session_id=-nEFnuCGf9ZXO3Vr3oVOOzJ&dzh=1&scp=0&appid=10001&utype=0&rtype=3&pushid=f617257c775dc02f0405ace9a62ede52&ptype=5&gender=0&userInitPay=3&birt=1662195839903&instime=1662195839480&instId=1662195839480&chType=3&bidType=0&recSw=1&appType=0",
    "weight": 0
  },
  {
    "bookSourceComment": "/*\n星空免费小说\thttps://api-bc.zonghengxiaoshuo.com\n熊猫脑洞小说\nhttps://api-bc.xmxsapp.com\n七猫免费小说\nhttps://api-bc.wtzw.com\n*/\napi_Params = {\n\t\"imei_ip\":\"\",\n\t\"book_privacy\":\"1\",\n\t\"read_preference\":\"0\"\n\t};\n\t\n\tfunction sign($){\n\t\ts = $.replace(/&/g,\"\") + \"d3dGiJc651gSQ8w1\";\n\t\treturn String(java.md5Encode(s));\n\t};\n\t\n\tfunction body($){\n\t\tif(!/app/.test(JSON.stringify($))){\n\t\t\tif(/chapter/.test(link_Urlpath)){\n\t\t\t\tapi_Params = {};}\n\t\t\t$ = Object.assign(api_Params, $);}\n\t\telse { $ = $;}\n\ts = Object.keys($).sort().map(key=>key+\"=\"+$[key]).join('&');\n\t\treturn String(s);\n\t};\n\t\nif(headers==\"\"){\n  link_Params.sign = sign(body(link_Params));\n  burl = source.getKey();\n  if(/chapter/.test(link_Urlpath)){\n\t\t\t\tburl = burl.replace(\"api-bc\",\"api-ks\");}\n  url = burl + link_Urlpath + body(link_Params);\n  }",
    "bookSourceGroup": "免费",
    "bookSourceName": "星空小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api-bc.zonghengxiaoshuo.com",
    "customButton": false,
    "customOrder": 424,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\npush(\"榜单\", null, 1, 1); \nbd = [\n[\"推荐榜\",\"rec_list\"],\n[\"大热榜\",\"hot_list\"],\n[\"完结榜\",\"end_list\"],\n[\"新书榜\",\"new_list\"],\n[\"热搜榜\",\"hot_search_list\"],\n[\"打赏榜\",\"reward_value_list\"],\n[\"粉丝榜\",\"reward_user_list\"]\n];\nbd.map(([t2,type],index)=>{\n\t\t\t[\"男频\",\"女频\"].map((t1,tab)=>{\n\theaders = \"\";\nlink_Urlpath = \"/api/v1/leader-board?\";\nlink_Params = {\n\t\t\"rank_type\": type,\n\t  \"category_id\":\"0\",\n\t  \"tab_type\": tab+1,\n\t  \"category_type\":\"0\"\t\n\t};\n\teval(String(source.bookSourceComment));\t\t\t \t\t\n\t\t\t\tpush(t1+t2, url, 1, 0.4);\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\t});\t\n\nfunction fl(tab) {\t\t\t\n\theaders = \"\";\nlink_Urlpath = \"/api/v5/category/index?\";\nlink_Params = {\n\t \t\"gender\":\"0\",\n\t  \"category_id\":\"0\",\n\t  \"tab_type\": tab,\n\t  \"cache_ver\": \"\"\n\t};\n\teval(String(source.bookSourceComment));\t\t\t \n\thtml = java.ajax(url);\nreturn  JSON.parse(html).data.category_list; \t\t\n\t\t}\n\t\t\n\t\t[[\"男频🔸♂️\",fl(1)[0]],\n\t\t[\"男频🔸♂️\",fl(1)[1]],\n\t\t[\"女频🔸♀️\",fl(2)[0]],\n\t\t[\"女频🔸♀️\",fl(2)[1]]\n\t\t].map([title,$]=>{\t\t\t\t\t\t\t\n \t\tpush(title+$.show_title , null, 1, 1);\n \t\tlist = $.list;\n   list.map(($,index)=>{\t   \t    \t\t\nurl = `@js:headers = \"\";\nlink_Urlpath = \"/api/v5/category/get-list?\";\nlink_Params = {\n\t\t\"category_id\": ${$.category_id},\n\t  \"page\": page,\n\t  \"category_type\": ${$.category_type},\n\t  \"gender\": \"0\",\n\t   \"book_preference\": \"1\",\n\t  \"over\": \"-99\",\n\t   \"words\": \"-99\",\n\t  \"sort\": \"-99\",\n\t   \"need_filters\": \"1\",\n\t   \"from\": \"4\",\n\t   \"need_supplement\": \"\"\n\t};\n\teval(String(source.bookSourceComment));`;\t\n\t\t\t\tif(index+1 <= list.length - list.length%3)\n\t\t\t {\tpush($.title, url, 1, 0.25);}\n\t\t\t\telse{ push($.title, url, 0, 0.29);}\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\t});\n\t\t\n\t\t\nJSON.stringify(sort);",
    "header": "@js:\nif(/xmxsapp/.test(source.getKey())){\napplication = \"com.xm.freader\";\n}\nelse if(/zonghengxiaoshuo/.test(source.getKey())){\napplication = \"com.xk.qreader\";\n}\nelse if(/wtzw/.test(source.getKey())){\napplication = \"com.****.reader\";\n}\n\nheaders={ \n\t\"app-version\":\"21500\",\n\t\"net-env\":\"4\",\t\n\t\"channel\":\"pd-tengxun_lf\",\n\t\"is-white\":\"0\",\n\t\"platform\":\"android\",\n\t\"application-id\": application,\n\t\"AUTHORIZATION\": \"\",\n\t\"reg\":\"\",\n \"qm-params\":\"\"\n};\neval(String(source.bookSourceComment));\nheaders.sign = sign(body(headers));\nJSON.stringify(headers)",
    "lastUpdateTime": 1743751725525,
    "loginUrl": "",
    "respondTime": 3224,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.image_link",
      "init": "$.data.book",
      "intro": "<br>\n🔔 更新时间：{{java.timeFormat(java.getString('$.update_time')*1000)}}\n🏅 评分：{{$.attribute.score}}分\n🏷 标签：{{$.book_tag_list[*].title##\\s##，}}\n♠️ 来源：{{$.statement##如有疑问.*}}\n📂 简介：{{$.intro}}",
      "lastChapter": "$.latest_chapter_title",
      "name": "$.title",
      "tocUrl": "@js:\nheaders = \"\";\nlink_Urlpath = \"/api/v1/chapter/chapter-list?\";\nlink_Params = {\n\t\t\"id\": \"{{$.id}}\"\n\t};\neval(String(source.bookSourceComment));",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.data.content\n@js:\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.javax.crypto.spec,\n    Packages.javax.crypto,\n    Packages.java.util\n);\nwith(javaImport) {\n    function decode(result) {\n        var ivEncData = Base64.getDecoder().decode(String(result));\n        var key = SecretKeySpec(String(\"242ccb8230d709e1\").getBytes(), \"AES\");\n        var iv = IvParameterSpec(Arrays.copyOfRange(ivEncData, 0, 16));\n        var chipher = Cipher.getInstance(\"AES/CBC/PKCS5Padding\");\n        chipher.init(2, key, iv);\n        return String(chipher.doFinal(Arrays.copyOfRange(ivEncData, 16, ivEncData.length)));\n    }\n}\ndecode(result)"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "$.original_author",
      "bookList": "$.data.books",
      "bookUrl": "@js:\nheaders = \"\";\nlink_Urlpath = \"/api/v5/book/detail?\";\nlink_Params = {\n\t\t\"id\": \"{{$.id}}\",\n   \t\"teeny_mode\": \"0\",\n\t};\neval(String(source.bookSourceComment));",
      "coverUrl": "$.image_link",
      "intro": "$.intro",
      "kind": "{{r=String(java.getString('$.score'));r==''?'':r+ '分'}}\n{{$.sub_title##・\\d+.*}}##・##,",
      "name": "$.original_title||$.title",
      "wordCount": "$.words_num"
    },
    "ruleToc": {
      "chapterList": "$.data.chapter_lists",
      "chapterName": "$.title",
      "chapterUrl": "@js:\nheaders = \"\";\nlink_Urlpath = \"/api/v1/chapter/content?\";\nlink_Params = {\n\t\t\"id\": baseUrl.match(/id=(\\d+)/)[1],\n\t\t\"chapterId\":\"{{$.id}}\"\n\t};\neval(String(source.bookSourceComment));"
    },
    "searchUrl": "@js:\nheaders = \"\";\nlink_Urlpath = \"/api/v7/search/words?\";\nlink_Params = {\n\t \"book_id\":\"143185,141577,150567,215243,211615,157237\",\n  \t\"tab\":\"1\",\t\n  \t\"gender\":\"0\",\n\t\t\"page\":page,\n   \t\"wd\":key\n\t};\neval(String(source.bookSourceComment));",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "                    \"error:timeout\n                                        \"error:timeout\n                    \"error:failed to connect to www.maxreader.net/31.13.88.169 (port 80) from /192.168.10.3 (port 51420) after 15000ms\n\"\"\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "文墨中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.maxreader.net/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 425,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1731793235367,
    "loginUrl": "",
    "respondTime": 2428,
    "ruleBookInfo": {
      "coverUrl": "",
      "intro": "",
      "lastChapter": "",
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": "class.size16 color5 pt-read-text@html## |本章未完.*|百度搜索阅读最新最全.*|猫扑中文|[()]|.*最新章节第一时间免费.*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.fl color7@class.mr30@tag.a.0@title",
      "bookList": "class.pt-rank-detail",
      "bookUrl": "class.pt-rank-detail@tag.a.0@href",
      "coverUrl": "tag.img.0@src",
      "kind": "text.分类@text",
      "lastChapter": "class.fl lh100@tag.a@title",
      "name": "class.pt-rank-detail@tag.a.0@title"
    },
    "ruleToc": {
      "chapterList": "id.readerlists@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.maxreader.net/search/result.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "企鹅浏览",
    "bookSourceType": 0,
    "bookSourceUrl": "novel.html5.qq.com",
    "customButton": false,
    "customOrder": 429,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 13; zh-cn; V2183A Build/TP1A.220624.014) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/89.0.4389.72 MQQBrowser/13.4 Mobile Safari/537.36 COVC/046223\",\n    \"Referer\":\"https://novel.html5.qq.com/\",\n\t\"Q-GUID\":\"0ee63838b72eb075f63e93ae0bc288cb\",\n\t\"QIMEI36\":\"8ff310843a87a71101958f5610001e316a11\"\n}",
    "lastUpdateTime": 1759386969689,
    "respondTime": 971,
    "ruleBookInfo": {
      "author": "$..author",
      "coverUrl": "$..picurl",
      "intro": "$..summary",
      "kind": "$..resourceID",
      "lastChapter": "$..lastSerialname",
      "name": "$..resourceName",
      "tocUrl": "https://novel.html5.qq.com/qbread/api/book/all-chapter?bookId={{book.kind}}",
      "wordCount": "$..contentsize"
    },
    "ruleContent": {
      "content": "$.data.Content[0].Content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$..author",
      "bookList": "$.data.state[*]",
      "bookUrl": "https://novel.html5.qq.com/qbread/api/novel/bookInfo?resourceId={{book.kind}}",
      "coverUrl": "$..cover_url",
      "intro": "$..abstract",
      "kind": "$.groupID##.*_##",
      "name": "$..title"
    },
    "ruleToc": {
      "chapterList": "$..rows[*]",
      "chapterName": "$.serialName",
      "chapterUrl": "$.serialID\n@js:\nlet data = JSON.stringify({\n  ContentAnchorBatch: [{\n    BookID: book.kind,\n    ChapterSeqNo: [\n      result\n    ]\n  }],\n  Scene: \"chapter\"\n})\nlet option = {\"method\":\"POST\",\"body\":data}\n\"https://novel.html5.qq.com/be-api/content/ads-read,\"+JSON.stringify(option)"
    },
    "searchUrl": "https://so.html5.qq.com/ajax/real/search_result?tabId=360&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "fix by h11128",
    "bookSourceGroup": "免费",
    "bookSourceName": "沙滩小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shatanxs.com",
    "customButton": false,
    "customOrder": 430,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721483213207,
    "respondTime": 4256,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@textNodes##各位书友.*|》还不错的话.*|.*敬请登陆：.|上传者书籍.*|.*简介：",
      "kind": "class.con_top@tag.a.1@text",
      "lastChapter": "class.book-intro@tag.a@text",
      "name": "",
      "tocUrl": "class.tgcj@href"
    },
    "ruleContent": {
      "content": "class.content_read@id.content@html",
      "nextContentUrl": "class.bottem2@tag.a.2@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "id.content@id.nr",
      "bookUrl": "class.odd.0@tag.a@href",
      "lastChapter": "class.even.0@tag.a@text",
      "name": "class.odd.0@tag.a@text",
      "wordCount": "class.even.1@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.shatanxs.com/modules/article/search.php, {\"charset\":\"gbk\",\n\"body\":\"s={{key}}&type=articlename\",\n\"method\":\"POST\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "天美小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.tianmeixs.com#🎃",
    "bookUrlPattern": "https://m.tianmeixs.com/book/\\d+.html",
    "customButton": false,
    "customOrder": 431,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻奇幻\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1.00}},{\"title\":\"武侠仙侠\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻网游\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚悬疑\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美同人\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越架空\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高辣浓情\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"禁忌百合\",\"url\":\"/sort/9_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精品文学\",\"url\":\"/sort/10_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1746069473817,
    "respondTime": 13537,
    "ruleBookInfo": {
      "author": ".xx ul li.2@text##作者：",
      "coverUrl": "#xinxi .xsfm img@src",
      "intro": "#xinxi div.-1@text",
      "kind": ".xx ul li.1@text##分类：",
      "lastChapter": ".xx ul li.3@text##更新：",
      "name": ".xx ul li.0@text",
      "tocUrl": "text.查看更多章节@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr@html",
      "nextContentUrl": "text.下一章@href",
      "title": ""
    },
    "ruleExplore": {
      "author": "span.1@text",
      "bookList": ".xbk",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "span.2@text",
      "kind": "span.-1@text",
      "lastChapter": "",
      "name": ".xsm@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".fk li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "我的农场可以沟通三界",
      "coverUrl": "a.1@href##.*/book/((\\d+)\\d{3}).html##http://img.tianmeixs.com/image/$2/$1/$1s.jpg",
      "kind": "a.0@text##\\[|\\]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "#zjlb .fk li a",
      "chapterName": "text##本页章节列表结束！",
      "chapterUrl": "href",
      "nextTocUrl": ".showpage ul li a@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"type=articlename&s={{key}}\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "追光阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://touchlife.cootekservice.com",
    "customButton": false,
    "customOrder": 432,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "现代都市::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=4\n东方玄幻::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=13\n武侠仙侠::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=12\n历史架空::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=17\n科幻末世::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=16\n游戏竞技::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=18\n西方玄幻::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=9\n豪门总裁::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=2\n古代言情::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=5\n现代言情::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=10\n青春校园::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=6\n仙侠奇缘::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=7\n婚恋情缘::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=8\n玄幻言情::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=3\n穿越重生::http://touchlife.cootekservice.com/doReader/get_books_by_classificationId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&classificationId=1\nnull",
    "lastUpdateTime": 1732983813610,
    "respondTime": 769,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "$..chapterContent"
    },
    "ruleExplore": {
      "author": "bookAuthor",
      "bookList": "result.classificationInfoBooks[*]",
      "bookUrl": "http://touchlife.cootekservice.com/doReader/enter_bookinfo_index?_token=e72ca407-9caa-475d-a829-46e15d3d4834&bookId={$.bookId}",
      "coverUrl": "bookCoverImage",
      "intro": "bookDesc",
      "kind": "bookBClassificationName",
      "name": "bookTitle"
    },
    "ruleSearch": {
      "author": "bookAuthor",
      "bookList": "result",
      "bookUrl": "http://touchlife.cootekservice.com/doReader/enter_bookinfo_index?_token=e72ca407-9caa-475d-a829-46e15d3d4834&bookId={$.bookId}",
      "coverUrl": "bookCoverImage",
      "intro": "bookRecommendWords||bookDesc&&copyright_owner",
      "kind": "bookBClassificationName",
      "name": "bookTitle"
    },
    "ruleToc": {
      "chapterList": "result.detailedBookInfo.bookChapterAllInfo",
      "chapterName": "chapterTitle",
      "chapterUrl": "http://touchlife.cootekservice.com/doReader/get_content_by_chapterId?_token=e72ca407-9caa-475d-a829-46e15d3d4834&bookId={$.bookId}&chapterId={$.chapterId}"
    },
    "searchUrl": "http://touchlife.cootekservice.com/doReader/search_book?_token=e72ca407-9caa-475d-a829-46e15d3d4834&action=search_book&search_keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xbiquge.la/#♤pb",
    "bookUrlPattern": "https://www.xbiquge.la/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 433,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/fenlei/1_{{page}}.html\n修真小说::/fenlei/2_{{page}}.html\n都市小说::/fenlei/3_{{page}}.html\n穿越小说::/fenlei/4_{{page}}.html\n网游小说::/fenlei/5_{{page}}.html\n科幻小说::/fenlei/6_{{page}}.html",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows; U; Windows NT 5.2;. en-US) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 Quark/4.6.6.164\"\n}",
    "lastUpdateTime": 1721012959907,
    "loginUrl": "",
    "respondTime": 1714,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleContent": {
      "content": "id.content@html##亲,点击进去,给个好.*漂亮的老婆哦!|手机站全新改版.*广告清新阅读！",
      "nextContentUrl": "",
      "webJs": "getDecode();$('#content').html();"
    },
    "ruleExplore": {
      "author": "class.s5@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.xbiquge.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.xbiquge.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "肉文屋⑤",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.rouwenwu14.com/#🚀",
    "customButton": false,
    "customOrder": 434,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜    单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总点击\",\"url\":\"/top/allvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月点击\",\"url\":\"/top/monthvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周点击\",\"url\":\"/top/weekvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日点击\",\"url\":\"/top/dayvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总推荐\",\"url\":\"/top/allvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月推荐\",\"url\":\"/top/monthvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周推荐\",\"url\":\"/top/weekvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日推荐\",\"url\":\"/top/dayvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏\",\"url\":\"/top/goodnum_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"字数排行\",\"url\":\"/top/size_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/top/postdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分    类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/sort/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"/sort/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"都市\",\"url\":\"/sort/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"穿越\",\"url\":\"/sort/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"/sort/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"网游\",\"url\":\"/sort/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"精品\",\"url\":\"/sort/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"完本\",\"url\":\"/full/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "lastUpdateTime": 1721299133471,
    "respondTime": 10827,
    "ruleBookInfo": {
      "author": ".catalog_author a@text",
      "coverUrl": ".catalog_pic_left img@src",
      "intro": ".catalog_intor@html##.*简介.",
      "kind": ".s1@text&&.s2@text&&.catalog_updatetime span@text##\\s.*",
      "lastChapter": ".catalog_newest a@text",
      "name": "tag.h3.0@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".chapter_content@html",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": ".p3@text||.newbook_author@text",
      "bookList": ".articlegeneral li||.newbook_list",
      "bookUrl": ".p1 a@href||.newbook_title a@href",
      "coverUrl": "img@src||tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##https://img.roushuwu.com/image/$2/$1/$1s.jpg###",
      "intro": ".newbook_intor@text",
      "kind": ".p2@text&&.s1@text",
      "name": ".p1 a@text||.newbook_title@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": ".sort_box_list",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "img@src",
      "intro": ".newbook_intor@text",
      "kind": ".s1@text",
      "name": "tag.a.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".catalog_list!0@li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/search.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "腐书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.fushubook.com",
    "bookUrlPattern": "http://www.fushubook.com/fu/\\d+",
    "customButton": false,
    "customOrder": 435,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "————————🧊分类小说🧊————————\n玄幻魔法::/sort/xuanhuan/1.html\n武侠修真::/sort/wuxia/1.html\n仙侠小说::/sort/xianxia/1.html\n都市言情::/sort/dushi/1.html\n历史军事::/sort/lishi/1.html\n科幻灵异::/sort/kehuan/1.html\n游戏竞技::/sort/youxi/1.html\n女生小说::/sort/nvsheng/1.html\n其它小说::/sort/qita/1.html\n\n————————🧊完结小说🧊————————\n玄幻魔法::/full/xuanhuan/1.html\n武侠修真::/full/wuxia/1.html\n仙侠小说::/full/xianxia/1.html\n都市言情::/full/dushi/1.html\n历史军事::/full/lishi/1.html\n科幻灵异::/full/kehuan/1.html\n游戏竞技::/full/youxi/1.html\n女生小说::/full/nvsheng/1.html\n其它小说::/full/qita/1.html\n\n————————🧊排行榜🧊————————\n总排行榜::/rank/allvisit/1.html\n月排行榜::/rank/monthvisit/1.html\n周排行榜::/rank/weekvisit/1.html\n日排行榜::/rank/dayvisit/1.html\n收藏榜::/rank/goodnum/1.html\n字数榜::/rank/words/1.html\n推荐榜::/rank/allvote/1.html\n新书榜::/rank/postdate/1.html\n更新榜::/rank/lastupdate/1.html",
    "lastUpdateTime": 0,
    "respondTime": 3348,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "{{@@[property$=chapter_name]@content}}\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "id.booktxt@p!0@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##1秒记住114中文：|www.。|手机版阅读网址：.|[<r r=\"//.\"></r>]"
    },
    "ruleExplore": {
      "author": "td.3@text&&class.fs-14 text-muted@text",
      "bookList": "tbody@tr!0&&class.col-xs-4 book-coverlist",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.*/(\\d+)/##$1\n@js:\nn=result\nm=parseInt(result/1000)\n\"http://www.fushubook.com/\"+m+\"/\"+n+\"/\"+n+\"s.jpg\"",
      "intro": "class.fs-12 text-justify hidden-xs@text",
      "kind": "td.0:4:5:6@text",
      "lastChapter": "td.2@a@text",
      "name": "td.1@a@text&&h4@a@text"
    },
    "ruleSearch": {
      "author": "class.fs-14 text-muted@text",
      "bookList": "class.col-xs-4 book-coverlist",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href##.*/(\\d+)/##$1\n@js:\nn=result\nm=parseInt(result/1000)\n\"http://www.fushubook.com/\"+m+\"/\"+n+\"/\"+n+\"s.jpg\"",
      "intro": "class.fs-12 text-justify hidden-xs@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "id.newlist@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.fushubook.com/search,{\n  \"method\": \"POST\",\n  \"body\": \"code=id&searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "佩蒲斐榕",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.popofree.com",
    "customButton": false,
    "customOrder": 436,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市小说\",\"url\":\"/wapsort/1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"浓情小说\",\"url\":\"/wapsort/2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"言情小说\",\"url\":\"/wapsort/3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"校园小说\",\"url\":\"/wapsort/4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1745854135352,
    "respondTime": 6109,
    "ruleBookInfo": {
      "author": ".article_info_td.0@div.0@text",
      "init": "",
      "intro": "[style=\"padding:5px;font-size:12px;color:#666; line-height:auto\"]@text",
      "kind": ".article_info_td.0@div.3:1@text&&.article_info_td.1@div.0@text##.*：",
      "lastChapter": ".article_info_td.0@div.2@a@text&&class.article_info_td@tag.time@text\n<js>result.replace(/(.*)\\s/,'$1 • ')</js>",
      "name": "[style=\"background:none;\"]@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": ".author@text||strong@text||span@text",
      "bookList": ".s_m@.last_li||id.list_ul@li||.common-bookele",
      "bookUrl": ".name@href||a.1@href||a.0@href",
      "intro": ".abstract@text",
      "kind": ".words@text||time@text||a.0@text##.*：",
      "name": ".name@text||h3@text||a.1@text"
    },
    "ruleSearch": {
      "author": "strong@text",
      "bookList": ".common-bookele",
      "bookUrl": "a.0@href",
      "kind": ".lastupdate@text",
      "name": ".articlename@text"
    },
    "ruleToc": {
      "chapterList": "ul@li!-1@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "📥 爱推书君",
    "bookSourceType": 0,
    "bookSourceUrl": "https://pre-api.tuishujun.com/",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 437,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>\n\tsort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\n\nfl1=[[\"全部\",\"0\"],[\"玄幻\",\"3\"],[\"奇幻\",\"4\"],[\"武侠\",\"5\"],[\"仙侠\",\"6\"],[\"都市\",\"7\"],[\"军事\",\"8\"],[\"历史\",\"9\"],[\"游戏\",\"10\"],[\"体育\",\"11\"],[\"科幻\",\"12\"],[\"同人\",\"13\"],[\"悬疑\",\"14\"],[\"轻小说\",\"15\"],[\"诸天\",\"16\"],[\"综合\",\"17\"]];\n\t\tpush('🔥男频·新书榜🔥', null, 1, 1);\n\t\tfl1.map([title,id]=>{\n\t\t\t\turl= `https://pre-api.tuishujun.com/api/listBookRank?rank_type=new_book&first_type_id=1&second_type_id=${id}&page={{page}}&pageSize=10`;\t\t\t\t\n    push(title, url, 1, 0.2);\n    });\n\n\t\n\t\nbs=[[\"全部\",\"0\"],[\"玄幻\",\"3\"],[\"奇幻\",\"4\"],[\"武侠\",\"5\"],[\"仙侠\",\"6\"],[\"都市\",\"7\"],[\"军事\",\"8\"],[\"历史\",\"9\"],[\"游戏\",\"10\"],[\"体育\",\"11\"],[\"科幻\",\"12\"],[\"同人\",\"13\"],[\"悬疑\",\"14\"],[\"轻小说\",\"15\"],[\"诸天\",\"16\"],[\"综合\",\"17\"]];\n[\"全部\",\"起点\",\"晋江\",\"刺猬猫\",\"飞卢\",\"纵横\",\"有毒\",\"息壤\",\"17K\",\"豆瓣\",\"SF\",\"铁血\",\"番茄\"].map((title,id)=>{\n\t   id++;\n\t\tpush('🔥男频·'+title+'🔥', null, 1, 1);\n\t\tbs.map([title,cid]=>{\n\t\t\t\turl= `https://pre-api.tuishujun.com/api/listBookRepository?first_type_id=1&second_type_id=${cid}&source={{(${id}-1)}}&word_number_type=0&update_type=0&is_exclude_selected=0&is_can_read=0&is_filter_added_score=0&page={{page}}`;\t\t\t\t\n    push(title, url, 1, 0.2);\n    });\n\t\t});\n\t\t\n\nfl2=[[\"全部\",\"0\"],[\"古代言情\",\"18\"],[\"现代言情\",\"19\"],[\"幻想言情\",\"20\"],[\"未来言情\",\"21\"],[\"奇幻仙侠\",\"22\"],[\"游戏竞技\",\"23\"],[\"衍生言情\",\"24\"],[\"古代纯爱\",\"25\"],[\"现代纯爱\",\"26\"],[\"幻想纯爱\",\"27\"],[\"衍生纯爱\",\"28\"],[\"百合小说\",\"29\"],[\"女尊\",\"30\"],[\"无cp\",\"31\"],[\"悬疑\",\"32\"],[\"现实\",\"33\"],[\"魔幻\",\"34\"],[\"短篇\",\"35\"],[\"综合\",\"36\"]];\n\t\tpush('🔥女频·新书榜🔥', null, 1, 1);\n\t\tfl2.map([title,id]=>{\n\t\t\t\turl= `https://pre-api.tuishujun.com/api/listBookRank?rank_type=new_book&first_type_id=2&second_type_id=${id}&page={{page}}&pageSize=10`;\t\t\t\t\n    push(title, url, 1, 0.25);\n    });\n\n\n\nns=[[\"全部\",\"0\"],[\"古代言情\",\"18\"],[\"现代言情\",\"19\"],[\"幻想言情\",\"20\"],[\"未来言情\",\"21\"],[\"奇幻仙侠\",\"22\"],[\"游戏竞技\",\"23\"],[\"衍生言情\",\"24\"],[\"古代纯爱\",\"25\"],[\"现代纯爱\",\"26\"],[\"幻想纯爱\",\"27\"],[\"衍生纯爱\",\"28\"],[\"百合小说\",\"29\"],[\"女尊\",\"30\"],[\"无cp\",\"31\"],[\"悬疑\",\"32\"],[\"现实\",\"33\"],[\"魔幻\",\"34\"],[\"短篇\",\"35\"],[\"综合\",\"36\"]];\n[\"全部\",\"起点\",\"晋江\",\"刺猬猫\",\"飞卢\",\"纵横\",\"有毒\",\"息壤\",\"17K\",\"豆瓣\",\"SF\",\"铁血\",\"番茄\"].map((title,id)=>{\n\t   id++;\n\t\tpush('🔥女频·'+title+'🔥', null, 1, 1);\n\t\tns.map([title,cid]=>{\n\t\t\t\turl= `https://pre-api.tuishujun.com/api/listBookRepository?first_type_id=2&second_type_id=${cid}&source={{(${id}-1)}}&word_number_type=0&update_type=0&is_exclude_selected=0&is_can_read=0&is_filter_added_score=0&page={{page}}`;\t\t\t\t\n    push(title, url, 1, 0.25);\n    });\n\t\t});\n\n\nJSON.stringify(sort);",
    "header": "",
    "lastUpdateTime": 1738424480360,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2922,
    "ruleBookInfo": {
      "author": "@{{$.author_nickname}}",
      "coverUrl": "cover",
      "init": "data",
      "intro": "<br>{{$.tag&&$.second_type_name##^|\\s##🏷}}{{'\\n&lrm;\\n'}}\n{{$.info##(^|[。！？……]+[”」）】》]?)##$1<br>}}",
      "kind": "{{$.source_name}}\n{{$.process_name}}\n{{$.second_type_name}}\n{{$.score}}分\n{{$.last_update_time}}",
      "lastChapter": "",
      "name": "title",
      "tocUrl": "https://pre-api.tuishujun.com/api/listBookScoreByBook?book_id={$.book_id}&type=all&page=1&pageSize=10&sort_field=create_time&sort_value=desc",
      "wordCount": "word_number_name"
    },
    "ruleContent": {
      "content": "<js>\nfunction parseComments(n){\n  for(var c=[],e=0;e<n.length;e++){\n    var o=n[e];\n    c.push(\"书友：\".concat(o.user.nickname,\"\\n时间：\").concat(o.create_time,\"\\n评分：\").concat(\"♥\".repeat(o.score/2),\"\\n评语：\").concat(o.content.replace(/([。；！？—…]”?)([\\u4e00-\\u9fa5][^。！？—…]{9})/g,\"$1\\n$2\")))\n  }\n  return c.join(\"\\n————\\n\");\n}\nvar data = JSON.parse(result);\ndata.data.total === 0;\ndata.data.total === 0 ? '还没有人对这本书发表评价哦！<br>': parseComments(data.data.data);\n</js>"
    },
    "ruleExplore": {
      "author": "@{{$.author_nickname}}",
      "bookList": "data.data",
      "bookUrl": "https://pre-api.tuishujun.com/api/getBookDetail?book_id={{$.book_id}}",
      "coverUrl": "cover",
      "intro": "info##\\s",
      "kind": "source_name&&process_name&&second_type_name",
      "lastChapter": "score\n<js>\na=result ==\"0.0\"?\"【暂无评分】\": \"好评率\"+(result > 10?result: result=result*10)+\"%\";\nb=\"\";\nresult > 50?b=\" 🔥 \":b=\" ❄️ \";\njava.getString('$.last_chapter_time').slice(0,10)+b+a;\n</js>",
      "name": "title",
      "wordCount": "word_number_name"
    },
    "ruleSearch": {
      "author": "@{{$.author_nickname}}",
      "bookList": "data.data",
      "bookUrl": "https://pre-api.tuishujun.com/api/getBookDetail?book_id={{$.book_id}}",
      "coverUrl": "cover",
      "intro": "$.info",
      "kind": "source_name&&process_name&&second_type_name",
      "lastChapter": "score\n<js>\na=result ==\"0.0\"?\"【暂无评分】\": \"好评率\"+(result > 10?result: result=result*10)+\"%\";\nb=\"\";\nresult > 50?b=\" 🔥 \":b=\" ❄️ \";\njava.getString('$.last_chapter_time').slice(0,10)+b+a;\n</js>",
      "name": "title",
      "wordCount": "word_number_name"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar data = JSON.parse(result).data;\nvar pageCount = Math.ceil(data.total/10) || 1;\nvar list = Array.from(Array(pageCount).keys());\nfor(var i = 0; i <pageCount; i++){\n  var index = list[i]+1;\n  list[i] = {title:'第00' + index +'页', url: baseUrl.split('&')[0] + '&type=all&page=' + index + '&pageSize=10&sort_field=create_time&sort_value=desc'};\n}\nlist;\n</js>",
      "chapterName": "title",
      "chapterUrl": "url"
    },
    "searchUrl": "https://pre-api.tuishujun.com/api/searchBook?search_value={{key}}&sort_field=hot_value&page={{page}}&pageSize=50",
    "weight": 0
  },
  {
    "bookSourceComment": "需登录",
    "bookSourceGroup": "🔞",
    "bookSourceName": "百合论坛",
    "bookSourceType": 0,
    "bookSourceUrl": "https://bbs.yamibo.com",
    "customButton": false,
    "customOrder": 438,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "動漫區::/forum.php?mod=forumdisplay&fid=5&mobile=2&page={{page}}\n海域區::/forum.php?mod=forumdisplay&fid=33&mobile=2&page={{page}}\n貼圖區::/forum.php?mod=forumdisplay&fid=13&mobile=2&page={{page}}\n文學區::/forum.php?mod=forumdisplay&fid=49&mobile=2&page={{page}}\n遊戲區::/forum.php?mod=forumdisplay&fid=44&mobile=2&page={{page}}",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.1.0; JKM-AL00b Build/HUAWEIJKM-AL00b; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044807 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1749636054105,
    "loginUrl": "https://bbs.yamibo.com",
    "respondTime": 943,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": ".authi,.message,.annlist_box,.img_list@html##<ul class=\"authi\">##<br>ㅤ<br><ul class=\"authi\">\n<js>result</js>\n##(</*blockquote>)##---------------",
      "imageStyle": "FULL",
      "replaceRegex": "##\\s+(\\d{4}-\\d{0,2}-\\d{0,2}\\s\\d{0,2}:\\d{0,2})## ⌚️$1\n<js>result.replace(/本帖最后由.*?编辑|\\s+发表于/g,'')</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.muser@h3@text",
      "bookList": "class.list",
      "bookUrl": "//li[class^=list]/a/@href",
      "coverUrl": "class.icon_tu@img@src",
      "intro": "class.threadlist_mes@text||tag.a.0@text",
      "kind": "class.mr@text||class.micon@text",
      "lastChapter": "class.mtime@text",
      "name": "tag.em@text||tag.a.0@text",
      "wordCount": "##\"dm-eye-fill\"></i>(\\d+)</li>\\s+<li><i class=\"dm-chat-s-fill\"></i>(\\d+)</li>##👁$1  📝$2###"
    },
    "ruleToc": {
      "chapterList": "@js:page=result.match(/=\"共\\s*(\\d+)\\s*页\">/)?result.match(/=\"共\\s*(\\d+)\\s*页\">/)[1]:1;\nlist=[];\nfor(i=1;i<=page;i++){\nlist.push({text:String(i),href:baseUrl+'&page='+i})\n}\nlist",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://bbs.yamibo.com/search.php?mod=forum&mobile=2,{\n\"method\": \"POST\",\n\"body\": \"searchsubmit=yes&srchtxt={{key}}&submit=搜索&page={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "读客书库🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.dukesk.com#🎃",
    "customButton": false,
    "customOrder": 440,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\t\"cookie\":\"5yedf_t=17\"\n\t}",
    "lastUpdateTime": 1784982096094,
    "loginCheckJs": "var src = result.body();\nif (src.match(/Loading\\.\\.\\.|wafjs/)) {\n    cookie.removeCookie(source.bookSourceUrl);\n    var url = result.url();\n    java.startBrowserAwait(url, \"读客书库验证\");\n    java.connect(url);\n    result = java.connect(url);\n}\nresult;",
    "loginUrl": "https://m.dukesk.com",
    "respondTime": 4119,
    "ruleBookInfo": {
      "coverUrl": "class.BGsectionOne-top-left@tag.img.0@data-lazy",
      "init": "",
      "name": "class.title text-hide@text",
      "tocUrl": "text.章节目录@href##ml\\.##ml_1."
    },
    "ruleContent": {
      "content": "<js>\nurl=\"https:\"+result.match(/initTxt\\(\"([^\"]+)\",\"[^\"]+\"\\)/)[1];\nr=String(java.ajax(url).match(/_txt_call\\(([\\s\\S]+\\})\\)/)[1]);\nvar r = eval('(' + r + ')');\n\t\t\t\tif(r.content!=null){\t\t\t\t\n      var e = r.replace;\n\t\t\t\tfor (var n in e) {\n\t\t\t\t\tvar i = new RegExp(e[n], \"ig\");\n\t\t\t\t\tr.content = r.content.replace(i, n)\n\t\t\t\t}\n\t\t\t\tresult=r.content\n\t\t\t\t\t}else{result=\"章节加载失败，或者容正在手打中，请【收藏本站】稍访问或者联系管理员更新~\"}\n</js>"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.sc-title@tag.a.1@text",
      "bookList": "@js:\npath = 'class.search-card';\nc=java.getElement(path);\nif( !c.length ){\n  res = java.startBrowserAwait(baseUrl,'等待至跳转，然后重搜');\n  java.setContent(res.body());\n  c=java.getElement(path);\n}\nc",
      "bookUrl": "text.作品详情@href",
      "lastChapter": "class.sc-time@text",
      "name": "class.sc-title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.BGsectionThree-content@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下页@href"
    },
    "searchUrl": "/search/,{\n'method': 'POST',\n'body': 'keyword={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱发电",
    "bookSourceType": 0,
    "bookSourceUrl": "https://afdian.com#",
    "customButton": false,
    "customOrder": 442,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "兽屋之龙的作品集::https://afdian.com/api/user/get-album-list?user_id=63609ee2d7e211eabceb52540025c377&page={{page}}",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36\"\n}",
    "lastUpdateTime": 1741846920939,
    "loginCheckJs": "",
    "loginUi": "[\n  {\n    \"name\": \"手机号码/邮箱号\",\n    \"type\": \"text\"\n  },\n  {\n    \"name\": \"密码\",\n    \"type\": \"password\"\n  }\n]",
    "loginUrl": "<js>\nfunction login(){\nuserInfo=source.getLoginInfoMap()\njava.log(userInfo)\nUNE=userInfo['手机号码/邮箱号']\nPWD=userInfo['密码']\nurl=\"{{source.getKey()}}/api/passport/login,\";\nSU=source.getKey()\nbody={\n  \"account\": String(UNE),\n  \"password\": String(PWD),\n  \"mp_token\": -1\n}\noption={\n'method': 'POST',\n'body': JSON.stringify(body)\n}\n\nurl=url+JSON.stringify(option)\ntoken=java.ajax(url).match(/\"auth_token\":\"([^\"]+)\"/)[1]\n\nCookie={\n\t\"Cookie\":\"auth_token=\"+token\n\t}\nheader = JSON.stringify(Cookie)\nsource.putLoginHeader(header)\n}\n</js>",
    "respondTime": 1171,
    "ruleBookInfo": {
      "author": "$.data.album.user.name",
      "coverUrl": "$.data.album.cover",
      "init": "",
      "intro": "",
      "name": "$.data.album.title",
      "tocUrl": "<js>\nif(baseUrl.match(/get-album-info/)){\n\tjson=JSON.parse(result);\turl=\"/api/user/get-album-catalog?album_id=\"+json.data.album.album_id\n\t}\n</js>"
    },
    "ruleContent": {
      "content": "<js>\nif(baseUrl.match(/album-info/)){\ntext=\"↓复制下面网址，在书架选择◎添加网址◎，粘贴网址，即可阅读本书↓\\n\"+baseUrl+\"\\n简介：\"+JSON.parse(result).data.album.content\n}else if(baseUrl.match(/post_id/)){\n\tjson=JSON.parse(result)\n\tpics=json.data.post.pics;\n\tvideo=json.data.post.video?\"视频链接：\"+json.data.post.video:\"\"\n\tpreview_text=json.data.post.preview_text?json.data.post.preview_text:\"\"\n\timgs=\"\";\n\tfor(i in pics){\n\t\timgs+='<img src=\"'+pics[i]+'\">\\n'\n\t\t}\n\tresult=json.data.post.content+imgs+video;\n\tresult!=\"\"?result:preview_text+\"\\n💰\"+json.data.post.min_price+\"\\n\"+json.data.post.has_right_errMsg\n\t}else{\n\t\tresult=\"↓↓复制下面文字，编辑书源，添加至发现规则↓↓\\n\"+book.name+\"的作品集::\"+baseUrl.replace(/page=1/,'page={\\{page}}')\n\t\t}\n</js>\n##class=\"fr-fic fr-dib\".*?\"\\[object Object\\]\"",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "$.data.list",
      "bookUrl": "/api/user/get-album-info?album_id={{$.album_id}}",
      "coverUrl": "$.cover",
      "intro": "$.content",
      "lastChapter": "$.update_time\n<js>\njava.timeFormat(result+\"000\")\n</js>",
      "name": "$.title"
    },
    "ruleSearch": {
      "bookList": "$.data.list",
      "bookUrl": "/api/user/get-album-list?user_id={{$.creator.user_id}}&page=1",
      "checkKeyWord": "沙雕",
      "coverUrl": "$.cover",
      "intro": "$.creator.detail",
      "kind": "$..category.name",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": "$.data.list\n<js>\nif(baseUrl.match(/get-album-list/)){\nresult=String(result).replace(/\\[/,'[{\"text\":\"'+book.name+'\",\"url\":\"'+baseUrl+'\"},')\n}\nresult\n</js>\n$.[*]",
      "chapterName": "$.title||$.text",
      "chapterUrl": "<js>\nif(baseUrl.match(/get-album-list/)){\nresult=\"{{$.album_id}}\"?\"/api/user/get-album-info?album_id={{$.album_id}}\":\"{{$.url}}\";\n}else if(baseUrl.match(/get-album-catalog/)){\tresult=\"/api/post/get-detail?post_id={{$.post_id}}&album_id={{$.album_ids[0]}}\"\n\t}\n</js>",
      "isVip": "",
      "updateTime": "{{$.content_length}}字 💰{{$.min_price}} 目录总数：{{$.post_count}}\n<js>\ntime=\"{{$.publish_time}}\"?java.timeFormat(\"{{$.publish_time}}000\"):\"\"\nresult=time+\" \"+result\n</js>\n##💰0\\.00| 字 💰| 目录总数：$"
    },
    "searchUrl": "/api/creator/list?page={{page}}&type=hot&category_id=&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "改自@m8458246@一程",
    "bookSourceGroup": "免费",
    "bookSourceName": "南极",
    "bookSourceType": 0,
    "bookSourceUrl": "🐧",
    "customButton": false,
    "customOrder": 443,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 13; zh-cn; V2183A Build/TP1A.220624.014) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/89.0.4389.72 MQQBrowser/13.4 Mobile Safari/537.36 COVC/046223\",\n\"Referer\":\"https://novel.html5.qq.com/\",\n\"Q-GUID\":\"0ee63838b72eb075f63e93ae0bc288cb\",\n\"QIMEI36\":\"8ff310843a87a71101958f5610001e316a11\"}",
    "lastUpdateTime": 1748427967207,
    "respondTime": 952,
    "ruleBookInfo": {
      "author": ".author",
      "canReName": "",
      "coverUrl": ".picurl",
      "init": "data",
      "intro": "&nbsp;{{$..summary}}\n&lrm;\n标签：{{$..tag##\\|##&nbsp;}}##\\n&lrm;\\n标签：$",
      "kind": "{{java.getString('$.isfinish')=='true'?'完结':'连载'}},{{$..subject}},{{String(java.timeFormat(java.getString(\"$..lastSerialUpdateTime\")*1000)).replace(/\\//g,\"\\-\")}},{{$..userscore}}分",
      "lastChapter": ".lastSerialname",
      "name": ".resourceName",
      "tocUrl": "/qbread/api/book/all-chapter?bookId={{$..resourceID}}",
      "wordCount": ".contentsize##$##字"
    },
    "ruleContent": {
      "content": "data.Content[0].Content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author",
      "bookList": "data.state[*]",
      "bookUrl": "https://novel.html5.qq.com/qbread/api/novel/bookInfo?resourceId={{$..docId##.*_}}",
      "checkKeyWord": "",
      "coverUrl": ".cover_url",
      "intro": ".abstract",
      "kind": "连载{{$..is_finished}}完结,{{$..tag_views##\\s##,}}##连载1|0完结",
      "name": ".title##.*\\s.*",
      "wordCount": ".label_text"
    },
    "ruleToc": {
      "chapterList": ".rows[*]",
      "chapterName": "serialName",
      "chapterUrl": "serialID\n@js:\nlet data=JSON.stringify({ContentAnchorBatch:[{BookID:baseUrl.match(/bookId=(\\d+)/)[1],ChapterSeqNo:[result]}],Scene:\"chapter\"})\nlet option={\"method\":\"POST\",\"body\":data}\n\"/be-api/content/ads-read,\"+JSON.stringify(option)",
      "isPay": "",
      "isVip": "",
      "updateTime": ""
    },
    "searchUrl": "https://so.html5.qq.com/ajax/real/search_result?tabId=360&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "成语读书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.changduzw.com未月十八repair",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 445,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1733522903737,
    "loginUrl": "",
    "respondTime": 822,
    "ruleBookInfo": {
      "author": "class.status@tag.p.1@text",
      "coverUrl": "class.imgbox@tag.img@src",
      "intro": "class.con@tag.p@text",
      "kind": "class.status@tag.a.0@text",
      "lastChapter": "class.red.1@text",
      "name": "class.status@tag.h1@text",
      "tocUrl": "text.点击阅读@href",
      "wordCount": "class.status@tag.p.-3@text##总字数."
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.grid@tag.td.2@text",
      "bookList": "class.odd",
      "bookUrl": "class.odd.0@tag.a.0@href",
      "kind": "class.even@text",
      "lastChapter": "",
      "name": "class.odd@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.mulu_list@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.changduzw.com/modules/article/search.php,{\n'charset': 'utf-8',\n'method': 'POST',\n'body': 'searchkey={{key}}&type=submit'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by 尐哖(2023.05.29)\n//Thomas(2023.06.04)改\n//阅读版本不能太旧，必须有java.HMacBase64。\n//获取正文链接需要加密参数，章节多了加载会很慢，请耐心等待\nurl = `https://xgmf.zuanqianyi.com/glory/free/${uid},`;\nbody = JSON.stringify(body);\nsign = java.HMacBase64(body+\"8cfaaedef7a7e24a716732ff5428958f\",\"HmacSHA256\",\"wj3imab73kwceuf51lf01ORHe2cmo8X0YrZwF4p2uv3WEfmqxrT2oIBwRFRNErXW20UKal15ZTDdxPKU43puZFqcuXkvrQmadhp1wn6YPEDO4WRgInp8NNNQo4uNsWF1CELOzx7yPOS4pQbhTRWB4qRm0a4ENIegN0SH7K2STbsyaCuWh7m7s3rTpb5dK3CcDdsT35vo0xNbPZI2dJmKoIeKk9p3YhBLNWp9WoZqn9Qihpvn4nvgJzVSacgy2MTo\");\nurl + JSON.stringify({\n  \"body\": body,\n  \"headers\": {\n    \"sign\": sign\n  },\n  \"method\": \"POST\"\n});",
    "bookSourceGroup": "有声",
    "bookSourceName": "西瓜小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xgmf.zuanqianyi.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 446,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t}\n\t});\n$$=(flag,cid,tid,status)=>`@js:\nuid = 1166;\nbody = {\n\tflag: ${flag},\n\tsize: 15,\n\tindex: page,\n\tsort: 1,\n\ttid: \"${tid}\",\n\tstatus: \"${status}\",\n\tcid: ${cid}\n}\neval(String(source.bookSourceComment));`;\n[\n[\"男\",[\n[\"都市\",70,[\n[\"乡土生活\",538],\n[\"都市生活\",539],\n[\"古玩鉴宝\",540],\n[\"明星仕商\",541],\n[\"异术超能\",543],\n[\"高手激战\",545],\n[\"医道圣手\",546],\n[\"风水玄术\",548]\n]],\n[\"玄幻\",64,[\n[\"东方玄幻\",512],\n[\"异世大陆\",513],\n[\"斗气世界\",514],\n[\"王朝争霸\",515]\n]],\n[\"仙侠\",65,[\n[\"古典仙侠\",516],\n[\"奇幻修真\",517],\n[\"洪荒封神\",518],\n[\"现代修真\",519]\n]],\n[\"历史\",69,[\n[\"上古先秦\",531],\n[\"两宋元明\",532],\n[\"两晋隋唐\",533],\n[\"架空历史\",535],\n[\"清史民国\",536],\n[\"秦汉三国\",537]\n]],\n[\"悬疑\",86,[\n[\"原创灵异\",606],\n[\"悬疑推理\",607]\n]],\n[\"科幻\",67,[\n[\"时空穿梭\",522],\n[\"星际战争\",523],\n[\"未来世界\",524],\n[\"变异末世\",525],\n[\"机甲科技\",526]\n]],\n[\"游戏\",73,[\n[\"游戏生涯\",554],\n[\"虚拟网游\",555]\n]]\n]],\n\n[\"女\",[\n[\"现代言情\",83,[\n[\"总裁豪门\",577],\n[\"都市纯爱\",578],\n[\"重生甜宠\",579],\n[\"年代文\",838]\n]],\n[\"古代言情\",85,[\n[\"古色古香\",585],\n[\"女尊女强\",586],\n[\"重生逆袭\",587],\n[\"宫斗宅斗\",588],\n[\"清穿民国\",589],\n[\"种田经商\",590],\n[\"穿越时空\",591]\n]],\n[\"幻想言情\",84,[\n[\"仙侠幻情\",581],\n[\"魔法异界\",584]\n]],\n[\"青春校园\",82,[\n[\"贵族学院\",575],\n[\"青春纯爱\",576]\n]],\n[\"快穿次元\",79,[\n[\"快穿次元\",611]\n]]\n]]].map([title,list]=>{\n\t\tpush('༺ˇ»`ʚ'+title+'生频道ɞ´«ˇ༻',null,1);\n\t\tlist.map([title,cid,list]=>{\n\t\t\t\tflag = 1;\n\t\t\t\tpush('༺ '+title+' ༻',$$(flag,cid,\"\",\"\"),1);\n\t\t\t\tlist.map([title,tid]=>{\n\t\t\t\t\t\tflag = 0;\n\t\t\t\t\t\t[\"[\"+title+\"]\",\"完结\",\"连载\"].map((title,status)=>{\n\t\t\t\t\t\t\t\tstatus = status?status-1:\"\";\n\t\t\t\t\t\t\t\tpush(title,$$(flag,cid,tid,status),0.25);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t});\n\t});\nJSON.stringify(sort);",
    "header": "{\n\t\"uid\":\"1707428184\",\n\t\"pname\":\"com.dzmf.zmfxsdq\",\n\t\"signtype\": \"1\",\n\t\"user-agent\":\"okhttp/3.12.1\"\n}",
    "lastUpdateTime": 1734834642030,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1405,
    "ruleBookInfo": {
      "author": "$.book.author",
      "canReName": "",
      "coverUrl": "$..coverWap",
      "init": "$.data",
      "intro": "&nbsp;{{$..introduction##[\\u0020]+##<br>}}\n📍版权来自{{$..copyright}}",
      "kind": "{{$..score}}分\n{{$..bookTypeName}}\n连载{{$..status}}完结\n{{$..lastChapterUtime}}\n##连载1|0完结| .*",
      "lastChapter": "{{$.lastChapter.chapterName}} • {{$..lastChapterUtime## .*}}",
      "name": "$.book.bookName",
      "tocUrl": "@js:\nuid = 111;\nbody = {\n\tbookId: {{$..bookId}}\n}\neval(String(source.bookSourceComment));",
      "wordCount": "{$.book.totalWordSize}字"
    },
    "ruleContent": {
      "content": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n    Packages.java.lang,\n    Packages.java.security,\n    Packages.java.security.spec,\n    Packages.java.io,\n    Packages.java.util\n);\nwith(javaImport){\n    function encode(str){\n    \t//该方法由💖尐哖💖提供\njmkey=[48,-126,4,-65,2,1,0,48,13,6,9,42,-122,72,-122,-9,13,1,1,1,5,0,4,-126,4,-87,48,-126,4,-91,2,1,0,2,-126,1,1,0,-118,121,-93,-123,61,113,-87,-20,-33,52,-70,-125,-13,67,-61,92,-49,-41,-14,60,-49,31,-68,-88,-7,-38,-52,-62,-31,-76,-123,90,-28,-70,-23,-106,93,-93,-5,-57,22,62,51,45,-88,80,-38,-55,75,-3,-73,-96,65,-15,-110,11,-121,-91,105,-91,-11,-62,-111,96,17,-68,-82,113,-116,-82,-108,51,-100,31,61,14,-26,-5,-48,14,-36,-110,-90,113,46,-31,-67,-64,95,98,95,-123,2,-83,16,-105,74,-42,-100,3,-125,53,126,-72,-72,-76,79,108,1,-71,-82,-51,0,60,-94,84,-65,73,-44,-88,-107,-81,44,3,40,-33,-87,114,88,21,-53,111,-84,-88,-83,112,41,101,-118,50,22,-74,29,47,-51,-106,-89,-26,55,44,66,118,-7,-45,-72,78,-125,-37,73,72,-80,-11,38,-82,65,54,103,9,43,-106,-88,-81,29,50,56,-127,104,122,56,-38,-93,-76,-12,-99,-17,-87,97,-128,21,118,-78,-13,-67,15,-74,-116,71,63,122,5,-59,120,93,90,-104,116,21,-13,108,10,-50,-103,-33,-21,125,113,86,-73,46,-84,-92,106,-86,8,23,7,95,-65,80,83,6,-85,53,85,-85,43,-73,41,-84,-10,76,106,-36,119,99,-125,121,-92,-122,-94,-73,-15,125,115,120,-63,2,3,1,0,1,2,-126,1,1,0,-121,-55,-103,-48,-55,28,-47,125,102,-81,37,10,-55,28,52,-47,-87,58,95,-34,-61,88,-94,-66,-84,43,-93,72,-94,-35,75,59,-125,57,-54,94,-39,-70,56,-27,-45,-24,-16,116,-96,45,-111,45,125,103,-15,-115,-93,-68,-121,-14,-24,116,10,-14,99,-39,4,-121,73,61,85,110,33,126,-5,-14,-45,-16,74,6,119,-8,-117,-32,86,-23,51,111,-97,-126,91,120,-19,-49,-32,76,-28,-1,-30,90,9,88,3,42,-22,-102,37,-122,108,16,-36,36,-44,88,73,-111,-38,-34,-102,108,50,27,-22,-3,-39,-78,41,-99,123,-110,63,108,85,22,-119,93,-85,-98,-114,70,-31,-120,-122,10,-92,-31,87,117,-119,-49,25,1,20,-42,-61,35,96,-41,-46,-50,-114,-31,-36,-21,95,-70,113,110,62,-28,62,76,36,-57,81,-21,100,36,124,-74,112,-52,-73,109,-117,37,-3,-40,-111,-102,-13,62,118,-93,-119,-118,-33,-82,20,53,64,-57,24,63,-113,-126,-61,-69,90,-72,-56,120,80,-95,-14,124,-2,74,80,53,22,3,57,61,113,-117,-5,-54,61,-1,-105,-96,-68,7,-98,-49,95,-61,-16,51,-65,82,66,-125,-66,-92,115,75,-116,32,14,68,-51,124,-126,32,-63,52,84,117,2,-127,-127,0,-15,-52,16,-109,-8,94,1,-65,14,-119,72,18,115,86,17,19,-68,-19,24,86,12,5,-97,55,-16,-75,84,110,-126,23,-33,-56,120,17,-32,-127,-106,-54,-27,54,20,40,92,70,-18,94,31,-79,-42,69,74,18,85,17,-64,-80,60,4,-102,23,36,-52,-112,124,11,-30,-15,5,-92,125,51,-42,26,109,27,-19,93,10,49,-48,-106,91,-38,12,-45,73,-44,-26,37,114,21,105,36,-38,96,39,-5,-8,-4,-70,-11,106,-107,69,68,14,-43,-123,-127,6,127,65,-25,-49,75,110,99,-50,-32,-33,-54,-26,117,125,-18,24,-89,107,2,-127,-127,0,-110,-101,-24,103,-95,2,-73,-114,-109,-97,107,126,-32,75,-124,-39,-92,-98,-127,-33,2,-65,49,-80,24,118,94,4,-117,122,-70,-41,-42,59,-90,-53,-81,-101,-57,75,-99,-67,-87,-67,-35,40,-66,53,-45,95,79,-10,-120,-111,71,-12,-110,76,-74,82,-79,83,-84,3,43,111,-44,-109,4,61,-22,3,99,113,113,-121,-15,-108,44,-32,-28,46,-83,-115,-99,-86,108,-111,3,-11,-43,121,67,-73,-68,99,107,55,-119,-77,20,-68,-77,98,-113,-21,39,-128,-21,119,113,57,-99,-30,-65,-128,-76,-100,40,8,39,-72,18,9,-17,-99,-89,-125,2,-127,-128,108,110,19,93,23,-70,-88,83,-46,35,-13,-30,-6,63,-75,70,-63,-87,29,9,-79,56,112,46,-8,-51,-120,0,74,108,-124,88,-12,-89,39,-93,85,72,-59,66,-36,5,65,100,57,-114,-111,-18,0,-27,111,-109,10,-4,-4,8,-53,-47,80,124,98,111,45,-73,-62,-24,-47,38,-77,-99,-59,-70,20,125,-85,81,101,48,-90,40,32,-43,45,-46,36,-119,-18,100,10,-108,-65,79,56,76,-119,100,68,-43,98,24,64,-25,-69,-22,-92,-37,118,26,-7,66,61,-99,3,99,-19,50,-94,-91,106,40,81,103,-55,118,96,104,67,-29,2,-127,-127,0,-121,39,-59,-77,-85,34,119,23,-80,-115,-38,42,-120,25,-10,-86,49,-15,-110,102,-122,0,-66,-116,-55,-80,109,114,33,39,-114,-110,37,-60,-82,58,-66,116,-116,-32,-17,-43,-122,99,43,60,65,70,27,-53,-107,75,0,-111,118,85,72,126,1,-30,-17,-24,-29,-3,-76,16,-113,86,-51,37,74,-45,-66,-36,57,62,-118,-3,-1,-11,127,70,108,-26,-51,-1,-21,-64,48,119,116,74,43,-100,121,-58,-23,115,-76,-76,-20,28,29,-1,114,15,-26,70,26,76,-19,-117,-95,59,5,50,96,-50,72,-75,99,-16,116,104,-58,-122,127,-125,2,-127,-127,0,-105,-116,-61,-50,-11,-71,-17,-45,114,88,67,113,51,37,-77,53,82,-22,36,70,-19,34,93,22,-103,-36,28,-47,-113,120,-57,4,-95,11,-82,-62,-127,13,115,93,104,-110,-44,39,42,-125,64,-111,53,-14,82,73,69,0,-66,37,-56,-115,3,-103,5,-69,55,75,-113,7,-18,-32,97,-56,28,85,-48,72,27,-115,119,63,1,41,115,-27,-73,24,-63,57,-72,107,-9,39,13,120,-75,-42,33,9,-39,-93,72,-122,66,33,-36,-1,-18,-102,11,-49,28,-61,-120,6,102,-37,-106,-6,5,-111,107,-76,49,78,-40,19,53,106,-37,-125];\nkey=KeyFactory.getInstance(\"RSA\").generatePrivate(new PKCS8EncodedKeySpec(jmkey));\n        var bArr=String(str).getBytes(\"UTF-8\");\n        signature = Signature.getInstance(\"SHA256WithRSA\");\n        signature.initSign(key);\n        signature.update(bArr);\n       return encodes(signature.sign());\n       }\n       function encodes(bArr){\n       \tvar bArr2=String(\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\").getBytes(\"UTF_8\");\n       bArr3 = [];\n        length = bArr.length - (bArr.length % 3);\n        i = 0;\n        i2 = 0;\n        while (i < length) {     \t\n            i3 = i + 1;\n            b2 = bArr[i];\n            i4 = i3 + 1;\n            b3 = bArr[i3];\n            i = i4 + 1;\n            b4 = bArr[i4];\n            i5 = i2 + 1;\n            bArr3[i2] = bArr2[(b2 & 255) >> 2];\n            i6 = i5 + 1;\n            bArr3[i5] = bArr2[((b2 & 3) << 4) | ((b3 & 255) >> 4)];\n            i7 = i6 + 1;\n            bArr3[i6] = bArr2[((b3 & 15) << 2) | ((b4 & 255) >> 6)];\n            i2 = i7 + 1;\n            bArr3[i7] = bArr2[b4 & 63];\n        }\n        length2 = bArr.length - length;\n        if (length2 == 1) {\n            b5 = bArr[i];\n            i8 = i2 + 1;\n            bArr3[i2] = bArr2[(b5 & 255) >> 2];\n            i9 = i8 + 1;\n            bArr3[i8] = bArr2[(b5 & 3) << 4];\n            b6 = 61;\n            bArr3[i9] = b6;\n            bArr3[i9 + 1] = b6;\n        } else if (length2 == 2) {\n            i10 = i + 1;\n            b7 = bArr[i];\n            b8 = bArr[i10];\n            i11 = i2 + 1;\n            bArr3[i2] = bArr2[(b7 & 255) >> 2];\n            i12 = i11 + 1;\n            bArr3[i11] = bArr2[((b7 & 3) << 4) | ((b8 & 255) >> 4)];\n            bArr3[i12] = bArr2[(b8 & 15) << 2];\n            bArr3[i12 + 1] = 61;\n        }\n        return new String(bArr3,\"UTF_8\");\n     }\n}\n\n$ = JSON.parse(baseUrl.replace(/^.+?,/,''));\n\nsign = encode(\"a\"+$.body+\"8cfaaedef7a7e24a716732ff5428958f\");\n\n$.headers.sign = sign;\n\nchapter.url = baseUrl = baseUrl.replace(/,.+/, ','+JSON.stringify($));\n\nresult = java.ajax(baseUrl);\njava.setContent(result, baseUrl);\nresult\n</js>\n$..cdnUrls[0]\n@js:\n'\\n' + java.ajax(result);",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.searchList||$.data.bookList",
      "bookUrl": "@js:\nuid = 1110;\nbody = {\n\tbookId: {{$.bookId}}\n}\neval(String(source.bookSourceComment));",
      "checkKeyWord": "",
      "coverUrl": "$.coverWap",
      "intro": "$.introduction",
      "kind": "$.tag",
      "lastChapter": "[书籍状态] 连载{$.status}完结\n##连载1|0完结",
      "name": "$.bookName"
    },
    "ruleToc": {
      "chapterList": "@js:\n\nurl = `https://xgmf.zuanqianyi.com/glory/free/1152?a,`;\n\n$ = JSON.parse(result).data;\n$.chapterNameList.map((text,i)=>{\n\nbody = JSON.stringify({\n\tchapterId: $.chapterIdList[i],\n\tbookId: $.bookId\n});\n\nhref = url+JSON.stringify({\n  \"body\": body,\n  \"headers\": {\n    \"signtype\": \"2\"\n  },\n  \"method\": \"POST\"\n});\n\t\treturn {text:text,href:href}\n\t});",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\nuid = 1141;\nbody = {\n\tindex: page,\n\tkeyword: key\n}\neval(String(source.bookSourceComment));",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "茂鑫小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.tcmaoxin.org尐哖",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 448,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734633202983,
    "loginCheckJs": "",
    "loginUrl": "",
    "respondTime": 45,
    "ruleBookInfo": {
      "author": ".fix@p:nth-of-type(1)@text",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|update_time]@content",
      "lastChapter": "p:nth-of-type(6)@a@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list@li!0",
      "bookUrl": ".s2@a@href",
      "checkKeyWord": "",
      "kind": ".s1@text",
      "lastChapter": "{{@@.s3@a@text}} • {{@@.s5@text}}",
      "name": ".s2@a@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".middle select option!0@value"
    },
    "searchUrl": "http://www.tcmaoxin.org/search.php?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "橘子小说①",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.cxinbz.com",
    "customButton": false,
    "customOrder": 449,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1735625668400,
    "respondTime": 2334,
    "ruleBookInfo": {
      "author": "@css:span:contains(作者：)@text",
      "coverUrl": ".cover@img@src",
      "intro": ".intro@html##简介：|.*无弹窗.*",
      "kind": "@css:span:contains(分类：),span:contains(更新时间：),span:contains(状态：)@text##(分类|状态|更新时间)：",
      "lastChapter": ".info .last@a@text",
      "name": ".info@h2@text",
      "wordCount": "@css:span:contains(字数：)@text##字数："
    },
    "ruleContent": {
      "content": "#content@html##{{baseUrl}}|请记住本书首发.*",
      "replaceRegex": "##最新网址：.*|www.shugelou.org"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".bookbox",
      "bookUrl": ".bookname@a@href",
      "coverUrl": "img@src",
      "intro": ".bookinfo@p@text",
      "kind": ".cat@text##分类：",
      "lastChapter": ".update@a@text",
      "name": ".bookname@text"
    },
    "ruleToc": {
      "chapterList": "@css:.listmain a[href~=/[^/]+/\\d+.htm]",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025，2月14号，静白，制作教程接来自：源论坛:ysqbbs.com \n质量较差-模板雷同",
    "bookSourceGroup": "免费",
    "bookSourceName": "何以生肖",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yetianlian.info",
    "customButton": false,
    "customOrder": 451,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1740758066321,
    "respondTime": 379,
    "ruleBookInfo": {
      "author": "span.1@text",
      "coverUrl": "img@src",
      "intro": "class.intro@text",
      "kind": "span.2@text",
      "lastChapter": "span.last.1@text",
      "name": "h2@text",
      "wordCount": "span.4@text"
    },
    "ruleContent": {
      "content": "div#content.showtxt@text",
      "nextContentUrl": "text.下一章@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text",
      "bookList": "class.bookbox",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": "class.cat@text",
      "lastChapter": "class.update@text",
      "name": "class.bookname@text"
    },
    "ruleToc": {
      "chapterList": "dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.yetianlian.info/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "恩木书库",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.enmuku.com#🎃",
    "bookUrlPattern": "https?://m.enmuku.com/\\w+.html",
    "customButton": false,
    "customOrder": 453,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/store/0_0_0_0_0_{{page}}_0.html\n都市小说::/store/1_0_0_0_0_{{page}}_0.html\n言情小说::/store/2_0_0_0_0_{{page}}_0.html\n科幻空间::/store/3_0_0_0_0_{{page}}_0.html\n灵异小说::/store/4_0_0_0_0_{{page}}_0.html\n科幻小说::/store/5_0_0_0_0_{{page}}_0.html\n网游小说::/store/6_0_0_0_0_{{page}}_0.html\n历史军事::/store/7_0_0_0_0_{{page}}_0.html\n游戏竞技::/store/8_0_0_0_0_{{page}}_0.html\n玄幻奇幻::/store/9_0_0_0_0_{{page}}_0.html\n仙侠小说::/store/10_0_0_0_0_{{page}}_0.html\n更新小说::/store/0_0_0_0_0_{{page}}_0.html\n都市小说::/store/173_0_0_0_0_{{page}}_0.html\n言情小说::/store/293_0_0_0_0_{{page}}_0.html\n科幻空间::/store/4203_0_0_0_0_{{page}}_0.html\n灵异小说::/store/273_0_0_0_0_{{page}}_0.html\n科幻小说::/store/1497_0_0_0_0_{{page}}_0.html\n网游小说::/store/361_0_0_0_0_{{page}}_0.html\n历史军事::/store/359_0_0_0_0_{{page}}_0.html\n游戏竞技::/store/1375_0_0_0_0_{{page}}_0.html\n玄幻奇幻::/store/43_0_0_0_0_{{page}}_0.html\n仙侠小说::/store/413_0_0_0_0_{{page}}_0.html\n更新小说::/store/1.html\n榜单小说::/store/hot_{{page}}.html\n完结小说::/store/finish_{{page}}.html\n总章数量::/store/chapters_{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1784257398150,
    "loginCheckJs": "var src = result.body();\nif (src.match(/Loading\\.\\.\\.|wafjs/)) {\n    cookie.removeCookie(source.bookSourceUrl);\n    var url = result.url();\n    java.startBrowserAwait(url, \"恩木书库验证\");\n    java.connect(url);\n    result = java.connect(url);\n}\nresult;",
    "loginUrl": "https://m.enmuku.com",
    "respondTime": 6902,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "http:@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content&&.sectionTwo-content p.0@html\",\nc:\"[property$=image]@content\",\nt:\"text.目录@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "@get:{t}"
    },
    "ruleContent": {
      "content": "@js:\nurl=\"https:\"+result.match(/initTxt\\(\"([^\"]+)\",\"[^\"]+\"\\)/)[1];\nr=String(java.ajax(url).match(/_txt_call\\(([\\s\\S]+\\})\\)/)[1]);\nvar r = eval('(' + r + ')');\n\t\t\t\tif(r.content!=null){\t\t\t\t\n      var e = r.replace;\n\t\t\t\tfor (var n in e) {\n\t\t\t\t\tvar i = new RegExp(e[n], \"ig\");\n\t\t\t\t\tr.content = r.content.replace(i, n)\n\t\t\t\t}\n\t\t\t\tresult=r.content\n\t\t\t\t\t}else{result=\"章节加载失败，或者内容正在手打中，请稍后访问~\"}"
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".CGsectionTwo-right-content-unit",
      "bookUrl": "a.0@href",
      "intro": "p.-2@text",
      "kind": "p.-1@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": "@js:\npath = '.search-card';\nc=java.getElement(path);\nif( !c.length ){\n  res = java.startBrowserAwait(baseUrl,'等待至跳转，然后重搜');\n  java.setContent(res.body());\n  c=java.getElement(path);\n}\nc",
      "bookUrl": "a.0@href",
      "intro": ".sc-content@text",
      "kind": "span.-1@text",
      "lastChapter": "span.-2@text",
      "name": "a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".chapter-list li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下页@href"
    },
    "searchUrl": "/search/,{\n  \"body\": \"keyword={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "知音漫客",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.zymk.cn",
    "customButton": false,
    "customOrder": 456,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "热血::/sort/5_p{{page}}.html&&\n搞笑::/sort/6_p{{page}}.html&&\n玄幻::/sort/7_p{{page}}.html&&\n生活::/sort/8_p{{page}}.html&&\n恋爱::/sort/9_p{{page}}.html&&\n动作::/sort/10_p{{page}}.html&&\n科幻::/sort/11_p{{page}}.html&&\n战争::/sort/12_p{{page}}.html&&\n悬疑::/sort/13_p{{page}}.html&&\n恐怖::/sort/14_p{{page}}.html&&\n校园::/sort/15_p{{page}}.html&&\n历史::/sort/16_p{{page}}.html&&\n穿越::/sort/17_p{{page}}.html&&\n体育::/sort/19_p{{page}}.html&&\n都市::/sort/20_p{{page}}.html&&\n漫改::/sort/22_p{{page}}.html&&\n修真::/sort/53_p{{page}}.html&&\n霸总::/sort/62_p{{page}}.html&&\n古风::/sort/63_p{{page}}.html&&\n游戏::/sort/64_p{{page}}.html&&\n真人::/sort/65_p{{page}}.html&&\n武侠::/sort/66_p{{page}}.html&&",
    "lastUpdateTime": 1734944913615,
    "respondTime": 499,
    "ruleBookInfo": {
      "author": "class.author@text",
      "intro": "class.content@text",
      "kind": "class.tags@a@text",
      "name": "h1.name@text"
    },
    "ruleContent": {
      "content": "@js:\nhost='http://mhpic.zymkcdn.com/comic/';\noriginal=result.match(/dr_original:\"([^\"]+)\"/)[1];\nend=result.match(/end_var:(\\d+)/)[1];\n//画质\nhigh='.jpg-zymk.high.webp';\nlow='.jpg-zymk.low.webp';\nmiddle='.jpg-zymk.middle.webp';\n\nhtml='';\nfor(i=1;i<=end;i++){\nhtml+='<img src=\"'+host+original+i+high+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "",
      "bookList": "class.item@h3",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@data-src",
      "kind": "class.score@text",
      "lastChapter": "class.chapter@text",
      "name": "class.title@a@text"
    },
    "ruleToc": {
      "chapterList": "-class.chapterlist@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.zymk.cn/sort/all.html?key={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🍉 萝莉文学",
    "bookSourceType": 0,
    "bookSourceUrl": " https://www.luoliwx.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 458,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最近更新::https://m.3322t.com/top/lastupdate_{{page}}/\n最新入库::https://m.3322t.com/top/postdate_{{page}}/\n总收藏榜::https://m.3322t.com/top/goodnum_{{page}}/\n总点击榜::https://m.3322t.com/top/allvisit_{{page}}/\n总推荐榜::https://m.3322t.com/top/allvote_{{page}}/\n总字数榜::https://m.3322t.com/top/size_{{page}}/\n玄幻奇幻::https://m.3322t.com/sort/1_{{page}}/\n武侠仙侠::https://m.3322t.com/sort/2_{{page}}/\n都市言情::https://m.3322t.com/sort/3_{{page}}/\n科幻网游::https://m.3322t.com/sort/4_{{page}}/\n惊悚悬疑::https://m.3322t.com/sort/5_{{page}}/\n耽美同人::https://m.3322t.com/sort/6_{{page}}/\n穿越架空::https://m.3322t.com/sort/7_{{page}}/\n高辣浓情::https://m.3322t.com/sort/8_{{page}}/\n禁忌百合::https://m.3322t.com/sort/9_{{page}}/\n精品文学::https://m.3322t.com/sort/10_{{page}}/",
    "lastUpdateTime": 1746069630794,
    "loginUrl": "",
    "respondTime": 26673,
    "ruleBookInfo": {
      "author": ".infotype@p.0@a@text",
      "coverUrl": "class.pic@img@src",
      "intro": "class.intro@p@textNodes",
      "kind": ".infotype@p.1@text##类型：",
      "lastChapter": "{{@.infotype@p.3@text}}▪️{{@.infotype@p.2@text}}##最新章节：|更新时间：20",
      "name": "h3@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "#novelcontent@textNodes||#novelcontent@p@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@a@text||tag.a.1@text",
      "bookList": "class.searchresult@p||class.article||class.articlegeneral",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@src",
      "kind": "class.p1@text##\\[|]",
      "name": "h6@a@text||tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.chapters@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/search/,{\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}&submit=&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 宜搜",
    "bookSourceType": 0,
    "bookSourceUrl": "https://book.eayue.com",
    "customButton": false,
    "customOrder": 459,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::https://book.eayue.com/ta/searchByCategory.m?esid=&word=玄幻奇幻\n现代都市::https://book.eayue.com/ta/searchByCategory.m?esid=&word=现代都市\n武侠仙侠::https://book.eayue.com/ta/searchByCategory.m?esid=&word=武侠仙侠\n科幻小说::https://book.eayue.com/ta/searchByCategory.m?esid=&word=科幻小说\n游戏竞技::https://book.eayue.com/ta/searchByCategory.m?esid=&word=游戏竞技\n宅小说::https://book.eayue.com/ta/searchByCategory.m?esid=&word=宅小说\n现代言情::https://book.eayue.com/ta/searchByCategory.m?esid=&word=现代言情\n古代言情::https://book.eayue.com/ta/searchByCategory.m?esid=&word=古代言情\n幻想言情::https://book.eayue.com/ta/searchByCategory.m?esid=&word=幻想言情\n浪漫青春::https://book.eayue.com/ta/searchByCategory.m?esid=&word=浪漫青春\n短篇小说::https://book.eayue.com/ta/searchByCategory.m?esid=&word=短篇\n轻小说::https://book.eayue.com/ta/searchByCategory.m?esid=&word=轻小说\n经典名著::https://book.eayue.com/ta/searchByCategory.m?esid=&word=经典名著\n其他出版::https://book.eayue.com/ta/searchByCategory.m?esid=&word=其他出版\n现代文学::https://book.eayue.com/ta/searchByCategory.m?esid=&word=现代文学",
    "lastUpdateTime": 0,
    "loginUrl": "https://book.eayue.com/ta/login.m?backUrl=%2Fta%2Fboutique.m%3Fesid%3D",
    "respondTime": 6740,
    "ruleBookInfo": {
      "intro": "",
      "kind": "body@.tags@span@text",
      "name": ".info@.text@class.name@text",
      "tocUrl": "class.catelog@onclick##jumpPage\\('(.*?)'\\)##$1\n<js>\nurl=result.replace(/list/g,\"listAjax\").replace(/$/g,\"&order=0&page=1&size=100\");\n</js>",
      "wordCount": "[class=words_count]@text"
    },
    "ruleContent": {
      "content": "#text@html",
      "nextContentUrl": "",
      "sourceRegex": "",
      "title": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".show@li",
      "bookUrl": "tag.li@onclick##clickChargeBook\\('(.*?)',(.*?)\\)##novel.m?gid=$1&nid=$2",
      "checkKeyWord": "系统",
      "coverUrl": ".bg@img.1@src",
      "intro": ".desc@text",
      "kind": ".kind@text",
      "lastChapter": ".chapter_nums@text",
      "name": ".title@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.chapters",
      "chapterName": "$.chapterName",
      "chapterUrl": "<js>\nurl=baseUrl.replace(/listAjax/g,\"show\").replace(/&order=\\d*&page=\\d*&size=\\d*/g,\"&st={{$.sort}}&gst=0&cu=&cName={{$.chapterName}}\");\nu=String(url)+\",{'webView': true}\"\n</js>\n",
      "isPay": "",
      "isVolume": "",
      "nextTocUrl": "<js>\nn=25               //设置25页，2500章\nlist=[baseUrl]; //创建第一个地址数组\n\nfor(var i=2;i<=n;i++){\nlist.push(baseUrl.replace(/page=\\d+/,'page='+i));\n}                     //循环添加至n个地址数组\nlist\n</js>\n",
      "preUpdateJs": ""
    },
    "searchUrl": "https://book.eayue.com/ta/search.m?word={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃小强小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://123xiaoqiang.me#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 460,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[             {\"title\":\"全部分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n            \t\t{\"title\":\"耽美小说\",\"url\":\"/sort/1/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"耽美肉文\",\"url\":\"/sort/2/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"言情小说\",\"url\":\"/sort/3/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"言情肉文\",\"url\":\"/sort/4/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"百合小说\",\"url\":\"/sort/5/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"超爽肉文\",\"url\":\"/sort/6/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"浓情肉文\",\"url\":\"/sort/7/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\t\t\t\t\t\t\t{\"title\":\"其他类型\",\"url\":\"/sort/8/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36\"\n}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 2771,
    "ruleBookInfo": {
      "author": ".booktag@a.0@text",
      "coverUrl": "img@src",
      "init": "",
      "intro": ".bookintro@text",
      "kind": "",
      "lastChapter": "p.2@text##最新章节：|.*\\s",
      "name": "h1@text##作者：.*",
      "tocUrl": "",
      "wordCount": ".blue.0@text"
    },
    "ruleContent": {
      "content": "#rtext@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*返回顶部.*",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author.0@text",
      "bookList": ".bookbox",
      "bookUrl": "h4@a.0@href",
      "coverUrl": "h4@a.0@href##.+\\D((\\d+)\\d{3})\\D##http://123xiaoqiang.me/images/$2/$1/$1s.jpg###",
      "intro": ".update@text",
      "kind": "",
      "lastChapter": ".cat@text##更新到：|.*\\s",
      "name": "h4@a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll@dd@a",
      "chapterName": "text##.*\\s",
      "chapterUrl": "href",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}/search/,{\n \"body\": \"searchkey={{key}}&submit=\",\n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "言情港吧🌹",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.yanqinggang.com#",
    "customButton": false,
    "customOrder": 461,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻奇幻\",\"url\":\" /list/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\" /list/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\" /list/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史穿越\",\"url\":\" /list/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\" /list/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻灵异\",\"url\":\" /list/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖惊悚\",\"url\":\" /list/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}},{\"title\":\"其他类型\",\"url\":\" /list/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}}]",
    "lastUpdateTime": 1750221189933,
    "respondTime": 2460,
    "ruleBookInfo": {
      "author": "div.w100.dispc@span@a@text##本书作者：",
      "coverUrl": "img.lazy@src",
      "intro": "div.info-main-intro@p@text##精.*彩.*连.*载.*书.*",
      "kind": "div.info-title@a.1@text&&.info-main@.dispc.1@textNodes&&.info-main@span.1@text##.*：",
      "lastChapter": ".info-chapters.flex.flex-wrap.0@a.0@text",
      "name": "h1@text",
      "tocUrl": "java.refreshBookUrl()"
    },
    "ruleContent": {
      "content": "#article@textNodes",
      "nextContentUrl": "#next_url@href"
    },
    "ruleExplore": {
      "author": "span.gray@text",
      "bookList": "div.border3-1@div||div.border3@div",
      "bookUrl": "span.flex@em@a@href||span.0@a@href",
      "coverUrl": "img.lazy@src",
      "intro": ".intro.indent@text",
      "kind": ".w80@em.0@text||span.0@text",
      "lastChapter": "",
      "name": "span.flex@em@a@text||span.0@a@text"
    },
    "ruleSearch": {
      "author": ".category-div@span.0@text",
      "bookList": "class.border3.commend.flex.flex-between.category-commend@.category-div",
      "bookUrl": "h3@a@href",
      "checkKeyWord": "遮天",
      "coverUrl": "img.lazy@src",
      "intro": "div.intro.indent@text##精.*彩.*连.*载.*书.*",
      "name": ".category-div@h3@a.0@text"
    },
    "ruleToc": {
      "chapterList": "div.container.border3-2.mt8.mb20@div.info-chapters.flex.flex-wrap@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVip": "true",
      "updateTime": ""
    },
    "searchUrl": "https://www.yanqinggang.com/modules/article/search.php,{\n\t \"body\": \"searchkey={{key}}\",\n\t \"charset\": \"gbk\",\n\t \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "蜜蜂小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.mifengxs.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 462,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 5297,
    "ruleBookInfo": {
      "author": "class.book-stats@tag.b.0@text##作\\s*者：",
      "coverUrl": "class.book-img@tag.img.0@src",
      "intro": "class.book-intro@textNodes##.*各位书友要是.*|.*》.*",
      "lastChapter": "class.book-intro@a@text",
      "name": "class.book-title@tag.h1.0@text",
      "tocUrl": "text.开始阅读@href"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tr",
      "bookUrl": "a@href",
      "coverUrl": "tag.a.0@href##.*/book/(\\d+)(\\d{3}).html##http://pic.mifengxs.com/image/$1/$1$2/$1$2s.jpg",
      "kind": "class.even.2@text",
      "lastChapter": "class.even@a@text",
      "name": "class.odd@a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.mifengxs.com/modules/article/search.php,{\n\"charset\":\"gbk\",\n\"body\":\"s={{key}}&type=articlename\",\n\"method\":\"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "有声",
    "bookSourceName": "🎶 听蛙",
    "bookSourceType": 1,
    "bookSourceUrl": "https://so.itingwa.com#芜恙",
    "customButton": false,
    "customOrder": 463,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "热播::https://www.itingwa.com/top/listen\n人气::https://www.itingwa.com/top/like\n新曲::https://www.itingwa.com/top/new_music\n钢琴::https://www.itingwa.com/site/%E9%92%A2%E7%90%B4/music?p={page}}\n吉他::https://www.itingwa.com/site/%E5%90%89%E4%BB%96/music?p={page}}\n小提琴::https://www.itingwa.com/site/%E5%B0%8F%E6%8F%90%E7%90%B4\n影视::https://www.itingwa.com/site/%E5%BD%B1%E8%A7%86/music?p={page}}\n流行::https://www.itingwa.com/site/%E6%B5%81%E8%A1%8C/music?p={page}}\n古典::https://www.itingwa.com/site/%E5%8F%A4%E5%85%B8/music?p={page}}\n精选::https://www.itingwa.com/radio/choice/{{page}\n最新::https://www.itingwa.com/radio/news/{{page}}\n情感::https://www.itingwa.com/?c=radio&m=tag&t=102&p={{page}}\n音乐::https://www.itingwa.com/?c=radio&m=tag&t=94&p={{page}}\n故事::https://www.itingwa.com/?c=radio&m=tag&t=93&p={{page}}\n治愈::https://www.itingwa.com/?c=radio&m=tag&t=141&p={{page}}\n凡音::https://www.itingwa.com/?c=radio&m=tag&t=103&p={{page}}",
    "header": "",
    "lastUpdateTime": 1731057526245,
    "respondTime": 559,
    "ruleBookInfo": {
      "author": "class.song_info@tag.li.0@tag.a@text",
      "coverUrl": "class.music_intro@tag.img@src",
      "intro": "class.music_intro@text",
      "kind": "class.song_info@tag.li.3@tag.a@text",
      "lastChapter": "class.song_info@tag.li.1@tag.font@text",
      "name": "tag.h1@textNodes",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "class.font_14@tag.a.1@text",
      "bookList": "id.top_data@tag.form.0@class.top_item||class.feed_detail",
      "bookUrl": "class.music_name@tag.a@href||class.font_14@tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "class.top_10.0@text",
      "kind": "",
      "lastChapter": "class.left@text",
      "name": "class.music_name@tag.a@text||class.font_14@tag.a.0@text"
    },
    "ruleSearch": {
      "author": "tag.a.1@text",
      "bookList": "class.music_list@tag.tr",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "",
      "lastChapter": "",
      "name": "tag.a.0@text##未知"
    },
    "ruleToc": {
      "chapterList": "tag.html",
      "chapterName": "tag.h1@textNodes",
      "chapterUrl": "class.jp-jplayer@init-data",
      "nextTocUrl": ""
    },
    "searchUrl": "https://so.itingwa.com/?c=index&m=index&k={{key}}&t=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "po文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.po.work/彩虹",
    "customButton": false,
    "customOrder": 464,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "耽美::https://wap.po18.work/sort/5-{{page}}.html",
    "lastUpdateTime": 1693323061298,
    "respondTime": 4812,
    "ruleBookInfo": {
      "author": ".author@text",
      "coverUrl": ".fm@tag.img@src",
      "intro": ".intro@textNodes",
      "kind": ".markbtn@tag.span@tag.a@text",
      "lastChapter": ".lastchapter.1@tag.a@text",
      "name": ".article@tag.h1@text",
      "wordCount": "0"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##《{{book.name}}》"
    },
    "ruleExplore": {
      "author": ".author@text",
      "bookList": ".topul@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "name": "tag.h2@tag.a@text"
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".topul@tag.li",
      "bookUrl": "tag.a.0@href",
      "checkKeyWord": "魔道",
      "coverUrl": "tag.img@src",
      "intro": "tag.p.0@text",
      "name": "tag.h2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": ".chapters@tag.ul@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": ".pagelist@tag.li@tag.a@href"
    },
    "searchUrl": "https://wap.po18.work/s.php,{\n \"body\": \"searchkey={{key}}&page={{page}}\",\n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "需登录，且偶尔登录后滑块验证",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞搬山人小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.banshanren.com/",
    "concurrentRate": "1000",
    "customButton": false,
    "customOrder": 466,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\n    \"title\": \"年排行\",\n    \"url\": \"https://www.banshanren.com/api/rank?range=3\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  },\n{\n    \"title\": \"月排行\",\n    \"url\": \"https://www.banshanren.com/api/rank?range=2\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  },\n{\n    \"title\": \"周排行\",\n    \"url\": \"https://www.banshanren.com/api/rank?range=1\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  },\n  {\n    \"title\": \"浏览量\",\n    \"url\": \"https://www.banshanren.com/all/0-0-0-0-0-0-3-1/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  },\n{\n    \"title\": \"收藏榜\",\n    \"url\": \"https://www.banshanren.com/api/rank?range=5\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  },\n{\n    \"title\": \"新作榜\",\n    \"url\": \"https://www.banshanren.com/api/rank?range=4\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.3\n    }\n  }\n]",
    "header": "{\n \"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36\",\n\"Referer\":\"https://www.banshanren.com/\"\n}",
    "lastUpdateTime": 1785072394551,
    "loginUrl": "https://www.banshanren.com",
    "respondTime": 180000,
    "ruleBookInfo": {
      "author": "//div[@class='novel_brief_box']/div[@class='novel_title_box']/div[@class='info_box'][2]/span/text()",
      "coverUrl": "//div[@class='novel_brief_box']/div[@class='cover_box']/img/@data-src",
      "intro": "//div[@class='novel_brief_box']/div[@class='novel_title_box']/div[@class='novel_intro_box pc']/p[1]/text()",
      "kind": "//div[@class='novel_brief_box']/div[@class='novel_title_box']/ul[@class='novel_tag_list pc']/li/a/@title",
      "lastChapter": "//div[@class='catalog_box']/div[@class='catalog_top_box']/div[1]/p[1]/span[@class='hl']/text()",
      "name": "//div[@class='novel_brief_box']/div[@class='novel_title_box']/h1/text()",
      "wordCount": "//div[@class='novel_brief_box']/div[@class='novel_title_box']/div[@class='novel_summary_box pc']/div[4]/p/b/text()"
    },
    "ruleContent": {
      "content": "//div[@class='chapter_content_box']/p/text()"
    },
    "ruleExplore": {
      "author": "$.authors",
      "bookList": "$.model",
      "bookUrl": "@js:\n\"https://www.banshanren.com/novel/{{$.slug}}\"",
      "coverUrl": "$.coverUrl",
      "intro": "$.description",
      "kind": "$.tagNames",
      "lastChapter": "$.latestUpdate",
      "name": "$.title",
      "wordCount": "$.wordCountFormat"
    },
    "ruleSearch": {
      "author": "//div[@class='title_box']/div[@class='info_box'][2]/text()@js:\nresult.split('·')[0].trim()",
      "bookList": "//ul[@class='novel_list']/li[@class='novel_li']",
      "bookUrl": "//div[@class='title_box']/a[@class='title']/@href",
      "checkKeyWord": "琼明神女录",
      "coverUrl": "//img/@data-src",
      "intro": "//div[@class='title_box']/div[@class='novel_intro_box']/p",
      "kind": "//div[@class='title_box']/ul[@class='category_list']/li/a/@title",
      "name": "//div[@class='title_box']/a[@class='title']/text()"
    },
    "ruleToc": {
      "chapterList": "//div[@class='catalog_box']/div[@class='volume_box']/ul/li[.//a]",
      "chapterName": "//a/@title",
      "chapterUrl": "//a/@href",
      "updateTime": "//p/text()"
    },
    "searchUrl": "https://www.banshanren.com/search/index?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "红薯网站",
    "bookSourceType": 0,
    "bookSourceUrl": "https://g.hongshu.com/",
    "customButton": false,
    "customOrder": 467,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "爱情婚姻::bookajax/search.do?method=search&classids=1&paegsize=20&sex_flag=nan&pagenum={{page}}\n商战风云::bookajax/search.do?method=search&classids=2&paegsize=20&sex_flag=nan&pagenum={{page}}\n职场励志::bookajax/search.do?method=search&classids=3&paegsize=20&sex_flag=nan&pagenum={{page}}\n官场沉浮::bookajax/search.do?method=search&classids=4&paegsize=20&sex_flag=nan&pagenum={{page}}\n现实百态::bookajax/search.do?method=search&classids=5&paegsize=20&sex_flag=nan&pagenum={{page}}\n八卦杂谈::bookajax/search.do?method=search&classids=6&paegsize=20&sex_flag=nan&pagenum={{page}}\n东方玄幻::bookajax/search.do?method=search&classids=13&paegsize=20&sex_flag=nan&pagenum={{page}}\n异世大陆::bookajax/search.do?method=search&classids=14&paegsize=20&sex_flag=nan&pagenum={{page}}\n西方奇幻::bookajax/search.do?method=search&classids=15&paegsize=20&sex_flag=nan&pagenum={{page}}\n异术超能::bookajax/search.do?method=search&classids=16&paegsize=20&sex_flag=nan&pagenum={{page}}\n奇幻修真::bookajax/search.do?method=search&classids=17&paegsize=20&sex_flag=nan&pagenum={{page}}\n古典仙侠::bookajax/search.do?method=search&classids=18&paegsize=20&sex_flag=nan&pagenum={{page}}\n架空历史::bookajax/search.do?method=search&classids=19&paegsize=20&sex_flag=nan&pagenum={{page}}\n历史传纪::bookajax/search.do?method=search&classids=20&paegsize=20&sex_flag=nan&pagenum={{page}}\n谈古论今::bookajax/search.do?method=search&classids=21&paegsize=20&sex_flag=nan&pagenum={{page}}\n军事战争::bookajax/search.do?method=search&classids=22&paegsize=20&sex_flag=nan&pagenum={{page}}\n军旅生活::bookajax/search.do?method=search&classids=23&paegsize=20&sex_flag=nan&pagenum={{page}}\n抗战烽火::bookajax/search.do?method=search&classids=24&paegsize=20&sex_flag=nan&pagenum={{page}}\n未来世界::bookajax/search.do?method=search&classids=25&paegsize=20&sex_flag=nan&pagenum={{page}}\n星际战争::bookajax/search.do?method=search&classids=26&paegsize=20&sex_flag=nan&pagenum={{page}}\n古武机甲::bookajax/search.do?method=search&classids=27&paegsize=20&sex_flag=nan&pagenum={{page}}\n灵异奇谈::bookajax/search.do?method=search&classids=28&paegsize=20&sex_flag=nan&pagenum={{page}}\n恐怖惊悚::bookajax/search.do?method=search&classids=29&paegsize=20&sex_flag=nan&pagenum={{page}}\n悬疑探险::bookajax/search.do?method=search&classids=30&paegsize=20&sex_flag=nan&pagenum={{page}}\n其他类别::bookajax/search.do?method=search&classids=31&paegsize=20&sex_flag=nan&pagenum={{page}}\n都市异能::bookajax/search.do?method=search&classids=32&paegsize=20&sex_flag=nan&pagenum={{page}}\n转世重生::bookajax/search.do?method=search&classids=33&paegsize=20&sex_flag=nan&pagenum={{page}}\n经典武侠::bookajax/search.do?method=search&classids=34&paegsize=20&sex_flag=nan&pagenum={{page}}\n侦探推理::bookajax/search.do?method=search&classids=35&paegsize=20&sex_flag=nan&pagenum={{page}}\n末日危临::bookajax/search.do?method=search&classids=36&paegsize=20&sex_flag=nan&pagenum={{page}}\n电子竞技::bookajax/search.do?method=search&classids=37&paegsize=20&sex_flag=nan&pagenum={{page}}\n虚拟网游::bookajax/search.do?method=search&classids=38&paegsize=20&sex_flag=nan&pagenum={{page}}\n体育竞技::bookajax/search.do?method=search&classids=39&paegsize=20&sex_flag=nan&pagenum={{page}}\n现代修真::bookajax/search.do?method=search&classids=40&paegsize=20&sex_flag=nan&pagenum={{page}}\n男人气榜::bookajax/search.do?method=search&sortby=lastweek_salenum&paegsize=20&sex_flag=nan&pagenum={{page}}\n男新书榜::bookajax/search.do?method=search&paegsize=20&sex_flag=nan&pagenum={{page}}\n女人气榜::bookajax/search.do?method=search&sortby=lastweek_salenum&paegsize=20&sex_flag=nu&pagenum={{page}}\n女新书榜::bookajax/search.do?method=search&sortby=&paegsize=20&sex_flag=nu&pagenum={{page}}",
    "lastUpdateTime": 1721483856627,
    "loginUrl": "https://g.hongshu.com/userlogin",
    "respondTime": 1671,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": ".rdtext@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@json:$.authorname",
      "bookList": "<js>\nif (result.search('jsonp3') != -1) {\n    result.match(/jsonp3\\((.*)\\)/)[1]\n} else {\n    result\n}\n</js>\n@json:$..bookinfo[*]",
      "bookUrl": "@js:\nsource.bookSourceUrl + \"bookajax/chapterlist/bid/{{$.bid}}.do?bid={{$.bid}}&pagesize=50&sortby=ASC&pagenum=1\"",
      "coverUrl": "@json:$.bookface",
      "intro": "@json:$.intro",
      "kind": "@json:{$.classname}&&{$.tag[*]}",
      "lastChapter": "@json:$.last_update_title",
      "name": "@json:$.catename"
    },
    "ruleToc": {
      "chapterList": "@json:$..list[*]",
      "chapterName": "@json:$.title",
      "chapterUrl": "@js:\nlet path = \"content/{{$..bid}}/{{$.chapterid}}.html,\";\n\nlet option = {\n\t\"method\": \"GET\"\n};\n\njava.put(\"url\",String(source.bookSourceUrl + path + JSON.stringify(option)))",
      "nextTocUrl": "@js:\nvar n=JSON.parse(result);\nn=n.totalpage;\nbaseUrl=baseUrl.replace(/(.+pagenum=)\\d+/,'$1');\nvar list=[];\nfor(var i=2;i<=n;i++){\nvar url=baseUrl+i;\nlist.push(url);\n}\nlist"
    },
    "searchUrl": "bookajax/search.do?keyword={{key}}&keywordtype=1&free=0&finish=0&charnum=0&updatetime=0&order=0&copyright=1&pagesize=10&sex_flag=nan&pagenum=1&Pclassids=0&callback=jsonp3",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "开源阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.i7txt.cc",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 468,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734638544683,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 4221,
    "ruleBookInfo": {
      "author": "class.info_t4@text",
      "canReName": "",
      "coverUrl": "class.info_novel_img@tag.a@img@src",
      "init": "",
      "intro": "class.info_intro@text",
      "kind": "class.info_t3@text&&class.info_t2@text&&class.info_t5@text",
      "lastChapter": "class.info_t6@text",
      "name": "class.info_t1@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.nr1@textNodes##",
      "imageStyle": "",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\n.*本章.*\\n第.*章.*第.*页.*\\n\\s\\s|.第1/.页.",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.author@tag.a@text",
      "bookList": "class.sone",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a@href##(.*)book/(.*)([1-9]{3,3})/##http://www.i7txt.cc/files/article/image/$2/$2$3/$2$3s.jpg####",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "tag.a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "tag.ul.1@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "option@value||text.下一页@href",
      "updateTime": ""
    },
    "searchUrl": "/s.php?search_key={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "就爱文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xs.info",
    "customButton": false,
    "customOrder": 469,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 0,
    "respondTime": 1361,
    "ruleBookInfo": {
      "author": ".book-info@.info@span.2@text",
      "canReName": "",
      "coverUrl": ".base@dt@img@src",
      "intro": ".intro@.content@text",
      "kind": ".book-info@.info@span.1@text##分类：",
      "lastChapter": ".book-info@.info@span.-1@a@text",
      "name": ".book-info@dd@h2@text",
      "tocUrl": ".top-index@.p2@a@href"
    },
    "ruleContent": {
      "content": ".chapter_content@html##.*92xs.*|.*请点击下一页继续.*|.*第.*页.*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span@text##/",
      "bookList": "ul@li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "我的",
      "kind": "a.0@text##\\[|\\]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "ul@li!0",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://m.92xs.info/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "未知大佬制作，更新HINOTORI（qq）在源仓库发过的书源",
    "bookSourceGroup": "免费",
    "bookSourceName": "开源书源",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.loubiqu.com/",
    "bookUrlPattern": "http://www.biquge.info/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 470,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36\"\n}",
    "lastUpdateTime": 1745852814602,
    "respondTime": 68,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作 者:",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.1@text&&\nid.info@tag.p.2@text##类 别:|最后更新 :",
      "lastChapter": "id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@a@href&lt;js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquge.info/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n&lt;/js>",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.odd.0@tag.a@href",
      "coverUrl": "class.odd.0@tag.a@href&lt;js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.loubiqu.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n&lt;/js>",
      "lastChapter": "class.even.0@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.odd.0@tag.a@text",
      "wordCount": "class.even.1@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.biquge.info/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "@游客",
    "bookSourceGroup": "女频",
    "bookSourceName": "言情小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.bgnovel.com",
    "bookUrlPattern": "https?://m.bgnovel.com/\\w+/\\d+.html",
    "customButton": false,
    "customOrder": 471,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "现代情感::/xiandaixiaoshuo/index_{{page-1}}.html\n古装迷情::/gudaixiaoshuo/index_{{page-1}}.html\n穿越重生::/chuanyuechongsheng/index_{{page-1}}.html\n仙侠魔幻::/xianxiamohuan/index_{{page-1}}.html\n网游竞技::/wangyoujingji/index_{{page-1}}.html\nＢＧ同人::/bgtongren/index_{{page-1}}.html\n无ＣＰ向::/wucpxiang/index_{{page-1}}.html\n无限流派::/wuxianliu/index_{{page-1}}.html\n本站推荐::/bztuijian/index_{{page-1}}.html\n热门排行::/bzremen/index_{{page-1}}.html\n周排行榜::/bzremenweek/index_{{page-1}}.html\n月排行榜::/bzremenmonth/index_{{page-1}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1731361878104,
    "respondTime": 2925,
    "ruleBookInfo": {
      "author": "td span.0@text",
      "coverUrl": "img@src",
      "kind": "td span!0@text##.*：",
      "lastChapter": "option.-1@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#text > p@textNodes"
    },
    "ruleExplore": {
      "author": "span.0@text",
      "bookList": "li.book-li",
      "bookUrl": "a@href",
      "kind": "span!0@text##.*：",
      "name": "h4@text"
    },
    "ruleSearch": {
      "author": "span.1@text",
      "bookList": "h2",
      "bookUrl": "a@href",
      "checkKeyWord": "快穿",
      "kind": "0",
      "name": "a@text"
    },
    "ruleToc": {
      "chapterList": "option",
      "chapterName": "text",
      "chapterUrl": "value",
      "nextTocUrl": ""
    },
    "searchUrl": "https://m.bgnovel.com/e/search/index.php,{\n  \"body\": \"keyboard={{key}}&show=title&tempid=1&tbname=article\",\n  \"method\": \"POST\"\n}\n@js:\ncookie.removeCookie(baseUrl);\nso = String(result).replace(\"{{key}}\", key);\nvar res = java.connect(so), \nurl = res.raw().request().url() || res.url();\nString(url).replace(/searchid/,\n\t\"page={{page-1}}\\&$&\");",
    "weight": 0
  },
  {
    "bookSourceComment": "可能需要魔法",
    "bookSourceGroup": "漫画",
    "bookSourceName": "爱看漫画（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.kanman.com已校验",
    "customButton": false,
    "customOrder": 472,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "人气::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=48\n更新::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=48\n评分::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=48\n收藏::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=48\n热血::https://m.kanman.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=48\n机战::https://m.kanman.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=48\n运动::https://m.kanman.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=48\n推理::https://m.kanman.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=48\n冒险::https://m.kanman.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=48\n搞笑::https://m.kanman.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=48\n战争::https://m.kanman.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n神魔::https://m.kanman.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=48\n忍者::https://m.kanman.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=48\n竞技::https://m.kanman.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=48\n悬疑::https://m.kanman.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=48\n社会::https://m.kanman.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=48\n恋爱::https://m.kanman.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=48\n宠物::https://m.kanman.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=48\n吸血::https://m.kanman.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=48\n萝莉::https://m.kanman.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=48\n后宫::https://m.kanman.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=48\n御姐::https://m.kanman.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=48\n霸总::https://m.kanman.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=48\n玄幻::https://m.kanman.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n古风::https://m.kanman.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=48\n历史::https://m.kanman.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=48\n漫改::https://m.kanman.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=48\n游戏::https://m.kanman.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=48\n穿越::https://m.kanman.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=48\n恐怖::https://m.kanman.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=48\n真人::https://m.kanman.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=48\n科幻::https://m.kanman.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n都市::https://m.kanman.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=48\n武侠::https://m.kanman.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=48\n修真::https://m.kanman.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n生活::https://m.kanman.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n动作::https://m.kanman.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n防疫::https://m.kanman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=48",
    "lastUpdateTime": 1759430147252,
    "respondTime": 435,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": ".comic-update-status@text##.*-\\d+ ",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "https://m.kanman.com/api/getchapterlist?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}"
    },
    "ruleContent": {
      "content": "$.data.current_chapter.chapter_img_list@js:\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.cartoon_author_list_name||$.comic_author",
      "bookList": "$.data.data||$.data",
      "bookUrl": "https://m.kanman.com/{{$.comic_id}}/",
      "coverUrl": "https://image.yqmh.com/mh/{{$.comic_id}}.jpg-300x400.webp",
      "intro": "$.cartoon_desc",
      "kind": "$.comic_type##[a-zA-Z]|\\|",
      "lastChapter": "$.latest_cartoon_topic_name||$.last_chapter_name",
      "name": "$.comic_name@put:{bid:$.comic_id}"
    },
    "ruleToc": {
      "chapterList": "-$.data.[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "https://m.kanman.com/api/getchapterinfov2?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}&chapter_newid={{$.chapter_newid}}&isWebp=1&quality=low"
    },
    "searchUrl": "https://m.kanman.com/api/serachcomic/?product_id=1&productname=kmh&platformname=wap&serachKey={{key}}&topNumber=10",
    "weight": 62
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁新站",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.hqrgjtcw.com/##@遇知",
    "customButton": false,
    "customOrder": 473,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/sort/1/{{page}}/\n武侠修真::/sort/2/{{page}}/\n都市言情::/sort/3/{{page}}/\n历史军事::/sort/4/{{page}}/\n科幻灵异::/sort/5/{{page}}/\n游戏竞技::/sort/6/{{page}}/\n女生耽美::/sort/7/{{page}}/\n其他类型::/sort/8/{{page}}/",
    "lastUpdateTime": 1690554758840,
    "respondTime": 5439,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "🔔 更新时间：{{@@[property=\"og:novel:update_time\"]@content##\\s##🔸}}\n\n📂 内容简介：{{@@[property=\"og:description\"]@content##.*由作家.*创作，|笔趣阁新站.*章节}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "#rtext p@html",
      "nextContentUrl": "#linkNext@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author.0@text",
      "bookList": ".bookbox",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "intro": ".update@textNodes",
      "lastChapter": ".cat a@text",
      "name": "h4@text",
      "wordCount": ".author.1@text##.*："
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\nhttps://www.hqrgjtcw.com/search/,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "新爱漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://xapi.xinmanhua.net已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 476,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::https://xapi.xinmanhua.net/search/catalog?keyword=all&ischarge=2&isfinish=2&order=0&page={{page}}\n治愈::https://xapi.xinmanhua.net/search/catalog?keyword=治愈&page={{page}}\n日常::https://xapi.xinmanhua.net/search/catalog?keyword=日常&page={{page}}\n都市::https://xapi.xinmanhua.net/search/catalog?keyword=都市&page={{page}}\n悬疑::https://xapi.xinmanhua.net/search/catalog?keyword=悬疑&page={{page}}\n科幻::https://xapi.xinmanhua.net/search/catalog?keyword=科幻&page={{page}}\n奇幻::https://xapi.xinmanhua.net/search/catalog?keyword=奇幻&page={{page}}\n热血::https://xapi.xinmanhua.net/search/catalog?keyword=热血&page={{page}}\n武侠::https://xapi.xinmanhua.net/search/catalog?keyword=武侠&page={{page}}\n古风::https://xapi.xinmanhua.net/search/catalog?keyword=古风&page={{page}}\n恋爱::https://xapi.xinmanhua.net/search/catalog?keyword=恋爱&page={{page}}\n少年::https://xapi.xinmanhua.net/search/catalog?keyword=少年&page={{page}}\n日漫::https://xapi.xinmanhua.net/search/catalog?keyword=日漫&page={{page}}\n原创::https://xapi.xinmanhua.net/search/catalog?keyword=原创&page={{page}}",
    "header": "{\n  \"User-Agent\": \"okhttp/3.10.0\"\n}",
    "lastUpdateTime": 1720291041292,
    "loginUrl": "",
    "respondTime": 1927,
    "ruleBookInfo": {
      "intro": "@JSon:$.data.attributes.intro&&$.data.attributes.description"
    },
    "ruleContent": {
      "content": "$.data[*].attributes.url\n@js:list=result.split('\\n');\nlist.map(x=>'<img src=\"'+x+'\">').join('\\n')",
      "imageStyle": "FULL",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@JSon:$.attributes.author",
      "bookList": "@JSon:$.data.*",
      "bookUrl": "https://xapi.xinmanhua.net/worksinfos/{$.attributes.wid}?include=chapters.digests",
      "coverUrl": "@JSon:$.attributes.logo_detail",
      "kind": "@JSon:$.attributes.workscate",
      "lastChapter": "@JSon:$.attributes.lastctitle",
      "name": "@JSon:$.attributes.title"
    },
    "ruleToc": {
      "chapterList": "$.included.*",
      "chapterName": "$.attributes.title&&$.attributes.intro",
      "chapterUrl": "https://xapi.xinmanhua.net/chapters/{$.id}/qualitywebs"
    },
    "searchUrl": "https://xapi.xinmanhua.net/search/selfdefine,{\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&page={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "半废了。但还可用。\n大概最新的十章+不能看。\nby.Thomas哟\n小说交流群462030508。\nA群637775313不加人。若家炸了查看此群群资料找新家。\n✱✱资源取自网络，仅供学习参考，请同学们在24小时内删除✱✱\n🆙💯Dragon Quest QB\n{{book.origin}}/wenxue/buy/ad-chapter/v4?apn=1&resourceId={{baseUrl.match(/bookId=(\\d+)/)[1]}}&serialId={{$.serialID}}",
    "bookSourceGroup": "免费",
    "bookSourceName": "QB男生",
    "bookSourceType": 0,
    "bookSourceUrl": "DragonQuestQBall",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 477,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✱　　　　　　✱ 都市 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=异术超能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 玄幻 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"高武世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=高武世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王朝争霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=王朝争霸\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 仙侠 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想修仙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=幻想修仙\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神话修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=神话修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=修真文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 奇幻 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"史诗奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=史诗奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"另类幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=另类幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"剑与魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=剑与魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=现代魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=历史神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 历史 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=架空历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"秦汉三国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=秦汉三国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两宋元明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两宋元明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两晋隋唐\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两晋隋唐\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=历史传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古先秦\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=上古先秦\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"清史民国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=清史民国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"外国历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=外国历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 军事 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"抗战烽火\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=抗战烽火\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战争幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=战争幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"谍战特工\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=谍战特工\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军旅生涯\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军旅生涯\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事战争\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军事战争\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 科幻空间 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=星际文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 悬疑侦探 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1508&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 游戏竞技 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"虚拟网游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=虚拟网游\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏系统\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏系统\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏主播\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏主播\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱   武    侠   ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"传统武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=传统武侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武未来\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=古武未来\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国术无双\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=国术无双\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 体育 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"篮球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=篮球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"足球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=足球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育赛事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=体育赛事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱ 轻小说 ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=衍生同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"原生幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=原生幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"搞笑吐槽\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=搞笑吐槽\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱   短    篇   ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"短篇小说\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=短篇小说\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生活随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=生活随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视剧本\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=影视剧本\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"诗歌散文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=诗歌散文\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人物传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=人物传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"美文游记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=美文游记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"评论文集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=评论文集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✱　　　　　　✱   现    实   ✱　　　　　　✱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现实百态\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=现实百态\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爱情婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=爱情婚姻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"成功励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=成功励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会乡土\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=社会乡土\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=青春文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学艺术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=文学艺术\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1723367334592,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2593,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.rows[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.resourceID}}",
      "coverUrl": "$.picurl",
      "intro": "$.summary",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,'')}}",
      "lastChapter": "$.lastSerialname",
      "name": "$.resourceName##（.*",
      "wordCount": "$.contentsize"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.booklist[*]",
      "bookUrl": "$.bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.categoryInfoV4\n##\\d.*?\\:(.*?)\\:.*?(,|$)##$1$2}}\n{{$.updateInfo##已更新至.*##连载中}}\n##小说,",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isPay": "$.isFree",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://newopensearch.reader.qq.com/wechat?keyword={{key}}&start={{page-1}}&end=19",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "漫画小屋（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.dm5.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 478,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734945453513,
    "loginUrl": "",
    "respondTime": 420,
    "ruleBookInfo": {
      "author": "p.detail-main-info-author@tag.a@text",
      "coverUrl": "img.detail-main-bg@src",
      "intro": "p.detail-desc@text",
      "kind": "p.detail-main-info-class@tag.a@text",
      "lastChapter": "ul.detail-list-select@tag,li.0@text",
      "name": "p.detail-main-info-title@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "@js:header={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\neval(result.match(/eval(.*?)\\{\\}\\)\\)/)[0])\nvar image_list = []\nnewImgs.map(item=>{\n    image_list.push('<img src=\"'+item+','+JSON.stringify(headers)+'\">')\n})\nimage_list.join(\"\\n\")",
      "imageStyle": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p.0@text",
      "bookList": "ul.book-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "p.book-list-info-desc@text",
      "kind": "",
      "lastChapter": "",
      "name": "p.book-list-info-title@text"
    },
    "ruleToc": {
      "chapterList": "-ul.detail-list-select@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://m.dm5.com/search?title={{key}}&language=1",
    "weight": 0
  },
  {
    "bookSourceComment": "<js>\ndo{\nt=Date();t1=Number(t.charAt(17));t2=Number(t.charAt(19));t3=Number(t.charAt(20));t4=Number(t.charAt(22));t5=Number(t.charAt(23));\nn=(t2+t4)%6*1000+t1*100+t3*10+t5;\nn=2302\nn=2189\nr=java.ajax(\"http://m.wufazhuce.com/article/\"+n.toString());\njava.setContent(r);\n}\nwhile(r.includes(\"404 Not Found\"));\n//获取4个随机数其中第一个数小于6，大于5918无内容，并访问网址\nchapter.title=java.getString('class.text-title@text');\n//传出标题\nresult=java.getString('class.text-content@html');\njava.log(\"🍊🍊\"+result);\n//获取正文内容\nif(String(result).includes(\"<img\")){result=String(result).match(/src\\=\\\"[^\"]+\\\"/g).map(x=>'<img src=\"'+x.replace(/\\?imageView[^\"]+/g,\"\")+'\">').join(\"\\n\");\njava.log(\"🍊\")}\n//判断正文是否有图片并处理\nbook.variable+=\"\\n﹉ID：\"+n+\"﹉﹉\\n\"+result;\nbook.variable;\n</js>\n//n=2302纯图片\n//n=2189需要处理的图片\n//2026图文混合\n//n=4023文本申明头",
    "bookSourceGroup": "免费",
    "bookSourceName": "单本阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.wufazhuce.com/",
    "customButton": false,
    "customOrder": 479,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n    {\n        \"title\": \"添加书籍\",\n        \"url\": \"/article\",\n        \"style\": {\"layout_flexBasisPercent\":1}\n    }\n]",
    "header": "",
    "lastUpdateTime": 1745852631587,
    "respondTime": 520,
    "ruleBookInfo": {
      "author": "<js>\"ONE·阅读\"</js>",
      "coverUrl": "<js>\"https://gitee.com/lyc486/yuedu/raw/master/cover486.webp\"</js>",
      "init": "",
      "name": "<js>\"ONE·阅读\"</js>",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "<js>\ndo{\nt=Date();t1=Number(t.charAt(17));t2=Number(t.charAt(19));t3=Number(t.charAt(20));t4=Number(t.charAt(22));t5=Number(t.charAt(23));\n//var t=new Date();\n//year=t.getFullYear();\n//java.log(\"🍊\"+year);\nn=(t2+t4)%6*1000+t1*100+t3*10+t5;\nr=java.ajax(\"http://m.wufazhuce.com/article/\"+n.toString());\njava.setContent(r);\n}\nwhile(r.includes(\"404 Not Found\"));\n//获取4个随机数其中第一个数小于6，大概大于5919无内容，并访问网址\nchapter.title=java.getString('class.text-title@text');\nchapter.url=\"http://m.wufazhuce.com/article/\"+n.toString();\n//传出标题\ns=String(java.getString('class.text-content@html'));\n//获取正文内容\nif(s.includes(\"<img\")){s=s.replace(/<img [^>]*src\\=\\\"([^\"]+?)(\\?imageView[^\"]+)?\\\"[^>]*>/g,'<img src=\"$1\">')}\n//判断正文是否有图片并处理\nelse if(s.includes(\"<![endif]-->\")){s=s.replace(/<!--\\[if gte[\\S\\s]+<!\\[endif\\]-->/,\"\")}\nif(source.getVariable()<=0||source.getVariable()==\"NaN\"||book.variable==null){\nbook.variable=\"\";\nsource.setVariable(39);\n}\nelse{\nsource.setVariable(source.getVariable()-1);\n}\nbook.variable+=\"\\n★\"+chapter.title+\"\\n\"+s;\nbook.variable;\n</js>",
      "imageStyle": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "<js>[\"ONE·阅读\"]</js>",
      "bookUrl": "<js>\"http://m.wufazhuce.com/article/\"</js>",
      "name": "<js>\"ONE·阅读\"</js>"
    },
    "ruleSearch": {
      "bookList": "<js>[\"ONE·阅读\"]</js>",
      "bookUrl": "<js>\"http://m.wufazhuce.com/article/\"</js>",
      "checkKeyWord": "lyc486",
      "name": "<js>\nif(baseUrl.endsWith(\"lyc486\")){\n\tjava.log(baseUrl)\n\"ONE·阅读\"}else{\"\"}\n</js>"
    },
    "ruleToc": {
      "chapterList": "<js>[\"ONE·阅读\"]</js>",
      "chapterName": "<js>\"ONE·阅读\"</js>",
      "chapterUrl": "",
      "preUpdateJs": "if(source.getVariable()<=0||source.getVariable()==\"NaN\"||book.variable==null){\nbook.variable=\"\";\nsource.setVariable(39);\n}"
    },
    "searchUrl": "/article/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "QQ浏览器",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌕松鹤阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "DQuestQBall",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 480,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"　　　　　　 男频分类 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 都市 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=异术超能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1505&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 玄幻 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"高武世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=高武世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王朝争霸\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1501&start={{page}}&count=20&sub=王朝争霸\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 仙侠 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"幻想修仙\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=幻想修仙\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神话修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=神话修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=修真文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1504&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 奇幻 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"史诗奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=史诗奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"另类幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=另类幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"剑与魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=剑与魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代魔法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=现代魔法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1502&start={{page}}&count=20&sub=历史神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 历史 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"架空历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=架空历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"秦汉三国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=秦汉三国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两宋元明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两宋元明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"两晋隋唐\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=两晋隋唐\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=历史传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古先秦\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=上古先秦\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"清史民国\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=清史民国\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"外国历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1506&start={{page}}&count=20&sub=外国历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 军事 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"抗战烽火\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=抗战烽火\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战争幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=战争幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"谍战特工\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=谍战特工\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军旅生涯\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军旅生涯\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事战争\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1507&start={{page}}&count=20&sub=军事战争\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科幻空间 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际文明\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=星际文明\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1509&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 悬疑侦探 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1508&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 游戏竞技 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"虚拟网游\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=虚拟网游\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏系统\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏系统\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏主播\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1510&start={{page}}&count=20&sub=游戏主播\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 武侠 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"传统武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=传统武侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=武侠同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武未来\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=古武未来\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国术无双\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1503&start={{page}}&count=20&sub=国术无双\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 体育 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"篮球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=篮球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"足球运动\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=足球运动\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育赛事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1511&start={{page}}&count=20&sub=体育赛事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 轻小说 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"衍生同人\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=衍生同人\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"原生幻想\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=原生幻想\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"搞笑吐槽\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1512&start={{page}}&count=20&sub=搞笑吐槽\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 短篇 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"短篇小说\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=短篇小说\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生活随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=生活随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视剧本\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=影视剧本\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"诗歌散文\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=诗歌散文\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人物传记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=人物传记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"美文游记\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=美文游记\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"评论文集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1515&start={{page}}&count=20&sub=评论文集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 现实 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"现实百态\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=现实百态\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爱情婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=爱情婚姻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"成功励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=成功励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会乡土\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=社会乡土\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=青春文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学艺术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1499&start={{page}}&count=20&sub=文学艺术\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 女频分类 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 现代言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=豪门世家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市异能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市异能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民国情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=民国情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"官场沉浮\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=官场沉浮\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 古代言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫闱宅斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=宫闱宅斗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经商种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=经商种田\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊王朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=女尊王朝\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血江湖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=热血江湖\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古蛮荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=上古蛮荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 悬疑侦探 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"推理侦探\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=推理侦探\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=悬疑探险\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神秘文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=神秘文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"恐怖惊悚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=恐怖惊悚\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幽冥情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=幽冥情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 仙侠奇缘 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侣奇缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=仙侣奇缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=武侠情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古洪荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=远古洪荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 玄幻言情 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法幻情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=魔法幻情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能超术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异能超术\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异族恋情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异族恋情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=西方奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=远古神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 浪漫青春 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春纯爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春纯爱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春疼痛\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春疼痛\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"叛逆成长\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=叛逆成长\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科幻空间 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际恋歌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=星际恋歌\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 游戏竞技 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"网游情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=网游情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=体育竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 纯爱 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 出版文学 　　　　　　\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"　　　　　　 小说 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"社会\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=社会\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情感\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=情感\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"侦探/悬疑/推理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=侦探/悬疑/推理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"作品集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=作品集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=历史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=科幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=武侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界名著\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1688&start={{page}}&count=20&sub=世界名著\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 励志 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"成功/激励\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=成功/激励\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心灵与修养\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=心灵与修养\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青少年励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=青少年励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人际交往\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人际交往\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人生哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"口才/演讲/辩论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=口才/演讲/辩论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人在职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=人在职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性励志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1690&start={{page}}&count=20&sub=女性励志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 心理 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"心理百科\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理百科\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学入门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学入门\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"应用心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=应用心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人格心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=人格心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心灵疗愈\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心灵疗愈\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理学理论与研究\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=心理学理论与研究\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会心理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1466&start={{page}}&count=20&sub=社会心理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 军事 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"武器装备\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=武器装备\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=世界军事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"军事史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=军事史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经典军事著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=经典军事著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战略战术战役\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=战略战术战役\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国军事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1697&start={{page}}&count=20&sub=中国军事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 政治 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"政治理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=政治理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"党政读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=党政读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国政治\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=中国政治\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界政治\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=世界政治\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"法律普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=法律普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"政治热点\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=政治热点\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"公共管理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=公共管理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"法律法规\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1464&start={{page}}&count=20&sub=法律法规\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 文学 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"中国现当代随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国现当代随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国现当代诗歌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国现当代诗歌\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"纪实文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=纪实文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学评论与鉴赏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文学评论与鉴赏\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"名家作品\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=名家作品\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国古诗词\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=中国古诗词\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1692&start={{page}}&count=20&sub=文学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 文化 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=中国文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地域文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=地域文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=民族文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"艺术理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=艺术理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国学普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=国学普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 历史 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"历史普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=历史普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=中国史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"世界史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=世界史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地方史志\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=地方史志\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=历史随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文物考古\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=文物考古\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"史料典籍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=史料典籍\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"史学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1693&start={{page}}&count=20&sub=史学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 社科 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"教育\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=教育\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"语言文字\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=语言文字\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会科学总论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=社会科学总论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"社会学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=社会学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经典名家作品集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=经典名家作品集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人类学/人口学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=人类学/人口学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"新闻传播出版\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=新闻传播出版\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1691&start={{page}}&count=20&sub=民族学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 养生 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"健康百科\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=健康百科\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"饮食健康\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=饮食健康\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"常见病预防和治疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=常见病预防和治疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"药膳食疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=药膳食疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中医养生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=中医养生\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性/儿童\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=女性/儿童\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"心理健康\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=心理健康\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中老年养生\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1463&start={{page}}&count=20&sub=中老年养生\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 投资 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"理财技巧\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=理财技巧\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女性理财\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=女性理财\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"证券/股票\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=证券/股票\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"投资指南\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=投资指南\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"外汇\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1704&start={{page}}&count=20&sub=外汇\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 经济 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"经济通俗读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济通俗读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济学理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济学理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"各部门经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=各部门经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=中国经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国际经济\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=国际经济\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经济法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=经济法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"财政税收\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1703&start={{page}}&count=20&sub=财政税收\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 亲子 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"家教方法\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=家教方法\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"育儿/亲子\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=育儿/亲子\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"孕产知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=孕产知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"素质教育\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=素质教育\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"母婴喂养/护理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=母婴喂养/护理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"胎教/早教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=胎教/早教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家教理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=家教理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"养育女孩\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1683&start={{page}}&count=20&sub=养育女孩\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 管理 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"一般管理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=一般管理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市场/营销\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=市场/营销\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"企业与企业家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=企业与企业家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"金融/投资\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=金融/投资\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子商务\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=电子商务\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"会计/财务\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=会计/财务\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商业史传\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=商业史传\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战略管理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1689&start={{page}}&count=20&sub=战略管理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 两性 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"恋爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=恋爱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚姻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=婚姻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚恋综合\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=婚恋综合\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"性知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1696&start={{page}}&count=20&sub=性知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 哲学 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"中国哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=中国哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学知识读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学知识读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=西方哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=东方哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"伦理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=伦理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"哲学理论与流派\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=哲学理论与流派\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"马克思哲学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1701&start={{page}}&count=20&sub=马克思哲学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 宗教 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"佛教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=佛教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"道教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=道教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教理论与概况\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教理论与概况\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"伊斯兰教\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=伊斯兰教\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宗教经典著作\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1702&start={{page}}&count=20&sub=宗教经典著作\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 传记 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"人物合集\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=人物合集\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=历史人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"财经人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=财经人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"政治人物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=政治人物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=文学家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历代帝王\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=历代帝王\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=其他\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科学家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1695&start={{page}}&count=20&sub=科学家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 科普 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"百科知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=百科知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科学世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=科学世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人类故事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=人类故事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宇宙知识\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=宇宙知识\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生物世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=生物世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生态环境\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=生态环境\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神秘现象\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=神秘现象\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"数理化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1698&start={{page}}&count=20&sub=数理化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 自然 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"总论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=总论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地球科学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=地球科学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=天文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科技史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=科技史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"生物科学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=生物科学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"化学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=化学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"物理学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1706&start={{page}}&count=20&sub=物理学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 美食 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"家常菜谱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=家常菜谱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"药膳食疗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=药膳食疗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地方美食\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=地方美食\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"茶酒饮料\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=茶酒饮料\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"烹饪理论/手册\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=烹饪理论/手册\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"饮食文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=饮食文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西餐料理\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1705&start={{page}}&count=20&sub=西餐料理\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 休闲 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"幽默笑话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=幽默笑话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"旅游随笔\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=旅游随笔\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宠物杂事\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=宠物杂事\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=游戏\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家庭园艺\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=家庭园艺\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"户外探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=户外探险\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国内自助旅游指南\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=国内自助旅游指南\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"车载户外\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1465&start={{page}}&count=20&sub=车载户外\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 艺术 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"文学\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文学\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"中国文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=中国文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化史\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化史\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"地域文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=地域文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民族文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=民族文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"艺术理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=艺术理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"国学普及读物\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=国学普及读物\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文化理论\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1461&start={{page}}&count=20&sub=文化理论\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　　　 时尚 　　　　　　\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexBasisPercent\":1}},{\"title\":\"护肤/美容整形\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=护肤/美容整形\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家事窍门\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家事窍门\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=时尚\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家装方法指导\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家装方法指导\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"瘦身美体\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=瘦身美体\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"服饰搭配/配饰\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=服饰搭配/配饰\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"家装策略秘籍\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=家装策略秘籍\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"彩妆/美发/美甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1694&start={{page}}&count=20&sub=彩妆/美发/美甲\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1750434044355,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2536,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.rows[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.resourceID}}",
      "coverUrl": "$.picurl",
      "intro": "$.summary",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,'')}}",
      "lastChapter": "$.lastSerialname",
      "name": "$.resourceName##（.*",
      "wordCount": "$.contentsize"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.booklist[*]",
      "bookUrl": "$.bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.categoryInfoV4\n##\\d.*?\\:(.*?)\\:.*?(,|$)##$1$2}}\n{{$.updateInfo##已更新至.*##连载中}}\n##小说,",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isPay": "$.isFree",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://newopensearch.reader.qq.com/wechat?keyword={{key}}&start={{page-1}}&end=19",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "新笔趣阁 xbiquge.la ️少敏感字",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xbiquge.laa",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 481,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:90.0) Gecko/20100101 Firefox/90.0\",\n    \"cookie\":\"Hm_lvt_8fd9f526ca72jb9418ca50c2g79d2f70=1597461516\"\n}",
    "lastUpdateTime": 1734834064287,
    "loginUrl": "",
    "respondTime": 580,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作.*者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "init": "\n",
      "intro": "id.intro@tag.p.1@text",
      "kind": "class.con_top@text ##.*阁\\s>\\s|>.*",
      "lastChapter": "id.info@tag.p.3@title",
      "name": "id.info@tag.h1@text",
      "wordCount": "id.info@tag.p.2@text ##最后更新："
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tbody@tag.tr!0",
      "bookUrl": "class.even.0@tag.a@href",
      "coverUrl": "class.even.0@tag.a@href##.+\\D((\\d+)\\d{3})\\D##https://www.xbiquge.la/files/article/image/$2/$1/$1s.jpg###",
      "lastChapter": "class.odd.0@tag.a@text",
      "name": "class.even.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}",
    "weight": 52
  },
  {
    "bookSourceComment": "\"error:Unabletoresolvehost\"www.xbiquge.la\":Noaddressassociatedwithhostname\n\"",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁②",
    "bookSourceType": 0,
    "bookSourceUrl": "www.xbiquge.la#onede",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 482,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "玄幻小说::http://www.xbiquge.la/fenlei/1_{{page}}.html\n修真小说::http://www.xbiquge.la/fenlei/2_{{page}}.html\n都市小说::http://www.xbiquge.la/fenlei/3_{{page}}.html\n穿越小说::http://www.xbiquge.la/fenlei/4_{{page}}.html\n网游小说::http://www.xbiquge.la/fenlei/5_{{page}}.html\n科幻小说::http://www.xbiquge.la/fenlei/6_{{page}}.html",
    "header": "",
    "lastUpdateTime": 1721733000555,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 647,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作者：",
      "canReName": "",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "init": "",
      "intro": "id.intro@tag.p.1@text",
      "kind": "",
      "lastChapter": "id.info@tag.p.3@title",
      "name": "id.info@tag.h1.0@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "imageStyle": "0",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "tag.span.2@text",
      "bookList": "class.l@tag.ul@tag.li",
      "bookUrl": "tag.span.0@tag.a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "tag.span.1@tag.a@text",
      "name": "tag.span.0@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tbody@tag.tr!0",
      "bookUrl": "class.even.0@tag.a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "class.odd.0@tag.a@text",
      "name": "class.even.0@tag.a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "http://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "新笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "www.xbiquge.la",
    "customButton": false,
    "customOrder": 483,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::http://www.xbiquge.la/fenlei/1_{{page}}.html\n修真小说::http://www.xbiquge.la/fenlei/2_{{page}}.html\n都市小说::http://www.xbiquge.la/fenlei/3_{{page}}.html\n穿越小说::http://www.xbiquge.la/fenlei/4_{{page}}.html\n网游小说::http://www.xbiquge.la/fenlei/5_{{page}}.html\n科幻小说::http://www.xbiquge.la/fenlei/6_{{page}}.html",
    "lastUpdateTime": 1721744795875,
    "respondTime": 322,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@tag.p.1@text",
      "lastChapter": "id.info@tag.p.3@title",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "tag.span.2@text",
      "bookList": "class.l@tag.ul@tag.li",
      "bookUrl": "tag.span.0@tag.a@href",
      "lastChapter": "tag.span.1@tag.a@text",
      "name": "tag.span.0@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tbody@tag.tr!0",
      "bookUrl": "class.even.0@tag.a@href",
      "lastChapter": "class.odd.0@tag.a@text",
      "name": "class.even.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "haxc",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱看书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://cxb-pro.cread.com已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 484,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"——————出版频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"文学小说\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"经典名著\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"经管励志\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"生活休闲\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"婚姻家庭\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科普教育\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"纪实传记\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3700&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"亲子育儿\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3800&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"工具百科\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=3900&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"——————男生频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"都市小说\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"东方玄幻\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠仙侠\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"悬疑惊悚\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1800&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"架空历史\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"网游竞技\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1700&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻未来\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"西方玄幻\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=1300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"——————女生频道——————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"古代言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2100&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"幻想言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2200&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市言情\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2300&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"总裁豪门\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2400&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"青春校园\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2500&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"唯美同人\",\"url\":\"https://cxb-pro.cread.com/cx/new/catelistnew?uid=110496550&cnid=10005&version=7.6.0&flid=2600&thirdCateId=0&sortType=1&bookStatus=0&pageSize=20&curpage={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\r\n\"uid\":\"110496550\",\r\n\"cnid\":\"10005\",\r\n\"version\":\"7.6.0\",\r\n\"packname\":\"com.mianfeizs.book\",\r\n\"oscode\":\"30\",\r\n\"vcode\":\"134\",\r\n\"channelId\":\"10005\",\r\n\"platform\":\"android\",\r\n\"appname\":\"mfzs\"\n}",
    "lastUpdateTime": 1743588647744,
    "respondTime": 2525,
    "ruleBookInfo": {
      "author": "$..bookVo.authorName",
      "canReName": "",
      "coverUrl": "",
      "intro": "$..bookVo.introduction",
      "lastChapter": "$..bookVo.lastUpdateChapterName",
      "name": "$..bookVo.bookName@put:{bookid:$..bookVo.bookId}",
      "tocUrl": "https://cxb-pro.cread.com/cx/itf/getvolume?bookId={{$..bookVo.bookId}}"
    },
    "ruleContent": {
      "content": "$..content"
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$.dataList",
      "bookUrl": "https://readbook-service-freebook.cread.com/cx/bookDetailYS?bookid={{$.bookid}}",
      "coverUrl": "$.cover",
      "intro": "$.intro",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.newBookName",
      "wordCount": "$.wordCount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.list",
      "bookUrl": "https://readbook-service-freebook.cread.com/cx/bookDetailYS?bookid={{$.id}}",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.name",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": "$..bookChapters[*]",
      "chapterName": "$.name",
      "chapterUrl": "https://cxb-pro.cread.com:443/cx/itf/chapterRead?bookId=@get:{bookid}&chapterId={{$.id}}&full=0",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": "$.updateDate@js:java.timeFormat(result)"
    },
    "searchUrl": "https://cxb-pro.cread.com/cx/searchbooks,{\n\"charset\": \"\",\n\"method\": \"POST\",\n\"body\": \"keyword={{key}}&pageNo={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "2025.1.8\nby墨殇",
    "bookSourceGroup": "免费",
    "bookSourceName": "📃书坊文学网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.sfwx.com/",
    "bookUrlPattern": "http://www.sfwx.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 485,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"首页\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1.00}},{\"title\":\"玄幻\",\"url\":\"/list1/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"/list2/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"/list3/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史\",\"url\":\"/list4/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游\",\"url\":\"/list5/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"/list6/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情\",\"url\":\"/list7/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他\",\"url\":\"/list8/<,{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"排行\",\"url\":\"/top/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1.00}},{\"title\":\"总榜\",\"url\":\"/top/<,all_0_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月榜\",\"url\":\"/top/<,month_0_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周榜\",\"url\":\"/top/<,week_0_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本\",\"url\":\"/full/<,0_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1736333291703,
    "respondTime": 5094,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nw:\".caption-bookinfo span.1@text\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"img@src\",\nt:\"text.全部章节@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".font_max@html",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##\\s第\\(\\d+/\\d+\\)页|第\\(1/\\d+\\)页"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": ".col-12 dl",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": ".book_other[1:2]@text##状态|更新时间|：",
      "lastChapter": ".book_other.-1@text##最新章节：",
      "name": "h3@text##\\[\\w+\\]"
    },
    "ruleToc": {
      "chapterList": ".book_list2 ul li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-item@a@href"
    },
    "searchUrl": "/search.php?q={{key}}<,&p={{page}}>",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "免费",
    "bookSourceName": "当书网",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.downbook.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 486,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::https://www.downbook.cc/TXT/list4_{{page}}.html\n武侠仙侠::https://www.downbookw.cc/TXT/list5_{{page}}.html\n都市重生::https://www.downbookw.cc/TXT/list6_{{page}}.html\n历史军事::https://www.downbookw.cc/TXT/list7_{{page}}.html\n恐怖推理::https://www.downbookw.cc/TXT/list8_{{page}}.html\n科幻网游::https://www.downbookw.cc/TXT/list9_{{page}}.html\n都市言情::https://www.downbookw.cc/TXT/list10_{{page}}.html\n古代言情::https://www.downbookw.cc/TXT/list11_{{page}}.html\n穿越重生::https://www.downbookw.com/TXT/list12_{{page}}.html\n玄幻仙侠::https://www.downbook.cc/TXT/list13_{{page}}.html\n青春同人::https://www.downbookw.cc/TXT/list14_{{page}}.html\n网游科幻::https://www.downbookw.cc/TXT/list15_{{page}}.html\n现代耽美::https://www.downbookw.cc/TXT/list27_{{page}}.html\n古代架空::https://www.downbookw.cc/TXT/list28_{{page}}.html\n重生穿越::https://www.downbookw.cc/TXT/list29_{{page}}.html\n玄幻科幻::https://www.downbookw.cc/TXT/list30_{{page}}.html\n BL同人 ::https://www.downbookw.cc/TXT/list31_{{page}}.html\n GL百合 ::https://www.downbook.cc/TXT/list32_{{page}}.html",
    "lastUpdateTime": 1682080286729,
    "loginUrl": "",
    "respondTime": 180891,
    "ruleBookInfo": {
      "author": "##作者：</b>([^<]+)##$1###",
      "coverUrl": ".cl1 img@src",
      "init": "",
      "intro": "class.jj@html",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "tag.h1@text##.*作者：|大小.*",
      "bookList": "class.listl@tag.li",
      "bookUrl": "tag.h1@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text##.*收藏数：\\d+|.*积分：\\d+|下载阅读.*",
      "name": "tag.h1@tag.a@text##\\[.*\\]|完结\\+番外|金推"
    },
    "ruleSearch": {
      "author": "tag.a.0@href\n<js>\nurl=\"https://www.downbook.cc\"+result;\nurl2=\"https://m.downbook.cc\"+result;\na=java.ajax(url)\na.match(/友情提示_404/)?java.put(\"url\",url2):java.put(\"url\",url)\na.match(/友情提示_404/)?java.ajax(url2):a\n</js>\n##作者：(?:</b>)*([^<]+)<##$1###",
      "bookList": "//*[@class=\"sear\"]/li[position()<7]",
      "bookUrl": "@get:{url}",
      "coverUrl": "",
      "kind": "##类别：[^>]+>(.+?)</a>.*?(大小[^&]+)##$1,$2###",
      "lastChapter": "em@text",
      "name": "tag.a.0@text##金推|完结|\\+番外|\\[.*\\]|\\s"
    },
    "ruleToc": {
      "chapterList": "",
      "chapterName": "",
      "chapterUrl": ""
    },
    "searchUrl": "https://www.downbook.cc/search.asp?word={{key}}&m=2&ChannelID=0,{\n  \"charset\": \"gb2312\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "咚漫",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.dongmanmanhua.cn",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 487,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "更新::https://m.dongmanmanhua.cn/dailySchedule\n分类::https://m.dongmanmanhua.cn/genre\n周六::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#SATURDAY\r\n周日::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#SUNDAY\r\n完结::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#COMPLETE\r\n恋爱::https://m.dongmanmanhua.cn/genre{,/error.html}#LOVE\r\n少年::https://m.dongmanmanhua.cn/genre{,/error.html}#BOY\r\n古风::https://m.dongmanmanhua.cn/genre{,/error.html}#ANCIENTCHINESE\r\n奇幻::https://m.dongmanmanhua.cn/genre{,/error.html}#FANTASY\r\n搞笑::https://m.dongmanmanhua.cn/genre{,/error.html}#COMEDY\r\n校园::https://m.dongmanmanhua.cn/genre{,/error.html}#CAMPUS\r\n都市::https://m.dongmanmanhua.cn/genre{,/error.html}#METROPOLIS\r\n治愈::https://m.dongmanmanhua.cn/genre{,/error.html}#HEALING\r\n悬疑::https://m.dongmanmanhua.cn/genre{,/error.html}#SUSPENSE\r\n励志::https://m.dongmanmanhua.cn/genre{,/error.html}#INSPIRATIONAL\r\n影视化::https://m.dongmanmanhua.cn/genre{,/error.html}#FILMADAPTATION\r\n完结::https://m.dongmanmanhua.cn/genre{,/error.html}#TERMINATION",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.0.0; MIX 2 Build/OPR1.170623.027) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 YaBrowser/18.9.1.2199.00 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1733130054183,
    "loginUrl": "",
    "respondTime": 4843,
    "ruleBookInfo": {
      "author": "class.author.0@text",
      "init": "",
      "intro": "class.summary@text",
      "kind": "class.genre@text",
      "lastChapter": "id._episodeList@tag.span.0@text",
      "name": "class.subj.0@text"
    },
    "ruleContent": {
      "content": "@js:\neval(result.match(/(var imageList = \\[[\\s\\S]+?\\])/)[1]);\nhtml='';\nheaders={\"headers\": {\"Referer\":baseUrl}}\nfor(i in imageList){\nhtml+='<img src=\"'+imageList[i].url+','+JSON.stringify(headers)+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "writingAuthorName",
      "bookList": "class.daily_list@tag.li||$.titleList",
      "bookUrl": "tag.a@href||https://m.dongmanmanhua.cn/{$.genreNew.gnTitle}/{$.titleGroupName}/list?title_no={$.titleNo}",
      "coverUrl": "tag.img@src||https://cdn.dongmanmanhua.cn{$.thumbnailMobile}@js:header={\"Referer\":baseUrl}\nheaders={\"headers\":JSON.stringify(header)}\nresult=result+','+JSON.stringify(headers)",
      "kind": "class.genre@text",
      "name": "class.subj@text||$.title"
    },
    "ruleToc": {
      "chapterList": "id._episodeList@tag.li",
      "chapterName": "tag.span.0@text",
      "chapterUrl": "a@data-href",
      "isVolume": ""
    },
    "searchUrl": "https://m.dongmanmanhua.cn/searchResult,{\n  \"headers\": \"{Content-Type: application/x-www-form-urlencoded}\",\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&searchType=WEBTOON&start=1\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 总裁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://mobile.zongcai666.com/",
    "customButton": false,
    "customOrder": 488,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1745854892880,
    "respondTime": 4690,
    "ruleBookInfo": {
      "author": "class.BGsectionOne-top-right@class.author@span@a@text",
      "intro": "class.BGsectionTwo-bottom@text",
      "kind": "class.BGsectionOne-top-right@class.category@span.0@a@text",
      "lastChapter": "class.BGsectionOne-top-right@class.newestChapter@span@text",
      "name": "class.BGsectionOne-top-right@class.title@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": "class.SHsectionThree-middle@p",
      "bookUrl": "a.1@href",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".BCsectionTwo-top-chapter",
      "chapterName": "class.BCsectionTwo-top-chapter@a@text",
      "chapterUrl": "class.BCsectionTwo-top-chapter@a@href##$##,{'webView':true}",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://mobile.zongcai666.com/search/{{key}}/",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "唔唔小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.changduzw.com未月十八repairwy-",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 489,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734840538464,
    "loginUrl": "",
    "respondTime": 837,
    "ruleBookInfo": {
      "author": "class.status@tag.p.1@text",
      "coverUrl": "class.imgbox@tag.img@src",
      "intro": "class.con@tag.p@text",
      "kind": "class.status@tag.a.0@text",
      "lastChapter": "class.red.1@text",
      "name": "class.status@tag.h1@text",
      "tocUrl": "text.点击阅读@href",
      "wordCount": "class.status@tag.p.-3@text##总字数."
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.grid@tag.td.2@text",
      "bookList": "class.odd",
      "bookUrl": "class.odd.0@tag.a.0@href",
      "kind": "class.even@text",
      "lastChapter": "",
      "name": "class.odd@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.mulu_list@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.changduzw.com/modules/article/search.php,{\n'charset': 'utf-8',\n'method': 'POST',\n'body': 'searchkey={{key}}&type=submit'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "梯子",
    "bookSourceName": "笔仙阁子（魔法）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.bixiange.top",
    "customButton": false,
    "customOrder": 490,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市言情\",\"url\":\"/dsyq/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠修真\",\"url\":\"/wxxz/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻奇幻\",\"url\":\"/xhqh/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越架空\",\"url\":\"/cyjk/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻竞技\",\"url\":\"/khjj/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"鬼话悬疑\",\"url\":\"/ghxy/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军事历史\",\"url\":\"/jsls/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"官场商战\",\"url\":\"/guanchang/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"乡土风情\",\"url\":\"/xtfq/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美小说\",\"url\":\"/dmtr/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人小说\",\"url\":\"/trxs/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精品小说\",\"url\":\"/jqxs/index<,_{{page}}>.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1741627922545,
    "respondTime": 2212,
    "ruleBookInfo": {
      "author": ".descTip@p.1@span@text##作者：",
      "coverUrl": ".info-left@img.0@src",
      "init": "",
      "intro": ".descInfo@p.0@html",
      "kind": ".descTip@span.0:3@text##.*：",
      "lastChapter": ".catalog@.clearfix@li.-1@a@text",
      "name": ".info-right@h1@text",
      "wordCount": ".descTip@p.0@span.1@text##.*："
    },
    "ruleContent": {
      "content": ".content@html"
    },
    "ruleExplore": {
      "author": ".tips@span.0@text",
      "bookList": "[class=\"clearfix\"]@li",
      "bookUrl": "strong a@href",
      "coverUrl": "img@src",
      "intro": ".descript a@html",
      "kind": ".tips@span!0@text",
      "name": "img@alt"
    },
    "ruleSearch": {
      "bookList": ".clearfix li",
      "bookUrl": ".cover a@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": ".descript a@html",
      "kind": ".tips span.1@text##大小：|时间：",
      "name": "img@alt",
      "wordCount": ".tips span.0@text##大小：|时间："
    },
    "ruleToc": {
      "chapterList": "[class=\"clearfix\"]@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/e/search/indexpage.php,{\n  \"body\": \"keyboard={{key}}&show=title&classid=0\",\n  \"charset\": \"GB2312\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "未月十八发现",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🌐快看漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.kuaikanmanhua.com已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 491,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✿　　　　　　　榜    单　　　　　　　✿\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"国漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=9\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=10\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=11\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=6\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=5\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=7\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=8\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新作榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=2\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=12\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"口碑榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=3\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"畅销榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=4\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　状    态　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"推荐\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最火热\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=2&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新上架\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=3&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"连载中\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=1&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"已完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=2&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►免费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=1&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►付费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=2&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►抢先看\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=3&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　分    类　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"恋爱\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=20&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强剧情\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=82&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古风\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=46&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=47&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=22&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"唯美\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=58&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=67&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=57&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=60&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大女主\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=77&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=40&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=80&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌系\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=62&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=32&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=63&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞笑\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=71&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=48&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"正能量\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=54&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总裁\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=52&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"投稿\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=76&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 SearchCraft/3.6.5 (Baidu; P1 9.0)\"\n}",
    "lastUpdateTime": 1728716016883,
    "loginUrl": "",
    "respondTime": 3603,
    "ruleBookInfo": {
      "author": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].topicInfo.user.nickname",
      "coverUrl": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.vertical_image_url",
      "intro": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.description",
      "kind": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.tags",
      "lastChapter": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.update_status.replace(/^.*?已更/,\"\")",
      "name": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.title"
    },
    "ruleContent": {
      "content": "class.ComicPics@img@html##data-src##src",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author_name",
      "bookList": "$.data.topics||$.data.cards||$.hits.topicMessageList||$.hits",
      "bookUrl": "$.id||$.topic_id@js:\"http://m.kuaikanmanhua.com/mobile/\"+result+\"/list/\"",
      "coverUrl": "$.vertical_image_url||$.image_url||$.cover_image_info.images[*].url",
      "intro": "description",
      "kind": "$.category||$.recommend_tag[1].title",
      "lastChapter": "$.latest_comic_title",
      "name": "$.title.text||$.title"
    },
    "ruleToc": {
      "chapterList": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].comicList[*]",
      "chapterName": "$.title",
      "chapterUrl": "$.id\n@js:\"http://m.kuaikanmanhua.com/mobile/comics/\"+result",
      "isVip": "$.is_free\n@js:result=='true'?false:true",
      "updateTime": "@js:java.timeFormat({{$.updated_at}})"
    },
    "searchUrl": "http://m.kuaikanmanhua.com/search/mini/topic/title_and_author?page={{page}}&size=24&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "💡与💍晋江除了发现不一样，其他的都一样\n💡默认不启用该源的搜索，可用发现\nby 酷安 @viviyaaa    分享注明出处",
    "bookSourceGroup": "正版",
    "bookSourceName": "晋江",
    "bookSourceType": 0,
    "bookSourceUrl": "晋江纯爱/无cp标签",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 492,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{'title':'纯爱排行榜','url':'','style':{layout_flexGrow:1,layout_flexBasisPercent:1}},\n{'title':'作品积分','url':'http://www.jjwxc.net/topten.php?orderstr=7&t=1','style':{layout_flexGrow:1}},\n{'title':'长生殿','url':'http://www.jjwxc.net/topten.php?orderstr=9&t=1','style':{layout_flexGrow:1}},\n{'title':'驻站作者','url':'http://www.jjwxc.net/topten.php?orderstr=19&t=1','style':{layout_flexGrow:1}},\n{'title':'完结高分','url':'http://www.jjwxc.net/topten.php?orderstr=20&t=1','style':{layout_flexGrow:1}},\n{'title':'半年榜','url':'http://www.jjwxc.net/topten.php?orderstr=6&t=1','style':{layout_flexGrow:1}},\n{'title':'栽培月榜','url':'http://www.jjwxc.net/topten.php?orderstr=18&t=1','style':{layout_flexGrow:1}},\n{'title':'完结金榜','url':'http://www.jjwxc.net/topten.php?orderstr=7&t=1','style':{layout_flexGrow:1}},\n{'title':'季度榜','url':'http://www.jjwxc.net/topten.php?orderstr=4&t=1','style':{layout_flexGrow:1}},\n{'title':'勤奋指数','url':'http://www.jjwxc.net/topten.php?orderstr=15&t=1','style':{layout_flexGrow:1}},\n{'title':'霸王票榜','url':'http://www.jjwxc.net/topten.php?orderstr=13&t=1','style':{layout_flexGrow:1}},\n{'title':'月度榜','url':'http://www.jjwxc.net/topten.php?orderstr=5&t=1','style':{layout_flexGrow:1}},\n{'title':'新晋作者','url':'http://www.jjwxc.net/topten.php?orderstr=3&t=1','style':{layout_flexGrow:1}},\n\n{'title':'分类排行','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&null=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1,layout_flexBasisPercent:1}},\n{'title':'近代现代','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd1=1&lx0=0&fg0=0&collectiontypes=ors&null=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1,layout_flexBasisPercent:0.3}},\n{'title':'古色古香','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd2=2&lx0=0&fg0=0&collectiontypes=ors&null=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1,layout_flexBasisPercent:0.3}},\n{'title':'架空历史','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd3=4&lx0=0&fg0=0&collectiontypes=ors&null=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1,layout_flexBasisPercent:0.3}},\n{'title':'幻想未来','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd4=5&lx0=0&fg0=0&collectiontypes=ors&null=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1,layout_flexBasisPercent:0.3}},\n\n{'title':'纯爱标签','url':'','style':{layout_flexGrow:1,layout_flexBasisPercent:1}},\n{'title':'快穿','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq125=125&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'穿书','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq134=134&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'甜文','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq124=124&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'重生','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq75=75&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'爽文','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq137=137&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'系统','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq122=122&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'强强','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq19=19&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'星际','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq135=135&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'生子','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq20=20&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'校园','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq185=185&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'末世','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq81=81&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'女配','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq96=96&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'美食','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq99=99&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'异能','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq72=72&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'玄学','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq206=206&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'打脸','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq138=138&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'直播','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq142=142&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'年下','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq21=21&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'武侠','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq11=11&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'逆袭','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq184=184&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'西幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq143=143&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'宫斗','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq74=74&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'婚恋','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq78=78&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'竞技','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq70=70&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'科举','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq174=174&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'萌宠','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq205=205&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'恐怖','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq29=29&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'机甲','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq97=97&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'科幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq28=28&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'婆媳','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq80=80&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'奇谭','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq197=197&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'爱情','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx1=1&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'武侠','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx2=2&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'奇幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx3=3&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'仙侠','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx4=4&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'游戏','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx5=5&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'传奇','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx6=6&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'科幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx7=7&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'惊悚','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx9=9&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'悬疑','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx10=10&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'剧情','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx16=16&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'商战','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq123=123&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'传奇','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq89=89&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'网配','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq84=84&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'职场','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq98=98&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'经商','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq180=180&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'成长','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq183=183&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'宅斗','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq73=73&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'网红','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq141=141&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'科幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq28=28&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'洪荒','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq67=67&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'血族','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq69=69&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'娱乐圈','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq64=64&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'种田文','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq66=66&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'年代文','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq173=173&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'无限流','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq83=83&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'古穿今','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq65=65&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'升级流','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq139=139&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'大冒险','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq198=198&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'轻小说','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx12=17&fg0=0&collectiontypes=ors&bq0=0&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'姐弟恋','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq186=186&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n\n{'title':'穿越时空','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq60=60&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'仙侠修真','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq68=68&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'豪门世家','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq33=33&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'随身空间','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq56=56&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'情有独钟','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq39=39&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'灵异神怪','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq26=26&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'破镜重圆','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq47=47&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'虐恋情深','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq42=42&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'青梅竹马','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq62=62&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'宫廷侯爵','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq32=32&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'异世大陆','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq57=57&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'悬疑推理','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq128=128&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'天作之合','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq52=52&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'天之骄子','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq54=54&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'游戏网游','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq92=92&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'都市情缘','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq30=30&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'性别转换','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq24=24&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'现代架空','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq126=126&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'未来架空','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq127=127&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'欢喜冤家','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq41=41&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'前世今生','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq49=49&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'幻想空间','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq25=25&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'复仇虐渣','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq145=145&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'东方玄幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq144=144&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'朝堂之上','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq178=178&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'奇幻魔幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq27=27&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'励志人生','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq121=121&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'民国旧影','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq61=61&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'布衣生活','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq38=38&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'业界精英','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq101=101&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'女扮男装','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq136=136&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'市井生活','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq175=175&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'古代幻想','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq189=189&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'平步青云','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq55=55&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'相爱相杀','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq103=103&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'因缘邂逅','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq45=45&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'灵魂转换','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq23=23&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'魔法幻情','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq191=191&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'江湖恩怨','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq35=35&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'花季雨季','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq31=31&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'制服情缘','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq85=85&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'都市异闻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq181=181&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'古典名著','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq130=130&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'近水楼台','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq46=46&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'亡灵异族','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq192=192&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'乔装改扮','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq51=51&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'小门小户','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq177=177&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'时代奇缘','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq22=22&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'史诗奇幻','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq199=199&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'阴差阳错','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq53=53&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'恋爱合约','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq48=48&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'异闻传说','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq196=196&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'三教九流','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq36=36&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'骑士与剑','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq63=63&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'七年之痒','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq79=79&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'异想天开','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq190=190&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'乡村爱情','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq58=58&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'爱情战争','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq50=50&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'时尚流行','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq182=182&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}},\n{'title':'时代新风','url':'http://www.jjwxc.net/bookbase.php?fw0=0&fbsj=0&ycx0=0&xx2=2&mainview0=0&sd0=0&lx0=0&fg0=0&collectiontypes=ors&bq210=210&searchkeywords=&page={{page}}','style':{layout_flexGrow:1}}]",
    "lastUpdateTime": 1716227606406,
    "loginUrl": "",
    "respondTime": 2426,
    "ruleBookInfo": {
      "author": "$.authorName",
      "coverUrl": "$.novelCover",
      "intro": "@js:if(/完结/.test(book.kind))book.canUpdate=false;\na=JSON.parse(java.ajax('http://app.jjwxc.org/androidapi/getnovelOtherInfo?novelId='+java.get('id')+'&type=novelbasicinfo&versionCode=148'));\nb=a.novelLeave;\nc=JSON.parse(result);\nz=s=>s.length>3?s:'';\n['',b.leaveDateBack,b.leaveContent,b.leaveDate,'🔖 '+c.novelIntroShort,'​','标签：'+c.novelTags,z(c.protagonist),z(c.costar),z(c.other),'风格：'+c.novelStyle+'　　视角：'+c.mainview,'收藏：'+a.novelbefavoritedcount+'　评论：'+c.comment_count+'　评分：'+c.novelReviewScore,'┄┄',c.novelIntro].join('\\n').replace('立意:','┄┄\\n立意：').replace('评分：\\n','\\n').replace('🔖 \\n','')",
      "kind": "{{$.novelClass}},{{java.get('ns')==1?'连载':'完结'}}",
      "lastChapter": "<js>\n\ntry{last=JSON.parse(java.ajax('http://android.jjwxc.net/androidapi/chapterList?novelId='+baseUrl.match(/(\\d+)/)[1])).chapterlist;\n$=last[last.length-1];\nvip=$.isvip?'💰':'';\nchapterid=$.chapterid;\nchaptername=$.chaptername;\ndate=$.chapterdate;\nvip+chapterid+'、'+chaptername+' '+date}\ncatch(err){\njava.log(err)\nresult=\"请刷新\"\n}\n</js>",
      "name": "$.novelName@put:{id:$.novelId,ns:$.novelStep,nw:'$.novelSize##\\\\D'}",
      "tocUrl": "http://app-cdn.jjwxc.net/androidapi/chapterList?novelId={{baseUrl.match(/novelId=(\\d+)/)[1]}}&more=0&whole=1",
      "wordCount": "{{java.get('nw')}}"
    },
    "ruleContent": {
      "content": "<js>\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n     Packages.java.lang,\n    Packages.javax.crypto.spec,\n    Packages.javax.crypto,\n    Packages.java.util \n);\nwith(javaImport){\n    let IV_PARAMETER = String(\"1ae2c94b\");\n    let ALGORITHM = \"DES\"; \n    let CIPHER_ALGORITHM = \"DES/CBC/PKCS5Padding\";\n    let CHARSET = \"utf-8\";\n    let password=String(\"KK!%G3JdCHJxpAF3%Vg9pN\");\n\n\nfunction decode(data){\nlet dks = new DESKeySpec(String(password).getBytes());\nlet keyFactory = SecretKeyFactory.getInstance(\"DES\");\nlet secretKey = keyFactory.generateSecret(dks);\nlet cipher = Cipher.getInstance(CIPHER_ALGORITHM);\nlet iv = new IvParameterSpec(IV_PARAMETER.getBytes(CHARSET));\ncipher.init(Cipher.DECRYPT_MODE, secretKey, iv);\nreturn new String(cipher.doFinal(Base64.getDecoder().decode(String(data).getBytes(CHARSET))), CHARSET);\n\n}\n}\n//DES解密结束\n\ncontent=java.getElement(\"$.content\");\nsaybody=java.getString(\"$.sayBody\");\nsay=saybody!=\"\"?\"\\n作者有话要说：\\n\"+saybody:\"\";\nif(baseUrl.match(/token/)){\nresult=String(decode(content)+say);\n}else{result=content+say}\n</js>",
      "imageStyle": "TEXT",
      "replaceRegex": "##【普通用户、初级.*用户所发评论将在审核通过后显示！】|【为营造更好的评论环境，近期网站要求发评须进行实名认证，未实名用户评论暂时仅在对应作者后台及发评用户后台可见.*\n|(感谢灌溉)[\\w\\W]+(.).*感谢(灌|投|支持).*|感谢(在|为).*小天使.*|.*(扔|投|砸|灌)了.*时间.*|.*\\\\d瓶.*|.*(扔|投|砸|灌|谢).*(手榴弹|营养液|地雷|浅水炸弹|深水炸弹|深水鱼雷|火箭炮|投雷|霸王票).*|非常感谢.*努力的.*"
    },
    "ruleExplore": {
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "a[href~=author]@text",
      "bookList": ".cytable tr,tr[bgcolor~=eefaee]||ul li:has(a[href~=book2])",
      "bookUrl": "##(?:/book2/|novelid=)(\\d+)##http://app-cdn.jjwxc.net/androidapi/novelbasicinfo?novelId=$1###",
      "coverUrl": "",
      "intro": "a@rel||a@title##^简介：|<br>|\\n.+",
      "kind": "td:has(a)~td:lt(7)!0:2:4:5:6@text||span,font@text##\\[删\\]",
      "name": "a[href~=book2]@text||tag.a.1@text",
      "wordCount": "##\"right\">([^<&]*)##$1###"
    },
    "ruleToc": {
      "chapterList": "$.chapterlist",
      "chapterName": "<js>\n$=result;\ntitle=$.chaptername;\ntitle=String(title).replace(/^\\s+/,'');\nintro=$.chapterintro;\njava.put(\"intro\",intro);\nvip=$.isvip!='0';\nlock=$.islock!='0';\ntype=$.chaptertype=='1';\nnum=!type?'第{{$.chapterid}}章 ':'';\nif(title.match(/[一二三四五六七八九十百千万\\d]+\\s*章|^\\d+[、\\.\\s]|chapter\\s*\\d+/i)){\nnum=''\n}else{num=num}\nl=lock?'[锁]':'';\nresult=num+title+l;\n\n//不显示卷名\nresult=!type?result:'';\n</js>",
      "chapterUrl": "@js:\n$=result;\ncookie=java.getCookie(\"http://m.jjwxc.net\",\"sid\");\nchapterid=$.chapterid;\ncookie=java.get('cookie');\nvip=$.isvip!='0';\ntype=$.chaptertype=='1';\nif(!vip){\nif(!type){\nresult='https://app-cdn.jjwxc.net/androidapi/chapterContent?novelId='+baseUrl.match(/novelId=(\\d+)/)[1]+'&chapterId='+chapterid\n}else{\nchaptername=$.chaptername;\nresult='http://www.baidu.com?wd='+result+book.name+'/'+chaptername}\n}else{result=\"http://app.jjwxc.org/androidapi/chapterContent?novelId=\"+baseUrl.match(/novelId=(\\d+)/)[1]+'&versionCode=191&token='+cookie+'&chapterId='+chapterid}",
      "isVip": "",
      "updateTime": "{{$.isvip}}🍴{{$.chapterdate}}   {{$.chaptersize}}字   {{$.chapterintro##^\\s*}}##^🍴|^0字  |0000-00-00.*@js:result.replace(/2🍴/g,'💰').replace(/0🍴/g,'　').replace(/💰$/g,'').replace(/(\\s\\d+:\\d+):\\d+/g,'$1')"
    },
    "searchUrl": "http://www.jjwxc.net/bookbase.php?searchkeywords={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "类型: 文本 在线阅读\n切换: 文件 可以下载",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱久小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.aijjxs.com",
    "bookUrlPattern": "https?://m.aijjxs.com/txt/\\d+.html",
    "customButton": false,
    "customOrder": 493,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "穿越::/txt/chuanyue/<,index_{{page}}.html>\n重生::/txt/chongshengxiaoshuo/<,index_{{page}}.html>\n架空::/txt/lsjs/<,index_{{page}}.html>\n总裁::/txt/qinggan/<,index_{{page}}.html>\n现言::/txt/young/<,index_{{page}}.html>\n修仙::/txt/wuxia/<,index_{{page}}.html>\n纯美::/txt/dmtr/<,index_{{page}}.html>\n玄幻::/txt/xuanhuan/<,index_{{page}}.html>\n都市::/txt/dushi/<,index_{{page}}.html>\n惊悚::/txt/kongbu/<,index_{{page}}.html>\n女生::/e/action/toplist.php?page={{page-1}}&class=1&line=10&tempid=6&ph=1&andor=and&orderby=2&myorder=0\n男生::/e/action/toplist.php?page={{page-1}}&class=2&line=10&tempid=6&ph=1&andor=and&orderby=2&myorder=0",
    "header": "@js:\nJSON.stringify({\n\t\"referer\": source.key,\n\"x-requested-with\": \"mark.via\",\n\"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\n\"user-agent\": \"Mozilla/5.0 (Linux; Android 10; PACM00 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.79 Mobile Safari/537.36\"})",
    "lastUpdateTime": 1720346920307,
    "respondTime": 6663,
    "ruleBookInfo": {
      "author": ".jie@span.2@a@text",
      "coverUrl": ".pic@img@src##^##https:",
      "downloadUrls": "text.下载TXT电子书@href\n<js>\nurl=book.origin+result[0];\njava.ajax(url);\n</js>\ntext.txt电子书下载地址@href\n##$##,{\"type\": \"txt\"}",
      "intro": ".novelinfo@text",
      "kind": ".jie@span.1:3:4:5@text\n##类别：|大小：|进度：|时间：",
      "name": ".jie@h1@text",
      "tocUrl": ".read@a@href##$##,{'webView': true}"
    },
    "ruleContent": {
      "content": "#Content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".list_a",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "span.-2@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "option",
      "chapterName": "text",
      "chapterUrl": "value"
    },
    "searchUrl": "/e/search/index.php,{\n  \"body\": \"show=writer,title&keyboard={{key}}&Submit22=搜索\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquge.casa",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 494,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"校园言情\",\n    \"url\": \"/xiaoyuan.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市言情\",\n    \"url\": \"/dushi.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"古代言情\",\n    \"url\": \"/gudai.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"罗曼史\",\n    \"url\": \"/luoman.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"耽美\",\n    \"url\": \"/danmei.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"百合\",\n    \"url\": \"/baihe.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"同人\",\n    \"url\": \"/tongren.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"奇幻玄幻\",\n    \"url\": \"/qihuan.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游竞技\",\n    \"url\": \"/wangyou.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻异能\",\n    \"url\": \"/kehuan.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"恐怖灵异\",\n    \"url\": \"/kongbu.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"惊悚推理\",\n    \"url\": \"/jingsong.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠仙侠\",\n    \"url\": \"/wuxia.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史军事\",\n    \"url\": \"/lishi.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"穿越重生\",\n    \"url\": \"/chuanyue.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"综合其它\",\n    \"url\": \"/qita.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.0.0; MI 5s Plus Build/OPR1.170623.032; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/71.0.3578.99 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1754708405013,
    "respondTime": 1908,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "@js:\nid=java.get(\"id\")\nif (/baidu\\.com/.test(baseUrl)) {\n    pre = baseUrl.replace(/baidu\\.com/, \"biquge.casa\");\n    rev = org.jsoup.Jsoup.parse(java.ajax(pre));\n    url = source.key + \"/\" + id +  rev.select('#linkPrev').attr('href');\n    java.setContent(result = java.ajax(url));\n} else if (/bing\\.com/.test(baseUrl)) {\n    nex = baseUrl.replace(/cn\\.bing\\.com/, \"www.biquge.casa\");\n    next = org.jsoup.Jsoup.parse(java.ajax(nex));\n    nexUrl = source.key + \"/\" + id +  next.select('#linkNext').attr('href');\n    java.setContent(result = java.ajax(nexUrl));\n  } else { result; }\nresult = java.getString('.readcontent@html');"
    },
    "ruleExplore": {
      "author": ".author.0@text##作者：",
      "bookList": ".bookbox",
      "bookUrl": "a@href",
      "coverUrl": "a.0@href##\\D((\\d+)\\d{3})##https://img.biquge.casa/image/$2/$1/$1s.jpg###",
      "intro": ".update@ownText",
      "kind": ".author.2@text",
      "lastChapter": ".cat@a.0@text",
      "name": "h4@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author.0@text##作者：",
      "bookList": ".bookbox",
      "bookUrl": "a.0@href",
      "checkKeyWord": "大理寺",
      "coverUrl": "a.0@href##\\D((\\d+)\\d{3})##https://img.biquge.casa/image/$2/$1/$1s.jpg###",
      "intro": ".update@ownText",
      "kind": ".author.1@text",
      "lastChapter": ".cat@a.0@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": "<js>\nbase = baseUrl;\nid = baseUrl.match(/(\\d+\\/)/)[1]\njava.put(\"id\",id)\nlis = java.getElements('#list-chapterAll@dd');\nvar list = [];\n\nfor (var i = 0; i < lis.length; i++) {\n     var href = lis[i].select('a').attr('href');\n     var text = lis[i].text();\n     if (href==0) {\n        if ( i < lis.length - 1 ) {\n            var url = \"https://www.baidu.com/\" + id + lis[i + 1].select('a').attr('href');         \n        } else {\n            var url = \"https://cn.bing.com/\" + id + lis[i - 1].select('a').attr('href');\n        }\n     } else { var url = base + href; }\n     java.log(lis[i].text()+\":\"+url);\n     list.push({\"text\": text, \"href\": url});\n}\n\nlist\n</js>",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&searchtype=all&submit=\",\n  \"method\": \"POST\",\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "华东看书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.dandanwx.com",
    "customButton": false,
    "customOrder": 495,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1754707482193,
    "respondTime": 11440,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": "{{@@[property=\"og:novel:latest_chapter_name\"]@content}}·{{@@[property=\"og:novel:update_time\"]@content##\\s.*}}",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": ".content@html##.*未完，请点.*|最新网址.*|{{chapter.title}}.*\\(第\\d+\\/\\d+页\\)",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list@li!0",
      "bookUrl": ".s2@a@href",
      "checkKeyWord": "我的",
      "kind": ".s1@text##\\[|\\]",
      "lastChapter": "{{@@.s3@text}}·{{@@.s5@text}}",
      "name": ".s2@a@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href##$##,{'webView': true}"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\nhttp://www.dandanwx.com/search.html?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "随心看吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.suixkan.com已校验",
    "customButton": false,
    "customOrder": 496,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721326317705,
    "respondTime": 825,
    "ruleBookInfo": {
      "lastChapter": "class.chapter-entrance@text",
      "tocUrl": "class.sumchapter@a@href"
    },
    "ruleContent": {
      "content": "class.con@html",
      "nextContentUrl": "",
      "replaceRegex": "##\\s*.*?本章.*?完.*\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".v-author@text",
      "bookList": "class.v-list-item",
      "bookUrl": "##=\"newWebView\\('([^']+)'##$1###",
      "coverUrl": "img@src",
      "intro": ".v-intro@text",
      "kind": "tag.div.-1@text",
      "lastChapter": "##=\"newWebView\\('([^']+)'##$1###\n<js>java.ajax('https://m.suixkan.com'+result)</js>\nclass.chapter-entrance@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog_ls@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.suixkan.com/s/1.html?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "轻小说",
    "bookSourceName": "SF轻小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.sfacg.com已校验",
    "customButton": false,
    "customOrder": 499,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "魔幻::https://api.sfacg.com/novels/21/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n玄幻::https://api.sfacg.com/novels/22/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n古风::https://api.sfacg.com/novels/23/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n科幻::https://api.sfacg.com/novels/24/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n校园::https://api.sfacg.com/novels/25/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n都市::https://api.sfacg.com/novels/26/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n游戏::https://api.sfacg.com/novels/27/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate\n悬疑::https://api.sfacg.com/novels/28/sysTags/novels?sort=latest&systagids=&isfree=both&isfinish=both&updatedays=-1&charcountbegin=0&charcountend=0&page={{page - 1}}&size=20&expand=typeName,tags,discount,discountExpireDate",
    "header": "{\n\"content-type\": \"application/json\",\n\"sf-minip-info\": \"minip_novel/1.0.70(android;10)/wxmp\",\n\"authorization\": \"Basic YW5kcm9pZHVzZXI6MWEjJDUxLXl0Njk7KkFjdkBxeHE=\"\n}",
    "lastUpdateTime": 1704418176279,
    "respondTime": 1756,
    "ruleBookInfo": {
      "author": "$.data.authorName",
      "coverUrl": "$.data.novelCover",
      "intro": "$.data.expand.intro",
      "kind": "$.data.typeName",
      "lastChapter": "$.data.expand.latestChapter.title",
      "name": "$.data.novelName",
      "tocUrl": "https://minipapi.sfacg.com/pas/mpapi/novels/{{$.data.novelId}}/dirs",
      "wordCount": "$.data.charCount"
    },
    "ruleContent": {
      "content": "$.data.expand.content",
      "imageStyle": "",
      "replaceRegex": "",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "$.authorName",
      "bookList": "$.data",
      "bookUrl": "https://minipapi.sfacg.com/pas/mpapi/novels/{{$.novelId}}?expand=latestchapter,chapterCount,typeName,intro,fav,ticket,pointCount,tags,sysTags,signlevel,discount,discountExpireDate,totalNeedFireMoney,originTotalNeedFireMoney",
      "coverUrl": "$.novelCover",
      "kind": "$.expand.typeName",
      "name": "$.novelName",
      "wordCount": "$.charCount"
    },
    "ruleSearch": {
      "author": "$.AuthorName",
      "bookList": "$.Novels",
      "bookUrl": "https://minipapi.sfacg.com/pas/mpapi/novels/{{$.NovelID}}?expand=latestchapter,chapterCount,typeName,intro,fav,ticket,pointCount,tags,sysTags,signlevel,discount,discountExpireDate,totalNeedFireMoney,originTotalNeedFireMoney",
      "coverUrl": "https://rs.sfacg.com/web/novel/images/NovelCover/Big/{{$.NovelCover}}",
      "kind": "$.TypeName",
      "name": "$.NovelName"
    },
    "ruleToc": {
      "chapterList": "$.data.volumeList[*].chapterList[*]",
      "chapterName": "$.title",
      "chapterUrl": "https://minipapi.sfacg.com/pas/mpapi/Chaps/{{$.chapId}}?expand=content,needFireMoney,originNeedFireMoney,tsukkomi&autoOrder=false",
      "isVip": "$.isVip",
      "updateTime": "$.updateTime"
    },
    "searchUrl": "https://m.sfacg.com/API/HTML5.ashx?op=search&keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "By暴风雪+乃星补加发现",
    "bookSourceGroup": "有声",
    "bookSourceName": "喜马拉雅",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.ximalaya.com已校验",
    "customButton": false,
    "customOrder": 500,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "❀                             广 播 剧                             ❀::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=\n 架 空 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=jiakong日韩::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci506\n 都 市 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=dushi\n 校 园 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xiaoyuan\n 武 侠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=wuxia\n 仙 侠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xianxia\n 奇 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=qihuan\n 玄 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuanhuan\n 科 幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=kehuan\n 悬 疑 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuanyi\n 推 理 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=tuili\n 历 史 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=lishi\n 职 场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=zhichang\n 同 人 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=tongrenwen\n 游 戏 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=youxi\n 爆 笑 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=baoxiao\n 脑 洞 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=naodong\n 日 漫 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=riman\n 萌 系 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=mengxi\n 恋 爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=lianai\n 纯 爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1367\n  玛 丽 苏  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=malisu\n 霸道总裁 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=badaozongcai\n 虚拟偶像 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=xuniouxiang\n 现代言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci546\n 古风言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci52\n 画风清奇 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=huafengqingqi\n 民间故事 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=minjiangushi\n  全 年 龄  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci54\n 有声漫画 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1357\n 会员专区 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1664\n 心动剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1660\n 国风剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1661\n 尖叫剧场 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1662\n月上新周播剧::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=guangbojv&subcategory=reci1198\n\n❀                             有 声 书                             ❀::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=\n\n 文 学 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=wenxue\n 生 活 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=shenghuo\n 教 材 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=jiaocai\n 经 典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=jingdian\n 童 书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=tongshu\n 成 长 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=lizhi\n 社 科 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=sheke\n 商 业 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=shangye\n外文 • 原版::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=yingwenyuanban\n期刊::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=qikanzazhi\n历史::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci234\n传记::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1692\n\n 网络小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1173\n 言情女生 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci231\n 悬疑推理 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci232\n 都市重生 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci235\n 历史纵横 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1195\n 仙侠幻想 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1196\n 豪门恋情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1530\n 古风言情 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1531\n 宫闱宅斗 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1532\n 王牌强档 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1264\n 有声漫画 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1351\n 出版小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1359\n 女生最爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci346\n 男生最爱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci348\n 免费精选 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1533\n 新品限免 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1477\n 会员上新 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1518\n 爆更小说 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1069\n\n QQ  阅读 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci22\n 读客图书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci23\n 果麦文化 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci24\n 中信书院 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci646\n 博集新媒 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci26\n 磨铁阅读 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci394\n  蓝 狮 子  ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci419\n 华章图书 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci650\n 文学名著 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1157\n 历史专区 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1158\n 国学经典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1159\n 历史经典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1370\n 三体科幻 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1697\n 重磅新品 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1698\n\n 听书指南 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1449\n大家都在听::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1521\n大家都在追::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1529\n大剧必听榜::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1051\n会员有声小说::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1055\n畅销书-限时免费::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=youshengshu&subcategory=reci1693\n\n❀                               音   乐                               ❀::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue\n\n 古 风 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=gufeng\n 流 行 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=liuxing\n 欧 美 ::https://www.ximalaya.com/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci507\n 古  典 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=mr8t41\n 动 漫 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=anime\n 老 歌 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci117\n 翻 唱 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci125\n轻音乐::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=qingyinyue\n 日 韩 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci506\n 催 眠 ::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=reci322\n影视原声::/revision/category/queryCategoryPageAlbums?meta=&sort=0&page={{page}}&perPage=30&category=yinyue&subcategory=yingshiyuansheng\n",
    "lastUpdateTime": 1721097339845,
    "respondTime": 2155,
    "ruleBookInfo": {
      "intro": "$.album.intro"
    },
    "ruleContent": {
      "content": "@js:baseUrl"
    },
    "ruleExplore": {
      "author": "anchorName",
      "bookList": "$..albums.*",
      "bookUrl": "link@js:\"http://mobile.ximalaya.com/mobile/others/ca/album/track/\" + result.split('/')[2]+'/true/1/200'",
      "coverUrl": "coverPath",
      "intro": "收听{$.playCount}  共{$.trackCount}章",
      "lastChapter": "",
      "name": "title",
      "wordCount": "@js:if({{$.isFinished}}==1){if({{$.isPaid}}){'已完结💰'}else{'已完结'}}else{if({{$.isPaid}}){'连载💰'}else{'连载'}}"
    },
    "ruleSearch": {
      "author": "$.nickname",
      "bookList": "$..docs.*",
      "bookUrl": "$.url@js:\"http://mobile.ximalaya.com/mobile/others/ca/album/track/\" + result.split('/')[2]+'/true/1/200'",
      "coverUrl": "$.cover_path",
      "intro": "$.intro",
      "kind": "$.category_title&&$.tags",
      "name": "$.title",
      "wordCount": "播放数{$.play}  共{$.tracks}集"
    },
    "ruleToc": {
      "chapterList": "$.tracks.list",
      "chapterName": "title",
      "chapterUrl": "playPathAacv224||playPathAacv164||playUrl64||playUrl32",
      "nextTocUrl": "@js:\nbaseUrl = String(baseUrl).split('1/200')[0];\nlist = [];\npage=JSON.parse(String(result)).tracks.maxPageId\nfor(var i = 2; i < 10; ++i){\nlist.push(String(baseUrl +i+\"/200\"));\n}\nlist"
    },
    "searchUrl": "https://www.ximalaya.com/revision/search?core=album&spellchecker=true&rows=20&condition=relation&device=iPhone&fq=&paidFilter=false&kw={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//来自关耳010225大神\n//需登录\n//源注释的内容不要动\n//DES加密开始\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n Packages.java.lang,\n Packages.javax.crypto.spec,\n Packages.javax.crypto,\n Packages.android.util \n);\nwith(javaImport){\nfunction encryptByDES(massage, keydata) {\n let cipher = Cipher.getInstance(\"DES\");\n let keySpec = new DESKeySpec(String(keydata).getBytes());\n let keyFactory = SecretKeyFactory.getInstance(\"DES\");\n let key = keyFactory.generateSecret(keySpec); \n cipher.init(Cipher.ENCRYPT_MODE, key);\n return Base64.encodeToString(cipher.doFinal(String(massage).getBytes()),Base64.NO_WRAP)\n}\n}\n//DES加密结束\nvar userId=java.get('userId')!=\"\"?(java.get('userId')!=\"null\"?String(java.get('userId')):'0'):'0';\nvar deskey=java.get('deskey')!=\"\"?(java.get('deskey')!=\"null\"?String(java.get('deskey')):'web@hzlq'):'web@hzlq';\nvar siteId=java.get('siteId')!=\"\"?(java.get('siteId')!=\"null\"?String(java.get('siteId')):'1'):'1';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n siteId: siteId,\n data:String(encryptByDES(JSON.stringify(data), deskey)),\n userId: userId,\n fromSource: 3,\n osType: 5,\n version: \"1.0.1\",\n versionCode: 10001,\n timeStamp: data.timeStamp,\n hashCode: String(java.md5Encode(data.timeStamp + md5Key))\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}",
    "bookSourceGroup": "正版",
    "bookSourceName": "移动阅读/国家图书馆api",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ndlib.cn/",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 501,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{'title':'◎ 图书 ◎','url':'','style':{layout_flexGrow: 1,layout_flexBasisPercent:1}},\n{'title':'外文','url':'/findBookPart.html?resType=1&categoryId=985&categoryName=外文&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'哲学','url':'/findBookPart.html?resType=1&categoryId=983&categoryName=哲学&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'科幻','url':'/findBookPart.html?resType=1&categoryId=500&categoryName=科幻&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'国学','url':'/findBookPart.html?resType=1&categoryId=501&categoryName=国学&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'社科','url':'/findBookPart.html?resType=1&categoryId=263&categoryName=社科&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'教育','url':'/findBookPart.html?resType=1&categoryId=492&categoryName=教育&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'体育','url':'/findBookPart.html?resType=1&categoryId=495&categoryName=体育&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'文化','url':'/findBookPart.html?resType=1&categoryId=987&categoryName=文化&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'军事','url':'/findBookPart.html?resType=1&categoryId=499&categoryName=军事&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'传记','url':'/findBookPart.html?resType=1&categoryId=494&categoryName=传记&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'影视','url':'/findBookPart.html?resType=1&categoryId=856&categoryName=影视&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'党建','url':'/findBookPart.html?resType=1&categoryId=901&categoryName=党建&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'纪实','url':'/findBookPart.html?resType=1&categoryId=493&categoryName=纪实&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'科普','url':'/findBookPart.html?resType=1&categoryId=1224&categoryName=科普&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'文学','url':'/findBookPart.html?resType=1&categoryId=262&categoryName=文学&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'历史','url':'/findBookPart.html?resType=1&categoryId=261&categoryName=历史&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'生活','url':'/findBookPart.html?resType=1&categoryId=496&categoryName=生活&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'职场','url':'/findBookPart.html?resType=1&categoryId=498&categoryName=职场&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'综合','url':'/findBookPart.html?resType=1&categoryId=502&categoryName=综合&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'经管','url':'/findBookPart.html?resType=1&categoryId=497&categoryName=经管&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'政法','url':'/findBookPart.html?resType=1&categoryId=981&categoryName=政法&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'宗教','url':'/findBookPart.html?resType=1&categoryId=984&categoryName=宗教&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'少儿','url':'/findBookPart.html?resType=1&categoryId=1144&categoryName=少儿&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'漫画','url':'/findBookPart.html?resType=1&categoryId=986&categoryName=漫画&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.2}},\n{'title':'自然科学','url':'/findBookPart.html?resType=1&categoryId=982&categoryName=自然科学&page={{java.put(\"page\",page)}}','style':{layout_flexBasisPercent:0.215}},\n{'title':'百部经典','url':'/findBookPart.html?resType=1&categoryId=941&categoryName=百部经典&page={{java.put(\"page\",page)}}','style':{layout_flexBasisPercent:0.215}},\n{'title':'◎ 音频 ◎','url':'','style':{layout_flexGrow: 1,layout_flexBasisPercent:1}},\n{'title':'评书','url':'/findBookPart.html?resType=1&categoryId=770&categoryName=评书&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'戏曲','url':'/findBookPart.html?resType=1&categoryId=771&categoryName=戏曲&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'传记','url':'/findBookPart.html?resType=1&categoryId=1192&categoryName=传记&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'相声','url':'/findBookPart.html?resType=1&categoryId=779&categoryName=相声&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'欧美经典','url':'/findBookPart.html?resType=1&categoryId=128&categoryName=欧美经典&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'国学启蒙','url':'/findBookPart.html?resType=1&categoryId=768&categoryName=国学启蒙&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'中外小说','url':'/findBookPart.html?resType=1&categoryId=764&categoryName=中外小说&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'中外童话','url':'/findBookPart.html?resType=1&categoryId=763&categoryName=中外童话&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'世界名曲','url':'/findBookPart.html?resType=1&categoryId=847&categoryName=世界名曲&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'惊悚悬疑','url':'/findBookPart.html?resType=1&categoryId=773&categoryName=惊悚悬疑&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'经管励志','url':'/findBookPart.html?resType=1&categoryId=776&categoryName=经管励志&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'文学经典','url':'/findBookPart.html?resType=1&categoryId=1193&categoryName=文学经典&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'幽默笑话','url':'/findBookPart.html?resType=1&categoryId=765&categoryName=幽默笑话&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'人文社科','url':'/findBookPart.html?resType=1&categoryId=775&categoryName=人文社科&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'少儿故事','url':'/findBookPart.html?resType=1&categoryId=846&categoryName=少儿故事&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'育儿教育','url':'/findBookPart.html?resType=1&categoryId=1194&categoryName=育儿教育&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'中国名曲','url':'/findBookPart.html?resType=1&categoryId=849&categoryName=中国名曲&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'中外寓言','url':'/findBookPart.html?resType=1&categoryId=762&categoryName=中外寓言&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'英语有声名著','url':'/findBookPart.html?resType=1&categoryId=766&categoryName=英语有声名著&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}},\n{'title':'音乐名家专辑','url':'/findBookPart.html?resType=1&categoryId=848&categoryName=音乐名家专辑&page={{java.put(\"page\",page)}}','style':{layout_flexGrow: 1,layout_flexBasisPercent:0.25}}\n]",
    "header": "",
    "lastUpdateTime": 1707301084760,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "http://m.ndlib.cn",
    "respondTime": 2652,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "$.returnObject[0].content||$.returnObject.content||$.returnObject.url||$.returnObject\n@js:\nif('{{$.resultCode}}'==\"1000\" || '{{$.resultCode}}'.match(/^500/)){result=result}else{result='无法获取内容？请登录后，返回详情页刷新书籍，然后刷新正文'}\nif(java.get('type')=='4'){\nif(book.type=='0'){\nresult='这是音频文件，加入书架后，详情页右上角点编辑按钮，将书籍类型改为音频后保存<br>'+result;\n}else{result=result}\n}",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.resourceInfo.author||$.magInfo.company",
      "bookList": "<js>\njava.log(source.getSource​())\n\neval(String(source.getSource​().bookSourceComment))\n\nvar data ={\n timeStamp:Date.now(),\n bigType:\"0\",\n pageSize:100,\n pageNum:1\n};\n\nif(baseUrl.match(/categoryId/)){\ndata.categoryId=baseUrl.match(/categoryId=(\\d+)/)[1];\nurl=getPostUrl(data,'qryCategoryResList')\n}else{\ndata.content=String(java.get('key'));\nurl=getPostUrl(data,'qrySearchList')\n}\n\njava.ajax(url)\n</js>\n$.returnObject.resAndMagResult[*]||$.returnObject[*]",
      "bookUrl": "$.resourceInfo.resId||$.magInfo.magId\n@js:\neval(String(source.getSource​().bookSourceComment))\nvar data = {\n timeStamp:Date.now(),\n pageSize:10000,\n pageNum:1\n};\n//目录链接生成\nif('{{$.magInfo.brandId}}'){\ndata.magId=result;\ngetPostUrl(data,'qryMagArticleList');\n}else{data.resourceId=result;getPostUrl(data,'qryChapterList');}",
      "coverUrl": "$.resourceInfo.coverUrl@put:{type:$.resourceInfo.type}",
      "intro": "$.resourceInfo.shortIntro||$.magInfo.description",
      "kind": "$.resourceInfo.categoryName||$.magInfo.categoryName",
      "name": "{{$.resourceInfo.name}}{{$.magInfo.brandName&&$.magInfo.magName##\\n##•}}"
    },
    "ruleToc": {
      "chapterList": "$.returnObject[0].children||$.returnObject<js>\nvar userId=cookie.getKey(\"http://m.ndlib.cn\",\"userId\");\nvar siteId=cookie.getKey(\"http://m.ndlib.cn\",\"siteId\");\nvar wapToken=cookie.getKey(\"http://m.ndlib.cn\",\"wapToken\");\nvar userId=userId;\nvar deskey = wapToken;\nvar siteId=siteId;\n\njava.put('userId',userId);\njava.put('deskey',deskey);\njava.put('siteId',siteId);\na=[{\"chapterName\":\"暂无目录\",\"chapterId\":\"000\"}];\nresult=result!=\"[]\"?result:JSON.stringify(a);\n</js>\n$.[*]",
      "chapterName": "$.chapterName||$.title",
      "chapterUrl": "$.chapterId||$.articleId@js:\neval(String(source.getSource​().bookSourceComment))\nvar data = {\n timeStamp:Date.now(),\n uaInfo:'1', \n };\nif('{{$.articleId}}'){\ndata.articleId=result;\ngetPostUrl(data,'qryMagArticleDetail');\n}else{\ndata.chapterId=result;\nif(java.get('type')=='4'){\ngetPostUrl(data,'qryFileInfo');}\nelse{getPostUrl(data,'qryChapterDetails')}\n}",
      "updateTime": "$.addTime"
    },
    "searchUrl": "http://m.ndlib.cn/03/html/searchresult.html?search={{key;java.put('key',key)}}type=0&page={{page;java.put('page',page)}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-2",
    "customButton": false,
    "customOrder": 502,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733688230114,
    "respondTime": 1770,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "vip章节请登录后更新目录",
    "bookSourceGroup": "女频",
    "bookSourceName": "书耽【验证码】",
    "bookSourceType": 0,
    "bookSourceUrl": "https://app.shubl.com",
    "customButton": false,
    "customOrder": 503,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部纯爱::https://www.baidu.com/category_type=1&order=week_click&page={{page}}\n现纯::https://www.baidu.com/category_type=4&order=week_click&page={{page}}\n幻纯::https://www.baidu.com/category_type=5&order=week_click&page={{page}}\n古纯::https://www.baidu.com/category_type=6&order=week_click&page={{page}}\n百合::https://www.baidu.com/category_type=3&order=week_click&page={{page}}\n全部言情::https://www.baidu.com/category_type=20&order=week_click&page={{page}}\n现言::https://www.baidu.com/category_type=8&order=week_click&page={{page}}\n幻言::https://www.baidu.com/category_type=9&order=week_click&page={{page}}\n古言::https://www.baidu.com/category_type=10&order=week_click&page={{page}}\n无CP::https://www.baidu.com/category_type=21&order=week_click&page={{page}}\n付费&连载&更新时间::https://www.baidu.com/category_type=1&order=uptime&up_status=0&is_paid=1&page={{page}}\n付费&完本&更新时间::https://www.baidu.com/category_type=1&order=uptime&up_status=1&is_paid=1&page={{page}}\n每日签到::data:get_daily;base64,{{java.base64Encode(\"get_daily_task_bonus\")}},{\"type\":\"\"}",
    "header": "{\"app-version\":\"4.1.1\"}",
    "jsLib": "function encode(word){\n\t const {java} = this;\n  \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\", java.base64DecodeToByteArray(\"L6alxSR4ttjXvcGpZozYtdcJtG4l0tSnQplRUONIRsw=\"), java.base64DecodeToByteArray(\"AAAAAAAAAAAAAAAAAAAAAA==\")).encryptBase64(word);\n\t}\n\t\nfunction decode(word){\n\t   const {java} = this;\n    \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\", java.base64DecodeToByteArray(\"L6alxSR4ttjXvcGpZozYtdcJtG4l0tSnQplRUONIRsw=\"), java.base64DecodeToByteArray(\"AAAAAAAAAAAAAAAAAAAAAA==\")).decryptStr(word);\n}\n\nfunction getToken(){\t\n\tconst {source} = this;\n\treturn (source.getLoginHeaderMap()!=null && source.getLoginHeaderMap()!=\"\")?source.getLoginHeaderMap().get(\"login_token\"):\"0f6bd1d063f202f71c3b84678027ce81\"\n\t}\n\t\nfunction getA(){\n\tconst {source} = this;\n\treturn (source.getLoginHeaderMap()!=null && source.getLoginHeaderMap()!=\"\")?source.getLoginHeaderMap().get(\"account\"):\"%E8%90%8C%E5%8F%8B521068519938\";\n\t}",
    "lastUpdateTime": 1747061859727,
    "loginUi": "[\n    {\n        name: \"账号\",\n        type: \"text\"\n    },\n    {\n        name: \"验证码\",\n        type: \"text\"\n    },\n     {\n        name: \"获取验证码（填完验证码点“✓”登录）\",\n        type: \"button\",\n        \"action\":\"getCode()\"\n    }\n]",
    "loginUrl": "<js>\n function getCode(){\n \t let app_signature_md5 = \"f73576612783f8ed8b68cdf73a56be94\";\n  \tlet phone = result.get(\"账号\");\n  \tlet time = String(Date.now());\t\n  \t\n   let hashvalue = java.md5Encode(encode(phone+time));\t\n   let option = {\n \t  \"app_signature_md5\":app_signature_md5,\n   \"app_version\":\"4.1.1\",\n   \"channel\":\"default\",\n   \"verify_type\":\"5\", \n   \"hashvalue\":hashvalue,\n   \"username\":phone,\n   \"timestamp\":time\n   }\n   \n   let body = \"secret_content=\"+encode(JSON.stringify(option));\n   let url = \"https://app.shubl.com/signup/send_verify_code\"\n   try{\n let resposebody =\tjava.ajax(url+\",\"+JSON.stringify({\"method\":\"POST\",\"body\":body}));\n \tlet tip = JSON.parse(decode(resposebody)).tip;\n \tjava.toast(tip)\n \t}catch(e){\n \t\tjava.log(e)\n \t\t}\n \t\n \t}\n \n \n \t\n function login(){\n \ttry{\n \tlet login_name=source.getLoginInfoMap().get(\"账号\")\nlet code=source.getLoginInfoMap().get(\"验证码\");\n    let jsonStr = {\n    \t\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\n    \t\"app_version\":\"4.1.1\",\n    \t\"channel\":\"default\",\n    \t\"uuid\":\"android\",\n    \t\"ver_code\":code,\n    \t\"username\":login_name\n    \t}\n    \n    \n    let body = \"secret_content=\" + encode(JSON.stringify(jsonStr));\n    let option = {\n        \"method\": \"POST\",\n        \"body\": String(body)\n    };\n    \n    let url = \"https://app.shubl.com/signup/verify_login,\" + JSON.stringify(option);\n    \n   let respbody = decode(java.ajax(url));\n   java.log(respbody);\n   let resp = JSON.parse(respbody);\n   java.log(resp.tip);\n   \n   \n    if (resp.code == \"100000\") {\n     body = {\n     \t\"login_token\":resp.data.login_token,\n     \t\"account\":encodeURI(resp.data.reader_info.account)\n     \t}\n     source.putLoginHeader(JSON.stringify(body)) \n    } else {\n        java.toast('❗️ ' + resp.tip + ' ❗️')\n    }\n    }catch(e){\n    \tjava.log(e)\n    \t}\n}\n</js>",
    "respondTime": 2741,
    "ruleBookInfo": {
      "author": "$.author_name",
      "coverUrl": "$.cover",
      "init": "<js>\ndecode(result)\n</js>\n$.data.book_info",
      "intro": "$.description",
      "kind": "$.tag",
      "lastChapter": "{{$.last_chapter_info.chapter_title}} / {{$.last_chapter_info.uptime}}",
      "name": "$.book_name",
      "tocUrl": "@js:\nlet jsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"4.1.1\",\"channel\":\"default\",\"last_update_time\":\"0\",\"book_id\":{{$.book_id}},\"login_token\":String(getToken()),\"account\":String(getA())}\nlet body = \"secret_content=\"+encode(JSON.stringify(jsonObj));\nlet option = {\"method\": \"POST\",\"body\": String(body)};\n\"https://app.shubl.com/chapter/get_chapter_list_group_by_division,\" + JSON.stringify(option)",
      "wordCount": "$.total_word_count"
    },
    "ruleContent": {
      "content": "<js>\ndecode(result)\n</js>\n$.data.chapter_info.txt_content"
    },
    "ruleExplore": {
      "author": "$.author_name",
      "bookList": "<js>\nresponse=null\nif(!baseUrl.match(/localhost|get_daily/)){\n\t\ncategory_type=baseUrl.match(/category_type=(\\d+)/)?baseUrl.match(/category_type=(\\d+)/)[1]:\"\"\norder=baseUrl.match(/order=(.+?)&/)?baseUrl.match(/order=(.+?)&/)[1]:\"\"\nis_paid=baseUrl.match(/is_paid=(\\d)&/)?baseUrl.match(/is_paid=(\\d)&/)[1]:\"\"\nup_status=baseUrl.match(/up_status=(\\d)&/)?baseUrl.match(/up_status=(\\d)&/)[1]:\"\"\njsonObj={\"category_type\":category_type,\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"2.1.6\",\"channel\":\"default\",\"order\":order,\"count\":\"15\",\"is_paid\":is_paid,\"page\":String(baseUrl.match(/page=(\\d+)/)[1]-1),\"up_status\":up_status,\"login_token\":String(getToken()),\"account\":String(getA())}\n//java.log(JSON.stringify(jsonObj))\noption={\"method\":\"POST\",\"body\":\"secret_content=\"+encodeURIComponent(encode(JSON.stringify(jsonObj)))}\nurl=\"https://app.shubl.com/bookcity/get_filter_search_book_list,\"+JSON.stringify(option)\nresponse=decode(java.ajax(url))\n}else{\njsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"2.1.6\",\"channel\":\"default\",\"task_type\":\"1\",\"login_token\":String(getToken()),\"account\":String(getA())}\noption={\"method\":\"POST\",\"body\":\"secret_content=\"+encodeURIComponent(encode(JSON.stringify(jsonObj)))}\nurl=\"https://app.shubl.com/reader/get_daily_task_bonus,\"+JSON.stringify(option)\nresponse=decode(java.ajax(url));\njava.toast(JSON.parse(response).tip)\n}\n\n// 打印解密结果\njava.log(JSON.stringify(JSON.parse(response)))\nresponse\n</js>\n$.data.book_list||$.[*]",
      "bookUrl": "@js:\nif(!baseUrl.match(/localhost|get_daily/)){\nlet jsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"2.1.6\",\"channel\":\"default\",\"book_id\":String(java.getString('$.book_id')),\"login_token\":String(getToken()),\"account\":String(getA())}\nlet body = \"secret_content=\"+encode(JSON.stringify(jsonObj));\nlet option = {\"method\": \"POST\",\"body\": String(body)};\n\"https://app.shubl.com/book/get_info_by_id,\" + JSON.stringify(option)\n}else{\nbaseUrl\n}",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag",
      "lastChapter": "{{$.last_chapter_info.chapter_title}} / {{$.last_chapter_info.uptime}}",
      "name": "$.book_name@put:{\"bid\":\"$.book_id\"}||$",
      "wordCount": "$.total_word_count"
    },
    "ruleSearch": {
      "author": "$.author_name",
      "bookList": "<js>\n\n\n\nresponse=decode(result)\n// 打印解密结果\n//java.log(JSON.stringify(JSON.parse(response)))\nresponse\n</js>\n$.data.book_list",
      "bookUrl": "@js:\nlet jsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"4.1.1\",\"channel\":\"default\",\"book_id\":{{$.book_id}},\"login_token\":String(getToken()),\"account\":String(getA())}\nlet body = \"secret_content=\"+encode(JSON.stringify(jsonObj));\nlet option = {\"method\": \"POST\",\"body\": String(body)};\n\"https://app.shubl.com/book/get_info_by_id,\" + JSON.stringify(option)",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag",
      "lastChapter": "{{$.last_chapter_info.chapter_title}} / {{$.last_chapter_info.uptime}}",
      "name": "$.book_name@put:{\"bid\":\"$.book_id\"}",
      "wordCount": "$.total_word_count"
    },
    "ruleToc": {
      "chapterList": "<js>\ndecode(result)\n</js>\n$.data.chapter_list_group[*].chapter_list[*]",
      "chapterName": "$.chapter_title",
      "chapterUrl": "@js:\nlet jsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"4.1.1\",\"channel\":\"default\",\"chapter_id\":{{$.chapter_id}},\"login_token\":String(getToken()),\"account\":String(getA())}\n\nlet body = \"secret_content=\"+encode(JSON.stringify(jsonObj));\nlet option = {\"method\": \"POST\",\"body\": String(body)};\n\"https://app.shubl.com/chapter/get_chapter_info,\" + JSON.stringify(option)",
      "isVip": "@js:!{{$.auth_access}}",
      "updateTime": "{{$.word_count}} 字 发布于 {{$.uptime}}"
    },
    "searchUrl": "@js:\nlet jsonObj={\"app_signature_md5\":\"f73576612783f8ed8b68cdf73a56be94\",\"app_version\":\"4.1.1\",\"channel\":\"default\",\"order\":\"week_click\",\"count\":\"15\",\"category_type\":\"1\",\"page\":page-1,\"key\":key,\"login_token\":String(getToken()),\"account\":String(getA())}\nlet body = \"secret_content=\"+encode(JSON.stringify(jsonObj));\n\nlet option = {\"method\": \"POST\",\"body\": String(body)};\n\n\"https://app.shubl.com/bookcity/get_filter_search_book_list,\" + JSON.stringify(option)",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "追书神器①",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zhuishushenqi.com停",
    "customButton": false,
    "customOrder": 504,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "男生最热榜::http://www.zhuishushenqi.com/ranking/dcf689ff585445218abbb23539f23c3c?type=male&page={{page}}\n男生潜力榜::http://www.zhuishushenqi.com/ranking/770626157c3947a2a983a6433ca49820?type=male&page={{page}}\n男生飙升榜::http://www.zhuishushenqi.com/ranking/19c48a03b452464d85c95f168577d97f?type=male&page={{page}}\n男生完结榜::http://www.zhuishushenqi.com/ranking/23a22accbe064e3b9f04eb1fb3abee03?type=male&page={{page}}\n男生好评榜::http://www.zhuishushenqi.com/ranking/00bb4cd7c4034e0693ba8d604066394f?type=male&page={{page}}\n男生VIP榜::http://www.zhuishushenqi.com/ranking/4bf04a7299f145c69e1ad20d4495bd74?type=male&page={{page}}\n男生留存榜::http://www.zhuishushenqi.com/ranking/20bb08d9d8de4a358e14b047074a4315?type=male&page={{page}}\n男生热搜榜::http://www.zhuishushenqi.com/ranking/6fda0ecb16f54c188bc320ec085e1184?type=male&page={{page}}\n男生经典榜::http://www.zhuishushenqi.com/ranking/eb1ab113d65a46bcb05d1e16f3da73f9?type=male&page={{page}}\n女生最热榜::http://www.zhuishushenqi.com/ranking/a1ee23f52e6447f5af7559ac31f8204b?type=female&page={{page}}\n女生潜力榜::http://www.zhuishushenqi.com/ranking/909e0279f92549fb9820bfaa25121e81?type=female&page={{page}}\n女生飙升榜::http://www.zhuishushenqi.com/ranking/b0eea34b22644e3a8605e98c8795c018?type=female&page={{page}}\n女生完结榜::http://www.zhuishushenqi.com/ranking/297ff544f4274b3692f69bf29d0bd7df?type=female&page={{page}}\n女生好评榜::http://www.zhuishushenqi.com/ranking/bcf48e77e1da4a58aff8df0d9fe6a6f2?type=female&page={{page}}\n女生VIP榜::http://www.zhuishushenqi.com/ranking/a0129f91a0da4ab29cb8e760dbc4d07f?type=female&page={{page}}\n女生留存榜::http://www.zhuishushenqi.com/ranking/24ef1860f3084c9bb07050de9882bf53?type=female&page={{page}}\n女生热搜榜::http://www.zhuishushenqi.com/ranking/560b927118494ab1ac4c463b608add21?type=female&page={{page}}\n女生经典榜::http://www.zhuishushenqi.com/ranking/b1cc92b6219840bebdca4b7cefa2205d?type=female&page={{page}}\n出版飙升榜::http://www.zhuishushenqi.com/ranking/d52ca7d4ae7840f98581d688bb74c8f2?type=press&page={{page}}\n出版热搜榜::http://www.zhuishushenqi.com/ranking/06aa21ebe73a48799dbd59bf05dd6859?type=press&page={{page}}\n出版经典榜::http://www.zhuishushenqi.com/ranking/fa449c3dd64342dfa8b4944e3e8a063b?type=press&page={{page}}\n男生精选::http://www.zhuishushenqi.com/selection/7cad805929b84605993b2a6d07dbaa1f&page={{page}}\n女生精选::http://www.zhuishushenqi.com/selection/53120f39c63140a783b4ef2cffbc97ca&page={{page}}\n男频新书::http://www.zhuishushenqi.com/selection/a8b855d327dc405ca24a7776eb4370f0&page={{page}}\n女频新书::http://www.zhuishushenqi.com/selection/a62b7aa252f84c90ad6e9fee44c8151d&page={{page}}\n玄　幻::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=玄幻&page={{page}}\n都　市::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=都市&page={{page}}\n灵　异::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=灵异&page={{page}}\n仙　侠::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=仙侠&page={{page}}\n游　戏::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=游戏&page={{page}}\n科　幻::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=科幻&page={{page}}\n职　场::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=职场&page={{page}}\n历　史::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=历史&page={{page}}\n军　事::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=军事&page={{page}}\n轻小说::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=轻小说&page={{page}}\n奇　幻::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=奇幻&page={{page}}\n武　侠::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=武侠&page={{page}}\n竞　技::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=竞技&page={{page}}\n体　育::http://www.zhuishushenqi.com/category?gender=male&type=hot&major=体育&page={{page}}\n现代言情::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=现代言情&page={{page}}\n古代言情::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=古代言情&page={{page}}\n幻想言情::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=幻想言情&page={{page}}\n科幻空间::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=科幻空间&page={{page}}\n青春校园::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=青春校园&page={{page}}\n灵异悬疑::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=灵异悬疑&page={{page}}\n同人衍生::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=同人衍生&page={{page}}\n游戏情缘::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=游戏情缘&page={{page}}\n唯美纯爱::http://www.zhuishushenqi.com/category?gender=female&type=hot&major=唯美纯爱&page={{page}}\nnull",
    "lastUpdateTime": 1736086298088,
    "respondTime": 1413,
    "ruleBookInfo": {
      "author": "class.sup@tag.a@text",
      "intro": "class.content intro@text",
      "name": "class.author@text"
    },
    "ruleContent": {
      "content": "class.inner-text@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@tag.span.0@text",
      "bookList": "class.book",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "class.popularity@text##\\|.*",
      "lastChapter": "class.popularity@text##.*\\|",
      "name": "class.name@tag.a.0@text||class.name@tag.span.0@text"
    },
    "ruleToc": {
      "chapterList": "class.book-section.2@tag.a",
      "chapterName": "tag.a@text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.zhuishushenqi.com/search?val={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "武芊漫画（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://comic.mkzcdn.com",
    "customButton": false,
    "customOrder": 506,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nlet url = 'https://comic.mkzcdn.com/search/filter/?audience=0&order=sort&page_num={{page}}&page_size=18&theme_id=class'\nlet class_name=\"全部&修真&霸总&恋爱&校园&冒险&搞笑&生活&热血&架空&后宫&玄幻&悬疑&恐怖&灵异&动作&科幻&战争&古风&穿越&竞技&励志&同人&真人\".split(\"&\");\nlet class_url=\"0&2&1&3&4&5&6&7&8&9&10&12&13&14&15&16&17&18&19&20&21&23&24&26\".split(\"&\")\n\nlet sort_name='推荐&最热&最新'.split(\"&\")\nlet sort_url='3&1&2'.split(\"&\")\nlet model = (title,url,num)=>{\n    return {title:title,url:url,style:{layout_flexGroup:1,layout_flexBasisPercent:num}}\n}\n\ntop=[{\"title\":\"热门人气\",\"url\":\"https://comic.mkzcdn.com/search/filter/?order=1&page_num={{page}}&page_size=12\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"更新时间\",\"url\":\"https://comic.mkzcdn.com/search/filter/?order=2&page_num={{page}}&page_size=12\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}}]\n\n\n\nlet list = []\nlist=list.concat(top)\n\nfor (let i = 0; i < sort_name.length; i++) {\n    list.push(model(sort_name[i],\"\",1))\n    for (let j = 0; j < class_name.length; j++) {\n        let t = url.replace(\"sort\",`${sort_url[i]}`).replace(\"class\",`${class_url[j]}`)\n        list.push(model(class_name[j],t,0.15))\n    }\n}\nJSON.stringify(list)",
    "lastUpdateTime": 1759568531485,
    "respondTime": 25104,
    "ruleBookInfo": {
      "intro": "$..content##^##<br/>",
      "kind": "$..theme_id\n@js:\nlet class_name=\"全部&修真&霸总&恋爱&校园&冒险&搞笑&生活&热血&架空&后宫&玄幻&悬疑&恐怖&灵异&动作&科幻&战争&古风&穿越&竞技&励志&同人&真人\".split(\"&\");\nlet class_url=\"0&2&1&3&4&5&6&7&8&9&10&12&13&14&15&16&17&18&19&20&21&23&24&26\".split(\"&\")\n\nlet res=Array.from(result)[0].split(\",\")\n\nfor(var i=0;i<class_url.length;i++){\n\tfor(var j=0;j<res.length;j++){\n\t\tif(class_url[i]==res[j]){\n\t\t\t  res[j]=class_name[i]\n\t\t\t}\n}\n}\n\n\nres.join(\",\")",
      "name": "@put:{comic_id:$..comic_id}",
      "tocUrl": "https://comic.mkzcdn.com/chapter/v1/?comic_id={{$..comic_id}}"
    },
    "ruleContent": {
      "content": "$.data[*].image\n@js:\nresult.split(\"\\n\").map(x=>'<img src=\"'+x+'\">').join(\"\\n\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author_title",
      "bookList": "$..list[*]",
      "bookUrl": "https://comic.mkzcdn.com/comic/info/?comic_id={{$.comic_id}}",
      "coverUrl": "$.cover",
      "intro": "$.feature",
      "lastChapter": "$.chapter_title",
      "name": "$.title"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.title",
      "chapterUrl": "https://comic.mkzcdn.com/chapter/content/?chapter_id={{$.chapter_id}}&comic_id=@get:{comic_id}",
      "updateTime": "$..start_time\n@js:\"🕗 \"+java.timeFormat(result*1000)+\"    \"+(new Date(result*1000)>new Date()?\"❗️未发布\":\"\")"
    },
    "searchUrl": "https://comic.mkzcdn.com/search/keyword/?keyword={{key}}&page_num={{page}}&page_size=20",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "若夏网网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruoxia.com",
    "customButton": false,
    "customOrder": 507,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1733385552318,
    "respondTime": 972,
    "ruleBookInfo": {
      "author": "//*[@property='og:novel:author']/@content",
      "coverUrl": "//*[@property='og:image']/@content@js:result.split('@')[0]",
      "intro": "class.summary@class.note.0@text",
      "kind": "//*[@property='og:novel:category']/@content",
      "lastChapter": "//*[@property='og:novel:latest_chapter_name']/@content",
      "name": "//*[@property='og:title']/@content",
      "tocUrl": "//*[@property='og:novel:read_url']/@content@js:result.replace('/book/','/chapter/')"
    },
    "ruleContent": {
      "content": "$.chapter.htmlContent<js>result.replace(/<.*?>/g,'').replace(/\\r/g,'\\n　　')</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "@JSon:$.data.content[*]",
      "bookUrl": "$.id@js:'http://www.ruoxia.com/book/'+result",
      "coverUrl": "$.iconUrlSmall@js:'https://b.heiyanimg.com'+result.split('@')[0]",
      "intro": "$.introduce",
      "kind": "$.sortname",
      "lastChapter": "$.lastchaptername",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": ":(?s)(\\d+)\" class=\"(isvip)?[^\"]*name[^>]*>([^<]*)",
      "chapterName": "$2$3",
      "chapterUrl": "https://a.heiyan.com/ajax/chapter/content/$1"
    },
    "searchUrl": "http://search.ruoxia.com/web/search?highlight=false&queryString={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "有声",
    "bookSourceName": "饭角有声（优）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://api.fanjiao.co/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 509,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732637611284,
    "respondTime": 683,
    "ruleBookInfo": {
      "author": "",
      "name": "book.name"
    },
    "ruleContent": {},
    "ruleExplore": {},
    "ruleSearch": {
      "author": "",
      "bookList": "$.data.list[*]",
      "bookUrl": "<js>\nbody = \"album_id={{$.album_id}}\";\nurl = \"https://api.fanjiao.co/walkman/api/album/audio?\"+body;\nsign = java.md5Encode(body+\"879f30c4b1641142c6192acc23cfb733\")\nheaders = \n\t{\"headers\":{\"signature\":String(sign)}}\nurl+\",\"+JSON.stringify(headers)\n</js>",
      "checkKeyWord": "",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "lastChapter": "",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": "$..audios_list[*]",
      "chapterName": "$.name",
      "chapterUrl": "$.src"
    },
    "searchUrl": "<js>\nbody = \"keyword=\"+key+\"&page=\"+page+\"&size=20&type=2\";\nurl = \"https://api.fanjiao.co/walkman/api/search/keyword?\"+body;\nsign = java.md5Encode(body+\"879f30c4b1641142c6192acc23cfb733\")\nheaders = \n\t{\"headers\":{\"signature\":String(sign)}}\nurl+\",\"+JSON.stringify(headers)\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "半废了。但还可用。\n大概最新的十章+不能看。\nby.Thomas哟\n小说交流群462030508。\nA群637775313不加人。若家炸了查看此群群资料找新家。\n✱✱资源取自网络，仅供学习参考，请同学们在24小时内删除✱✱\n🆙💯Dragon Quest QB\n{{book.origin}}/wenxue/buy/ad-chapter/v4?apn=1&resourceId={{baseUrl.match(/bookId=(\\d+)/)[1]}}&serialId={{$.serialID}}\n",
    "bookSourceGroup": "正版",
    "bookSourceName": "●QB女生<kd♛",
    "bookSourceType": 0,
    "bookSourceUrl": "DragonQuestQBkd1",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 510,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✲　　　　　　✲ 现代言情 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=豪门世家\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐明星\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=娱乐明星\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市异能\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=都市异能\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"商战职场\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=商战职场\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"民国情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=民国情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"官场沉浮\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1524&start={{page}}&count=20&sub=官场沉浮\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 古代言情 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫闱宅斗\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=宫闱宅斗\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经商种田\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=经商种田\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊王朝\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=女尊王朝\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血江湖\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=热血江湖\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"上古蛮荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1523&start={{page}}&count=20&sub=上古蛮荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 悬疑侦探 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"推理侦探\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=推理侦探\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑探险\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=悬疑探险\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神秘文化\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=神秘文化\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"恐怖惊悚\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=恐怖惊悚\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幽冥情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1518&start={{page}}&count=20&sub=幽冥情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 仙侠奇缘 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典仙侠\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=古典仙侠\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侣奇缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=仙侣奇缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=武侠情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代修真\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=现代修真\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古洪荒\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1517&start={{page}}&count=20&sub=远古洪荒\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 玄幻言情 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方玄幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=东方玄幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世大陆\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异世大陆\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法幻情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=魔法幻情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能超术\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异能超术\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异族恋情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=异族恋情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方奇幻\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=西方奇幻\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"远古神话\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1516&start={{page}}&count=20&sub=远古神话\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 浪漫青春 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春校园\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春校园\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春纯爱\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春纯爱\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春疼痛\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=青春疼痛\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"叛逆成长\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1522&start={{page}}&count=20&sub=叛逆成长\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 科幻空间 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世危机\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=末世危机\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来世界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=未来世界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际恋歌\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=星际恋歌\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"超级科技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=超级科技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"进化变异\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=进化变异\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古武机甲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1519&start={{page}}&count=20&sub=古武机甲\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 游戏竞技 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=网游情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"电子竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=电子竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏异界\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=游戏异界\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育竞技\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1520&start={{page}}&count=20&sub=体育竞技\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"　　　　\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"✲　　　　　　✲ 纯爱 ✲　　　　　　✲\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚恋情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=婚恋情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=时空穿梭\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越奇情\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=穿越奇情\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古典架空\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古典架空\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代情缘\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=古代情缘\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"https://bookshelf.html5.qq.com/qbread/api/rank/list?groupid=1707&start={{page}}&count=20&sub=都市生活\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1731056621463,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2356,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.rows[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.resourceID}}",
      "coverUrl": "$.picurl",
      "intro": "$.summary",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,'')}}",
      "lastChapter": "$.lastSerialname",
      "name": "$.resourceName##（.*",
      "wordCount": "$.contentsize"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.state[?(@.dataName == 'novel_search_list')].items[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.docId##.*_}}",
      "checkKeyWord": "大王饶命",
      "coverUrl": "$.cover_url",
      "intro": "$.abstract",
      "kind": "{{$.tag_views##\\s+##,}}\n{{java.getString('$.is_finished')==1?'已完结':'连载中'}}",
      "lastChapter": "",
      "name": "$.title",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isPay": "$.isFree",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree",
      "isVolume": "",
      "nextTocUrl": "",
      "preUpdateJs": "",
      "updateTime": ""
    },
    "searchUrl": "https://so.html5.qq.com/ajax/real/search_result?tabId=360&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "轻小说",
    "bookSourceName": "安之原创",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com",
    "customButton": false,
    "customOrder": 511,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"月票榜\",\"url\":\"/webnovelmis/mobile/mranklistright/monthnum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"点击榜\",\"url\":\"/webnovelmis/mobile/mranklistright/clicknum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"收藏榜\",\"url\":\"/webnovelmis/mobile/mranklistright/savenum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"更新榜\",\"url\":\"/webnovelmis/mobile/mranklistright/updatetime/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"推荐榜\",\"url\":\"/webnovelmis/mobile/mranklistright/recommandnum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"订阅榜\",\"url\":\"/webnovelmis/mobile/mranklistright/subscribenum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"书友打赏\",\"url\":\"/webnovelmis/mobile/mranklistright/rewardnum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书推荐\",\"url\":\"/webnovelmis/mobile/mranklistright/newrecommandnum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书收藏\",\"url\":\"/webnovelmis/mobile/mranklistright/newsavenum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"完结精品\",\"url\":\"/webnovelmis/mobile/mranklistright/allclicknum/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/webnovelmis/mobile/mstackslistright/9/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/webnovelmis/mobile/mstackslistright/17/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市异能\",\"url\":\"/webnovelmis/mobile/mstackslistright/38/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史军事\",\"url\":\"/webnovelmis/mobile/mstackslistright/24/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/webnovelmis/mobile/mstackslistright/50/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻灵异\",\"url\":\"/webnovelmis/mobile/mstackslistright/58/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/webnovelmis/mobile/mstackslistright/71/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/webnovelmis/mobile/mstackslistright/79/0/0/0/0/0/0/{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1766365195740,
    "loginUrl": "http://www.azycjd.com/webnovelmis/mobile/mlogin",
    "respondTime": 2378,
    "ruleBookInfo": {
      "intro": "class.top_main.0@p@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "lastChapter": "class.top_main.-1@a@text"
    },
    "ruleContent": {
      "content": ".novel@p@text",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.0@text##作者.",
      "bookList": ".list_main li",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "span.0@text",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter@li",
      "chapterName": "p@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025，2月14号，静白，制作教程接来自：源论坛:ysqbbs.com",
    "bookSourceGroup": "正版",
    "bookSourceName": "移动阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ndlib.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 513,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1739518055873,
    "loginUrl": "\\\\目录列表规则处添加账号信息(稍有波动)",
    "respondTime": 668,
    "ruleBookInfo": {
      "intro": "@js:'<br>'+java.get('intro')"
    },
    "ruleContent": {
      "content": "$.returnObject[0].content@js:\nresult?result:'无法获取内容？\\n1.编辑书源添加自己的账号信息，找到目录列表规则，按提示添加账号信息\\n2.如果添加了账号信息仍然无法获取内容，请尝试刷新或更新账号信息（方式二）\\n3.必要说明：如果使用方式一添加了账号信息，每次打开新的书籍详情页或刷新正文都会重新获取账号信息，因此之前获取的书籍正文的链接将会失效，因此建议全文下载或者按2操作\\n必要说明：在使用本源前，请考虑到使用本源可能造成的账号封禁等问题'",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.resourceInfo.author",
      "bookList": "$.returnObject.resAndMagResult",
      "bookUrl": "$.resourceInfo.resId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n\n//目录链接生成\nvar data = {\n    timeStamp:Date.now(),\n    resourceId:result,\n    pageSize:10000,\n    pageNum:1\n};\ngetPostUrl(data,'qryChapterList');",
      "coverUrl": "$.resourceInfo.coverUrl",
      "intro": "$.resourceInfo.shortIntro@js:java.put('intro',result);result.trim();",
      "kind": "$.resourceInfo.categoryName",
      "name": "$.resourceInfo.name"
    },
    "ruleToc": {
      "chapterList": "$.returnObject[0].children||$.returnObject@js:\n//账号信息定义（任选其一，方式二会覆盖方式一)\n//方式一：账号密码（每次搜索都会重新获取方式二中的数据，可能会导致账号问题）\nvar account='';\nvar pwd='';\n//方式二：成功登录后的cookie的值（再次登录或退出登录或超过一定时间（待确认）会失效）\nvar userId='';\nvar siteId='';\nvar wapToken='';\n//定义结束\n\n//以下代码不要动\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||'0';\nvar deskey = wapToken||'web@hzlq';\nvar siteId=siteId||'1';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n\n//获取登录信息\nif((account&&pwd&&(!wapToken))){\nvar loginInfo={\ntimeStamp:Date.now(),\naccount:account,\npwd:pwd\n}\nvar loginInfoUrl=getPostUrl(loginInfo,'login');\nvar ddd=String(java.ajax(loginInfoUrl));\nvar loginData=JSON.parse(ddd).returnObject;\nuserId=loginData.userId;\nsiteId=loginData.siteId;\ndeskey=loginData.wapToken;\n}\njava.put('userId',userId);\njava.put('deskey',deskey);\njava.put('siteId',siteId);\nresult",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.chapterId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||String(java.get('userId'));\nvar deskey=deskey||String(java.get('deskey'));\nvar siteId=siteId||String(java.get('siteId'));\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\nvar data = {\n    timeStamp:Date.now(),\n    uaInfo:'1',\n    chapterId:result\n    };\ngetPostUrl(data,'qryChapterDetails');"
    },
    "searchUrl": "<js>\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data:encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n//搜索链接\nvar data ={\n    timeStamp:Date.now(),\n    bigType:\"0\",\n    content:key,\n    pageSize:10,\n    pageNum:1\n};\ngetPostUrl(data,'qrySearchList')\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "带部分☺☺书籍",
    "bookSourceGroup": "正版",
    "bookSourceName": "💰就爱读小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.92dxs.org",
    "customButton": false,
    "customOrder": 514,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/list/1.html\n武侠::/list/2.html\n都市::/list/3.html\n历史::/list/4.html\n网游::/list/6.html\n科幻::/list/7.html\n恐怖::/list/8.html\n完本::/wanben/index.html\n排行::/top/lastupdate.html",
    "lastUpdateTime": 1728398757802,
    "respondTime": 6392,
    "ruleBookInfo": {
      "author": "meta[property=\"og:novel:author\"]@content",
      "canReName": "",
      "coverUrl": "meta[property=\"og:image\"]@content",
      "init": "head",
      "intro": "meta[property=\"og:description\"]@content",
      "kind": "meta[property~=(category|status|click_cnt)]@content",
      "lastChapter": "{{@@meta[property=\"og:novel:latest_chapter_name\"]@content}} {{@@meta[property=\"og:novel:update_time\"]@content}}",
      "name": "meta[property=\"og:novel:book_name\"]@content",
      "tocUrl": "/ajaxService?action=chapterlist&articleno={{String(baseUrl).match(/\\d+(?=\\.)/)[0]}}&index=0&size=99999&sort=1"
    },
    "ruleContent": {
      "content": "#nr p@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "span.0@text##^-",
      "bookList": "div.1@table",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "span.1@text",
      "lastChapter": "a.2@text",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": ".author@text##作者：",
      "bookList": ".waps_one",
      "bookUrl": "a.0@href",
      "checkKeyWord": "我的",
      "kind": "span@ownText",
      "lastChapter": ".genxin>a@text",
      "name": ".waps_name@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "items",
      "chapterName": "chaptername",
      "chapterUrl": "url",
      "formatJs": "",
      "isPay": "",
      "isVip": "isvip",
      "isVolume": "",
      "nextTocUrl": "",
      "preUpdateJs": "",
      "updateTime": "{{$.size}}字 {{$.modifytime||$.postdate}}##T(\\d)## $1"
    },
    "searchUrl": "https://m.92dxs.org/search/{{key}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "速速中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.susuzw.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 515,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::class/1_{{page}}.html\n武侠小说::class/2_{{page}}.html\n都市小说::class/3_{{page}}.html\n历史小说::class/4_{{page}}.html\n游戏小说::class/5_{{page}}.html\n科幻小说::class/6_{{page}}.html\n其他小说::class/7_{{page}}.html",
    "lastUpdateTime": 1702221554767,
    "loginUrl": "",
    "respondTime": 6047,
    "ruleBookInfo": {
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@html##各位书友要是觉得.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "lastChapter": "id.info@p@a@text",
      "tocUrl": "class.tgcj@href"
    },
    "ruleContent": {
      "content": "id.content@html##一秒记住.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text||class.s4@text",
      "bookList": "class.grid@tr!0||class.l@li",
      "bookUrl": "a@href##/(\\d+)_(\\d+)/##/books_$2/",
      "coverUrl": "a@href<js>'http://pic.susuzw.com/image'+String(result).replace(/.*?(\\d*?)(\\d{1,3})\\//,'/$1/$1$2/$1$2s.jpg').replace('//','/0/')</js>",
      "kind": "class.even.2@text",
      "lastChapter": "class.even@a@text||class.s3@a@text",
      "name": "class.odd@a@text||class.s2@a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "modules/article/search.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename&page={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔尚小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.bsxiaoshuo.com#",
    "customButton": false,
    "customOrder": 516,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"悬疑\",\"url\":\"/nangui_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史\",\"url\":\"/lishi_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"/xuanhuan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"/kehuan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游\",\"url\":\"/wangyou_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"二次\",\"url\":\"/erciyuan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现代\",\"url\":\"/xianyan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代\",\"url\":\"/guyan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"幻想\",\"url\":\"/huanyan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"悬疑\",\"url\":\"/lingyan_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"都市\",\"url\":\"/doushi_{{page}}\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1716236144306,
    "loginUrl": "https://www.bsxiaoshuo.com/user/",
    "respondTime": 936,
    "ruleBookInfo": {
      "author": ".name strong@text",
      "coverUrl": ".pic img@src",
      "intro": ".summary@ownText##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".cate@text&&h4 .time@text##\\s.*",
      "lastChapter": "h4 a@text##>>",
      "name": "h2@text",
      "tocUrl": ".index@href",
      "wordCount": ".words@text##字"
    },
    "ruleContent": {
      "content": ".page-content@html"
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "tbody tr",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##/(\\d+)##https://imgc.bsxiaoshuo.com/$1.jpg",
      "kind": "td.4@text##\\s.*",
      "lastChapter": "a.1@text",
      "name": "a.0@text",
      "wordCount": "td.3@text"
    },
    "ruleSearch": {
      "author": "p.1@textNodes",
      "bookList": "#j li",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "p.0@text",
      "kind": "s@text",
      "name": "b@text"
    },
    "ruleToc": {
      "chapterList": ".float-list li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isVip": "##isvip##🔒###",
      "updateTime": "span@text"
    },
    "searchUrl": "/s.php?sid=3&k={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣岛吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.daowx.com/",
    "customButton": false,
    "customOrder": 517,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1720930498842,
    "respondTime": 5147,
    "ruleBookInfo": {
      "author": "id.add_info@p.0@text",
      "intro": "⌚{{@@id.add_info@p.5@text}}\n{{'\\n'+'​'}}\n简介📕：\n{{@@id.add_intro@text}}",
      "lastChapter": "class.chapter.0@text",
      "name": "id.add_info@h1@text"
    },
    "ruleContent": {
      "content": "id.nr1@p@text##你正在阅读 《.*》 章节：.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a@text##(.*)：##$1###",
      "bookList": "div.s_list:nth-of-type(n+3)",
      "bookUrl": "a@href##$##,{'webView': true}",
      "checkKeyWord": "我的",
      "name": "a@text##《(.*)》##$1###"
    },
    "ruleToc": {
      "chapterList": "id.add_chapter_list_link@li@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}"
    },
    "searchUrl": "https://bqg123.net/search?form=biqusoso&keyword={{key}},{'webView':true}",
    "weight": 0
  },
  {
    "bookSourceComment": "//By情无羁25.02.19",
    "bookSourceGroup": "免费",
    "bookSourceName": "找书神器",
    "bookSourceType": 0,
    "bookSourceUrl": "https://mianfei22.com/",
    "customButton": false,
    "customOrder": 518,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 1739900714457,
    "respondTime": 4818,
    "ruleBookInfo": {
      "intro": ".intro@text",
      "kind": ""
    },
    "ruleContent": {
      "content": "#nr1@html##你正在阅读\\s《.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author",
      "bookList": "<js>\na=src.match(/]=\"(.*)\".*/)[1]\n//java.log(a)\nb=java.base64Decode(a,\"UTF-8\")\nc=decodeURIComponent(b)\n//java.log(c)\nresult=c;\nresult\n</js>\n$.book_list",
      "bookUrl": "https://mianfei22.com/v3_uni_0219003?2#/v3/{{$.book_uni_id}}/{{$.book_id}}/##$##,{'webView': true}",
      "coverUrl": "",
      "lastChapter": "$.last_chapter_name",
      "name": "$.book_name"
    },
    "ruleToc": {
      "chapterList": "#add_chapter_list_link@li a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}"
    },
    "searchUrl": "/v3/search1?ws=717360&pf=linux%20armv8l&keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//250323by= =",
    "bookSourceGroup": "免费",
    "bookSourceName": "豆豆小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.wangming.org/",
    "customButton": false,
    "customOrder": 519,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "首页::/\n热门::/top/{{page}}/\n都市::/lei/dushi/{{page}}/\n言情::/lei/yanqing/{{page}}/\n玄幻::/lei/xuanhuan/{{page}}/\n仙侠::/lei/xianxia/{{page}}/\n历史::/lei/lishi/{{page}}/\n网游::/lei/wangyou/{{page}}/\n科幻::/lei/kehuan/{{page}}/\n女生::/lei/nvsheng/{{page}}/\n其它::/lei/qita/{{page}}/\n全本::/quanben/all/{{page}}/",
    "header": "",
    "jsLib": "{\"crypto\": \"https://cdn.bootcss.com/crypto-js/3.1.9-1/crypto-js.min.js\"}",
    "lastUpdateTime": 1742741047619,
    "respondTime": 4348,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property~=image]@content",
      "intro": "[property~=desc]@content",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property$=chapter_name]@content",
      "name": "h1@text",
      "tocUrl": "text.更多章节列表@href"
    },
    "ruleContent": {
      "content": "@js:\nfunction x(encryptedData, key, iv) {\n\t\r\n  const ciphertext = CryptoJS.enc.Base64.parse(encryptedData);\n\r\n  const ivBytes = CryptoJS.enc.Base64.parse(iv);\n  \n   const keyBytes = CryptoJS.enc.Utf8.parse(key);\n  \r\n  const decrypted = CryptoJS.AES.decrypt(\r\n    { ciphertext: ciphertext },\r\n    keyBytes,\r\n    { iv: ivBytes, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding }\r\n  );\r\n  const decryptedText = decrypted.toString(CryptoJS.enc.Utf8);\r\n return decryptedText;\r\n  \r\n}\nmatch=src.match(/#booktxthtml'\\).html\\((.*?\\))\\)/);\n//java.log(match[1])\nif(match){\nresult=eval(match[1])}else result",
      "nextContentUrl": "text.下一章@href@js:/_/.test(result)?result:\"\"",
      "replaceRegex": "##《{{book.name}}》.*"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-src",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "a[href*=author]@text",
      "bookList": ".content dl",
      "bookUrl": "a.0@href",
      "checkKeyWord": "--https://www.fullsubject.net/xiaoshuo_241375/2215474.html",
      "coverUrl": "img@data-src",
      "intro": "dd.0@text",
      "kind": "dd.1@span@text",
      "lastChapter": "",
      "name": ".cover@title",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "ul.1@li@a",
      "chapterName": "text",
      "chapterUrl": "onclick##location.href='(.*)'##$1",
      "nextTocUrl": "option!0@value"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\n/search\n,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.6.22 ◎夜泽川◎",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本小说网⑤",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.quanben5.com",
    "customButton": false,
    "customOrder": 520,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/category/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"都市\",\"url\":\"/category/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"/category/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"武侠\",\"url\":\"/category/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"言情\",\"url\":\"/category/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"穿越\",\"url\":\"/category/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"网游\",\"url\":\"/category/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"奇幻\",\"url\":\"/category/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"/category/9_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"悬疑\",\"url\":\"/category/10_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"青春\",\"url\":\"/category/11_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"校园\",\"url\":\"/category/12_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"军事\",\"url\":\"/category/13_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"/category/14_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"同人\",\"url\":\"/category/15_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"其它\",\"url\":\"/category/18_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\",\"Referer\":\"https://www.quanben5.com/search.html\"}",
    "jsLib": "function base64(_str) {\n    var staticchars = \"PXhw7UT1B0a9kQDKZsjIASmOezxYG4CHo5Jyfg2b8FLpEvRr3WtVnlqMidu6cN\";\n    var encodechars = \"\";\n    for (var i = 0; i < _str.length; i++) {\n        var num0 = staticchars.indexOf(_str[i]);\n        if (num0 == -1) {\n            var code = _str[i];\n        } else {\n            var code = staticchars[(num0 + 3) % 62];\n        }\n        var num1 = parseInt(Math.random() * 62, 10);\n        var num2 = parseInt(Math.random() * 62, 10);\n        encodechars += staticchars[num1] + code + staticchars[num2];\n    }\n    return encodechars;\n}",
    "lastUpdateTime": 1751759057361,
    "respondTime": 2126,
    "ruleBookInfo": {
      "author": ".author@text",
      "coverUrl": ".pic.0@img@src",
      "intro": ".description.0@text",
      "kind": ".pic_txt_list.0@.info@span:not([class])@text",
      "name": "h1@text",
      "tocUrl": ".tool_button a@href"
    },
    "ruleContent": {
      "content": "#content > :not([class])@html##{{chapter.title}}",
      "nextContentUrl": "#page_next a@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": "@js:\nif (baseUrl.includes('search')) {\nvar data = JSON.parse(src.match(/search\\(([\\s\\S]+)\\);/)[1]);\n//java.log(JSON.stringify(data,null,\"\\t\"));\njava.setContent(data.content);\n}\nresult = java.getElement('.pic_txt_list');",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": ".description@ownText",
      "kind": ".info@ownText##作者:|\\(|\\)",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": ".list a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "?c=book&a=search.json&callback=search&t={{Date.now()}}&keywords={{key}}&b={{encodeURI(base64(encodeURI(key)))}}",
    "weight": 0
  },
  {
    "bookSourceComment": "\nhttp://www.weilaitianwang.info/\nhttp://www.weilaitianwang.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "未来天王",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.weilaitianwang.info",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 521,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "===========最近更新===========\n玄幻奇幻::/xuanhuanxiaoshuo/1_{{page}}.html\n修真仙侠::/xiuzhenxiaoshuo/1_{{page}}.html\n都市青春::/dushixiaoshuo/1_{{page}}.html\n历史穿越::/chuanyuexiaoshuo/1_{{page}}.html\n网游竞技::/wangyouxiaoshuo/1_{{page}}.html\n科幻灵异::/kehuanxiaoshuo/1_{{page}}.html\n其它小说::/qitaxiaoshuo/1_{{page}}.html\n阅读轨迹::nofollow\" href=\"/gj.html1_{{page}}.html\n完本小说::/wanben/1_11_{{page}}.html",
    "lastUpdateTime": 1721150695149,
    "loginUrl": "",
    "respondTime": 1942,
    "ruleBookInfo": {
      "author": "##:author\"[^\"]+\"([^\"]*)##$1###",
      "coverUrl": "##og:image\"[^\"]+\"([^\"]*)##$1###",
      "intro": "#intro@text",
      "kind": "##:category\"[^\"]+\"([^\"]*)##$1###",
      "lastChapter": "##_chapter_name\"[^\"]+\"([^\"]*)##$1###",
      "name": "##:book_name\"[^\"]+\"([^\"]*)##$1###",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\s*.*(((http|https|ftp):\\/\\/)?([\\w\\d][\\/_\\-\\.]*)+(\\.)[\\w\\d\\/]{2,4}([\\w\\d?\\/%][+=&_\\.~\\-]*)*).*\\s*|\\s*.*网站.*\\s*|\\s*.*([谢感多]谢.*的([千打]赏|支持)[!！,，。!]*)+.*\\s*|\\s*.*[谢感多]谢.*?书友.*?支持.*\\s*|\\s*.*第\\d+章.*\\s*|\\s*.*作者.*\\s*"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": ".l li[0:-1]",
      "bookUrl": "##<a\\s*href=\"([^\"]+)\"##$1###",
      "coverUrl": "##<img\\s*src=\"([^\"]+)\"##$1###",
      "intro": "",
      "kind": ".s1@text##\\[(.*)\\]##$1",
      "lastChapter": ".s3@text",
      "name": ".s2@text",
      "wordCount": ".s5@text"
    },
    "ruleSearch": {
      "author": ".s4@a@text",
      "bookList": ".novelslist2 li[1:-1]",
      "bookUrl": "##<a\\s*href=\"([^\"]+)\"##$1###",
      "checkKeyWord": "斗破苍穹",
      "coverUrl": "##<img\\s*src=\"([^\"]+)\"##$1###",
      "intro": "",
      "kind": "[class=s6 wid6]@text",
      "lastChapter": ".s3@a@text",
      "name": ".s2@a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#list dd[12:-1]",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": ""
    },
    "searchUrl": "/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "                    \"error:Timed out waiting for 180000 ms\n                                        \"error:Timed out waiting for 180000 ms\n                                        \"error:Unable to resolve host \"api.lestory.cn\": No address associated with hostname\n                    如要登录，请看搜索地址，请先删了Token的值再获取验证码\n填写token=登录\n需填写token的地方\n1.搜索页的搜索地址\n2.发现页的每日福利跟阅读15s书币<不领的话可不填>\n3.目录页的章节url\n感谢酷安@渊呀  指导\"\"\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰悸花乐读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.lestory.cn",
    "customButton": false,
    "customOrder": 523,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "💠　　　　　　🔹完    结 🔹　　　　　　💠::http://www.baidu.com/wd=cat=0&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n\n每日福利（点击领书币，一天仅一次有用）::http://api.lestory.cn/welfare/award?award_type=0&token=34304776fc02d974a641eef13b603e20\n\n每日阅读::http://www.baidu.com/wd=bookid=999999&token=34304776fc02d974a641eef13b603e20\n\n💠　　　　　　🔹完    结 🔹　　　　　　💠::http://www.baidu.com/wd=cat=0&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n现代都市::http://www.baidu.com/wd=cat=100&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n青春校园::http://www.baidu.com/wd=cat=8&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n古代情缘::http://www.baidu.com/wd=cat=9&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n纪实故事::http://www.baidu.com/wd=cat=96&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n民国近代::http://www.baidu.com/wd=cat=10&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n穿越架空::http://www.baidu.com/wd=cat=93&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n仙侠奇缘::http://www.baidu.com/wd=cat=95&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n短篇好文::http://www.baidu.com/wd=cat=98&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n同人原创::http://www.baidu.com/wd=cat=99&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\nABO::http://www.baidu.com/wd=cat=101&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n多元文学::http://www.baidu.com/wd=cat=102&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n恐怖悬疑::http://www.baidu.com/wd=cat=103&finished=2&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n\n🔹　　　　　　🔹连    载 🔹　　　　　　🔹::http://www.baidu.com/wd=cat=0&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n现代都市::http://www.baidu.com/wd=cat=100&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n青春校园::http://www.baidu.com/wd=cat=8&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n古代情缘::http://www.baidu.com/wd=cat=9&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n纪实故事::http://www.baidu.com/wd=cat=96&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n民国近代::http://www.baidu.com/wd=cat=10&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n穿越架空::http://www.baidu.com/wd=cat=93&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n仙侠奇缘::http://www.baidu.com/wd=cat=95&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n短篇好文::http://www.baidu.com/wd=cat=98&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n同人原创::http://www.baidu.com/wd=cat=99&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\nABO::http://www.baidu.com/wd=cat=101&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n多元文学::http://www.baidu.com/wd=cat=102&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n恐怖悬疑::http://www.baidu.com/wd=cat=103&finished=1&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n&page={{java.put('page',page)}}\n\n💠　　　　　　🔹全    部 🔹　　　　　　💠::http://www.baidu.com/wd=cat=0&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n现代都市::http://www.baidu.com/wd=cat=100&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n青春校园::http://www.baidu.com/wd=cat=8&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n古代情缘::http://www.baidu.com/wd=cat=9&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n纪实故事::http://www.baidu.com/wd=cat=96&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n民国近代::http://www.baidu.com/wd=cat=10&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n穿越架空::http://www.baidu.com/wd=cat=93&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n仙侠奇缘::http://www.baidu.com/wd=cat=95&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n短篇好文::http://www.baidu.com/wd=cat=98&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n同人原创::http://www.baidu.com/wd=cat=99&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\nABO::http://www.baidu.com/wd=cat=101&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n多元文学::http://www.baidu.com/wd=cat=102&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n恐怖悬疑::http://www.baidu.com/wd=cat=103&finished=0&page={{java.put('page',page)}}&page={{java.put('page',page)}}\n&page={{java.put('page',page)}}\n\n\n\n",
    "lastUpdateTime": 1733125476524,
    "loginUrl": "",
    "respondTime": 4596,
    "ruleBookInfo": {
      "author": "$.data.book.author",
      "intro": "$.data.book.description\n<js>if(!result){\ntoken=java.get('token');\nvar time = Math.round(new Date()/1000);\nresult='❗️通过离线下载这本书，刷每日阅读，离线下载一直显示正在启动的话是已经开始了，不用管它，因为是一直循环访问网址，手机可能会发烫，取消离线下载即可停止,如果取消很久还是发烫，请杀后台❗️';\nlist=[\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\",\"sign\":String(s)}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/user/center,'+JSON.stringify(option);\naaa=JSON.parse(String(java.ajax(url))).data;\nresult+'\\n剩余书币：'+aaa.remain+'\\n今日获得书币：'+aaa.coin_today+'\\n今日阅读：'+aaa.today_read_duration+'分钟\\n点右上角刷新此页面更新数据'\n}else{result=result}</js>",
      "kind": "",
      "lastChapter": "{{$.data.book.last_chapter}}•{{$.data.book.last_chapter_time}}##更新于",
      "name": "$.data.book.name",
      "tocUrl": "$.data.book.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/chapter/catalog,'+JSON.stringify(option)\n</js>",
      "wordCount": "$.data.book.total_words"
    },
    "ruleContent": {
      "content": "$.data.content\n<js>\n//每日阅读书币\nif(baseUrl.match(/report-reward/)){\ntoken=java.get(\"token\");\nvar time = Math.round(new Date()/1000);\n\nlist=[\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\",\"sign\":String(s)}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/remain/report-reward,'+JSON.stringify(option);\ni=10;\n\n//循环1000次，15s一次\nfor(i=0;i<=1000;i++){ \nvar start =(new Date()).getTime();\n\t// 阻塞15s\n    while((new Date()).getTime() - start < 15000) {\n        continue;\n    }\njava.log(JSON.parse(String(java.ajax(url))).data.reward_gold);\n}}\n\n\n//正文\njava.aesBase64DecodeToString(String(result),\"lCFS!FChsEabjLBu\",\"AES/CBC/PKCS5Padding\",\"0123456789012345\")\n</js>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "<js>\nif(!baseUrl.match(/welfare\\/award/)){\nif(baseUrl.match(/bookid/)){\njava.put('token',baseUrl.match(/token=(.*)/)[1]);\njava.put('book',baseUrl.match(/(\\d+)/)[1]);\nlist=[{\"name\":\"每日阅读书币\",\"book_id\":baseUrl.match(/(\\d+)/)[1]}];\nresult=JSON.stringify(list)\n}else{\n\npage=java.get('page');\nvar time = Math.round(new Date()/1000);\ncat=baseUrl.match(/cat=(\\d+)/)[1];\nfinished=baseUrl.match(/finished=(\\d+)/)[1];\nlist=[\n\"finished=\"+finished,\n\"cat=\"+cat,\n\"page_num=\"+page,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"ver=2.1.3\",\n\"product=1\",\n\"token=\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\n\nsign=sign(list);\n\njson={\"finished\":String(finished),\"cat\":String(cat),\"sign\":String(sign),\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"page_num\":String(page),\"osType\":\"2\",\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/book/category-index,'+JSON.stringify(option);\njava.ajax(url)}}else{\nl=[];\nvar time = Math.round(new Date()/1000);\nvar token=baseUrl.match(/token=(.*)/)[1];\nlist=[\n\"read_time=44800\",\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\n\njson={\"read_time\":\"44800\",\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":String(s),\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/remain/add-read-time,'+JSON.stringify(option);\nl.push(String(java.ajax(url)));\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nresult=JSON.stringify(l);}\n</js>\n$.data.list.list[*]||$.[*]",
      "bookUrl": "$.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/book/info,'+JSON.stringify(option)\n</js>",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag[*].tab",
      "name": "$.name||$.data.award||$.msg##^(\\d+)$##已领取$1书币"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.list[*]",
      "bookUrl": "$.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/book/info,'+JSON.stringify(option)\n</js>",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag[*].tab",
      "lastChapter": "{{$.last_chapter}}•{{$.last_chapter_time}}##更新于",
      "name": "$.name",
      "wordCount": "$.total_words"
    },
    "ruleToc": {
      "chapterList": "<js>\n$=JSON.parse(result);\nif($.code==\"700\"){\nlist=[{\"chapter_title\":\"阅读15s书币\",\"href\":\"http://api.lestory.cn/remain/report-reward\"}];\nresult=JSON.stringify(list)\n}else{result=JSON.stringify($.data.chapter_list)}</js>$.[*]",
      "chapterName": "$.chapter_title",
      "chapterUrl": "$.href<js>\n//填上你的Token\n\nToken=\"34304776fc02d974a641eef13b603e20\";\n\n//下面不要动\nvar time = Math.round(new Date()/1000);\nvar token=java.get('token')!=''?java.get('token'):java.put('token',Token);\nif(!result){\nlist=[\n\"book_id={{$.book_id}}\",\n\"chapter_id={{$.chapter_id}}\",\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":String(s),\"sysVer\":\"10\",\"book_id\":\"{{$.book_id}}\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"chapter_id\":\"{{$.chapter_id}}\",\"lang\":\"zh-hans\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/chapter/text,'+JSON.stringify(option)}else{result=result}\n</js>",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "<js>\n/*调试->右上角的小虫子，随便搜一个词*/\n/*Token写了东西的话要删掉才能进行下面步骤：\n①填上电话号码点调试会获取验证码；\n②填上验证码点调试会获取token；\n③把token填在Token【目录的章节url那也有个token记得也要填，不填的话从发现点的书是没有登录的】；\n④把电话号码跟验证码的值删了【❗️填了电话号码会一搜索就发验证码】，保存书源*/\n/*如登录过期需要重新登录，请删除以前填写的token再调试获取验证码，重复前面的步骤*/\n\n电话号码=\"\";\n\n验证码=\"\";\n\nToken=\"34304776fc02d974a641eef13b603e20\";\n\n//下面不要动\nvar time = Math.round(new Date()/1000);\ntoken=java.put('token',Token);\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\n\n\n//获取验证码开始\nnum=电话号码;\ny=验证码;\nif(num.match(/^\\d{11}$/) && !y  && !Token){\nlist2=[\n \"mobile=86\"+num,\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\ns=sign(list2);\njson2={ \"mobile\": \"86\"+String(num),\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":s,\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption1={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json2)\n}\nurl='http://api.lestory.cn/message/send,'+JSON.stringify(option1);\njava.log(JSON.parse(java.ajax(url)).msg==\"success\"?\"验证码发送成功，请注意短信\":\"验证码获取失败，请稍候再试\");\n}else if(y && !Token){\nlist2=[\n \"mobile=86\"+num,\n\"code=\"+y,\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\ns=sign(list2);\njson2={ \"code\":String(y),\"mobile\": \"86\"+String(num),\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":s,\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption1={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json2)\n}\nurl='http://api.lestory.cn/user/mobile-login,'+JSON.stringify(option1);\na=JSON.parse(java.ajax(url));\njava.log(a.msg==\"success\"?'❗️下面是你的Token，请复制❗️\\n'+a.data.user_token:JSON.stringify(a));\n}\n//获取验证码结束\n\n\n\n\n\n\nlist=[\n\"page_num=\"+page,\n\"keyword=\"+key,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"ver=2.1.3\",\n\"product=1\",\n\"token=\",\n\"sysVer=10\"\n];\n\n\njava.put('token',Token);\ns1=sign(list);\n\njson={\"sign\":String(s1),\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"page_num\":page,\"osType\":\"2\",\"keyword\":key,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/book/search,'+JSON.stringify(option)\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "by天天的鸟蛋蛋\n自己改\n同模板需要更新匹配换成 by酷酷 的\n同模板：https://luoxia.com\n感谢这两位大佬指点\n我选择的是by@= =的\n正文过滤广告@6月柳\n \n##落.*[霞a].*m.*\\n|落.*?霞.*m|落霞$|[\\u{1F300}-\\u{1FAD6}\\u{1F600}-\\u{1F64F}\\u{1F680}-\\u{1F6FF}\\u{2600}-\\u{26FF}\\u{1F900}-\\u{1FAFF}]\n@= = \n\t\n##\\n[^\\w]*落.*[霞a].*m.*\\n|落.*?霞.*m|落霞$\n@酷酷 \n同模板匹配\n##[^。？！”\\w\\n]*(?:[\\u4e00-\\u9fff][^\\u4e00-\\u9fff]+){2}[小读][^\\u4e00-\\u9fff]+[说书].*",
    "bookSourceGroup": "免费",
    "bookSourceName": "落霞读书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://luoxiadushu.com/",
    "customButton": false,
    "customOrder": 524,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1736111189958,
    "respondTime": 26,
    "ruleBookInfo": {
      "author": ".book-describe > p:nth-child(2)@text",
      "coverUrl": "img@src",
      "intro": ".book-describe > .describe-html:nth-child(8)@text##❀[电梯直达| 喜欢本书，可选购纸质书珍藏： ].*",
      "kind": ".book-describe > p:nth-child(3)@text&&.book-describe > p:nth-child(4)@text&&.book-describe > p:nth-child(5)@text##.*：",
      "lastChapter": "p:nth-child(6) > a@text",
      "name": ".book-describe > h1@text"
    },
    "ruleContent": {
      "content": "#nr1@p@textNodes",
      "imageStyle": "",
      "replaceRegex": "##\\n[^\\w]*落.*[霞a].*m.*\\n|落.*?霞.*m|落霞$",
      "sourceRegex": "",
      "title": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": ".cat-search-item:nth-child(n+1) > a",
      "bookUrl": "href",
      "checkKeyWord": "",
      "name": "text"
    },
    "ruleToc": {
      "chapterList": "#content-list@ul@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isVolume": ""
    },
    "searchUrl": "/page/{{page}}/?s={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "女生，女频",
    "bookSourceGroup": "免费",
    "bookSourceName": "连城读书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.lcread.com",
    "bookUrlPattern": "https:\\/\\/www.lcread.com\\/bookpage\\/.*",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 526,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "女频新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=xinshu,{\"webView\":true}\n女频封神榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=fengshen,{\"webView\":true}\n女频推荐榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=tuijian,{\"webView\":true}\n女频人气榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=renqi,{\"webView\":true}\n女频收藏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=shoucang,{\"webView\":true}\n女频勤更榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=qingeng,{\"webView\":true}\n女频钻石榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=zuanshi,{\"webView\":true}\n女频月热销榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=yuerexiao,{\"webView\":true}\n女频VIP更新榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=vipgengxin,{\"webView\":true}\n女频VIP收藏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=vipshoucang,{\"webView\":true}\n女频VIP打赏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=vipdashang,{\"webView\":true}\n女频签约作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=qianyuexinshu,{\"webView\":true}\n女频公众作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=gongzhongxinshu,{\"webView\":true}\n女频新人签约新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=xinqianxinshu,{\"webView\":true}\n女频新人作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=20&bt=0&pn={{page-1}*20}&rank=xinrenxinshu,{\"webView\":true}\n[1]\n1\n​\n\n\n男频新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=xinshu,{\"webView\":true}\n男频封神榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=fengshen,{\"webView\":true}\n男频推荐榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=tuijian,{\"webView\":true}\n男频人气榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=renqi,{\"webView\":true}\n男频收藏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=shoucang,{\"webView\":true}\n男频勤更榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=qingeng,{\"webView\":true}\n男频钻石榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=zuanshi,{\"webView\":true}\n男频月热销榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=yuerexiao,{\"webView\":true}\n男频VIP更新榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=vipgengxin,{\"webView\":true}\n男频VIP收藏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=vipshoucang,{\"webView\":true}\n男频VIP打赏榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=vipdashang,{\"webView\":true}\n男频签约作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=qianyuexinshu,{\"webView\":true}\n男频公众作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=gongzhongxinshu,{\"webView\":true}\n男频新人签约新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=xinqianxinshu,{\"webView\":true}\n男频新人作者新书榜::http://www.lcread.com//book/ranking.html?yy=book_img&prefer=10&bt=0&pn={{page-1}*20}&rank=xinrenxinshu,{\"webView\":true}",
    "header": "{\"referer\": \"http://www.lcread.com\",\n\t\"cookie\": \"0\"}",
    "lastUpdateTime": 1721212334483,
    "loginUrl": "http://my.lc1001.com/user/login",
    "respondTime": 4690,
    "ruleBookInfo": {
      "kind": "id.bri3@tag.span@text"
    },
    "ruleContent": {
      "content": "id.ccon@textNodes",
      "nextContentUrl": "id.next@href"
    },
    "ruleExplore": {
      "author": "class.author@tag.span@text",
      "bookList": "class.book-img@class.integration",
      "bookUrl": "class.images@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.text@text",
      "kind": "class.kind@tag.a@text",
      "lastChapter": "class.caption-r@tag.a@title",
      "name": "tag.img@title",
      "wordCount": "class.caption-r@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "//div[@class=\"tb_con\"][position()>1]//tr",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "class.txt_100_t@text",
      "name": "class.txt_120_t2@text"
    },
    "ruleToc": {
      "chapterList": "//div[@id=\"abl4\"][1]//tr//td/a",
      "chapterName": "//font[1]/text()",
      "chapterUrl": "href",
      "isVip": "//font[2]",
      "updateTime": "text"
    },
    "searchUrl": "http://my.lc1001.com/esou/q?dowhat=query&kw={{key}}&type=1000,{\n\"charset\":\"gbk\"\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🌐奇漫屋",
    "bookSourceType": 3,
    "bookSourceUrl": "http://qiman56.com",
    "customButton": false,
    "customOrder": 527,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"人气榜\",\"url\":\"/rank/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"日读榜\",\"url\":\"/rank/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周读榜\",\"url\":\"/rank/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月读榜\",\"url\":\"/rank/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新作榜\",\"url\":\"/rank/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最新榜\",\"url\":\"/rank/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"冒险热血\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠格斗\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻魔幻\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"侦探推理\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美爱情\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"生活漫画\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"推荐漫画\",\"url\":\"/sort/11-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"完结\",\"url\":\"/sort/12-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"连载中\",\"url\":\"/sort/13-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1728716211041,
    "loginUrl": "",
    "respondTime": 181236,
    "ruleBookInfo": {
      "author": "##作者.([^<]+)<##$1###",
      "coverUrl": "[itemprop=\"image\"]@content",
      "init": "",
      "intro": ".comic-intro@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "class.txtItme.1:2@text##.*：|\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content",
      "tocUrl": "http://qiman56.com/bookchapter/,{\n\"method\": \"POST\",\n\"body\": \"id={{java.put('id',baseUrl.match(/(\\d+)\\/$/)[1]);}}&id2=1\"\n}",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".lazy@html",
      "imageStyle": "FULL",
      "replaceRegex": "##data-original=\"(.*?)\" src=\".*?\"##src=\"$1\"",
      "webJs": ""
    },
    "ruleExplore": {
      "author": ".comic-author@text",
      "bookList": ".rank-item",
      "bookUrl": "a.1@href",
      "coverUrl": ".cover@data-src",
      "intro": "",
      "lastChapter": ".comic-tip@text",
      "name": ".comic-name@text"
    },
    "ruleSearch": {
      "author": ".comic-author@text",
      "bookList": ".comic-list-item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": ".comic-tags@text",
      "lastChapter": ".comic-update-at@text",
      "name": ".comic-name@text"
    },
    "ruleToc": {
      "chapterList": "-$.[*]",
      "chapterName": "$.name",
      "chapterUrl": "http://qiman56.com/@get:{id}/{{$.id}}.html,{\"webView\":true}",
      "isVip": ""
    },
    "searchUrl": "/spotlight/?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n新御书屋 https://m.eyushuwu.com \n新御宅屋 https://m.nprouwen.net\n 19书院   https://m.19shuyuan.com\n   56ms   https://m.jizai12.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 新欲望社🌹",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yuwangshe.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 529,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜  单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总点击榜\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日点击榜\",\"url\":\"/top/dayvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周点击榜\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月点击榜\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏榜\",\"url\":\"/top/goodnum_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"字数排行\",\"url\":\"/top/size_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总推荐榜\",\"url\":\"/top/allvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/top/postdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分  类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"校园言情\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古代言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"罗曼史\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"耽  美\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"百  合\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"同  人\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"奇幻玄幻\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游竞技\",\"url\":\"/sort/9_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻异能\",\"url\":\"/sort/10_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/sort/11_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"惊悚推理\",\"url\":\"/sort/12_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/sort/13_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/sort/14_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越重生\",\"url\":\"/sort/15_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"综合其他\",\"url\":\"/sort/16_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/full/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1750221384747,
    "respondTime": 5803,
    "ruleBookInfo": {
      "author": ".tab@tag.p.0@text##.*：",
      "coverUrl": ".tu@img@src",
      "intro": ".jj@p@html",
      "kind": ".tab1@tag.p.0@text&&.tab1@tag.p.1@text##小说",
      "lastChapter": ".tab@a@text",
      "name": "tag.h1.0@text##\\_.*",
      "wordCount": ".tab1@tag.p.2@text"
    },
    "ruleContent": {
      "content": "#novelcontent@textNodes",
      "replaceRegex": "##分卷阅读.*|.*作者.*"
    },
    "ruleExplore": {
      "author": ".p4@text||.p3 a@text",
      "bookList": ".tt||.content_link",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href##.*/(\\d+)/(\\d+)/##https://img.yuwangshe.net/image/$1/$2/$2s.jpg",
      "intro": ".p5@text##.*简介.|\\s",
      "kind": "p@.p2@text&&.p1 a@text##\\[|\\]",
      "name": "tag.a.1@text##\\_.*",
      "wordCount": "p@.p3@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": ".search_list",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href##.*/(\\d+)/(\\d+)/##https://img.yuwangshe.net/image/$1/$2/$2s.jpg",
      "kind": "tag.a.1@text",
      "name": "tag.a.0@text##\\_.*"
    },
    "ruleToc": {
      "chapterList": "li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "海棠文学③",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.haitangwx.com/#🚀",
    "customButton": false,
    "customOrder": 530,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"总点击\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园言情\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"罗曼史\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"奇幻玄幻\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游竞技\",\"url\":\"/sort/9_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻异能\",\"url\":\"/sort/10_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖灵异\",\"url\":\"/sort/11_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"惊悚推理\",\"url\":\"/sort/12_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/sort/13_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史军事\",\"url\":\"/sort/14_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越重生\",\"url\":\"/sort/15_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"综合其他\",\"url\":\"/sort/16_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"完本\",\"url\":\"/full/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\" \",\"url\":\" \",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1721299751719,
    "loginUrl": "",
    "respondTime": 5614,
    "ruleBookInfo": {
      "author": ".xx a.1@text",
      "coverUrl": "img@src",
      "init": "",
      "intro": ".jianjie@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".xx a.0@text##小说",
      "lastChapter": ".xx a.2@text##正文\\s",
      "name": ".xx li.0@text##\\_.*",
      "tocUrl": ".gengduo a@href"
    },
    "ruleContent": {
      "content": "#nr@html",
      "imageStyle": "0",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".list ul",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "span.2@text##\\s",
      "kind": "span.-1@text",
      "lastChapter": "",
      "name": "a.1@text##\\_.*",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".fk li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "",
      "kind": "a.0@text##\\[|\\]",
      "lastChapter": "",
      "name": "a.1@text##\\_.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".lb li a",
      "chapterName": "text##本页章节.*",
      "chapterUrl": "href",
      "nextTocUrl": ".showpage@a@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "🍉:搜索列表嵌套在一起，有能力的大佬可以看看",
    "bookSourceGroup": "免费",
    "bookSourceName": "就去看网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.97k.cc/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 531,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻小说\",\"url\":\"/category/1_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"修真小说\",\"url\":\"/category/2_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"言情小说\",\"url\":\"/category/3_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"穿越小说\",\"url\":\"/category/4_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"侦探小说\",\"url\":\"/category/5_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"网游小说\",\"url\":\"/category/6_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"科幻小说\",\"url\":\"/category/7_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"灵异小说\",\"url\":\"/category/8_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},\n{\"title\":\"其他小说\",\"url\":\"/category/10_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}]",
    "header": "{'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'}",
    "lastUpdateTime": 1702142599702,
    "loginUrl": "",
    "respondTime": 8595,
    "ruleBookInfo": {
      "author": "@get:{x}",
      "coverUrl": "@js:(s=java.getStringList('@css:img[alt*='+book.name+']@src||meta[property$=image]@content||img[src~=(cover|file|article)[^a-z]|/\\\\d+[/_-]\\\\d+(s?\\\\.|$)]@src||img[data-src~=\\\\S]@data-src||img[src*=/img]@src||img[src~=^(data|https?):|^[^:]+/]@src')).size()?/^data:/.test(s=s.get(0))?java.base64Encode(s):s:null",
      "init": "",
      "intro": "@js:'　　'+java.get(\"g\")",
      "kind": "@js:java.get(\"v\")",
      "lastChapter": "@get:{z}",
      "name": "@js:\nj=String(book.customIntro).match(/^\\{((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)\\}/);\n\nkey=String((u=(baseUrl=String(baseUrl).replace(/,{[^{}]+}$/,'')).match(/^(.+)\\?((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)$/))&&(baseUrl=u[1])&&j?j[1]+u[2]:u?u[2]:j?j[1]:'');\n\n$=it=>(fn=r.select(it)).size()&&(fn=fn.first());\n\nr=org.jsoup.Jsoup.parse(result);\nr.select(\"script,noscript,style,head>:not(meta,title),footer,[class~=^foot],[id~=^foot],a:has(>:last-child:matchesOwn(^分类$))\").remove();\n\nm=String(r).replace(/(?:&nbsp;)+/g,\" \");\n\n书=false;n=String(($('[property$=book_name]')&&(书=fn.attr('content')))||(function(){\nif($('title')&&(书=String(fn.text()).replace(/^(简介页|详情页|目录页|正版|全本|免费阅读|[\\s。.,_/|《「『【〖（(\\[\\])）〗】』」─—-]+)+/,\"\"))){\nfor(x=0,c=r.select(\"h1,h2,h3,strong\").eachText();x<c.size();x++)if(\n(y=c.get(x))!=''&&(u=书.indexOf(y),~u&&u<4))return y}return 书}())||'请自行修改书名').replace(/(?!^)[^\\u4e00-\\u9fa5a-zA-Z0-9]*(?:笔趣阁|思路客|燃文|小说|漫画|手机)?(?:[.|,_/\\s「『【〖（(\\[\\])）〗】』」。─—-]|(?:人工|机器|电脑)?校正|精校|完[整结]|加料|番外|未删节|简介|全[文本集]|下载|(?:小说|漫画|大全|正版(?:小说|漫画)?|免费|免费小说|免费漫画|免费全[文本]|在线|最[新快]|全部|手机|电脑)(?:全[文本集部]|大全|免费|在线|阅读|下载|章节|小说|更新|漫画|\\.)|([^a-zA-Z0-9])(?:azw|mobi|epub|txt)(?![a-zA-Z0-9])|(?:最全)?(?:章节|目录|列表){2,}|更新章节最快|无广告|(?::顶点)?无弹窗|无防盗|小说网|手打全文|[纯全](?:手打|文字)|\\s*by\\s*(?=[\\u4e00-\\u9fa5]))[\\S\\s]*/i,\"$1\");\n\nif($('[property$=author]')){\nx=String(fn.attr(\"content\")).replace(/^作\\s*[者家][\\s:：]*|(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\")\n}else{\nx=m.match(/>\\s*([^>]+?)(?:\\s*<\\/[a-z]+>\\s*|\\s+)著\\s*<|[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】>《》](?:小说|漫画)?作\\s*者(?![^>]+->)(?:[:：\\s〖【（《［\\[\\(]|<[^it\\/][^>]*>|<\\/[^>]+>)+([^\\s<\">,，/／｜|\\)\\]］》）】〗]+)/);\nx=x?x[1]?x[1]:x[2]:$('#author,.author')?String(fn.text()).replace(/(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\"):\"\"}\njava.put(\"x\",x);\n\nc=(fn=r.select(\"meta[property~=category$]\")).size()?String(fn.attr(\"content\"))\n.replace(/(?!^)\\s*[，,./／｜|]\\s*/,\",\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)(?:[分大]\\s*类|类\\s*[型别])(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"v\",c);\n\nc=(fn=r.select(\"meta[property~=status$]\")).size()?fn.attr(\"content\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)状\\s*态(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"s\",c);\n\nc=$('meta[property~=latest_chapter_name$]')?fn.attr(\"content\"):(fn=m.match(/>(?:\\s*[更最]\\s*[新近])+(?:\\s*章\\s*节)?(?:[:：\\s\\[]|<[^>]+>)+(?!\\s*(?:-|&gt;)\\s*<|[:：\\s0-9T年月日时分秒*-]{5,}<|[^:：]+[^章\\s]\\s*[:：]\\s*<|更新(?:时间)?[:：])([^<\"/／｜|\\]>]+)/))&&fn[1];\nif(c)java.put(\"z\",c);\n\n正=true;\nif(key.length){\nif(~key.indexOf(\"全\"))java.put(\"全\",1);\nif((\nu=key.match(/[^\\[\\]]+(?=\\])/),\nc=~key.indexOf(\"录\"),\ny=~key.indexOf(\"单\"),\nbaseUrl=u?u[0]:baseUrl,\n(c||u)&&(baseUrl=c||y?(baseUrl=String((c=baseUrl.match(/(.+[^\\d])(\\d+)([^\\d]*)$/))[1]+1+c[3]),\nc=c[2]+'🌕'+c[1]+'🌕'+2+'🌕'+c[3],\nbaseUrl):baseUrl)\n)||~key.indexOf(\"直\")\n)java.put(\"目\",1),正=1;\nif(~key.indexOf(\"录\"))java.put(\"录\",c),正=1;\nif(y||~key.indexOf(\"#\")){\nif(!u){\nif((网=key.match(/(\\d+)#([^#]+)/))\n&&(尾=网[1],网=网[2].match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n||(尾=r.select('a[href~=\\\\d[^/?\\\\d]*$]:matches(^(尾|末|最后一)[頁页篇章回节節话話]$)')).size()\n&&(网=r.select('a:matches(^2$)')).size()\n&&(网=String(网.first().attr('href')).match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n&&(尾=String(尾.first().attr('href')).match(/\\d+(?=[^/?\\d]*$)/)[0])){\nc=尾+'🌕'+网[1]+'🌕'+网[2]+'🌕'+网[3]\n}else if((c=r.select('a:matches(^(\\\\d+|…+|\\\\.+)$)')).size()){\nif((网=String(c).split(/<a[^>]+>[^\\d<]+<\\/a>/)).length==2){\nfor(c=网[0],尾=网[1],x=+网[1].match(/>([^<]+)/)[1],网=网[0].match(/href=\"([^\"]*[^\\d])(\\d+)([^/?\\d\"]*)\"[^>]*>([^<]+)<[^<]+$/),j=+网[4],i=+网[2]-j;j<x;j++)c+=\"<a href='\"+网[1]+(j+i)+网[3]+\"'>\"+j+\"</a>\";\nc+=尾}\n}else c=1}\njava.put(\"单\",c),正=false}\nif(~key.indexOf(\"跳\"))java.put(\"跳\",1);\nif(~key.indexOf(\"逆\"))book.setReverseToc(true);\nelse book.setReverseToc(false);\nif((u=~key.indexOf(\"图\"))||~key.indexOf(\"原\"))java.put(\"原\",1);\nif(~key.indexOf(\"动\"))java.put(\"动\",',{\"webView\":true}');\nelse if(~key.indexOf(\"静\"))java.put(\"静\",1);\nif(u||~key.indexOf(\"字\"))java.put(\"文\",u?1:2)\n}else book.setReverseToc(false);\n\nc=(fn=r.select(\"meta[property$=description][content~=\\\\S]\")).size()?fn.get(fn.size()-1).attr(\"content\"):(r.select(':matchesOwn([\\\\u4e00-\\\\u9fa5]{2,})>:not(br),:not(body,br,:matchesOwn([\\\\s\\\\S]{50}),:has(body,:matchesOwn([\\\\s\\\\S]{50})))').remove(),r.select(\":matchesOwn(\\\\S)\").text());\n\njava.put(\"g\",c=String(c).replace(/[\\snbsp;]*(?:&nbsp;|\\s){2,}|\\s*([？！。]+[”」』\\]\\}\\)）｝】〗〕〉]?)\\s*/g,\"$1　　\").replace(/(?=　　)/g,\"\\n\"));\n\nif(c.length&&(c=c.match(/《([^《》]+)》(?!作品集)/))&&(c=c[1],书?~String(书).indexOf(c)&&~~c.indexOf(n):true))n=c;\n\nif(正==1)m=java.ajax(baseUrl);\njava.setContent(m,baseUrl);\n\nif(正){\nzl=java.getStringList(\"@css:[property$=latest_chapter_url]@content||:matches(^最新章节)>a:only-child:not([href~=^$|#|javascript:])@href||a:matches(^正文\\\\s*[\\\\d第一二三四五六七八九十〇零百千]|^[【《]?(\"+n+\")?[\\\\s》】（\\\\u0028:：＿_－-]*(第[\\\\s0〇零]*[一1]\\\\s*[\\\\u4e00-\\\\u9fa5]|([\\\\u4e00-\\\\u9fa5]{2}阅读[（\\\\u0028:：＿_－-]?)?(0*1([）\\\\u0029.、:：_-]|$)|[〇零]*一([）\\\\u0029\\\\s.、:：_-]|$)))):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:|\"+(bas=baseUrl.replace(/\\/$|\\.[a-zA-Z]+$/,'')).match(/[^?/]+$/)[0].replace(/([*$|?+\\\\\\^\\[\\](){}])/g,'\\\\$1')+\"(?:[/_-]1)?(?:\\\\/|\\\\.[a-zA-Z]+)?$])@href||a:matches(^[^\\\\u4e00-\\\\u9fa5]*(免费|在线|开始|立即|全文|正文|从头)+[试阅]读[^\\\\u4e00-\\\\u9fa5]*$):not([href~=^$|#|javascript:])@href||a:matches(^0*1[^\\\\d]):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:])@href\");\n\nif(zl.size()&&(ck=String(zl.get(0)).match(/^(.*\\/\\/[^/]+)?([/?]?[^/].+[?&/_-])[^&/_-]+\\/?$/)))(jd=ck[1])&&(h=baseUrl.lastIndexOf('/',baseUrl.indexOf(jd.match(/(?:\\.[^.]+){2,}$|[^./]+\\.[^.]+$/)[0])))>8&&(\nq=baseUrl.indexOf(':'),\n(bas=java.get(baseUrl=baseUrl.slice(0,q+2)+baseUrl.slice(h),{})).statusCode()==200&&java.setContent(bas.body(),baseUrl)\n),java.put(\"ck\",ck[2])}\nn",
      "tocUrl": "@js:if(java.get(\"单\")==''){\nif(java.get(\"录\")==java.get(\"目\")){\nr=org.jsoup.Jsoup.parse(result);\n\nscript=r.select(\":matchesOwn(^$)>a[href^=javascript:]:matches(全文|章[節节]|目[錄录]):not(:matches(最新))\");re=false;\n\nif(!script.size()){\nba=(bas=baseUrl.replace(/\\/$|\\.[a-zA-Z]+$/,'')).match(/(http....[^/?]+)(?:([?/])(.*))?$/);b=ba[1];v=ba[3];\n\nr.select(\"a[href~=[^a-z]page[^a-z]]:not(:matches([反正顺順逆倒]序|[全正]文|更多|全部|所有|章[節节]|作品|目[錄录]|列表)),a:not([href~=^(?!//)[^#:]+$|\"+b.split(':')[1]+\"]),:matchesOwn(\\\\S)>a,a[href~=javascript:|#],a:matches(^\\\\S{1,4}$):not(:matches([反正顺順逆倒]序|[阅閱][讀读]|查看|展[开開]|进入|[全正]文|更多|完整|全部|所有|目[錄录]|列表|章[節节]):not(:contains(分类)))\").remove();\n\ny=r.select(\"a[href~=(?i)catalog|contents|chapters|mulu|(^|[^a-z])ml|showchapter|(^|chapter[/_-]?)(more|list|all)|sort[/=_-]asc]\");\n\nif(!y.size()){b3='';\n\nif(ba[2]==\"?\"){\nb3='[href~=^[^?]+$],'\n}else if(ba[3]){\nb3=ba[3].replace(/[*$|?+\\\\\\^\\[\\](){}]/g,'\\\\$0');\n\nb3=\"[href~=\"+b3+\"(\\\\.[^.]+|/\\\\d+(\\\\.[^.]+|/)?)?$],[href~=[/?]\"+b3.replace(/[&/_-][^/_-]+$/,'')+\".*$]:not([href~=[/?]\"+b3.replace(/[/_-]/g,'[/_-]')+\"]),\"}\n\ny=r.select(\"a:not(\"+b3+\"[href~=(?i)(^|[^/])[?/].*((book|[^a-z])(info|case)[^a-z]|(cid|buy)[^a-z]|desc|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/chapter|/index/|/d/],:matches((?i)^$|[0-9零〇一二三四五六七八九十百千万、，：；？！。…‘’“”（）()]|[票榜:：.]|推荐|排行|等级|说明|收藏|书评|简介|分[类卷]|简介|作者|手机|软件|应用|安装|客户|移动|pc|电脑|安卓|苹果|下载|最新|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub))\")}\n\nif(y.size()){\nys=y.select(\"a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|read|all]:matches([反正顺順逆倒]序|全文|章[節节]|目[錄录]):not(:matches(阅读)),a[href~=(?i)catalog|contents|chapter|(^|[^a-z])ml|mulu|read]:matches(更多|列表),a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|all]:matches(^$),a:matches(^[^\\\\u4e00-\\\\u9fa50-9]*([反正顺順逆倒]序|全文(免[費费])?[阅閱][讀读]|(点击|查看|展[开開]|进入|返?回到?)*([全正]文|(更多|完整|全部|所有)?(章[節节]|(作品)?目[錄录])+)+(列表)?(\\\\s*(查看|展开)?更多)?)[^\\\\u4e00-\\\\u9fa50-9]*$)\");zt=false;\n\nif(!ys.size()){\nba=bas.match(/(\\?(?:[^=]+=)+)(.+)$/)||bas.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/index[^/]*)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/))id=xi[1];\nif(ba[1])if(xi=ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=/^\\d$/.test(id)||!xi[1].indexOf(id)?xi[1]:\"(\"+id+\"|\"+xi[1]+\")\";\n\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?\"+id+\"([?_-][a-z=_-]*0|\\\\.[^.]+|[/?]([^\\\\d]*|[^/\\\\d]*/?|(list|more|all)([=_-][a-z]*)?\\\\d+[^\\\\d]*)?)?(&.+)?$]:not(:contains(\"+(bs=String(book.name)[0])+\"))\");\n\nif(!ys.size()){zt=true;\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?(\\\\d+/\"+id+\"[_-]\\\\d+[^\\\\d]*|\"+id+\"[_-][a-z_-]*1[^\\\\d]*)$]:not(:matches(阅读|\"+bs+\"))\")}}\n\nif(ys.size()){\nif((re=ys.select(\"[href~=(/|^)[^.]+$]\")).size())ys=re;\nre=String(ys.first().attr(\"href\"));\n\nfor(x=1;x<ys.size();x++)if((xs=String(ys.get(x).attr(\"href\"))).length>re.length)re=xs;\n\nif(/(?:[2-9]\\d*|1\\d+)[^\\d]*$/.test(re)){\nif(!zt&&(q=re.match(/^(.*[^/])?[&?/].*(?:catalog(ue)?|contents|(?:show)?chapters?|mulu|ml|more|all|list|page)(?:[=_-][a-z]*)?\\d+[^\\d]*$/i))&&v==(q[1]||'').replace(/^http....[^/?]+/,''))zt=true;\nif(zt)re=re.replace(/\\d+(?=[^\\d]*$)/,\"☯1\")}\n\n}}}\n\nre=String(!re?baseUrl:(java.put(\"基\",baseUrl),/^\\/[^/]/.test(re)?b+re:/^https?:/.test(re)?re:/^\\/\\//.test(re)?b.split('//')[0]+re:String(baseUrl).replace(/[^/]*$/,'')+re))}else re=baseUrl;\n\nr=re.replace(/(?:[☯?&/_-][^\\d?/&_-]*[01])+[^\\d]*$/,\"\");\njava.put(\"ba\",r);\nre=re.replace(\"☯\",\"\")}else re=baseUrl;\n\njava.get(\"跳\")==1||re==baseUrl&&/,/.test(book.bookUrl)?re+',{\"webView\":true}':re",
      "wordCount": "@get:{s}"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr).replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{n=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr",
      "imageStyle": "FULL",
      "nextContentUrl": "@js:if((r=java.getStringList((nx=java.get(\"next\"))+\"a:matches(第二[頁页]|下[一\\\\s]*[頁页]):not([href~=^javascript:|^#])@href||a:matches(下[一\\\\s]*[篇章回节節话話]):not([href~=^javascript:|^#])@href||a[href~=[_-]\\\\d+(/|\\\\.[a-z]+)?$]:has(i,img):not(:matches(\\\\S),[href~=^javascript:|^#])@href\")).size()){\nif(~String(book.tocUrl+(nextChapterUrl||'')).indexOf(r=String(r.get(r.size()-1)))||~r.indexOf(nextChapterUrl||String(book.tocUrl).replace(/.+(?=_\\d+\\/$)/,'')))r=null\n}else r=null;\nif(r){if(nx!='')chapter.putVariable(\"next\",(n=r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1))==r?'':'a[href=\"'+n+'\"]@href||');\nr+java.get(\"动\")}",
      "replaceRegex": "@js:if(java.get(\"原\")==1){result}else{\nresult=result.replace(/⚙️([^\\u4e00-\\u9fa5⚙️]+|[零〇一二三四五六七八九十百千万\\s]+|(?!第[零〇一二三四五六七八九十])[\\u4e00-\\u9fa5]+)⚙️/g,'$1').split('📑');\nl=result.length-1;\nwhile(l)if(r=result[--l].match(/^(\\n+(?:[^\\n]{1,30}\\n+){1,3})([\\S\\s]+)$/))result[l]=r[1]+r[2].replace(/⚙️/g,'');\nresult.join('📑')\n.replace(/—/g,\"─\")\n.replace(/[·۰•・]/g,\"・\")\n.replace(/\\s*(?:︴[^\\n　]+\\s+)*📑\\s*|^\\s*(︴[^\\n　]+\\s+)*|\\s*(?:　　|\\n)(?:[\\s&#a-zA-Z0-9]*;)?[\\s　?]*/g,\"☯\")\n.replace(/(?:︴[^☯]*☯)+(?=︴)|☯(?:温馨|[^a-zA-Z0-9\\u4e00-\\u9fa5☯]+)提示.?[:：][^☯]+|☯[^☯]+字体不会安装.?请百度[^☯]+|☯.{0,2}正版订阅在阅文旗下的起点和QQ书城，可以第一时间看到最新章节.{0,2}(?=☯)|︴\\s*第?[〖【『「（《〈〔［｛\\[{(][^☯]+(?=☯)|☯第\\s*[（(][^（()）]+[)）][頁页](?=☯)|[^☯]*(?:关注|[微vVＶｖ][^\\u4e00-\\u9fa5A-Za-z0-9]*[信xXｘＸ]|公[^\\u4e00-\\u9fa5]*众[^\\u4e00-\\u9fa5]*号){2,}[^☯]*|(?:&#?[a-z0-9]*;?)+(?=;|☯);*|read[sx][；;?？]+/g,\"\")\n.replace(/\\s+/g,\" \")\n.replace(/☯[ ☯]*/g,\"\\n\")\n.replace(/(\\n[〖【『「（《〈〔［｛\\[{(]?)([pPＰｐ][SsｓＳ]+(?=[ ：:;；，,、。.─\\d\\u4e00-\\u9fa5])[^\\n]+)/g,\"$1🌕$2\")\n.replace(/\\[\\[\\[[^\\[\\]]+http:file2.qidian.comchapters(.{5,6})(..)([^\\[\\]]{35})\\]\\]\\]/g,'<img src=\"http://file2.qidian.com/chapters/$1/$2/$3\">')\n.replace(/(<img )[^>]*(src=\"[^\"]+\")[^>]*(>)|((?: ?[＋+－-]?[0-9０-９]+(?:[．.／/][0-9０-９]+)?[％%:：]?[a-zA-Z]*)+ ?|[ _＿－-]?[a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９]+)/g,\"$1$2$3☯$4☯\")\n.replace(/☯[・。](?=☯)/g,\"☯.\")\n.replace(/,\\n/g,\"，\")\n.replace(/!(?=\\n)/g,\"！\")\n.replace(/\\?(?=\\n)/g,\"？\")\n.replace(/(<[^<]+)☯☯/g,\"⚙️$1⚙️\\n\")\n.replace(/(?:\\n[^āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─🌕︴\\n]+|([。？！…”』」】〗])[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─☯︴\\n]+[\\u4e00-\\u9fa5]+)?[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─⚙️☯︴\\n]+(?=\\n)|[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*☯([a-zA-ZＡ-Ｚａ-ｚ]*[āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ][a-zA-ZＡ-Ｚａ-ｚ]*)☯[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*/g,\"$1$2\")\n.replace(/[^!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜<（〈〔［｛({\\[\\]})｝］〕〉）>＞’”》」』】〗︴🌕]*(?:☯[^.．!(),\\n\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗⚙️]+|([^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘<＜（〈〔［｛({\\[\\]})｝］〕〉）＞>’”》」』】〗⚙️])(?!\\1)|☯(?=[^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗][!(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗])|[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}]){4,}|[^；;％%～~?？!！\"'”’。…─\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}](?:[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=[)｝］〕〉》）」』】〗\\]}]))?/g,\"📑\")\n.replace(/([；;％%～~?？!！\"'”’。…─])📑(?=[)｝］〕〉》）」』】〗\\]}])/g,'$1')\n.replace(/(?:([\\n。？！])[^\\n。？！]{1,10})?[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑|🌕)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})](?:[^。]{0,5}(?:[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})]|[^📑!,()\\s\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]+))*(?:(?:[^\\n]{1,10}|(?:[\\u4e00-\\u9fa5]{0,5}[，、])*[\\u4e00-\\u9fa5]+[！。]?)(?=\\n))?/g,\"$1\")\n.replace(/((?:[请請][记記]住)?[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]*(?:(?:[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、：，；？！。…─「」‘’“”（）《》〖〗【】]+[*(), \\u4e00-\\u9fa5、，:：；？！。…─「」‘’“”（）《》〖〗【】]{1,3})*[^*︴📑☯⚙️🌕\\s&;(),āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜa-zA-ZＡ-Ｚａ-ｚ0-9０-９\\u4e00-\\u9fa5、,，:：;；?？!！。…～~─'\"‘’“”【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}％%・/／＝=_＿.．＋+－-]+(?!(?:[^>]+>)?⚙️)|☯[^☯\\n]+☯\\.☯[^☯\\n]+☯|本[文书](?:首发|来自)|(?:章节不完整.?|完整章节)?请.{2,6}(?:搜索|百度|引擎|关键[词字])+|(?:[阅閱][讀读]|访问|訪問|[網网地][站址]|链接|鏈接|[\\u4e00-\\u9fa50-9a-zA-Z]{0,4}(?:文学|中文|[網网]))+[:：]|[\\u4e00-\\u9fa50-9a-zA-Z]{0,6}(?:[網网地][站址]|链接|鏈接)为|.{2,4}文[学學][網网]|[请請].{2,4}收藏(?:.{0,2}推[荐薦])?|(?:天才)一秒[記记]住|，?請?訪問|(?:[更最][快新]|[快高]速|热门|(?:[阅閱][讀读])?完整|本|(?:官[網网]|本站).{0,2})(?:章[節节]|小说|更新|[網网地][址站][:：]?|快速)|更新(?:速度)?[最更]?快|(?:(?:无错)?小说|正版|免费|全[文本]|在线|访问|訪問|txt|TXT|继续|各种|推[荐薦]|收藏|分享|交流|你?喜欢的)+(?:全文|免费|在线|[阅閱]?[讀读]|下载|章[節节]|小说|好书)|章[節节](?:目录|列表)|小说[網网](?:更新)?|手打全文|[纯全](?:手打|文字)|手机看书|手机版|笔趣阁|(?:本站|[網网]站|站内|看)?无(?:任何)?(?:广告|弹窗|防盗)(?:章节)?|不弹窗|(?:(?:請|请|或者?)?(?:訪問|访问|[電电手][腦脑机機]|[網网][址站]|用[户戶]|浏览|瀏覽|閱讀|阅读|看小说|看漫画)){2,}|看小说|看漫画|(?:用[^\\n]{2,6})?(?:[追看]书|小说)(?:就用|软件|☯[^☯]+☯)，?|用[^\\n]{2,6}[追看]书|(?:..的)?(?:最佳选择|阅读体验)|(?:推[荐薦]|收藏|分享)(?:本站|我们)|小说..版|文章质量更好|谢谢各位(?:读者|书友)支持|水印广告测试|本章未完|请翻页|点击下一页|领.{0,2}红包|同步更新《[^《》]+》|关注[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+[)｝］〕〉》）」』】〗\\]}])(?:[* (),\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]{0,3}[^⚙️📑*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]+|[….。!！]+(?=\\n))*|⚙️(?!<)[^⚙️\\n]+⚙️)/g,\"\\n⚙️$1⚙️\\n\")\n.replace(/⚙️(<[^<>]+>)⚙️\\n|[〖【『「（《〈〔［｛\\[{(](?:[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}\\n⚙️(?!\\s*\\S\\s*⚙️).+⚙️\\n*)+[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}[)｝］〕〉》）」』】〗\\]}]|(🌕)\\s*⚙️|⚙️\\n[^\\u4e00-\\u9fa5]{0,5}\\n⚙️|\\n⚙️\\s*(\\S)\\s*⚙️\\n(?![^⚙️]{1,3}⚙️)|(⚙️\\n)|([，、；])[\\s,，。、…:：;；?？!！`’]*[,，。、…:：;；?？!！`’](?!⚙️)|\\n[\\s,，。、…:：;；?？!！`’]*(?=[,，。、:：;；?？!！])|([：？！。…─])(?:[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=\\n)|[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+)|☯/g,\"$1$2$3$4$5$6\")\n.replace(/([)）？！?!…」』”\\s。])(?:[^\\n（(🌕)）”』」’。]{0,5}(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n”』」。]{0,5}📑)[^（()）\\n。]{0,5}(?:\\n⚙️.+⚙️(?:\\n(?=\\n⚙️|[^（()）\\n]{1,5}\\n))?|[^（()）\\n。]{0,5}📑(?:[^📑]{1,5}(?=\\n⚙️))?)+(?:[^（()）\\n]{1,5}(?=\\n))?|(?:(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n。]{0,5}📑)[^（()）\\n]{0,5}){2,}|[^（(🌕)）”』」’\\n。]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|同步|下载|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度|[插说]一?[下句]话?，[\\u4e00-\\u9fa5]{0,5})[^（()）\\n]{0,5})*(?:📑|\\n⚙️[^\\n]+⚙️\\n)[^（()）\\n]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|下载|同步|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度)[^（()）\\n]{0,5})*|[^（(🌕)）\\n”』」’。]{0,3}\\n⚙️.+⚙️\\n[^（()）\\n。]{0,3})(?:[\\u4e00-\\u9fa5]+[！。]?|[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]+)?(?=\\n)))+|\\n⚙️[^\\u4e00-\\u9fa5]+⚙️\\n|📑|\\s*︴\\s*|\\n?⚙️\\n?|\\n[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]{2,}\\n[^🌕a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n“《‘【〖『「]*/g,\"$1\")\n.replace(/(?:(?:\\n🌕[^\\n]*)+(?:\\n+[^\\n]+){0,4}|\\n(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|[^\\n]*起点(?:原创|中文)[^\\n]*|[〖【『「（《〈〔［｛\\[{(]?未完待续[^\\n]*)[^\\u4e00-\\u9fa5<>]*$|^\\s*(?:(?:[^\\n]+\\n+){0,4}(?:🌕[^\\n]*\\n?)+|(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|，[^\\n]+)\\n|(?:^|\\n)[^a-z0-9A-Z\\u4e00-\\u9fa5]*(?=\\n)|🌕|\\n\\s*[a-zA-Z]+\\s*$/g,\"\")}",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": "id.l@li",
      "bookUrl": ".s2@a@href",
      "kind": ".s1@text",
      "lastChapter": ".s3@text",
      "name": ".s2@text"
    },
    "ruleSearch": {
      "author": "text.作者：@text##作者：",
      "bookList": "class.block",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "text.简介：@text##简介：",
      "kind": "text.状态：@text&&text.分类：@text&&text.更新：@text&&text.更新时间：@text##状态：|分类：|更新：|更新时间：",
      "lastChapter": "text.最新章节@text##最新章节：",
      "name": "h2.0@a@text",
      "wordCount": "text.字数：@text##字数："
    },
    "ruleToc": {
      "chapterList": "@js:if(java.get(\"单\")==''){\nsrc=org.jsoup.Jsoup.parse(src);\n\nif((result=java.get(\"录\"))==\"\"){if(页=(result=src.select('a[href~=\\\\S]:matches(下[一\\\\s]*[页頁]|下[一二三四五六七八九十百千万〇零0-9]{2,}章):not([href~=^#|javascript:])')).size())result=result.first().attr('href')\n}else{网=String(result).split(\"🌕\");\nfor(i=3,页=+网[0],result=网[1]+2+网[3];i<=页;i++)result+='\\n'+网[1]+i+网[3];\nresult=String(result)}\n\nif(页)java.put(\"页\",/,/.test(book.tocUrl)?result.split('\\n').join(',{\"webView\":true}\\n')+',{\"webView\":true}':result);\n\n嗅=()=>String(src).match(/[\\[(]([\"'])<[a-z]+[ >][^\\[\\]()]+<\\/a>(?:[^\\[\\],()]*<\\/[a-z]+>)?\\1[\\])]/);\n转=it=>it.replace(/\\\\[Uu]([0-9a-zA-Z]{4})/g,(_,it)=>String.fromCharCode(parseInt('0x'+it)));\n兜=()=>src.select(':matchesOwn(^$|[0-9〇一二三四五六七八九十])>a:matches(\\\\S):not(:has(*>*>:not(span)),[href~=(?i)passport|\\\\.aspx$|\\\\.php$|^https://[^/]+(/|index\\\\.[a-z]+)?$|(^|[^/])[?/].*((book|[^a-z])(info|case|page|reg|Game|Play)[^a-z]|buy[^a-z]|SystemInfo|hot|sort|desc|asc|top|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/list\\\\d*([/_-][^/_-]+/?)?$|\\\\d+_\\\\d+_\\\\d+|target=iframe|https%],:matches((?i)^((点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)[\\\\s.端版]*(?=$|点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)|[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?返回.*(简介|书页|目录)[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?|[<>-]+|\\\\d+-\\\\d+章|书页|目录|简介|[上下首尾]([一\\\\s]*[页頁]|[\\\\s\\\\d零〇一二三四五六七八九十百]*章)|[↑\\\\[]?[倒正反逆顺順]序[↓\\\\]]?)$))');\n\nif((zt=java.get(\"嗅\"))!=''){\nif(zt>0&&(嗅=嗅())){\nsrc=嗅[0];\nif(zt==2)src=转(src);\nsrc=org.jsoup.Jsoup.parse(src)}\nsrc.select(java.get(\"除\")).remove();\nif(java.get(\"兜\")==1)src=兜();\nsrc=src.select(java.get(\"查\"))\n\nif(!页){for(首=String(java.get(\"首\")).split('\\n'),ss=src.size(),i=0;i<ss;i++)if(首[i]!=src.get(i)){\nif(i>1)src.subList(1,i).clear();break;}}\n\n}else{\nbook.putVariable(\"除\",除=\"meta,link,a:has(img),\"+((zt=java.get(\"全\")!=1)?\"a[href$=\"+String(book.tocUrl).replace(/,\\{\"webView\":true\\}|^.{8}[^/]*/g,'')+\"],\":\"\")+(基=String(java.get(\"基\")),基==''?'':\"a[href$=\"+基.replace(/^.{8}[^/]*/,'')+\"],\")+\"a[href~=javascript:|#|[a-z]+[A-Z][a-z]+Id[=_-]|[^/][/?&]sub[A-Z]],a:matches(^$|最新章节$|^[^\\\\u4e00-\\\\u9fa5A-Z0-9]*(正文|.{0,2}书架|(免费|在线|开始|立即|全文|从头|点击|正文)+[试阅]读|[^\\\\s\\\\d外内楔前后卷篇章]*(更新调整|[两一二三四五六七八九十]+连更|作者[:：给要有]|双倍月票|感言|推书|推[a-z0-9A-Z_\\\\u4e00-\\\\u9fa5-]+书|[求个请投点下张](月?票|收藏|订阅|推荐)|(感谢|作者)[^\\\\s]*(读者|书友|大家|各位)|[书点]评[^\\\\s]*活动|[没有空]更新|没时间更新|请个?假|关于本书|关于更新|打赏名单|起点活动)[^\\\\s]*)[^\\\\u4e00-\\\\u9fa5A-Z0-9]*$)\");\n\nbook.putVariable(\"嗅\",(基=嗅())?(src=org.jsoup.Jsoup.parse((zt=/\\\\[Uu]([0-9a-zA-Z]{4})/.test(基=基[0]))?转(基):基),zt)?2:1:0);\nsrc.select(除).remove();\n\nif(zt=java.get(\"全\")!=1){\n找=ll=null;\n$=it=>(qc=ll,查=找,ll=src.select(找=it)).size()>14&&(查=it,src=re=ll);\n\nif(!(((ck=java.get(\"ck\"))!=\"\"&&$(\"[href~=\"+ck+\"(?!index(/|\\.[a-z]+)?$)[^.?/_-][^&/_-]*/?$|/[vV][iI][pP][_-]?([Rr]ead|[Cc]hapter)|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&]*$]\"))||$(\"[href~=^[a-z0-9]+(/|\\\\.[^./]+)?$]\"))){\nif(qc&&qc.size()>ll.size())找=查,ll=qc;\n\n$=it=>(re=src.select(it)).size()&&(查=it,src=re);\n\nif(!($(\"[data-cid]\")||$(\"[href~=(?i)(^|[/_-])(chapter|read)+([_-]?id)?/[^/_-]+[/_-][^/_-]+]\")||$(\"[href~=(?i)(^|[&?/_-](book|novel|comic|manhua|mh?)?)(chapter|read)+([_-]?id)?[?/=]]\")||$(\"[href~=(?i)[&?/_-]cid[&?/_=-]]\")||$(\"[data-href]\"))){\nsrc=兜();\nbook.putVariable(\"兜\",1);\n\nba=(ba=String(java.get(\"ba\"))).match(/(\\?(?:[^=]+=)+)(.+)$/)||ba.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/|\\/index[^/]*|\\.[^/.]+)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/)||ba[1]&&ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=xi[1];\n\n$(\"[href~=([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\\\\d+]:not([href~=\"+id+\"[^\\\\d]*$]),[href~=/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[a-zA-Z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?]*$|([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\"+id+\"(/|\\\\.[^.]+|&.+)?$]\")||$(\"[title]\")||$(\"[href~=/view/\\\\d+\\\\.[a-zA-Z]+$]\")}\nif(re.size()<ll.size())查=找,src=ll}}\n\nif(!(zt&&re.size()))src=src.select('a'),查='a';\nif(查)book.putVariable(\"查\",查);\nif(页)java.put(\"首\",src)}\n\nsrc}else if((list=java.get(\"单\"))!=1){\n\nif((网=String(list).split(\"🌕\")).length>1){\nfor(i=+网[2],x=+网[0],j=2,list=\"<a href='\"+baseUrl+\"'>正文1</a>\";i<=x;i++,j++)list+=\"<a href='\"+网[1]+i+网[3]+\"'>正文\"+j+\"</a>\"}\n\norg.jsoup.Jsoup.parse(list).select('a')\n\n}else [\"<a href='\"+baseUrl+\"'>正文</a>\"]",
      "chapterName": "text",
      "chapterUrl": "href@js:chapter.putVariable(\"next\",'a[href~=(?:^|[?/])'+(r=result.trim().replace(/([*$|?+\\\\\\^\\[\\](){}/])/g,'\\\\$1')).match(/[^?/=.]+(?:=(?![01]$)[^=]+)*(?=\\/?$|\\.[^?/.]+$|=[01]$)/)[0]+'[=/_-]2(?:\\\\/|\\\\.[^?/.]+)? *$]@href||a[href~=(?:^|[?/])'+r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1)+' *$]@href||');result+java.get(\"动\")",
      "isVip": "",
      "nextTocUrl": "@js:java.get(\"页\")",
      "updateTime": ""
    },
    "searchUrl": "so/,{\"charset\":\"gb2312\",\"method\":\"post\",\"body\":\"type=articlename&s=我的\",\"headers\":{\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36\",\"Referer\":\"https://www.97k.cc\",\"Cookie\":\"PHPSESSID=1ubiqmnu4338er4mrrr421r3d6; Hm_lvt_a8551bad614bffddbf67de0bca31dfbe=1668393891; Hm_lpvt_a8551bad614bffddbf67de0bca31dfbe=1668393908\"},\"webView\":true}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.kshuwx.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 532,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734832643783,
    "loginUrl": "",
    "respondTime": 53,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.list@tag.p.0@text",
      "kind": "id.info@tag.p.3@text##更新时间：",
      "lastChapter": "@css:[property=og:novel:latest_chapter_name]@content##免费章节 |正文卷 |正文 |VIP章节|卷1",
      "name": "id.info@tag.h1.0@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleContent": {
      "content": "class.content@html##您可以在百度里.*查找最新章节！|一秒记住.*无弹窗免费阅读！|百度搜索笔趣.*小说免费阅读。|高速文字手打.*http.*biquge.*",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "",
      "lastChapter": "tag.td.1@tag.a@text##免费章节 |正文卷 |正文 |VIP章节|卷1",
      "name": "tag.td.0@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.kshuwx.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔下文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.bxwx8.la#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 533,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721152513358,
    "loginUrl": "",
    "respondTime": 185,
    "ruleBookInfo": {
      "intro": "@js:(result=result.match(/内容简介[\\s\\S]+?div>([\\s\\S]*?)<br.*?\\n.*?bxwx/))?result[1].replace(/.*?bxwx.*?\\.org/,'<br>'):''",
      "tocUrl": "@js:baseUrl.replace(/binfo/,'b').replace(/(\\d)\\.htm.*/,'$1/')"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tr:has(.odd):lt(6)",
      "bookUrl": "tag.td.0@a@href",
      "coverUrl": "tag.td.0@a@href@js:result.replace(/binfo/,'image').replace(/\\/(\\d+).htm/,'/$1/$1s.jpg')",
      "kind": "tag.td.5@text&&tag.td.3@text@js:result+'字'",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@text"
    },
    "ruleToc": {
      "chapterList": "+@js:\nvar reg=new RegExp(/<dd(.).+?\"(\\d+\\.html)\">(.*?)<\\/a>/g);\nvar list1=[];\nvar list2=[];\nvar tmp,url,name;\nvar i=-1;\nwhile((tmp=reg.exec(result))){\nurl=tmp[2];\nname=tmp[3];\nif(tmp[1].match(/>/)){\ni=i+1;\nlist1.push({name:name,url:url});\n}\nelse\nlist2.push({name:name,url:url});\n\nif(i==1){\ni=-1;\nlist1=list1.concat(list2.reverse());\nlist2=[];\n}\n}\nlist1;",
      "chapterName": "name",
      "chapterUrl": "url"
    },
    "searchUrl": "http://www.bxwx8.la/cse/search?q={{key}}&submit=搜索",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "全免小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://qmbook.taoyuewenhua.net/",
    "customButton": false,
    "customOrder": 534,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"推荐\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"完本\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=110&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"人气\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=10&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"热搜\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=80&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"收藏\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=20&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"阅读\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=30&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"标签\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=玄幻&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"奇幻\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=奇幻&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"武侠\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=武侠&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"仙侠\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=仙侠&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"都市\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=都市&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"历史\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=历史&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"军事\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=军事&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"奇闻怪谈\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=奇闻怪谈&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=科幻&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"游戏\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=游戏&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"体育\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=体育&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"N次元\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=N次元&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"现实\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=现实&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"推荐\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"完本\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=110&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"人气\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=10&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"热搜\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=80&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"收藏\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=20&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"阅读\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=30&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"标签\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻言情\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=玄幻言情&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"仙侠奇缘\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=仙侠奇缘&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"古代言情\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=古代言情&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"现代言情\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=现代言情&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"浪漫青春\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=浪漫青春&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"奇闻怪谈\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=奇闻怪谈&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"科幻空间\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=科幻空间&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"游戏竞技\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=游戏竞技&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"N次元\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=N次元&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"同人纯爱\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=同人纯爱&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"短篇\",\"url\":\"@js:\ntime=Date.now();\nt=\\\"appid=qmbook&brand=XIAOMI&brtype=100&category=短篇&channel=Tencent&ctype=2&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\\\"+(page-1)+\\\"&pageSize=10&status=0&t=\\\"+time+\\\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\\\";\nsign=java.md5Encode(t).toUpperCase(); r=String(t).replace(/key=tfbook_free/,'sign=')+sign; \\\"http://qmbook.taoyuewenhua.net/book_mall/book_rank?\\\"+r;\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "{\n\t\"User-Agent\":\"okhttp/3.12.1\"\n\t}",
    "lastUpdateTime": 1743591625168,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 908,
    "ruleBookInfo": {
      "author": "$.authorName",
      "canReName": "",
      "coverUrl": "$.coverUrl",
      "downloadUrls": "",
      "init": "$.data",
      "intro": "{{$.intro}}",
      "kind": "{{$.categoryName}}\n{{$.subCategoryName}}\n{{java.getString('$.status')=='50'?'完结':'连载'}}",
      "lastChapter": "$.latestChapter",
      "name": "$.title",
      "tocUrl": "@js:\ntry{\ntime=Date.now();\nt=\"appid=qmbook&bid={{$.bid}}&brand=XIAOMI&channel=Tencent&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&t=\"+time+\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\";\nsign=java.md5Encode(t).toUpperCase();\n\nr=String(t).replace(/key=tfbook_free/,'sign=')+sign;\n\n\"http://qmbook.taoyuewenhua.net/tf/chapter_list?\"+r;\n}\ncatch(e){\n\t\"http://tfbook-1251592799.file.myqcloud.com/chapters/{{$.bid}}.json\"\n\t}",
      "wordCount": "$.allWords"
    },
    "ruleContent": {
      "content": "$.data.content"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "$.data.bookList",
      "bookUrl": "@js:\ntime=Date.now();\nt=\"appid=qmbook&bid={{$.sourceId}}&brand=XIAOMI&channel=Tencent&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&t=\"+time+\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\";\nsign=java.md5Encode(t).toUpperCase();\n\nr=String(t).replace(/key=tfbook_free/,'sign=')+sign;\n\n\"http://qmbook.taoyuewenhua.net/tf/book?\"+r;",
      "checkKeyWord": "",
      "coverUrl": "$.coverUrl",
      "intro": "$.intro",
      "kind": "{{$.categoryName}}\n{{$.subCategoryName}}\n{{java.getString('$.status')=='50'?'完结':'连载'}}\n{{r=String(Math.round(java.getString('$.score'))/10);r=='0'?'':r+ '分'}}",
      "lastChapter": "$.latestChapter",
      "name": "$.title",
      "wordCount": "$.allWords"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList",
      "chapterName": "$.title",
      "chapterUrl": "@js:\ntime=Date.now();\nt=\"appid=qmbook&bid={{$.bid}}&brand=XIAOMI&channel=Tencent&cid={{$.cid}}&device_id=17af4cb0a45440e5b5bcba1798d760c6&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&t=\"+time+\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\";\nsign=java.md5Encode(t).toUpperCase();\n\nr=String(t).replace(/key=tfbook_free/,'sign=')+sign;\n\n\"http://qmbook.taoyuewenhua.net/tf/chapter_content?\"+r;",
      "isVip": "",
      "isVolume": "",
      "updateTime": "{{String(java.timeFormat(java.getString('$.modifiedOn'))).replace(/\\//g,\"-\")}} 字数:{{$.words}}"
    },
    "searchUrl": "@js:\ntime=Date.now();\nt=\"appid=qmbook&brand=XIAOMI&channel=Tencent&ctype=1&device_id=17af4cb0a45440e5b5bcba1798d760c6&keywords=\"+key+\"&model=10X&optype=3&ostype=0&osversion=7.1.2&package_name=com.martian.qmbook&page=\"+(page-1)+\"&pageSize=10&searchType=1&sourceName=tf&t=\"+time+\"&token=489fecb8-532b-4ad9-b89f-4213768599bf&uid=74514329&version_code=410&version_name=1.5.9&key=tfbook_free\";\nsign=java.md5Encode(t).toUpperCase();\n\nr=String(t).replace(/key=tfbook_free/,'sign=')+sign;\n\n\"http://qmbook.taoyuewenhua.net/authopt/ty/search_books?\"+r;",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "移动阅读 cm",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ndlib.cn-2.0",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 535,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1745853602518,
    "loginUrl": "\\\\目录列表规则处添加账号信息",
    "respondTime": 489,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.returnObject[0].content@js:\nresult?result:'无法获取内容？\\n1.编辑书源添加自己的账号信息，找到目录列表规则，按提示添加账号信息\\n2.如果添加了账号信息仍然无法获取内容，请尝试刷新或更新账号信息（方式二）\\n3.必要说明：如果使用方式一添加了账号信息，每次打开新的书籍详情页或刷新正文都会重新获取账号信息，因此之前获取的书籍正文的链接将会失效，因此建议全文下载或者按2操作\\n必要说明：在使用本源前，请考虑到使用本源可能造成的账号封禁等问题'",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$..resAndMagResult[*].resourceInfo",
      "bookUrl": "$.resId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n};\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n//目录链接生成\ndata = {\n    timeStamp:Date.now(),\n    resourceId:result,\n    pageSize:10000,\n    pageNum:1\n};\ngetPostUrl(data,'qryChapterList');",
      "coverUrl": "$.coverUrl",
      "intro": "$.shortIntro",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.name",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.returnObject[0].children||$.returnObject@js:\n//账号信息定义（方式二会覆盖方式一)\n//方式一：账号密码\nvar account='';\nvar pwd='';\n//方式二：成功登录后的cookie的值（再次登录或退出登录或超过一定时间会失效）\nvar userId='';\nvar siteId='';\nvar wapToken='';\n//定义结束\n\n//以下代码不要动\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||'0';\nvar deskey = wapToken||'web@hzlq';\nvar siteId=siteId||'1';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvar value = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n\n//获取登录信息\nif((account&&pwd&&(!wapToken))){\n  var loginInfo={\n  timeStamp:Date.now(),\n  account:account,\n  pwd:pwd\n}\n  var loginInfoUrl=getPostUrl(loginInfo,'login');\n  var ddd=String(java.ajax(loginInfoUrl));\n  var loginData=JSON.parse(ddd).returnObject;\n  userId=loginData.userId;\n  siteId=loginData.siteId;\n  deskey=loginData.wapToken;\n}\njava.put('userId',userId);\njava.put('deskey',deskey);\njava.put('siteId',siteId);\nresult",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.chapterId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||String(java.get('userId'));\nvar deskey=deskey||String(java.get('deskey'));\nvar siteId=siteId||String(java.get('siteId'));\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvar value = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\nvar data = {\n    timeStamp:Date.now(),\n    uaInfo:'1',\n    chapterId:result\n};\ngetPostUrl(data,'qryChapterDetails');",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "<js>\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n};\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n//搜索链接\nsearch_data = {\n    timeStamp:Date.now(),\n    bigType:\"0\",\n    content: key,\n    pageSize:10,\n    pageNum: page\n};\ngetPostUrl(search_data,'qrySearchList');\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "🆙💯Dragon Quest QB\n{{book.origin}}/wenxue/buy/ad-chapter/v4?apn=1&resourceId={{baseUrl.match(/bookId=(\\d+)/)[1]}}&serialId={{$.serialID}}",
    "bookSourceGroup": "正版",
    "bookSourceName": "🌕起点标签",
    "bookSourceType": 0,
    "bookSourceUrl": "DragonQuestQBqq1",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 536,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"user-agent\":\"Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36\",\n\t\"Referer\":\"https://bookshelf.html5.qq.com/qbread\"\n\t}",
    "lastUpdateTime": 1745852741213,
    "loginUrl": "",
    "respondTime": 1303,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.picurl",
      "init": "$.data.bookInfo",
      "intro": "<p>{{(t=String(java.getString('$.tag'))).length?'🏷️ '+t.replace(/\\|/g,', '):''}}</p>{{'\\n&lrm;'}}\n<p>{{$.summary}}</p>",
      "kind": "{{$.userscore}}分\n{{$.subject}}\n{{java.getString('$.isfinish')=='true'?'已完结':'连载中'}}\n{{java.put('time',String(java.timeFormat(java.getString('$.lastUpdatetime')*1000)).replace(/\\//g,'-').replace(/\\s.*/,''))}}",
      "lastChapter": "{{$.lastSerialname}} • {{java.get('time')}}",
      "name": "$.resourceName",
      "tocUrl": "https://bookshelf.html5.qq.com/qbread/api/book/all-chapter?bookId={{$.resourceID}}",
      "wordCount": "$.contentsize"
    },
    "ruleContent": {
      "content": "<p>{{$.data.Content[0].Content}}</p>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$..author",
      "bookList": "$..second[*]&&$..bookList[*]&&$..rankList[*]",
      "bookUrl": "$..bid\n<js>1100000000+parseInt(result)</js>\nhttps://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{result}}",
      "coverUrl": "$..bid\n@js:\ns = result\nfunction gt(s){\n\ta = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$..intro",
      "kind": "$..catel2name&&$..catel3name",
      "lastChapter": "$..lastChapterName",
      "name": "$..title",
      "wordCount": "$..totalWords"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.state[?(@.dataName == 'novel_search_list')].items[*]",
      "bookUrl": "https://bookshelf.html5.qq.com/qbread/api/novel/intro-info?bookid={{$.docId##.*_}}",
      "coverUrl": "$.bid\n@js:\nvar s = result\nfunction gt(s){\n\tlet a = s.slice(-3)\n\tif(a<10){\n\t\t\tn = s.slice(-1)\n\t\t}\n\telse if(a<100){\n\t\t\tn = s.slice(-2)\n\t\t}\n\telse{\n\t\t\tn = a\n\t\t}\n\treturn n\n}\n\"http://wfqqreader-1252317822.image.myqcloud.com/cover/\"+gt(s)+\"/\"+s+\"/b_\"+s+\".jpg\"",
      "intro": "$.intro",
      "kind": "{{$.tag_views##\\s+##,}}\n{{java.getString('$.is_finished')==1?'已完结':'连载中'}}",
      "lastChapter": "$.updateInfo##已更新至##第",
      "name": "$.title",
      "wordCount": "$.totalWords"
    },
    "ruleToc": {
      "chapterList": "$.rows",
      "chapterName": "$.serialName",
      "chapterUrl": "https://novel.html5.qq.com/be-api/content/ads-read,{\n\t\"method\": \"POST\",\n\t\"body\": {\n\t\t\"Scene\": \"chapter\",\n\t\t\"ContentAnchorBatch\": [{\n\t\t\t\t\"BookID\": \"{{baseUrl.match(/bookId=(\\d+)/)[1]}}\",\n\t\t\t\t\"ChapterSeqNo\": [{{$.serialID}}]\n\t\t\t}]\n\t},\n\t\"headers\": {\n\t\t\"Q-GUID\": \"4aa27c7cf2d9aca3359656ea186488cb\"\n\t}\n}",
      "isVip": "//删掉这行字，vip章节会显示🔓\n$.isFree",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://so.html5.qq.com/ajax/real/search_result?tabId=360&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "️戊戟武侠",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.wujixsw.org#🎃",
    "customButton": false,
    "customOrder": 538,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1720342490945,
    "respondTime": 3570,
    "ruleBookInfo": {
      "author": "class.author@text",
      "coverUrl": "tag.img@src",
      "kind": "class.sort@text##类别：",
      "lastChapter": "id.chapterlist@tag.p.0@text",
      "name": "class.title@text",
      "tocUrl": "text.完整目录@href"
    },
    "ruleContent": {
      "content": "id.chaptercontent@html##<!--|-->|天才一秒记住.*无广告！|（本章未完，请点击下一页继续阅读）|『章节错误，点此举报』|『加入书签，方便阅读』",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author.0@tag.a.-1@text",
      "bookList": ".hot_sale",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.-1@href<js>'https://m.ajnnan.com/image'+String(result).replace(/.*?(\\d*?)(\\d{1,3}).html/,'/$1/$1$2/$1$2s.jpg').replace('//','/0/')</js>",
      "kind": "",
      "lastChapter": "class.author.-1@tag.a.@text",
      "name": "class.title@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@tag.p!0",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/SearchBook.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": " 大帝小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.anshuge.com/",
    "customButton": false,
    "customOrder": 539,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1743585819052,
    "loginUrl": "",
    "respondTime": 501,
    "ruleBookInfo": {
      "name": "tag.a.16@text"
    },
    "ruleContent": {
      "content": "id.contents@html",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "table@tag.tr!0",
      "bookUrl": "td.0@tag.a.0@href",
      "lastChapter": "td.1@tag.a.0@text",
      "name": "td.0@tag.a.0@text",
      "wordCount": "td.R@text"
    },
    "ruleToc": {
      "chapterList": ".L a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "search/?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ibiquzw.info#🎃",
    "bookUrlPattern": "http://m.ibiquzw.info/[\\d_]+/",
    "customButton": false,
    "customOrder": 540,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/xclass/0/{{page}}.html\n玄幻奇幻::/xclass/1/{{page}}.html\n修真仙侠::/xclass/2/{{page}}.html\n都市青春::/xclass/3/{{page}}.html\n历史军事::/xclass/4/{{page}}.html\n网游竞技::/xclass/5/{{page}}.html\n科幻灵异::/xclass/6/{{page}}.html\n其它::/xclass/7/{{page}}.html\n全本::/quanben0_{{page}}.html\n其它::/quanben7_{{page}}.html\n玄幻奇幻::/quanben1_{{page}}.html\n修真仙侠::/quanben2_{{page}}.html\n都市青春::/quanben3_{{page}}.html\n历史军事::/quanben4_{{page}}.html\n网游竞技::/quanben5_{{page}}.html\n科幻灵异::/quanben6_{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1720835119180,
    "respondTime": 1634,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#chaptercontent@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{try{chapter.title}catch(e){\"\"} }}|\n\\(第\\d+.+页\\)"
    },
    "ruleExplore": {
      "author": "p.author@text",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": "p.-1@text##简介：",
      "kind": ".score@text",
      "name": "p.title@text"
    },
    "ruleSearch": {
      "author": "p.author a.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a.0@href",
      "checkKeyWord": "剑来",
      "kind": "p.-1@textNodes##\\|.*\\s##,",
      "lastChapter": "a.-1@text",
      "name": "p.title@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist p!0@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://m.ibiquzw.info/SearchBook.php?keyword={{key}}",
    "weight": 80
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "入殓师",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.rulianshi.la/",
    "customButton": false,
    "customOrder": 541,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734832225931,
    "respondTime": 3128,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "[property=\"og:novel:read_url\"]@content",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "class.nr_nr@tag.div.1@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "",
      "sourceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.3@text##作者：",
      "bookList": "class.block",
      "bookUrl": "a.0@href",
      "checkKeyWord": "我的",
      "coverUrl": "img@src",
      "kind": "p.2@text##分类：",
      "lastChapter": "p.4@tag.a@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": "class.cover@tag.ul.1@tag.a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href",
      "preUpdateJs": ""
    },
    "searchUrl": "s.php?q={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n一曲书屋 https://www.yiqushuwu.com",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 海棠书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.haitangshufang.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 542,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuan/\n武侠修真::/wuxia/\n都市言情::/dushi/\n历史军事::/lishi/\n网游竞技::/wangyou/\n科幻未来::/kehuan/\n恐怖悬疑::/kongbu/\n其他类型::/qita/\n全本小说::/quanben/\n排行榜单::/paihang/",
    "header": "",
    "lastUpdateTime": 1724338207547,
    "respondTime": 2243,
    "ruleBookInfo": {
      "author": ".auths@textNodes##作者：",
      "coverUrl": "img@src",
      "intro": ".u-bx@p@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": ".zhang-txt-nei-rong@html"
    },
    "ruleExplore": {
      "author": "div.2@text",
      "bookList": ".topba-list@li",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "kind": "div.5@text",
      "lastChapter": "div.1@text",
      "name": "a.0@text",
      "wordCount": "div.3@text"
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tr!0",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "",
      "lastChapter": "td.1@text",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": ".pox@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n 'method': 'POST',\n 'charset': 'gbk',\n 'body':'searchkey={{key}}&t_btnsearch=搜索&searchtype=articlename'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.cxbz958.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 543,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1724756098763,
    "loginUrl": "",
    "respondTime": 13766,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "downloadUrls": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "meta[property~=category|status|update_time]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "div[id=\"nr1\"]@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{chapter.title}}.*\\n*"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "text.作者@text##作者：",
      "bookList": ".article>div[class=\"block\"]",
      "bookUrl": "##<a.*?href=\"([^\"]+)\"##$1###",
      "checkKeyWord": "异界",
      "coverUrl": "##<img.*?src=\"([^\"]+)\"##$1###",
      "intro": "",
      "kind": "text.分类@text##分类：",
      "lastChapter": "text.最新章节@text##最新章节：",
      "name": "h2>a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ":<li[^>]*><a[^\"]+\"([^\"]+)\"[^>]*>([^<]+)",
      "chapterName": "$2",
      "chapterUrl": "$1",
      "nextTocUrl": "##href=\"([^\"]+)\"[^>]*>下一页<##$1###"
    },
    "searchUrl": "http://m.cxbz958.org/s.php?submit=&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "\n// https://www.mayiwsk.com\n//https://m.mayiwsk.com/\n\t//https://m.mayiwxw.com\n/*访问过快偶尔宕机，出错了会加载重试。\n以下代码勿动！❗️⚠️\n可在js中通过eval(String(source.bookSourceComment))\n调用*/\nvar err=/503 Service Temporarily Unavailable/;\nwhile(err.test(result)){\n\tjava.log(\"网站出错，重新加载\")\n\tresult=java.ajax(baseUrl)\n\t}\nresult;",
    "bookSourceGroup": "免费",
    "bookSourceName": "蚂蚁文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.mayiwsk.com",
    "bookUrlPattern": "https?://m.mayiwxw.com/\\w+/",
    "customButton": false,
    "customOrder": 544,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/sort/1_{{page}}/\n修真小说::/sort/2_{{page}}/\n都市小说::/sort/3_{{page}}/\n穿越小说::/sort/4_{{page}}/\n网游小说::/sort/5_{{page}}/\n科幻小说::/sort/6_{{page}}/\n其他小说::/sort/7_{{page}}/\n女生频道::/sort/8_{{page}}/",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1737671307399,
    "loginUrl": "",
    "respondTime": 3471,
    "ruleBookInfo": {
      "author": "text.作者@text##作者：",
      "coverUrl": "img@src",
      "init": "<js>\neval(String(source.bookSourceComment))\n</js>",
      "intro": "#inf@text##简介：|【展开】|【收起】",
      "kind": "{{@@text.类别@text}}\n{{@@text.状态@text}}\n{{@@text.更新@text}}\n##类别：|状态：|更新：",
      "lastChapter": "text.最新@a@text",
      "name": "text.书名@text##书名：",
      "tocUrl": "{{baseUrl.replace('/m',\"/www\")}},{\n  \"headers\": {\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.41 Safari/537.36\"}\n}"
    },
    "ruleContent": {
      "content": "<js>\neval(String(source.bookSourceComment))\n</js>\n#content@textNodes",
      "nextContentUrl": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "<js>\neval(String(source.bookSourceComment))\n</js>\n.newbook_list",
      "bookUrl": "a.1@href##index.html",
      "coverUrl": "img@src",
      "intro": ".newbook_intor@text##【展开】|【收起】",
      "kind": "span.s1@text",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": "<js>\neval(String(source.bookSourceComment))\n</js>\np.sone",
      "bookUrl": "a.0@href",
      "kind": "",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "<js>\neval(String(source.bookSourceComment))\n</js>\n#list dd a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "/s.php,{\n  \"body\": \"search_key={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "有声",
    "bookSourceName": "猫耳听书（优）",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.com#活力宝",
    "customButton": false,
    "customOrder": 545,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1766364950370,
    "respondTime": 1364,
    "ruleBookInfo": {
      "canReName": "1",
      "intro": "class.intro-content@html||class.intro@html||$.info.sound.intro",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##���ͣ�|��ǩ����|��ǩ��",
      "name": "class.drama-name@text",
      "tocUrl": "@js:\nhref = java.getString(\"@@class.drama-name@href\");\nif(baseUrl.match(/dramaapi|mdrama/) || href!=\"\"){\nid = baseUrl.match(/drama_id=(\\d+)/)?baseUrl.match(/(\\d+)/)[1]:href.match(/(\\d+)/)[1]\nresult='https://www.missevan.com/dramaapi/getdrama?drama_id='+id\n}else if(baseUrl.match(/player/)){\n\tresult='https://www.missevan.com/sound/getsound?soundid='+baseUrl.match(/(\\d+)/)[1]\n\t}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl"
    },
    "ruleExplore": {
      "author": "class.video-auther@a@text",
      "bookList": "class.video-box-inner",
      "bookUrl": "tag.a.0@href##$##,{\"webView\":true}",
      "coverUrl": "img@src",
      "lastChapter": "class.video-time@text##����ʱ��.",
      "name": "class.video-play-icon@title"
    },
    "ruleSearch": {
      "author": "$.username||$.author",
      "bookList": "<js>\nkey=java.get('key');\npage=java.get('page');\n\n//������������\njson=[];json2=[];\n\n//�ж�json���Ƿ����б�\nif(JSON.parse(result).info.Datas){\njson=JSON.parse(result).info.Datas;}\n\n//���ص�������ҳ�沢תΪjson\njson1=JSON.parse(java.ajax('https://www.missevan.com/sound/getsearch?s='+key+'&type=3&page_size=10&p='+page));\n\n//�ж�json���Ƿ����б�\nif(json1.info.Datas){\njson2=json1.info.Datas\n}\n\n//�缯�����б��뵥�������б�ƴ��\nlist=json.concat(json2);\n\nresult=JSON.stringify(list)\n</js>\n$.[*]",
      "bookUrl": "<js>\nid=String(result).match(/id=(\\d+)/)[1];\nif(!String(result).match(/catalog_name/)){\nresult='https://www.missevan.com/sound/getsound?soundid='+id\n}else{result='https://www.missevan.com/dramaapi/getdrama?drama_id='+id}\n</js>",
      "coverUrl": "$.front_cover||$.cover",
      "intro": "$.abstract",
      "kind": "{$.type_name},{$.catalog_name}##\\{.*?\\}",
      "lastChapter": "$.newest",
      "name": "$.soundstr||$.name"
    },
    "ruleToc": {
      "chapterList": "<js>'['+result+']'</js>\n$..info.episodes.episode[*]||$..info.episodes.music[*]||$.[*]",
      "chapterName": "$.name||$.info.sound.soundstr",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id||$.info.sound.id}}"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page={{page}}\n@js:java.put('key',key);java.put('page',page);result",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "超凡小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.pan8.org#🎃",
    "customButton": false,
    "customOrder": 546,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 0,
    "respondTime": 607,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "dt@img@src",
      "intro": ".intro clearfix@text##阅读.*最新章节请关注.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "<js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<p>元素的<dd>元素\nvar dds = document.select('div.content > dd');\n\n// 将dds转换为数组以便排序\nvar ddArray = [];\nfor (var i = 0; i < dds.size(); i++) {\n    ddArray.push(dds.get(i));\n}\n\n// 按照data-id属性对ddArray进行排序\nddArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\nvar data = {\n    mergedText: \"\"\n};\n\n// 遍历排序后的ddArray\nfor (var i = 0; i < ddArray.length; i++) {\n    var dd = ddArray[i];\n    var dataId = dd.attr('data-id');\n    // 获取当前dd下的所有<p>元素的文本内容，保持原有顺序\n    var paragraphs = dd.select('p');\n    var paragraphTexts = [];\n    for (var j = 0; j < paragraphs.size(); j++) {\n        var paragraph = paragraphs.get(j);\n        paragraphTexts.push(paragraph.text());\n    }\n    list.push({\n        id: dataId, // 使用data-id属性\n        paragraphs: paragraphTexts // 存储所有<p>元素的文本内容为数组，保持原有顺序\n    });\n    // 合并文本内容，每个<p>内容后添加换行符，保持原有顺序\n    data.mergedText += paragraphTexts.join(\"\\n\") + \"\\n\"; // 添加额外换行符以便分隔每个dd的内容\n}\n\n// 输出结果\njava.log(JSON.stringify(list));\njava.log(data.mergedText);\n\n// 返回data对象\nresult = data.mergedText;\n</js>",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##阅读.*最新章节.*超凡小说网.*|最新网址.*|.*请点击下一页继续.*|.*第.*页.*",
      "title": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a@ownText##.*\\(|\\)",
      "bookList": ".bd@li",
      "bookUrl": "a@href",
      "coverUrl": "",
      "kind": "span@text##\\[|\\]",
      "lastChapter": "",
      "name": "a@textNodes##\\(.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": " <js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<li>元素的<div>元素\nvar divs = document.select('ul.list > div');\n\n// 将divs转换为数组以便排序\nvar divArray = [];\nfor (var i = 0; i < divs.size(); i++) {\n    divArray.push(divs.get(i));\n}\n\n// 按照data-id属性对divArray进行排序\ndivArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\n// 遍历排序后的divArray\nfor (var i = 0; i < divArray.length; i++) {\n    var div = divArray[i];\n    var dataId = div.attr('data-id');\n    // 获取当前div下的所有<li>元素\n    var lis = div.select('li');\n    for (var j = 0; j < lis.size(); j++) {\n        var li = lis.get(j);\n        var a = li.select('a').first();\n        if (a != null) {\n            list.push({\n                text: a.text(),\n                id: dataId, // 使用data-id属性\n                url: a.attr('href')\n            });\n        }\n    }\n}\n\n//java.log(JSON.stringify(list));\nlist;\n</js>",
      "chapterName": "text",
      "chapterUrl": "url",
      "formatJs": "",
      "isVolume": ""
    },
    "searchUrl": "http://wap.pan8.org/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "365小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shukuge.com#🎃",
    "customButton": false,
    "customOrder": 547,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n\"User-Agent\":\"Mozilla/5 (Android 11; wv; Arm64) Chrome126 Mobile Safari\"\n}",
    "lastUpdateTime": 1754712420142,
    "respondTime": 1002,
    "ruleBookInfo": {
      "author": "p:nth-child(3) > a@text",
      "coverUrl": ".bookdcover > img@src",
      "intro": ".bookdtext > p:nth-child(2)@text##.+下载后请在24小时之内删除\\.|我",
      "kind": ".bookdmore > p:nth-child(1) > a@text&&.bookdmore > p:nth-child(2) > a@text&&.bookdmore > p:nth-child(4)@text&&.bookdmore > p:nth-child(8)@text##状态：|最新时间：",
      "lastChapter": "p:nth-child(7) > a@text",
      "name": ".bookdcover > img@alt",
      "tocUrl": "p:nth-child(8) > .btn@href"
    },
    "ruleContent": {
      "content": "#content > #content@textNodes",
      "title": "h1@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": ".listitem",
      "bookUrl": ".bookdesc > a@href",
      "coverUrl": ".listitem:nth-child(1) img@src",
      "intro": ".listitem:nth-child(1) .desc:nth-child(4)@text##简介：.+下载后请在24小时之内删除\\.|我",
      "kind": "span.1@text&&span.2@text&&span.3@text##分类：|状态：|类型：",
      "lastChapter": ".desc > a@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": "dl > dd",
      "chapterName": "dd > a@text",
      "chapterUrl": "dd > a@href"
    },
    "searchUrl": "/Search?wd={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨丁斐🅰",
    "bookSourceType": 2,
    "bookSourceUrl": "http://comic.321mh.com",
    "customButton": false,
    "customOrder": 548,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nlet model = (title,url,num)=>{\n    return {title:title,url:url,style:{layout_flexGroup:1,layout_flexBasisPercent:num}}\n}\n\nlet ajax = java.ajax(\"http://comic.321mh.com/v1/comic/getcomicsortandroid?platformname=android&productname=mht\")\nlet url=\"https://getconfig-globalapi.yyhao.com/app_api/v5/getsortlist/?page={{page}}&orderby=date&search_type=&comic_sort=tihuan&search_key=&platformname=android&productname=mht\"\n\n丁斐=JSON.parse(ajax).data.map(i=>{\n\tt=url.replace(\"tihuan\",i.urlid)\n\treturn  model(i.name,t,0.15)\n\t})\n\t\n\nJSON.stringify(丁斐)",
    "lastUpdateTime": 1724930118233,
    "respondTime": 1415,
    "ruleBookInfo": {
      "intro": "$..comic_desc##^##<br>"
    },
    "ruleContent": {
      "content": "@js:\nres=baseUrl.match(/mycha=(.*)/)\ncha=JSON.parse(res[1])\n\nhost=\"https://mhpic.manhualang.com\"\nlist=[]\n\nlen=cha.end_num\nimg=cha.chapter_image.high\nfor(var i=0;i<len;i++){\n\t  list.push(img.replace(\"$$\",i+1))\n}\n\n\nlist.map(x=>'<img src=\"'+host+x+'\">').join(\"\\n\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.comic_author",
      "bookList": "$.data[*]",
      "bookUrl": "http://comic.321mh.com/app_api/v5/getcomicinfo_body/?comic_id={{$.comic_id}}&from_page=search&platformname=android&productname=mht",
      "coverUrl": "http://image.yqmh.com/mh/{{$.comic_id}}.jpg",
      "kind": "$.comic_type##[a-z]+|\\|",
      "lastChapter": "$.last_chapter_name",
      "name": "$.comic_name"
    },
    "ruleToc": {
      "chapterList": "-$..comic_chapter[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "$[?(@.chapter_name==\"{{chapter.title}}\")]\n@js:\n\ncha=java.getElement(result)[0]\nbaseUrl+'&mycha='+JSON.stringify(cha)\n",
      "updateTime": "$..create_date\n@js:\"🕗 \"+java.timeFormat(result*1000)"
    },
    "searchUrl": "https://getconfig-globalapi.yyhao.com/app_api/v5/getsortlist/?page={{page}}&orderby=click&search_key={{key}}&young_mode=0&platformname=android&productname=mht",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "版主🌸",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.diyibanzhu.me//#防",
    "customButton": false,
    "customOrder": 549,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1751795005827,
    "respondTime": 2042,
    "ruleBookInfo": {
      "author": "{{@@.info@text##类.*}}\n人气：{{@@.info@text##.*：}}",
      "coverUrl": "img@src",
      "intro": ".bd.2@text",
      "kind": "{{@@.info@text##.*型：|字数.*}}",
      "lastChapter": "a.16@text##【.*?】",
      "name": "a.13@text##章.*",
      "wordCount": "{{@@.info@text##.*数：|人气.*}}"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.【.*?】@href",
      "replaceRegex": "##本章未.*|P>.*|．．|作者：.*|第.*?章.*|字数：.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.1@text##字.*",
      "bookList": ".column-2",
      "bookUrl": "a.0@href",
      "checkKeyWord": "我的",
      "lastChapter": ".update@text##.*：|【.*?】",
      "name": "a.0@text",
      "wordCount": ".words@text##.*："
    },
    "ruleToc": {
      "chapterList": ".list.1@li@a",
      "chapterName": "a@text##【.*?】",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下页@href"
    },
    "searchUrl": "/wap.php?action=search,{\n \"body\": \"objectType=2&wd={{key}}\",\n \"charset\": \"gbk\", \n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\nhttp://i.12bz.net\nhttp://m.111bz.cc\nhttp://m.dybz123.com\nhttp://m.xinbanzhu.net\n御书屋：http://m.yushuwu12.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "第一版主⑦🌹",
    "bookSourceType": 0,
    "bookSourceUrl": "http://i.12bz.net",
    "customButton": false,
    "customOrder": 550,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"日点击榜\",\"url\":\"/top/dayvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击榜\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击榜\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总点击榜\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏榜\",\"url\":\"/top/goodnum_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"字数排行\",\"url\":\"/top/size_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"/top/allvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最新入库\",\"url\":\"/top/postdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最近更新\",\"url\":\"/top/lastupdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻小说\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"修真小说\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市小说\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越小说\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"藏经阁\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻小说\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其他小说\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 7.1.1; Mi Note 3 Build/NMF26X; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.98 Mobile Safari/537.36\"\n}​",
    "lastUpdateTime": 1779472301042,
    "respondTime": 6008,
    "ruleBookInfo": {
      "author": ".block_txt2@p.2@a@text",
      "coverUrl": ".block_img2@img@src",
      "intro": ".intro_info@text",
      "kind": ".block_txt2@p.3@a@text",
      "lastChapter": ".block_txt2@p.5@a@text",
      "name": ".block_txt2@h2@a@text",
      "tocUrl": "text.查看目录@href",
      "wordCount": ".block_txt2@p.4@text&&.block_txt2@p.4@text"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\n.*本章未完.*\\n.."
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".line",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src||tag.a.0@href##.*/(\\d+)/(\\d+)/##http://www.xiaobanzhu.com/files/article/image/$1/$2/$2s.jpg",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".chapter@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"type=articlename&s={{key}}&submit=\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "👔 御宅屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.123yuzhaiwu.com",
    "customButton": false,
    "customOrder": 551,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市小说\",\"url\":\"/wapsort/1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"浓情小说\",\"url\":\"/wapsort/2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"言情小说\",\"url\":\"/wapsort/3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"校园小说\",\"url\":\"/wapsort/4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"标签\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"快穿\",\"url\":\"/tag/kc/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"美攻\",\"url\":\"/tag/mg/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"肉文\",\"url\":\"/tag/rw/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"年下\",\"url\":\"/tag/nx/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"年上\",\"url\":\"/tag/ns/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"网游\",\"url\":\"/tag/wy/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"人兽\",\"url\":\"/tag/rs/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"强强\",\"url\":\"/tag/qq/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/tag/cy/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"双性\",\"url\":\"/tag/sx/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"强受\",\"url\":\"/tag/qs/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"疗愈\",\"url\":\"/tag/ly/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"重生\",\"url\":\"/tag/cs/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"/tag/bh/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"虐文\",\"url\":\"/tag/nw/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"温馨\",\"url\":\"/tag/wx/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"NP\",\"url\":\"/tag/np/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"女性向\",\"url\":\"/tag/nv/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"男性向\",\"url\":\"/tag/nan/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"萌文\",\"url\":\"/tag/mw/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"耽美\",\"url\":\"/tag/dm/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"末世\",\"url\":\"/tag/ms/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/tag/xy/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"师生\",\"url\":\"/tag/ss/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"BG\",\"url\":\"/tag/bg/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"娱乐圈\",\"url\":\"/tag/ylq/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"高干\",\"url\":\"/tag/gg/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"金手指\",\"url\":\"/tag/jsz/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"反攻\",\"url\":\"/tag/fg/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"诱受\",\"url\":\"/tag/ys/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"不限\",\"url\":\"/tag/bx/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"SM\",\"url\":\"/tag/sm/p_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1681057895374,
    "respondTime": 8435,
    "ruleBookInfo": {
      "author": ".article_info_td.0@div.0@text",
      "init": "",
      "intro": "[style=\"padding:5px;font-size:12px;color:#666; line-height:auto\"]@text",
      "kind": ".article_info_td.0@div.3:1@text&&.article_info_td.1@div.0@text##.*：",
      "lastChapter": ".article_info_td.0@div.2@a@text&&class.article_info_td@tag.time@text\n<js>result.replace(/(.*)\\s/,'$1 • ')</js>",
      "name": "[style=\"background:none;\"]@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": ".author@text||strong@text||span@text",
      "bookList": ".s_m@.last_li||id.list_ul@li||.common-bookele",
      "bookUrl": ".name@href||a.1@href||a.0@href",
      "intro": ".abstract@text",
      "kind": ".words@text||time@text||a.0@text##.*：",
      "name": ".name@text||h3@text||a.1@text"
    },
    "ruleSearch": {
      "author": "strong@text",
      "bookList": ".common-bookele",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "kind": ".lastupdate@text",
      "name": ".articlename@text"
    },
    "ruleToc": {
      "chapterList": "ul@li!-1@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n新御书屋 https://m.xinyushuwu2.com\n第一版主 http://m.diyibanzhu.buzz\n龙腾小说 https://m.longtengxiaoshuo.org",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 烈火中文",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.liehuozw.com",
    "customButton": false,
    "customOrder": 552,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "Hello World!\n0岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=0岁&type=articlename\",\"method\": \"POST\"}\n1::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=1&type=articlename\",\"method\": \"POST\"}\n1岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=1岁&type=articlename\",\"method\": \"POST\"}\n2::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=2&type=articlename\",\"method\": \"POST\"}\n2岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=2岁&type=articlename\",\"method\": \"POST\"}\n3::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=3&type=articlename\",\"method\": \"POST\"}\n3岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=3岁&type=articlename\",\"method\": \"POST\"}\n4::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=4&type=articlename\",\"method\": \"POST\"}\n4岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=4岁&type=articlename\",\"method\": \"POST\"}\n5::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=5&type=articlename\",\"method\": \"POST\"}\n5岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=5岁&type=articlename\",\"method\": \"POST\"}\n6::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=6&type=articlename\",\"method\": \"POST\"}\n6岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=6岁&type=articlename\",\"method\": \"POST\"}\n7::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=7&type=articlename\",\"method\": \"POST\"}\n7岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=7岁&type=articlename\",\"method\": \"POST\"}\n8::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=8&type=articlename\",\"method\": \"POST\"}\n8岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=8岁&type=articlename\",\"method\": \"POST\"}\n9::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=9&type=articlename\",\"method\": \"POST\"}\n9岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=9岁&type=articlename\",\"method\": \"POST\"}\n啊::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=啊&type=articlename\",\"method\": \"POST\"}\n阿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=阿&type=articlename\",\"method\": \"POST\"}\n爱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爱&type=articlename\",\"method\": \"POST\"}\n按::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=按&type=articlename\",\"method\": \"POST\"}\n按摩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=按摩&type=articlename\",\"method\": \"POST\"}\n阿姨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=阿姨&type=articlename\",\"method\": \"POST\"}\n八::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=八&type=articlename\",\"method\": \"POST\"}\n吧::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吧&type=articlename\",\"method\": \"POST\"}\n爸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爸&type=articlename\",\"method\": \"POST\"}\n八1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=八1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n爸爸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爸爸&type=articlename\",\"method\": \"POST\"}\n白::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=白&type=articlename\",\"method\": \"POST\"}\n白浆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=白浆&type=articlename\",\"method\": \"POST\"}\n半::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=半&type=articlename\",\"method\": \"POST\"}\n班::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=班&type=articlename\",\"method\": \"POST\"}\n棒::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=棒&type=articlename\",\"method\": \"POST\"}\n绑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=绑&type=articlename\",\"method\": \"POST\"}\n班花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=班花&type=articlename\",\"method\": \"POST\"}\n半推::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=半推&type=articlename\",\"method\": \"POST\"}\n包::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=包&type=articlename\",\"method\": \"POST\"}\n暴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=暴&type=articlename\",\"method\": \"POST\"}\n爆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爆&type=articlename\",\"method\": \"POST\"}\n胞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=胞&type=articlename\",\"method\": \"POST\"}\n苞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=苞&type=articlename\",\"method\": \"POST\"}\n鲍::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鲍&type=articlename\",\"method\": \"POST\"}\n爆操::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爆操&type=articlename\",\"method\": \"POST\"}\n爆插::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=爆插&type=articlename\",\"method\": \"POST\"}\n包臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=包臀&type=articlename\",\"method\": \"POST\"}\n包养::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=包养&type=articlename\",\"method\": \"POST\"}\n八岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=八岁&type=articlename\",\"method\": \"POST\"}\n杯::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=杯&type=articlename\",\"method\": \"POST\"}\n壁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=壁&type=articlename\",\"method\": \"POST\"}\n屄::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屄&type=articlename\",\"method\": \"POST\"}\n逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=逼&type=articlename\",\"method\": \"POST\"}\n便::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=便&type=articlename\",\"method\": \"POST\"}\n便器::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=便器&type=articlename\",\"method\": \"POST\"}\n表::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=表&type=articlename\",\"method\": \"POST\"}\n表姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=表姐&type=articlename\",\"method\": \"POST\"}\n表妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=表妹&type=articlename\",\"method\": \"POST\"}\n表嫂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=表嫂&type=articlename\",\"method\": \"POST\"}\n屄屄::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屄屄&type=articlename\",\"method\": \"POST\"}\n兵::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=兵&type=articlename\",\"method\": \"POST\"}\n播::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=播&type=articlename\",\"method\": \"POST\"}\n部::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=部&type=articlename\",\"method\": \"POST\"}\n擦::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=擦&type=articlename\",\"method\": \"POST\"}\n擦1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=擦1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n操::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=操&type=articlename\",\"method\": \"POST\"}\n肏::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肏&type=articlename\",\"method\": \"POST\"}\n操逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=操逼&type=articlename\",\"method\": \"POST\"}\n操哭::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=操哭&type=articlename\",\"method\": \"POST\"}\n操母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=操母&type=articlename\",\"method\": \"POST\"}\n厕::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=厕&type=articlename\",\"method\": \"POST\"}\n厕所::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=厕所&type=articlename\",\"method\": \"POST\"}\n插::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=插&type=articlename\",\"method\": \"POST\"}\n常::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=常&type=articlename\",\"method\": \"POST\"}\n常识::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=常识&type=articlename\",\"method\": \"POST\"}\n潮::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=潮&type=articlename\",\"method\": \"POST\"}\n潮吹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=潮吹&type=articlename\",\"method\": \"POST\"}\n成::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=年人&type=articlename\",\"method\": \"POST\"}\n成年::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=成年&type=articlename\",\"method\": \"POST\"}\n成人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=成人&type=articlename\",\"method\": \"POST\"}\n吃::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吃&type=articlename\",\"method\": \"POST\"}\n赤::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=赤&type=articlename\",\"method\": \"POST\"}\n齿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=齿&type=articlename\",\"method\": \"POST\"}\n吃鸡吧::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吃鸡吧&type=articlename\",\"method\": \"POST\"}\n吃精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吃精&type=articlename\",\"method\": \"POST\"}\n赤裸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=赤裸&type=articlename\",\"method\": \"POST\"}\n吃奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吃奶&type=articlename\",\"method\": \"POST\"}\n抽::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=抽&type=articlename\",\"method\": \"POST\"}\n抽插::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=抽插&type=articlename\",\"method\": \"POST\"}\n出::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=出&type=articlename\",\"method\": \"POST\"}\n初::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初&type=articlename\",\"method\": \"POST\"}\n处::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=处&type=articlename\",\"method\": \"POST\"}\n畜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=畜&type=articlename\",\"method\": \"POST\"}\n初次::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初次&type=articlename\",\"method\": \"POST\"}\n初二::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初二&type=articlename\",\"method\": \"POST\"}\n唇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=唇&type=articlename\",\"method\": \"POST\"}\n处女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=处女&type=articlename\",\"method\": \"POST\"}\n初三::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初三&type=articlename\",\"method\": \"POST\"}\n初夜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初夜&type=articlename\",\"method\": \"POST\"}\n初一::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初一&type=articlename\",\"method\": \"POST\"}\n初中::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=初中&type=articlename\",\"method\": \"POST\"}\n次::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=次&type=articlename\",\"method\": \"POST\"}\n催::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=催&type=articlename\",\"method\": \"POST\"}\n催眠::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=催眠&type=articlename\",\"method\": \"POST\"}\n大::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大&type=articlename\",\"method\": \"POST\"}\n搭::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=搭&type=articlename\",\"method\": \"POST\"}\n大二::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大二&type=articlename\",\"method\": \"POST\"}\n大鸡::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大鸡&type=articlename\",\"method\": \"POST\"}\n大姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大姐&type=articlename\",\"method\": \"POST\"}\n蹈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蹈&type=articlename\",\"method\": \"POST\"}\n道::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=道&type=articlename\",\"method\": \"POST\"}\n道具::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=道具&type=articlename\",\"method\": \"POST\"}\n大三::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大三&type=articlename\",\"method\": \"POST\"}\n大四::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大四&type=articlename\",\"method\": \"POST\"}\n大胸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大胸&type=articlename\",\"method\": \"POST\"}\n大一::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大一&type=articlename\",\"method\": \"POST\"}\n大姨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=大姨&type=articlename\",\"method\": \"POST\"}\n的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=的&type=articlename\",\"method\": \"POST\"}\n的妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=的妈&type=articlename\",\"method\": \"POST\"}\n的母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=的母&type=articlename\",\"method\": \"POST\"}\n的女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=的女&type=articlename\",\"method\": \"POST\"}\n的性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=的性&type=articlename\",\"method\": \"POST\"}\n弟::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=弟&type=articlename\",\"method\": \"POST\"}\n第::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=第&type=articlename\",\"method\": \"POST\"}\n蒂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蒂&type=articlename\",\"method\": \"POST\"}\n店::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=店&type=articlename\",\"method\": \"POST\"}\n调::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=调&type=articlename\",\"method\": \"POST\"}\n蝶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蝶&type=articlename\",\"method\": \"POST\"}\n丁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丁&type=articlename\",\"method\": \"POST\"}\n丁字::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丁字&type=articlename\",\"method\": \"POST\"}\n丁字裤::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丁字裤&type=articlename\",\"method\": \"POST\"}\n第一::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=第一&type=articlename\",\"method\": \"POST\"}\n第一次::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=第一次&type=articlename\",\"method\": \"POST\"}\n抖::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=抖&type=articlename\",\"method\": \"POST\"}\n斗::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=斗&type=articlename\",\"method\": \"POST\"}\n抖音::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=抖音&type=articlename\",\"method\": \"POST\"}\n斗鱼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=斗鱼&type=articlename\",\"method\": \"POST\"}\n短::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=短&type=articlename\",\"method\": \"POST\"}\n短篇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=短篇&type=articlename\",\"method\": \"POST\"}\n多::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=多&type=articlename\",\"method\": \"POST\"}\n多女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=多女&type=articlename\",\"method\": \"POST\"}\n妸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妸&type=articlename\",\"method\": \"POST\"}\n妸1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妸1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n二::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=二&type=articlename\",\"method\": \"POST\"}\n二岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=二岁&type=articlename\",\"method\": \"POST\"}\n二穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=二穴&type=articlename\",\"method\": \"POST\"}\n发::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=发&type=articlename\",\"method\": \"POST\"}\n发1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=发1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n房::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=房&type=articlename\",\"method\": \"POST\"}\n肥::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肥&type=articlename\",\"method\": \"POST\"}\n飞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=飞&type=articlename\",\"method\": \"POST\"}\n肥逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肥逼&type=articlename\",\"method\": \"POST\"}\n飞机::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=飞机&type=articlename\",\"method\": \"POST\"}\n飞机杯::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=飞机杯&type=articlename\",\"method\": \"POST\"}\n肥臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肥臀&type=articlename\",\"method\": \"POST\"}\n粉::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=粉&type=articlename\",\"method\": \"POST\"}\n粉逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=粉逼&type=articlename\",\"method\": \"POST\"}\n丰::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丰&type=articlename\",\"method\": \"POST\"}\n丰乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丰乳&type=articlename\",\"method\": \"POST\"}\n丰臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丰臀&type=articlename\",\"method\": \"POST\"}\n粉嫩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=粉嫩&type=articlename\",\"method\": \"POST\"}\n粉穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=粉穴&type=articlename\",\"method\": \"POST\"}\n夫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=夫&type=articlename\",\"method\": \"POST\"}\n妇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妇&type=articlename\",\"method\": \"POST\"}\n父::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=父&type=articlename\",\"method\": \"POST\"}\n父女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=父女&type=articlename\",\"method\": \"POST\"}\n夫人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=夫人&type=articlename\",\"method\": \"POST\"}\n旮::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=旮&type=articlename\",\"method\": \"POST\"}\n旮1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=旮1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n干::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=干&type=articlename\",\"method\": \"POST\"}\n刚::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=刚&type=articlename\",\"method\": \"POST\"}\n肛::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肛&type=articlename\",\"method\": \"POST\"}\n刚成年::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=刚成年&type=articlename\",\"method\": \"POST\"}\n肛交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肛交&type=articlename\",\"method\": \"POST\"}\n干了::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=干了&type=articlename\",\"method\": \"POST\"}\n干妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=干妈&type=articlename\",\"method\": \"POST\"}\n高::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高&type=articlename\",\"method\": \"POST\"}\n高潮::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高潮&type=articlename\",\"method\": \"POST\"}\n高二::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高二&type=articlename\",\"method\": \"POST\"}\n高三::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高三&type=articlename\",\"method\": \"POST\"}\n高一::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高一&type=articlename\",\"method\": \"POST\"}\n高中::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=高中&type=articlename\",\"method\": \"POST\"}\n个::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=个&type=articlename\",\"method\": \"POST\"}\n隔::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隔&type=articlename\",\"method\": \"POST\"}\n隔壁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隔壁&type=articlename\",\"method\": \"POST\"}\n隔壁邻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隔壁邻&type=articlename\",\"method\": \"POST\"}\n公::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=公&type=articlename\",\"method\": \"POST\"}\n宫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=宫&type=articlename\",\"method\": \"POST\"}\n公主::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=公主&type=articlename\",\"method\": \"POST\"}\n姑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姑&type=articlename\",\"method\": \"POST\"}\n官::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=官&type=articlename\",\"method\": \"POST\"}\n姑姑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姑姑&type=articlename\",\"method\": \"POST\"}\n鬼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鬼&type=articlename\",\"method\": \"POST\"}\n龟::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=龟&type=articlename\",\"method\": \"POST\"}\n鬼畜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鬼畜&type=articlename\",\"method\": \"POST\"}\n龟头::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=龟头&type=articlename\",\"method\": \"POST\"}\n姑娘::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姑娘&type=articlename\",\"method\": \"POST\"}\n国::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=国&type=articlename\",\"method\": \"POST\"}\n国中::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=国中&type=articlename\",\"method\": \"POST\"}\n哈1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=哈1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n孩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=孩&type=articlename\",\"method\": \"POST\"}\n含::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=含&type=articlename\",\"method\": \"POST\"}\n含着::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=含着&type=articlename\",\"method\": \"POST\"}\n豪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=豪&type=articlename\",\"method\": \"POST\"}\n豪乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=豪乳&type=articlename\",\"method\": \"POST\"}\n合::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=合&type=articlename\",\"method\": \"POST\"}\n和::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和&type=articlename\",\"method\": \"POST\"}\n喝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喝&type=articlename\",\"method\": \"POST\"}\n黑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=黑&type=articlename\",\"method\": \"POST\"}\n黑丝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=黑丝&type=articlename\",\"method\": \"POST\"}\n合集::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=合集&type=articlename\",\"method\": \"POST\"}\n和姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和姐&type=articlename\",\"method\": \"POST\"}\n和妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和妈&type=articlename\",\"method\": \"POST\"}\n和妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和妹&type=articlename\",\"method\": \"POST\"}\n喝奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喝奶&type=articlename\",\"method\": \"POST\"}\n喝尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喝尿&type=articlename\",\"method\": \"POST\"}\n和同学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和同学&type=articlename\",\"method\": \"POST\"}\n和我::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=和我&type=articlename\",\"method\": \"POST\"}\n红::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=红&type=articlename\",\"method\": \"POST\"}\n后::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=后&type=articlename\",\"method\": \"POST\"}\n后妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=后妈&type=articlename\",\"method\": \"POST\"}\n后入::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=后入&type=articlename\",\"method\": \"POST\"}\n户::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=户&type=articlename\",\"method\": \"POST\"}\n护::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=护&type=articlename\",\"method\": \"POST\"}\n虎::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=虎&type=articlename\",\"method\": \"POST\"}\n蝴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蝴&type=articlename\",\"method\": \"POST\"}\n花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=花&type=articlename\",\"method\": \"POST\"}\n怀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=怀&type=articlename\",\"method\": \"POST\"}\n怀孕::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=怀孕&type=articlename\",\"method\": \"POST\"}\n皇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=皇&type=articlename\",\"method\": \"POST\"}\n皇后::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=皇后&type=articlename\",\"method\": \"POST\"}\n蝴蝶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蝴蝶&type=articlename\",\"method\": \"POST\"}\n婚::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=婚&type=articlename\",\"method\": \"POST\"}\n护士::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=护士&type=articlename\",\"method\": \"POST\"}\n户外::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=户外&type=articlename\",\"method\": \"POST\"}\n虎穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=虎穴&type=articlename\",\"method\": \"POST\"}\n挤::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=挤&type=articlename\",\"method\": \"POST\"}\n机::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=机&type=articlename\",\"method\": \"POST\"}\n极::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=极&type=articlename\",\"method\": \"POST\"}\n纪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=纪&type=articlename\",\"method\": \"POST\"}\n继::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=继&type=articlename\",\"method\": \"POST\"}\n集::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=集&type=articlename\",\"method\": \"POST\"}\n鸡::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鸡&type=articlename\",\"method\": \"POST\"}\n家::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=家&type=articlename\",\"method\": \"POST\"}\n家姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=家姐&type=articlename\",\"method\": \"POST\"}\n奸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸&type=articlename\",\"method\": \"POST\"}\n浆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=浆&type=articlename\",\"method\": \"POST\"}\n奸妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸妈&type=articlename\",\"method\": \"POST\"}\n奸杀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸杀&type=articlename\",\"method\": \"POST\"}\n奸尸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸尸&type=articlename\",\"method\": \"POST\"}\n奸污::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸污&type=articlename\",\"method\": \"POST\"}\n奸淫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奸淫&type=articlename\",\"method\": \"POST\"}\n交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=交&type=articlename\",\"method\": \"POST\"}\n叫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=叫&type=articlename\",\"method\": \"POST\"}\n娇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娇&type=articlename\",\"method\": \"POST\"}\n教::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=教&type=articlename\",\"method\": \"POST\"}\n叫爸爸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=叫爸爸&type=articlename\",\"method\": \"POST\"}\n娇嫩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娇嫩&type=articlename\",\"method\": \"POST\"}\n娇小::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娇小&type=articlename\",\"method\": \"POST\"}\n家人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=家人&type=articlename\",\"method\": \"POST\"}\n家庭::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=家庭&type=articlename\",\"method\": \"POST\"}\n鸡吧::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鸡吧&type=articlename\",\"method\": \"POST\"}\n机杯::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=机杯&type=articlename\",\"method\": \"POST\"}\n姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐&type=articlename\",\"method\": \"POST\"}\n界::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=界&type=articlename\",\"method\": \"POST\"}\n街::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=街&type=articlename\",\"method\": \"POST\"}\n姐的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐的&type=articlename\",\"method\": \"POST\"}\n姐弟::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐弟&type=articlename\",\"method\": \"POST\"}\n姐夫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐夫&type=articlename\",\"method\": \"POST\"}\n姐夫的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐夫的&type=articlename\",\"method\": \"POST\"}\n姐姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐姐&type=articlename\",\"method\": \"POST\"}\n姐姐的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐姐的&type=articlename\",\"method\": \"POST\"}\n姐妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐妹&type=articlename\",\"method\": \"POST\"}\n姐妹花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姐妹花&type=articlename\",\"method\": \"POST\"}\n街射::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=街射&type=articlename\",\"method\": \"POST\"}\n集合::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=集合&type=articlename\",\"method\": \"POST\"}\n继母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=继母&type=articlename\",\"method\": \"POST\"}\n禁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=禁&type=articlename\",\"method\": \"POST\"}\n近::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=近&type=articlename\",\"method\": \"POST\"}\n进::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=进&type=articlename\",\"method\": \"POST\"}\n挤奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=挤奶&type=articlename\",\"method\": \"POST\"}\n精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=精&type=articlename\",\"method\": \"POST\"}\n警::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=警&type=articlename\",\"method\": \"POST\"}\n精厕::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=精厕&type=articlename\",\"method\": \"POST\"}\n警花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=警花&type=articlename\",\"method\": \"POST\"}\n精液::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=精液&type=articlename\",\"method\": \"POST\"}\n精子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=精子&type=articlename\",\"method\": \"POST\"}\n近亲::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=近亲&type=articlename\",\"method\": \"POST\"}\n极品::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=极品&type=articlename\",\"method\": \"POST\"}\n九::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=九&type=articlename\",\"method\": \"POST\"}\n舅::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舅&type=articlename\",\"method\": \"POST\"}\n酒::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=酒&type=articlename\",\"method\": \"POST\"}\n酒店::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=酒店&type=articlename\",\"method\": \"POST\"}\n舅妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舅妈&type=articlename\",\"method\": \"POST\"}\n九岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=九岁&type=articlename\",\"method\": \"POST\"}\n具::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=具&type=articlename\",\"method\": \"POST\"}\n居::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=居&type=articlename\",\"method\": \"POST\"}\n巨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=巨&type=articlename\",\"method\": \"POST\"}\n军::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=军&type=articlename\",\"method\": \"POST\"}\n军官::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=军官&type=articlename\",\"method\": \"POST\"}\n巨乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=巨乳&type=articlename\",\"method\": \"POST\"}\n巨臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=巨臀&type=articlename\",\"method\": \"POST\"}\n喀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喀&type=articlename\",\"method\": \"POST\"}\n喀1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喀1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n开::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=开&type=articlename\",\"method\": \"POST\"}\n开苞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=开苞&type=articlename\",\"method\": \"POST\"}\n尻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=尻&type=articlename\",\"method\": \"POST\"}\n控::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=控&type=articlename\",\"method\": \"POST\"}\n空::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=空&type=articlename\",\"method\": \"POST\"}\n控制::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=控制&type=articlename\",\"method\": \"POST\"}\n口::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=口&type=articlename\",\"method\": \"POST\"}\n口爆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=口爆&type=articlename\",\"method\": \"POST\"}\n口交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=口交&type=articlename\",\"method\": \"POST\"}\n哭::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=哭&type=articlename\",\"method\": \"POST\"}\n狂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=狂&type=articlename\",\"method\": \"POST\"}\n狂操::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=狂操&type=articlename\",\"method\": \"POST\"}\n狂干::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=狂干&type=articlename\",\"method\": \"POST\"}\n窥::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=窥&type=articlename\",\"method\": \"POST\"}\n捆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=捆&type=articlename\",\"method\": \"POST\"}\n捆绑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=捆绑&type=articlename\",\"method\": \"POST\"}\n扩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=扩&type=articlename\",\"method\": \"POST\"}\n扩阴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=扩阴&type=articlename\",\"method\": \"POST\"}\n垃::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=垃&type=articlename\",\"method\": \"POST\"}\n辣::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=辣&type=articlename\",\"method\": \"POST\"}\n垃1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=垃1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n辣妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=辣妈&type=articlename\",\"method\": \"POST\"}\n辣妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=辣妹&type=articlename\",\"method\": \"POST\"}\n老::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=老&type=articlename\",\"method\": \"POST\"}\n老师::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=老师&type=articlename\",\"method\": \"POST\"}\n了::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=了&type=articlename\",\"method\": \"POST\"}\n莉::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=莉&type=articlename\",\"method\": \"POST\"}\n隶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隶&type=articlename\",\"method\": \"POST\"}\n两::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=两&type=articlename\",\"method\": \"POST\"}\n两女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=两女&type=articlename\",\"method\": \"POST\"}\n列::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=列&type=articlename\",\"method\": \"POST\"}\n邻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=邻&type=articlename\",\"method\": \"POST\"}\n凌::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=凌&type=articlename\",\"method\": \"POST\"}\n凌辱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=凌辱&type=articlename\",\"method\": \"POST\"}\n六::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=六&type=articlename\",\"method\": \"POST\"}\n六岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=六岁&type=articlename\",\"method\": \"POST\"}\n乱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乱&type=articlename\",\"method\": \"POST\"}\n乱伦::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乱伦&type=articlename\",\"method\": \"POST\"}\n伦::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=伦&type=articlename\",\"method\": \"POST\"}\n萝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=萝&type=articlename\",\"method\": \"POST\"}\n裸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=裸&type=articlename\",\"method\": \"POST\"}\n萝莉::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=萝莉&type=articlename\",\"method\": \"POST\"}\n裸体::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=裸体&type=articlename\",\"method\": \"POST\"}\n裸舞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=裸舞&type=articlename\",\"method\": \"POST\"}\n侣::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=侣&type=articlename\",\"method\": \"POST\"}\n妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妈&type=articlename\",\"method\": \"POST\"}\n马::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=马&type=articlename\",\"method\": \"POST\"}\n妈1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妈1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n妈和::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妈和&type=articlename\",\"method\": \"POST\"}\n妈妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妈妈&type=articlename\",\"method\": \"POST\"}\n妈咪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妈咪&type=articlename\",\"method\": \"POST\"}\n马::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=马&type=articlename\",\"method\": \"POST\"}\n妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妹&type=articlename\",\"method\": \"POST\"}\n美::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=美&type=articlename\",\"method\": \"POST\"}\n美::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=美&type=articlename\",\"method\": \"POST\"}\n美鲍::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=美鲍&type=articlename\",\"method\": \"POST\"}\n妹的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妹的&type=articlename\",\"method\": \"POST\"}\n妹花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妹花&type=articlename\",\"method\": \"POST\"}\n妹妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妹妹&type=articlename\",\"method\": \"POST\"}\n美母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=美母&type=articlename\",\"method\": \"POST\"}\n美穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=美穴&type=articlename\",\"method\": \"POST\"}\n猛::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=猛&type=articlename\",\"method\": \"POST\"}\n萌::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=萌&type=articlename\",\"method\": \"POST\"}\n蒙::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=蒙&type=articlename\",\"method\": \"POST\"}\n猛操::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=猛操&type=articlename\",\"method\": \"POST\"}\n萌妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=萌妹&type=articlename\",\"method\": \"POST\"}\n咪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=咪&type=articlename\",\"method\": \"POST\"}\n泌::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=泌&type=articlename\",\"method\": \"POST\"}\n迷::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=迷&type=articlename\",\"method\": \"POST\"}\n眠::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=眠&type=articlename\",\"method\": \"POST\"}\n名::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=名&type=articlename\",\"method\": \"POST\"}\n明::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=明&type=articlename\",\"method\": \"POST\"}\n名器::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=名器&type=articlename\",\"method\": \"POST\"}\n明星::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=明星&type=articlename\",\"method\": \"POST\"}\n泌乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=泌乳&type=articlename\",\"method\": \"POST\"}\n摩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=摩&type=articlename\",\"method\": \"POST\"}\n模::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=模&type=articlename\",\"method\": \"POST\"}\n母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=母&type=articlename\",\"method\": \"POST\"}\n母女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=母女&type=articlename\",\"method\": \"POST\"}\n母亲::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=母亲&type=articlename\",\"method\": \"POST\"}\n母乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=母乳&type=articlename\",\"method\": \"POST\"}\n母子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=母子&type=articlename\",\"method\": \"POST\"}\n拿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=拿&type=articlename\",\"method\": \"POST\"}\n拿1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=拿1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奶&type=articlename\",\"method\": \"POST\"}\n奶妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奶妈&type=articlename\",\"method\": \"POST\"}\n奶奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奶奶&type=articlename\",\"method\": \"POST\"}\n奶子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奶子&type=articlename\",\"method\": \"POST\"}\n内::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=内&type=articlename\",\"method\": \"POST\"}\n内裤::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=内裤&type=articlename\",\"method\": \"POST\"}\n内射::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=内射&type=articlename\",\"method\": \"POST\"}\n嫩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩&type=articlename\",\"method\": \"POST\"}\n嫩逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩逼&type=articlename\",\"method\": \"POST\"}\n嫩妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩妹&type=articlename\",\"method\": \"POST\"}\n嫩模::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩模&type=articlename\",\"method\": \"POST\"}\n嫩乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩乳&type=articlename\",\"method\": \"POST\"}\n嫩穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫩穴&type=articlename\",\"method\": \"POST\"}\n年::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=年&type=articlename\",\"method\": \"POST\"}\n娘::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娘&type=articlename\",\"method\": \"POST\"}\n年纪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=年纪&type=articlename\",\"method\": \"POST\"}\n尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=尿&type=articlename\",\"method\": \"POST\"}\n尿道::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=尿道&type=articlename\",\"method\": \"POST\"}\n尿尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=尿尿&type=articlename\",\"method\": \"POST\"}\n奴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奴&type=articlename\",\"method\": \"POST\"}\n奴隶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=奴隶&type=articlename\",\"method\": \"POST\"}\n女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女&type=articlename\",\"method\": \"POST\"}\n女兵::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女兵&type=articlename\",\"method\": \"POST\"}\n女大::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女大&type=articlename\",\"method\": \"POST\"}\n女儿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女儿&type=articlename\",\"method\": \"POST\"}\n女孩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女孩&type=articlename\",\"method\": \"POST\"}\n女皇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女皇&type=articlename\",\"method\": \"POST\"}\n女教::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女教&type=articlename\",\"method\": \"POST\"}\n女警::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女警&type=articlename\",\"method\": \"POST\"}\n女军官::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女军官&type=articlename\",\"method\": \"POST\"}\n女老::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女老&type=articlename\",\"method\": \"POST\"}\n女老师::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女老师&type=articlename\",\"method\": \"POST\"}\n女邻居::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女邻居&type=articlename\",\"method\": \"POST\"}\n女模::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女模&type=articlename\",\"method\": \"POST\"}\n女女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女女&type=articlename\",\"method\": \"POST\"}\n女朋友::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女朋友&type=articlename\",\"method\": \"POST\"}\n女仆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女仆&type=articlename\",\"method\": \"POST\"}\n女神::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女神&type=articlename\",\"method\": \"POST\"}\n女生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女生&type=articlename\",\"method\": \"POST\"}\n女童::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女童&type=articlename\",\"method\": \"POST\"}\n女同事::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女同事&type=articlename\",\"method\": \"POST\"}\n女同性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女同性&type=articlename\",\"method\": \"POST\"}\n女同学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女同学&type=articlename\",\"method\": \"POST\"}\n女王::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女王&type=articlename\",\"method\": \"POST\"}\n女性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女性&type=articlename\",\"method\": \"POST\"}\n女刑警::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女刑警&type=articlename\",\"method\": \"POST\"}\n女学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女学&type=articlename\",\"method\": \"POST\"}\n女友::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女友&type=articlename\",\"method\": \"POST\"}\n女主播::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=女主播&type=articlename\",\"method\": \"POST\"}\n偶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=偶&type=articlename\",\"method\": \"POST\"}\n讴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=讴&type=articlename\",\"method\": \"POST\"}\n讴1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=讴1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\nP::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=P&type=articlename\",\"method\": \"POST\"}\n啪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=啪&type=articlename\",\"method\": \"POST\"}\n啪1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=啪1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n拍::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=拍&type=articlename\",\"method\": \"POST\"}\n啪啪::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=啪啪&type=articlename\",\"method\": \"POST\"}\n喷::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喷&type=articlename\",\"method\": \"POST\"}\n朋::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=朋&type=articlename\",\"method\": \"POST\"}\n朋友::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=朋友&type=articlename\",\"method\": \"POST\"}\n朋友的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=朋友的&type=articlename\",\"method\": \"POST\"}\n朋友妻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=朋友妻&type=articlename\",\"method\": \"POST\"}\n喷奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喷奶&type=articlename\",\"method\": \"POST\"}\n喷尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喷尿&type=articlename\",\"method\": \"POST\"}\n喷射::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喷射&type=articlename\",\"method\": \"POST\"}\n屁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屁&type=articlename\",\"method\": \"POST\"}\n篇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=篇&type=articlename\",\"method\": \"POST\"}\n品::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=品&type=articlename\",\"method\": \"POST\"}\n屁眼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屁眼&type=articlename\",\"method\": \"POST\"}\n破::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=破&type=articlename\",\"method\": \"POST\"}\n破::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=破&type=articlename\",\"method\": \"POST\"}\n仆::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=仆&type=articlename\",\"method\": \"POST\"}\n七::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=七&type=articlename\",\"method\": \"POST\"}\n启::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=启&type=articlename\",\"method\": \"POST\"}\n器::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=器&type=articlename\",\"method\": \"POST\"}\n妻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妻&type=articlename\",\"method\": \"POST\"}\n七1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=七1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n强::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=强&type=articlename\",\"method\": \"POST\"}\n强::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=强&type=articlename\",\"method\": \"POST\"}\n强奸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=强奸&type=articlename\",\"method\": \"POST\"}\n启蒙::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=启蒙&type=articlename\",\"method\": \"POST\"}\n亲::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=亲&type=articlename\",\"method\": \"POST\"}\n侵::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=侵&type=articlename\",\"method\": \"POST\"}\n情::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=情&type=articlename\",\"method\": \"POST\"}\n情侣::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=情侣&type=articlename\",\"method\": \"POST\"}\n情人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=情人&type=articlename\",\"method\": \"POST\"}\n亲姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=亲姐&type=articlename\",\"method\": \"POST\"}\n亲妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=亲妈&type=articlename\",\"method\": \"POST\"}\n亲生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=亲生&type=articlename\",\"method\": \"POST\"}\n七岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=七岁&type=articlename\",\"method\": \"POST\"}\n::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=&type=articlename\",\"method\": \"POST\"}\n全家::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=全家&type=articlename\",\"method\": \"POST\"}\n全裸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=全裸&type=articlename\",\"method\": \"POST\"}\n群::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=群&type=articlename\",\"method\": \"POST\"}\n群交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=群交&type=articlename\",\"method\": \"POST\"}\n群P::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=群P&type=articlename\",\"method\": \"POST\"}\n然::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=然&type=articlename\",\"method\": \"POST\"}\n然1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=然1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=人&type=articlename\",\"method\": \"POST\"}\n妊::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妊&type=articlename\",\"method\": \"POST\"}\n人偶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=人偶&type=articlename\",\"method\": \"POST\"}\n人妻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=人妻&type=articlename\",\"method\": \"POST\"}\n妊娠::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=妊娠&type=articlename\",\"method\": \"POST\"}\n日::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=日&type=articlename\",\"method\": \"POST\"}\n日逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=日逼&type=articlename\",\"method\": \"POST\"}\n肉::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肉&type=articlename\",\"method\": \"POST\"}\n肉棒::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肉棒&type=articlename\",\"method\": \"POST\"}\n肉便::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肉便&type=articlename\",\"method\": \"POST\"}\n肉便器::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=肉便器&type=articlename\",\"method\": \"POST\"}\n乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乳&type=articlename\",\"method\": \"POST\"}\n入::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=入&type=articlename\",\"method\": \"POST\"}\n辱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=辱&type=articlename\",\"method\": \"POST\"}\n乳房::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乳房&type=articlename\",\"method\": \"POST\"}\n乳交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乳交&type=articlename\",\"method\": \"POST\"}\n乳头::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=乳头&type=articlename\",\"method\": \"POST\"}\n仨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=仨&type=articlename\",\"method\": \"POST\"}\n撒::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=撒&type=articlename\",\"method\": \"POST\"}\n仨1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=仨1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n三::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=三&type=articlename\",\"method\": \"POST\"}\n三洞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=三洞&type=articlename\",\"method\": \"POST\"}\n撒尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=撒尿&type=articlename\",\"method\": \"POST\"}\n三姐妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=三姐妹&type=articlename\",\"method\": \"POST\"}\n三女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=三女&type=articlename\",\"method\": \"POST\"}\n三岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=三岁&type=articlename\",\"method\": \"POST\"}\n嫂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫂&type=articlename\",\"method\": \"POST\"}\n骚::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=骚&type=articlename\",\"method\": \"POST\"}\n骚逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=骚逼&type=articlename\",\"method\": \"POST\"}\n嫂嫂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫂嫂&type=articlename\",\"method\": \"POST\"}\n骚臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=骚臀&type=articlename\",\"method\": \"POST\"}\n骚穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=骚穴&type=articlename\",\"method\": \"POST\"}\n嫂子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=嫂子&type=articlename\",\"method\": \"POST\"}\n杀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=杀&type=articlename\",\"method\": \"POST\"}\n少::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=少&type=articlename\",\"method\": \"POST\"}\n少妇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=少妇&type=articlename\",\"method\": \"POST\"}\n少女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=少女&type=articlename\",\"method\": \"POST\"}\n射::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=射&type=articlename\",\"method\": \"POST\"}\n射进::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=射进&type=articlename\",\"method\": \"POST\"}\n射精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=射精&type=articlename\",\"method\": \"POST\"}\n娠::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娠&type=articlename\",\"method\": \"POST\"}\n婶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=婶&type=articlename\",\"method\": \"POST\"}\n神::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=神&type=articlename\",\"method\": \"POST\"}\n生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=生&type=articlename\",\"method\": \"POST\"}\n生孩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=生孩&type=articlename\",\"method\": \"POST\"}\n生孩子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=生孩子&type=articlename\",\"method\": \"POST\"}\n生了::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=生了&type=articlename\",\"method\": \"POST\"}\n生妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=生妹&type=articlename\",\"method\": \"POST\"}\n婶婶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=婶婶&type=articlename\",\"method\": \"POST\"}\n婶子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=婶子&type=articlename\",\"method\": \"POST\"}\n世::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=世&type=articlename\",\"method\": \"POST\"}\n事::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=事&type=articlename\",\"method\": \"POST\"}\n十::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=十&type=articlename\",\"method\": \"POST\"}\n士::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=士&type=articlename\",\"method\": \"POST\"}\n失::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=失&type=articlename\",\"method\": \"POST\"}\n尸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=尸&type=articlename\",\"method\": \"POST\"}\n屎::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屎&type=articlename\",\"method\": \"POST\"}\n师::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=师&type=articlename\",\"method\": \"POST\"}\n识::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=识&type=articlename\",\"method\": \"POST\"}\n十八::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=十八&type=articlename\",\"method\": \"POST\"}\n世界::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=世界&type=articlename\",\"method\": \"POST\"}\n失禁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=失禁&type=articlename\",\"method\": \"POST\"}\n屎尿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=屎尿&type=articlename\",\"method\": \"POST\"}\n师生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=师生&type=articlename\",\"method\": \"POST\"}\n十岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=十岁&type=articlename\",\"method\": \"POST\"}\n受::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=受&type=articlename\",\"method\": \"POST\"}\n受精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=受精&type=articlename\",\"method\": \"POST\"}\n叔::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=叔&type=articlename\",\"method\": \"POST\"}\n姝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姝&type=articlename\",\"method\": \"POST\"}\n熟::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=熟&type=articlename\",\"method\": \"POST\"}\n双::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双&type=articlename\",\"method\": \"POST\"}\n双胞胎::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双胞胎&type=articlename\",\"method\": \"POST\"}\n双洞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双洞&type=articlename\",\"method\": \"POST\"}\n双飞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双飞&type=articlename\",\"method\": \"POST\"}\n双姝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双姝&type=articlename\",\"method\": \"POST\"}\n双穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=双穴&type=articlename\",\"method\": \"POST\"}\n水::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=水&type=articlename\",\"method\": \"POST\"}\n叔母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=叔母&type=articlename\",\"method\": \"POST\"}\n熟女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=熟女&type=articlename\",\"method\": \"POST\"}\n丝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丝&type=articlename\",\"method\": \"POST\"}\n四::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=四&type=articlename\",\"method\": \"POST\"}\n四::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=四&type=articlename\",\"method\": \"POST\"}\n私::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=私&type=articlename\",\"method\": \"POST\"}\n四个::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=四个&type=articlename\",\"method\": \"POST\"}\n四人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=四人&type=articlename\",\"method\": \"POST\"}\n私人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=私人&type=articlename\",\"method\": \"POST\"}\n丝袜美::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丝袜美&type=articlename\",\"method\": \"POST\"}\n酥::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=酥&type=articlename\",\"method\": \"POST\"}\n岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=岁&type=articlename\",\"method\": \"POST\"}\n岁的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=岁的&type=articlename\",\"method\": \"POST\"}\n孙::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=孙&type=articlename\",\"method\": \"POST\"}\n孙女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=孙女&type=articlename\",\"method\": \"POST\"}\n所::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=所&type=articlename\",\"method\": \"POST\"}\n酥胸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=酥胸&type=articlename\",\"method\": \"POST\"}\n她::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=她&type=articlename\",\"method\": \"POST\"}\n她1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=她1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n太::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=太&type=articlename\",\"method\": \"POST\"}\n胎::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=胎&type=articlename\",\"method\": \"POST\"}\n太太::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=太太&type=articlename\",\"method\": \"POST\"}\n探::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=探&type=articlename\",\"method\": \"POST\"}\n堂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=堂&type=articlename\",\"method\": \"POST\"}\n堂姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=堂姐&type=articlename\",\"method\": \"POST\"}\n堂妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=堂妹&type=articlename\",\"method\": \"POST\"}\n探花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=探花&type=articlename\",\"method\": \"POST\"}\n套::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=套&type=articlename\",\"method\": \"POST\"}\n体::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=体&type=articlename\",\"method\": \"POST\"}\n舔::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔&type=articlename\",\"method\": \"POST\"}\n舔逼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔逼&type=articlename\",\"method\": \"POST\"}\n舔肛::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔肛&type=articlename\",\"method\": \"POST\"}\n舔鸡::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔鸡&type=articlename\",\"method\": \"POST\"}\n舔屁眼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔屁眼&type=articlename\",\"method\": \"POST\"}\n舔::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔&type=articlename\",\"method\": \"POST\"}\n舔阴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舔阴&type=articlename\",\"method\": \"POST\"}\n调教::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=调教&type=articlename\",\"method\": \"POST\"}\n停::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=停&type=articlename\",\"method\": \"POST\"}\n庭::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=庭&type=articlename\",\"method\": \"POST\"}\n停止::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=停止&type=articlename\",\"method\": \"POST\"}\n同::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=同&type=articlename\",\"method\": \"POST\"}\n童::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=童&type=articlename\",\"method\": \"POST\"}\n同事::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=同事&type=articlename\",\"method\": \"POST\"}\n同性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=同性&type=articlename\",\"method\": \"POST\"}\n同学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=同学&type=articlename\",\"method\": \"POST\"}\n童颜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=童颜&type=articlename\",\"method\": \"POST\"}\n童颜巨乳::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=童颜巨乳&type=articlename\",\"method\": \"POST\"}\n偷::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=偷&type=articlename\",\"method\": \"POST\"}\n头::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=头&type=articlename\",\"method\": \"POST\"}\n偷拍::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=偷拍&type=articlename\",\"method\": \"POST\"}\n推::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=推&type=articlename\",\"method\": \"POST\"}\n吞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吞&type=articlename\",\"method\": \"POST\"}\n臀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=臀&type=articlename\",\"method\": \"POST\"}\n臀部::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=臀部&type=articlename\",\"method\": \"POST\"}\n吞精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吞精&type=articlename\",\"method\": \"POST\"}\n娃::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娃&type=articlename\",\"method\": \"POST\"}\n娲::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娲&type=articlename\",\"method\": \"POST\"}\n袜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=袜&type=articlename\",\"method\": \"POST\"}\n娲1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娲1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n外::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=外&type=articlename\",\"method\": \"POST\"}\n玩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=玩&type=articlename\",\"method\": \"POST\"}\n王::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=王&type=articlename\",\"method\": \"POST\"}\n网::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=网&type=articlename\",\"method\": \"POST\"}\n网红::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=网红&type=articlename\",\"method\": \"POST\"}\n玩具::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=玩具&type=articlename\",\"method\": \"POST\"}\n娃娃::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=娃娃&type=articlename\",\"method\": \"POST\"}\n喂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喂&type=articlename\",\"method\": \"POST\"}\n喂::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=喂&type=articlename\",\"method\": \"POST\"}\n慰::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=慰&type=articlename\",\"method\": \"POST\"}\n未::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=未&type=articlename\",\"method\": \"POST\"}\n未成::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=未成&type=articlename\",\"method\": \"POST\"}\n未成年::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=未成年&type=articlename\",\"method\": \"POST\"}\n我::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我&type=articlename\",\"method\": \"POST\"}\n我的性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我的性&type=articlename\",\"method\": \"POST\"}\n我和::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和&type=articlename\",\"method\": \"POST\"}\n我和姐姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和姐姐&type=articlename\",\"method\": \"POST\"}\n我和妈妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和妈妈&type=articlename\",\"method\": \"POST\"}\n我和妹妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和妹妹&type=articlename\",\"method\": \"POST\"}\n我和女友::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和女友&type=articlename\",\"method\": \"POST\"}\n我和我的::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=我和我的&type=articlename\",\"method\": \"POST\"}\n五::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=五&type=articlename\",\"method\": \"POST\"}\n无::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=无&type=articlename\",\"method\": \"POST\"}\n污::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=污&type=articlename\",\"method\": \"POST\"}\n舞::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舞&type=articlename\",\"method\": \"POST\"}\n舞蹈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舞蹈&type=articlename\",\"method\": \"POST\"}\n舞蹈生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=舞蹈生&type=articlename\",\"method\": \"POST\"}\n五岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=五岁&type=articlename\",\"method\": \"POST\"}\n无套::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=无套&type=articlename\",\"method\": \"POST\"}\n吸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吸&type=articlename\",\"method\": \"POST\"}\n希::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=希&type=articlename\",\"method\": \"POST\"}\n系::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=系&type=articlename\",\"method\": \"POST\"}\n吸1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吸1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n相::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=相&type=articlename\",\"method\": \"POST\"}\n相奸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=相奸&type=articlename\",\"method\": \"POST\"}\n小::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小&type=articlename\",\"method\": \"POST\"}\n小::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小&type=articlename\",\"method\": \"POST\"}\n校::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=校&type=articlename\",\"method\": \"POST\"}\n小姑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小姑&type=articlename\",\"method\": \"POST\"}\n小姑娘::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小姑娘&type=articlename\",\"method\": \"POST\"}\n校花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=校花&type=articlename\",\"method\": \"POST\"}\n小萝::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小萝&type=articlename\",\"method\": \"POST\"}\n小妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小妹&type=articlename\",\"method\": \"POST\"}\n小女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小女&type=articlename\",\"method\": \"POST\"}\n小学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小学&type=articlename\",\"method\": \"POST\"}\n小学生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小学生&type=articlename\",\"method\": \"POST\"}\n小姨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=小姨&type=articlename\",\"method\": \"POST\"}\n系花::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=系花&type=articlename\",\"method\": \"POST\"}\n吸精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吸精&type=articlename\",\"method\": \"POST\"}\n系列::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=系列&type=articlename\",\"method\": \"POST\"}\n新::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=新&type=articlename\",\"method\": \"POST\"}\n吸奶::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=吸奶&type=articlename\",\"method\": \"POST\"}\n刑::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=刑&type=articlename\",\"method\": \"POST\"}\n形::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=形&type=articlename\",\"method\": \"POST\"}\n性::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=性&type=articlename\",\"method\": \"POST\"}\n星::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=星&type=articlename\",\"method\": \"POST\"}\n性交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=性交&type=articlename\",\"method\": \"POST\"}\n刑警::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=刑警&type=articlename\",\"method\": \"POST\"}\n性奴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=性奴&type=articlename\",\"method\": \"POST\"}\n性启蒙::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=性启蒙&type=articlename\",\"method\": \"POST\"}\n性侵::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=性侵&type=articlename\",\"method\": \"POST\"}\n新婚::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=新婚&type=articlename\",\"method\": \"POST\"}\n新娘::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=新娘&type=articlename\",\"method\": \"POST\"}\n兄::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=兄&type=articlename\",\"method\": \"POST\"}\n胸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=胸&type=articlename\",\"method\": \"POST\"}\n兄妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=兄妹&type=articlename\",\"method\": \"POST\"}\n胸罩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=胸罩&type=articlename\",\"method\": \"POST\"}\n学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学&type=articlename\",\"method\": \"POST\"}\n穴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=穴&type=articlename\",\"method\": \"POST\"}\n学姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学姐&type=articlename\",\"method\": \"POST\"}\n学妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学妹&type=articlename\",\"method\": \"POST\"}\n学生::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学生&type=articlename\",\"method\": \"POST\"}\n学生妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学生妹&type=articlename\",\"method\": \"POST\"}\n学姊::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=学姊&type=articlename\",\"method\": \"POST\"}\n丫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丫&type=articlename\",\"method\": \"POST\"}\n丫1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丫1灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬灬&type=articlename\",\"method\": \"POST\"}\n眼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=眼&type=articlename\",\"method\": \"POST\"}\n颜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=颜&type=articlename\",\"method\": \"POST\"}\n养::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=养&type=articlename\",\"method\": \"POST\"}\n养女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=养女&type=articlename\",\"method\": \"POST\"}\n颜射::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=颜射&type=articlename\",\"method\": \"POST\"}\n夜::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=夜&type=articlename\",\"method\": \"POST\"}\n液::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=液&type=articlename\",\"method\": \"POST\"}\n一::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=一&type=articlename\",\"method\": \"POST\"}\n义::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=义&type=articlename\",\"method\": \"POST\"}\n医::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=医&type=articlename\",\"method\": \"POST\"}\n姨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姨&type=articlename\",\"method\": \"POST\"}\n艺::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=艺&type=articlename\",\"method\": \"POST\"}\n一次::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=一次&type=articlename\",\"method\": \"POST\"}\n姨妈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姨妈&type=articlename\",\"method\": \"POST\"}\n义妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=义妹&type=articlename\",\"method\": \"POST\"}\n义母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=义母&type=articlename\",\"method\": \"POST\"}\n淫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=淫&type=articlename\",\"method\": \"POST\"}\n阴::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=阴&type=articlename\",\"method\": \"POST\"}\n隐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隐&type=articlename\",\"method\": \"POST\"}\n音::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=音&type=articlename\",\"method\": \"POST\"}\n阴唇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=阴唇&type=articlename\",\"method\": \"POST\"}\n阴道::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=阴道&type=articlename\",\"method\": \"POST\"}\n淫乱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=淫乱&type=articlename\",\"method\": \"POST\"}\n淫母::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=淫母&type=articlename\",\"method\": \"POST\"}\n淫娃::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=淫娃&type=articlename\",\"method\": \"POST\"}\n隐形::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=隐形&type=articlename\",\"method\": \"POST\"}\n一岁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=一岁&type=articlename\",\"method\": \"POST\"}\n姨子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姨子&type=articlename\",\"method\": \"POST\"}\n友::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=友&type=articlename\",\"method\": \"POST\"}\n呦::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=呦&type=articlename\",\"method\": \"POST\"}\n幼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼&type=articlename\",\"method\": \"POST\"}\n幼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼&type=articlename\",\"method\": \"POST\"}\n诱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=诱&type=articlename\",\"method\": \"POST\"}\n幼齿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼齿&type=articlename\",\"method\": \"POST\"}\n幼儿::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼儿&type=articlename\",\"method\": \"POST\"}\n诱奸::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=诱奸&type=articlename\",\"method\": \"POST\"}\n幼交::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼交&type=articlename\",\"method\": \"POST\"}\n呦女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=呦女&type=articlename\",\"method\": \"POST\"}\n幼女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼女&type=articlename\",\"method\": \"POST\"}\n友妻::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=友妻&type=articlename\",\"method\": \"POST\"}\n幼师::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼师&type=articlename\",\"method\": \"POST\"}\n幼童::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼童&type=articlename\",\"method\": \"POST\"}\n呦呦::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=呦呦&type=articlename\",\"method\": \"POST\"}\n幼幼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=幼幼&type=articlename\",\"method\": \"POST\"}\n御::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=御&type=articlename\",\"method\": \"POST\"}\n鱼::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=鱼&type=articlename\",\"method\": \"POST\"}\n御姐::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=御姐&type=articlename\",\"method\": \"POST\"}\n孕::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=孕&type=articlename\",\"method\": \"POST\"}\n孕妇::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=孕妇&type=articlename\",\"method\": \"POST\"}\n帀::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=帀&type=articlename\",\"method\": \"POST\"}\n榨::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=榨&type=articlename\",\"method\": \"POST\"}\n榨干::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=榨干&type=articlename\",\"method\": \"POST\"}\n榨精::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=榨精&type=articlename\",\"method\": \"POST\"}\n丈::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丈&type=articlename\",\"method\": \"POST\"}\n丈母娘::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=丈母娘&type=articlename\",\"method\": \"POST\"}\n罩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=罩&type=articlename\",\"method\": \"POST\"}\n榨汁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=榨汁&type=articlename\",\"method\": \"POST\"}\n着::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=着&type=articlename\",\"method\": \"POST\"}\n侄::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=侄&type=articlename\",\"method\": \"POST\"}\n制::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=制&type=articlename\",\"method\": \"POST\"}\n止::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=止&type=articlename\",\"method\": \"POST\"}\n汁::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=汁&type=articlename\",\"method\": \"POST\"}\n直::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=直&type=articlename\",\"method\": \"POST\"}\n稚::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=稚&type=articlename\",\"method\": \"POST\"}\n直播::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=直播&type=articlename\",\"method\": \"POST\"}\n稚嫩::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=稚嫩&type=articlename\",\"method\": \"POST\"}\n侄女::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=侄女&type=articlename\",\"method\": \"POST\"}\n中::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=中&type=articlename\",\"method\": \"POST\"}\n中出::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=中出&type=articlename\",\"method\": \"POST\"}\n中学::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=中学&type=articlename\",\"method\": \"POST\"}\n主::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=主&type=articlename\",\"method\": \"POST\"}\n主人::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=主人&type=articlename\",\"method\": \"POST\"}\n姊::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姊&type=articlename\",\"method\": \"POST\"}\n子::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=子&type=articlename\",\"method\": \"POST\"}\n字::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=字&type=articlename\",\"method\": \"POST\"}\n自::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=自&type=articlename\",\"method\": \"POST\"}\n子宫::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=子宫&type=articlename\",\"method\": \"POST\"}\n姊妹::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姊妹&type=articlename\",\"method\": \"POST\"}\n自慰::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=自慰&type=articlename\",\"method\": \"POST\"}\n姊姊::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=姊姊&type=articlename\",\"method\": \"POST\"}\n做::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=做&type=articlename\",\"method\": \"POST\"}\n做爱::/s.php,{\"charset\": \"gbk\",\"method\": \"POST\",\"body\": \"s=做爱&type=articlename\",\"method\": \"POST\"}\n\n[按回车键退出]",
    "lastUpdateTime": 1752447789412,
    "respondTime": 8102,
    "ruleBookInfo": {
      "author": "class.infotype@tag.p.0@tag.a.0@text",
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": "class.intro@tag.p@text",
      "name": "class.cataloginfo@tag.h3@text",
      "tocUrl": "class.gochapter@tag.a.0@href"
    },
    "ruleContent": {
      "content": "id.novelcontent@html",
      "nextContentUrl": "text.下页.0@href"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": "class.searchresult@p||class.article||class.articlegeneral||class.full_content",
      "bookUrl": "a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": "class.sone@tag.a.0@text||class.content@tag.h6@text||class.p2@text##《|》|（|〈|［|【|】|］|〉|）"
    },
    "ruleToc": {
      "chapterList": "class.chapters@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "text.下一页.0@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "顶点小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.23uswx.org",
    "bookUrlPattern": "https://www.23uswx.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 553,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻小说\",\"url\":\"http://www.23uswx.org/xuanhuanxiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"修真小说\",\"url\":\"http://www.23uswx.org/xiuzhenxiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"都市小说\",\"url\":\"http://www.23uswx.org/dushixiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"穿越小说\",\"url\":\"http://www.23uswx.org/chuanyuexiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"网游小说\",\"url\":\"http://www.23uswx.org/wangyouxiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"科幻小说\",\"url\":\"http://www.23uswx.org/kehuanxiaoshuo/\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"完本小说\",\"url\":\"http://www.23uswx.org/wanben/\",\"style\":{\"layout_flexGrow\":0.25}}]",
    "lastUpdateTime": 1720854567045,
    "loginUrl": "",
    "respondTime": 6706,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "init": "",
      "intro": "id.intro@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleContent": {
      "content": "id.content@html##最新网址.*org|顶点小说.*org|.*23uswx.net",
      "nextContentUrl": "",
      "replaceRegex": "##电报书友加群|看最新章节|@shuyouquan|有梯子的书友|加电报书友圈|电报书友圈搜索|艾特shuyouquan|就可以看到|在网上手打发布"
    },
    "ruleExplore": {
      "author": ".s5@text",
      "bookList": "ul@li",
      "bookUrl": ".s2 a@href",
      "coverUrl": "",
      "intro": "",
      "lastChapter": ".s3 a@text",
      "name": ".s2 a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.23uswx.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text##[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.23uswx.org/modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": " 猪猪书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zzs5.net",
    "customButton": false,
    "customOrder": 556,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "穿越::/chuanyue/list-{{page}}.html\n言情::/yanqing/list-{{page}}.html\n灵异::/lingyi/list-{{page}}.html\n武侠::/wuxia/list-{{page}}.html\n科幻::/kehuan/list-{{page}}.html\n历史::/lishi/list-{{page}}.html\n校园::/xiaoyuan/list-{{page}}.html\n文学::/wenxue/list-{{page}}.html\n魔幻::/mohuan/list-{{page}}.html\n重生::/chongsheng/list-{{page}}.html\n耽美::/danmei/list-{{page}}.html\n国外::/guowai/list-{{page}}.html\n网游::/wangyou/list-{{page}}.html\n豪门::/haomen/list-{{page}}.html\n其他::/qita/list-{{page}}.html\n人物::/renwu/list-{{page}}.html",
    "lastUpdateTime": 1738404951549,
    "respondTime": 16738,
    "ruleBookInfo": {
      "author": "tbody.1@tr.3@td.1@text||.bookd-title@dd@ownText##.*作者.|\\s.*",
      "intro": ".show_content!1@html",
      "kind": ".catpos@a.1@text&&tbody.1@tr.3@td.0@text&&.bookd-title@dd@ownText##.*：|小说|\\s.*",
      "lastChapter": "tbody.1@a@text||.list@a.-1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "tbody.0@h1@text||.bookd-title@h1@text##下载",
      "tocUrl": "id.downlink@a.0@href",
      "wordCount": "tbody.1@tr.2@td.1@text##.*："
    },
    "ruleContent": {
      "content": ".content!0@html"
    },
    "ruleExplore": {
      "author": "a.1@href<js>java.ajax(result)</js>##作者.([^<]+)##$1###",
      "bookList": "tbody.0@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "td.1@text##.*介绍.|发布时间.*",
      "kind": "p.0@text##.*时间.|\\s.*",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text",
      "wordCount": "p.0@text##.*：|\\s"
    },
    "ruleSearch": {
      "author": "a.1@href<js>java.ajax(result)</js>##作者.([^<]+)##$1###",
      "bookList": "tbody@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "kind": "p.0@text##.*：|\\s",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".list@dd@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href",
      "formatJs": ""
    },
    "searchUrl": "/index.php?m=search&c=index&a=init&typeid=2&siteid=1&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "蚂蚁文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mayiwxw.comNamo",
    "bookUrlPattern": "https://www.biquges.com",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 557,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:90.0) Gecko/20100101 Firefox/90.0\",\n    \"cookie\":\"Hm_lvt_8fd9f526ca72jb9418ca50c2g79d2f70=1597461516\"\n}",
    "lastUpdateTime": 1734942675411,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 766,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "init": "id.maininfo",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##最新网址：www.mayiwsk.com|请记住本书首发域名：|.net。|顶点小说手机版阅读网址：|最新网址：www.mayiwxw.com"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.biquges.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.mayiwxw.com/modules/article/search.php?searchkey={{key}}",
    "weight": 80
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "民国奇人",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.minguoqiren.org/",
    "customButton": false,
    "customOrder": 558,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1737976940023,
    "respondTime": 2048,
    "ruleBookInfo": {
      "author": "p.2@text",
      "coverUrl": "img@src",
      "init": "",
      "intro": "class.intro_info@text",
      "kind": "p.3@text",
      "lastChapter": "p.6@text",
      "name": "h2@text",
      "tocUrl": "option.value"
    },
    "ruleContent": {
      "content": "id.nr1@text##.*第./.页\\)|\\（本章未完.*",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.3@text",
      "bookList": "class.block",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": "p.2@text##分类.",
      "lastChapter": "p.4@text",
      "name": "h2@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.chapter.ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.minguoqiren.org/s.php?s=000000000000&q={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "by莫闻",
    "bookSourceGroup": "免费",
    "bookSourceName": "读趣",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xduqu.com",
    "customButton": false,
    "customOrder": 560,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1746091863513,
    "respondTime": 2143,
    "ruleBookInfo": {
      "author": "p@textNodes##\\s.*",
      "coverUrl": "img@src",
      "intro": "#introa@text",
      "kind": "class.fr fss.2@a@text",
      "lastChapter": "class.c_row nw@a@text",
      "name": "h4@a@text",
      "tocUrl": "text.显示全部章节@href||text.查看目录@href",
      "wordCount": "class.fr fss.0@text##字数："
    },
    "ruleContent": {
      "content": "#acontent@textNodes",
      "nextContentUrl": "class.daohang cf@ul@li.-1@a@href",
      "replaceRegex": "##最新网址.*|.*请点击下一页继续.*|.*第.*页.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p@text##\\|",
      "bookList": "class.c_row cf@a",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".index@dd@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.xduqu.com/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&searchtype=all\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "天域小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.tycqzw.la/",
    "bookUrlPattern": "https://www.tycqzw.la/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 561,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部小说\",\"url\":\"https://m.tycqzw.la/xclass/0/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"https://m.tycqzw.la/xclass/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"修真小说\",\"url\":\"https://m.tycqzw.la/xclass/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"都市小说\",\"url\":\"https://m.tycqzw.la/xclass/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"穿越小说\",\"url\":\"https://m.tycqzw.la/xclass/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"网游小说\",\"url\":\"https://m.tycqzw.la/xclass/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"科幻小说\",\"url\":\"https://m.tycqzw.la/xclass/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}},{\"title\":\"其他小说\",\"url\":\"https://m.tycqzw.la/xclass/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1731736387074,
    "loginUrl": "",
    "respondTime": 6176,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作\\s*者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "init": "",
      "intro": "id.intro@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "id.list@tag.dd.0@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##推荐.*新书.*|手机用户.*阅读体验。"
    },
    "ruleExplore": {
      "author": "class.author@text##作者：",
      "bookList": "class.hot_sale",
      "bookUrl": "tag.a.0@href@js:\nr=result.match(/_(\\d+)/)\nid=r[1]\nvar iid = parseInt(id/1000);\n'https://www.tycqzw.la/'+iid+'_'+id+'/'",
      "coverUrl": "img@data-original",
      "intro": "class.review@text##简介：",
      "lastChapter": "",
      "name": "class.title@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.even.0@tag.a.0@href",
      "coverUrl": "class.even.0@tag.a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.tycqzw.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.odd.0@tag.a.0@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.even.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "棉花糖小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.mhtxs.info",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 563,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/mulu/1-{{page}}.html\n武侠修真::/mulu/2-{{page}}.html\n都市言情::/mulu/3-{{page}}.html\n历史军事::/mulu/4-{{page}}.html\n侦探推理::/mulu/5-{{page}}.html\n网游动漫::/mulu/6-{{page}}.html\n科幻小说::/mulu/7-{{page}}.html\n恐怖灵异::/mulu/8-{{page}}.html\n同人小说::/mulu/9-{{page}}.html\n穿越小说::/mulu/10-{{page}}.html",
    "header": "",
    "lastUpdateTime": 1744040765555,
    "loginUrl": "",
    "respondTime": 4515,
    "ruleBookInfo": {
      "author": "[name=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "init": "",
      "intro": "id.intro@textNodes",
      "kind": "[name=\"og:novel:category\"]@content&&[name=\"og:novel:status\"]@content&&[name=\"og:novel:update_time\"]@content",
      "lastChapter": "[name=\"og:novel:latest_chapter_name\"]@content##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "[name=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "class.content@html##最新网址.*la|下载本书最(.|\\n)* ",
      "imageStyle": "0",
      "replaceRegex": "##最新网址.*|\\(.*mhtxs.*?\\)"
    },
    "ruleExplore": {
      "author": "tag.a.2@text",
      "bookList": "class.alistbox",
      "bookUrl": "h2@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.intro@textNodes",
      "lastChapter": "tag.a.3@text",
      "name": "tag.a.1@text##\\《|\\》"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##https://www.mhtxs.la/book/image/$2/$1/$1s.jpg###",
      "kind": "class.odd.1@text",
      "lastChapter": "class.odd.0@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.even.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "<js>\ncookie.removeCookie(source.key)\nurl=source.key;\na=java.webView(null,url,null);\n//java.log(a)\nb=a.match(/action=\\\"([^\"]*)\\\"/)[1];\nc=`,{\"method\": \"post\",\"body\":\"searchkey=${key}\"}`;\nb+=c\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "天天的鸟蛋蛋",
    "bookSourceGroup": "免费",
    "bookSourceName": "格格党（阅读书屋）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.ax81.com",
    "customButton": false,
    "customOrder": 564,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1740857886969,
    "respondTime": 747,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=lastest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.查看全部章节@href"
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "text.下一页@href||text.下一@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span:nth-child(3) > .g@text",
      "bookList": ".SHsectionThree-middle > p:nth-child(n+1)",
      "bookUrl": "span:nth-child(2) > a@href",
      "checkKeyWord": "系统",
      "kind": "span:nth-child(1) > .g@text",
      "name": "span:nth-child(2) > a@text"
    },
    "ruleToc": {
      "chapterList": ".BCsectionTwo-top-chapter:nth-child(n+1) > .g@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVolume": "",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\n/search/,{\n  \"body\": \"searchkey={{key}}&searchtype=all&submit=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "若雨中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.3yt.la#",
    "customButton": false,
    "customOrder": 565,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"网络小说\",\"url\":\"/Book/LN/1079/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻魔法\",\"url\":\"/Book/LN/1094/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/Book/LN/1095/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/Book/LN/1096/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/Book/LN/1097/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游竞技\",\"url\":\"/Book/LN/1098/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻灵异\",\"url\":\"/Book/LN/1099/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/Book/LN/1100/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1734544075256,
    "loginUrl": "",
    "respondTime": 114,
    "ruleBookInfo": {
      "author": ".w_530@a.0@text##作品集",
      "coverUrl": ".img@img@src",
      "intro": ".h_260@p@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".path@a.1@text&&.w_200@li.0@text&&.h_260@em@text##.*：|\\s...:*|小说",
      "lastChapter": ".h_260@a.0@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".w_530@em.0@text",
      "tocUrl": ".w_200@a.1@href",
      "wordCount": ".w_200@li.1@text##.*已完成\\s|\\s字"
    },
    "ruleContent": {
      "content": "id.BookText@textNodes"
    },
    "ruleExplore": {
      "bookList": "tbody!1:2@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.0:4:3@text##小说",
      "lastChapter": "td.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "td.1@text"
    },
    "ruleSearch": {
      "author": "td.4@text",
      "bookList": "tbody@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.0:5:3@text##小说",
      "lastChapter": "td.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "td.1@text"
    },
    "ruleToc": {
      "chapterList": "id.BookText@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/book/search.aspx?searchkey={{key}}&SeaButton=",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "若初文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruochu.comyc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 566,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"历史\",\"url\":\"http://search.ruochu.com/web/all?sort=3&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"http://search.ruochu.com/web/all?sort=4&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"http://search.ruochu.com/web/all?sort=6&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"http://search.ruochu.com/web/all?sort=7&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"http://search.ruochu.com/web/all?sort=8&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"http://search.ruochu.com/web/all?sort=10&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"职场\",\"url\":\"http://search.ruochu.com/web/all?sort=11&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门\",\"url\":\"http://search.ruochu.com/web/all?sort=12&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总裁\",\"url\":\"http://search.ruochu.com/web/all?sort=13&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"奇幻\",\"url\":\"http://search.ruochu.com/web/all?sort=14&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"架空\",\"url\":\"http://search.ruochu.com/web/all?sort=15&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"http://search.ruochu.com/web/all?sort=17&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宫斗\",\"url\":\"http://search.ruochu.com/web/all?sort=19&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宅斗\",\"url\":\"http://search.ruochu.com/web/all?sort=20&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"青春\",\"url\":\"http://search.ruochu.com/web/all?sort=21&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱\",\"url\":\"http://search.ruochu.com/web/all?sort=23&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"竞技\",\"url\":\"http://search.ruochu.com/web/all?sort=27&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"种田\",\"url\":\"http://search.ruochu.com/web/all?sort=28&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"未来\",\"url\":\"http://search.ruochu.com/web/all?sort=29&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"http://search.ruochu.com/web/all?sort=32&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"西漫\",\"url\":\"http://search.ruochu.com/web/all?sort=33&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"探案\",\"url\":\"http://search.ruochu.com/web/all?sort=34&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"婚恋\",\"url\":\"http://search.ruochu.com/web/all?sort=35&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古言\",\"url\":\"http://search.ruochu.com/web/all?sort=37&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"民国\",\"url\":\"http://search.ruochu.com/web/all?sort=38&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现言\",\"url\":\"http://search.ruochu.com/web/all?sort=39&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"http://search.ruochu.com/web/all?sort=40&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"异能\",\"url\":\"http://search.ruochu.com/web/all?sort=43&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现实\",\"url\":\"http://search.ruochu.com/web/all?sort=54&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇\",\"url\":\"http://search.ruochu.com/web/all?sort=110&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1702228752561,
    "loginUrl": "",
    "respondTime": 1402,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": ".page-content@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "$.data.content[*]",
      "bookUrl": "$.id@js:\"https://www.ruochu.com/book/\"+result",
      "checkKeyWord": "",
      "coverUrl": "$.iconUrlSmall@js:\"https://b.heiyanimg.com\"+result",
      "intro": "🔖标签：{{$.tags}}{{'\\n'+'​'}}\n{{$.introduce}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "$.sortname&&$.updatetime##\\s.*",
      "lastChapter": "$.lastchaptername",
      "name": "$.name",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": ".float-list li",
      "chapterName": "html@js:if(result.match(/isvip/)){\nresult=\"🔒\"+result.match(/>([^<]+)<\\/a>/)[1];\n}else{result=result.match(/>([^<]+)<\\/a>/)[1];}",
      "chapterUrl": "a@href",
      "updateTime": "span@text"
    },
    "searchUrl": "http://search.ruochu.com/web/search?queryString={{key}}&highlight=false&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// http://download.yichnmedia.com\n// http://download.biqugexsapp.com\n// http://ddxs.xsappxz.com\n_path = {\n    DownApp: \"/client/version\",\n    GetHost: \"/client/config/value?key=landing_page_domain\",\n    LoginID: \"/auth/third; post; type=5&openid= ${R32} &firstBoot=1\"\n};\nsetv = (json) => source.setVariable(JSON.stringify(json, null, \"\\t\"));\ntry {\n    $ = JSON.parse(source.getVariable());\n} catch (err) {\n    $ = {\n        time: 20240202,\n        domains: [\n            // old aes\n            [\"longchunbajiao\", 0],\n            [\"yybhsl\", 0],\n            [\"wzyjxf\", 0],\n            [\"zjlzgg\", 0],\n            [\"sxwlyhzp\", 0],\n            [\"anwaben\", 0],\n            [\"basusan\", 0],\n            [\"myweipin\", 0],\n            [\"lemiyigou\", 0],\n            // new aes\n            [\"xingliangglobal\", 1],\n            [\"fangweicong\", 1],\n            [\"yuanxifayi\", 1],\n            [\"xqjcool\", 1],\n        ]\n    }\n    setv($);\n}\n_reg = /http:\\/\\/api\\.(.+)\\.com/i\ngetHost = i => {\n    [domain, uType] = $.domains[i];\n    [aesKey, Authorization] = [\n        [\"f041c49714d39908\", \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkubXl3ZWlwaW4uY29tXC9hdXRoXC90aGlyZCIsImlhdCI6MTcwNjg0NjM2NiwiZXhwIjoxODAwMTU4MzY2LCJuYmYiOjE3MDY4NDYzNjYsImp0aSI6IjRVbU5BZVpHQ1hvaGNpSEgiLCJzdWIiOjc3MDg5OSwicHJ2IjoiYTFjYjAzNzE4MDI5NmM2YTE5MzhlZjMwYjQzNzk0NjcyZGQwMTZjNSJ9.lOpKG-vWne5Ub8g6byvF53iQjldPUC1-BMoO-OuhOlA\"],\n        [\"4395daa50ad6baf7\", \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkueGluZ2xpYW5nZ2xvYmFsLmNvbVwvYXV0aFwvdGhpcmQiLCJpYXQiOjE3MDY4NjA2NzcsImV4cCI6MTgwMDE3MjY3NywibmJmIjoxNzA2ODYwNjc3LCJqdGkiOiJxdXBGbWo5cnJRMHFoTFVIIiwic3ViIjozMjY4ODcsInBydiI6ImExY2IwMzcxODAyOTZjNmExOTM4ZWYzMGI0Mzc5NDY3MmRkMDE2YzUifQ.CQsDsiDJyyriPmJuT6A38KIvGgq6BEOMWl8H5plqArQ\"]\n    ][uType];\n    headers = \",\" + JSON.stringify({\n        \"headers\": {\n            \"client-device\": java.md5Encode(aesKey),\n            \"Authorization\": Authorization\n        }\n    });\n    host = `http://api.${domain}.com`;\n}\ngetData = (uri) => {\n    url = host + uri + headers;\n    // java.log(url);\n    data = java.ajaxAll([url])[0];\n}\nvuri = \"/search?keyword=深空彼岸\";\ntime = +java.timeFormatUTC(new Date(), 'yyyyMMdd', 8);\narr1 = []; // 成功\narr2 = []; // 失败\narr3 = []; // 新增\nif ($.time < time && 0) {\n    java.toast(\"检测更新中\");\n    try {\n        for (i in $.domains) {\n            arr1.push($.domains[i]);\n            arr2.push($.domains[i]);\n            getHost(i);\n            try {\n                // java.toast(\"正在校验：\"+host);\n                getData(vuri); //校验搜索\n                if (data.code() == 200) {\n                    arr2.length = arr2.length - 1;\n                    try {\n                        getData(_path.GetHost);\n                        domain = JSON.parse(data.body())\n                            .data.landingPageDomain;\n                        arr3.push([\n                            domain.match(_reg)[1],\n                            uType\n                        ]);\n                    } catch (err) {}\n                } else {\n                    arr1.length = arr1.length - 1;\n                }\n            } catch (err) {\n                arr1.length = arr1.length - 1;\n            }\n        }\n        array = arr1.concat(arr3);\n        $.domains = array.filter(function(item, index) {\n            return array.findIndex(function(value) {\n                return value[0] === item[0] && value[1] === item[1];\n            }) === index && arr2.findIndex(function(value) {\n                return value[0] === item[0] && value[1] === item[1];\n            })\n        });\n        $.time = time\n        setv($);\n        java.toast(\"接口更新成功\");\n    } catch (err) {\n        java.toast(\"未知错误：\" + err);\n    }\n}\nrun = Path => {\n    for (i in $.domains) {\n        getHost(i);\n        try {\n            getData(java.hexDecodeToString(result));\n            if (data.code() == 200)\n                return $$ = JSON.parse(data.body())[Path];\n        } catch (err) {}\n    }\n    return $$ = {};\n}\neurl = Path => `data:;base64,${java.base64Encode(Path)},{\"type\":\"maoyankanshu\"}`;",
    "bookSourceGroup": "正版",
    "bookSourceName": "猫眼看书③",
    "bookSourceType": 0,
    "bookSourceUrl": "http://download.yichnmedia.com",
    "customButton": false,
    "customOrder": 567,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>sort.push({\n\t\t\t\ttitle: title,\n\t\t\t\turl: url,\n\t\t\t\tstyle: {\n\t\t\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t\t\t}\n\t\t\t});\n$$=(a,b,c)=>{\n\t\turi = c ? `/module/${a}channel=${b}` : `/novel?sort=${a}&categoryId=${b}`;\n\t\treturn `data:;base64,{{java.base64Encode(\"${uri}&page=\"+page)}\\},{\"type\":\"maoyankanshu\"}`;\n\t}\n;[\n\t\t[\"男\",[[\"玄幻\",\"lejRej\"],[\"武侠\",\"nel5aK\"],[\"都市\",\"mbk5ez\"],[\"仙侠\",\"vbmOeY\"],[\"军事\",\"penRe7\"],[\"历史\",\"xbojag\"],[\"游戏\",\"mep2bM\"],[\"科幻\",\"zbq2dp\"],[\"轻小说\",\"YerEdO\"]]],\n\t\t[\"女\",[[\"现代言情\",\"9avmeG\"],[\"古代言情\",\"DdwRb1\"],[\"幻想言情\",\"7ax9by\"],[\"青春校园\",\"Pdy7aQ\"],[\"唯美纯爱\",\"kazYeJ\"],[\"同人衍生\",\"9aAOdv\"]]]\n].map(([title,list],channel)=>{\n\t\tchannel++;\n\t\tpush(\"༺ˇ»`ʚ \"+title+\"生频道 ɞ´«ˇ༻\",null,1);\n\t\tpush(\"༺ˇ»`ʚ 榜单 ɞ´«ˇ༻\",null,1);\n\t\t[\"必读榜\",\"完本榜\",\"更新榜\",\"搜索榜\",\"潜力榜\",\"评论榜\",\"人气完本\",\"新书速递\"].map((title,i)=>{\n\t\t\t\ti++\n\t\t\t\tif(i<7){\n\t\t\t\t\t\ti = \"rank?type=\"+i+\"&\";\n\t\t\t\t\t}\n\t\t\t\telse{\n\t\t\t\t\t\ti = i<8?\"mep2bM?\":\"YerEdO?\";\n\t\t\t\t\t}\n\t\t\t\tpush(title,$$(i,channel,1),0.25);\n\t\t\t});\n\t\tpush(\"༺ˇ»`ʚ 分类 ɞ´«ˇ༻\",null,1);\n\t\tlist.map([title,B]=>{\n\t\t\t\tpush(\"༺ \"+title+\" ༻\",$$(1,B,0),1);\n\t\t\t\t[\"热度\",\"更新\",\"评分\",\"新书\"].map((title,A)=>{\n\t\t\t\t\t\tA++;\n\t\t\t\t\t\t[\"[\"+title+\"]\",\"连载\",\"完结\"].map((title,C)=>{\n\t\t\t\t\t\t\t\tC=C?\"&isComplete=\"+(C-1):\"\";\n\t\t\t\t\t\t\t\tpush(title,$$(A,B+C,0),0.25);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t});\n\t}); \nJSON.stringify(sort);",
    "header": "{\n    \"client-version\": \"2.3.0\",\n    \"client-brand\": \"HONOR\",\n    \"client-source\": \"android\",\n    \"client-name\": \"app.maoyankanshu.novel\",\n    \"User-Agent\": \"okhttp/4.9.2\"\n}",
    "lastUpdateTime": 1754560139846,
    "respondTime": 3406,
    "ruleBookInfo": {
      "author": "$.authorName",
      "coverUrl": "$.cover",
      "init": "@js:\neval(String(source.bookSourceComment));\nrun(\"data\");\n$$.cover = $$.cover.replace(_reg, host);\n$$.tocUrl = eurl('/novel/'+$$.novelId+'/chapters');\nJSON.stringify($$);",
      "intro": "{{'\\n&lrm;\\n'}}🏷️ 标签：{{$..className&&$..tagName##\\n##, }}\n{{'\\n&lrm;\\n'}}📑 简介：{{$.summary}}",
      "kind": "{{$.averageScore}}分\n{{$..className}}\n连载中{{$.isComplete}}已完结\n{{$.lastChapter.decTime}}\n##连载中1|0已完结",
      "lastChapter": "{{$.lastChapter.chapterName}} • {{$.lastChapter.decTime}}",
      "name": "$.novelName",
      "tocUrl": "$.tocUrl",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "@js:\neval(String(source.bookSourceComment));\nrun(\"content\");"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "@js:\neval(String(source.bookSourceComment));\nrun(\"data\").map(($$,i)=>{\n$$.cover = $$.cover.replace(_reg, host);\n$$.bookUrl = eurl('/novel/'+$$.novelId);\nreturn JSON.stringify($$);\n});",
      "bookUrl": "$.bookUrl",
      "checkKeyWord": "深空彼岸",
      "coverUrl": "$.cover",
      "intro": "$.summary||$.rankInfo",
      "kind": "{{$.averageScore}}分\n{{$..className}}\n连载中{{$.status}}已完结\n{{$.lastChapter.decTime||$.createdAt##\\s.*}}\n##连载中2|1已完结|连载中已完结",
      "lastChapter": "{{$.lastChapter.chapterName}} • {{$.lastChapter.decTime}}##^•$",
      "name": "$.novelName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "@js:\neval(String(source.bookSourceComment));\n\nList = run(\"data\").list;\n\nCipher = java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\", aesKey, \"0123456789abcdef\");\n\nList.map($$=>{\n\tpath = Cipher.decryptStr($$.path);\ntry{\n\tpath = String(path).split(_reg)[2];\n}catch(err){}\n\treturn {\n\t\tname: $$.chapterName,\n\t\tpath: eurl(path),\n\t\tinfo: `章节字数：${$$.wordNum}　更新时间：${$$.updatedAt}`\n\t\t}\n});",
      "chapterName": "name",
      "chapterUrl": "path",
      "updateTime": "info"
    },
    "searchUrl": "data:;base64,{{java.base64Encode(\"/search?keyword=\"+key+\"&page=\"+page)}},{\"type\":\"maoyankanshu\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "移动阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ndlib.cn一程",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 568,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1732716684529,
    "loginUrl": "\\\\目录列表规则处添加账号信息",
    "respondTime": 537,
    "ruleBookInfo": {
      "intro": "@js:'<br>'+java.get('intro')"
    },
    "ruleContent": {
      "content": "$.returnObject[0].content@js:\nresult?result:'无法获取内容？\\n1.编辑书源添加自己的账号信息，找到目录列表规则，按提示添加账号信息\\n2.如果添加了账号信息仍然无法获取内容，请尝试刷新或更新账号信息（方式二）\\n3.必要说明：如果使用方式一添加了账号信息，每次打开新的书籍详情页或刷新正文都会重新获取账号信息，因此之前获取的书籍正文的链接将会失效，因此建议全文下载或者按2操作\\n必要说明：在使用本源前，请考虑到使用本源可能造成的账号封禁等问题'",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.resourceInfo.author",
      "bookList": "$.returnObject.resAndMagResult",
      "bookUrl": "$.resourceInfo.resId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n\n//目录链接生成\nvar data = {\n    timeStamp:Date.now(),\n    resourceId:result,\n    pageSize:10000,\n    pageNum:1\n};\ngetPostUrl(data,'qryChapterList');",
      "coverUrl": "$.resourceInfo.coverUrl",
      "intro": "$.resourceInfo.shortIntro@js:java.put('intro',result);result.trim();",
      "kind": "$.resourceInfo.categoryName",
      "name": "$.resourceInfo.name"
    },
    "ruleToc": {
      "chapterList": "$.returnObject[0].children||$.returnObject@js:\n//账号信息定义（任选其一，方式二会覆盖方式一)\n//方式一：账号密码（每次搜索都会重新获取方式二中的数据，可能会导致账号问题）\nvar account='';\nvar pwd='';\n//方式二：成功登录后的cookie的值（再次登录或退出登录或超过一定时间（待确认）会失效）\nvar userId='';\nvar siteId='';\nvar wapToken='';\n//定义结束\n\n//以下代码不要动\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||'0';\nvar deskey = wapToken||'web@hzlq';\nvar siteId=siteId||'1';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n\n//获取登录信息\nif((account&&pwd&&(!wapToken))){\nvar loginInfo={\ntimeStamp:Date.now(),\naccount:account,\npwd:pwd\n}\nvar loginInfoUrl=getPostUrl(loginInfo,'login');\nvar ddd=String(java.ajax(loginInfoUrl));\nvar loginData=JSON.parse(ddd).returnObject;\nuserId=loginData.userId;\nsiteId=loginData.siteId;\ndeskey=loginData.wapToken;\n}\njava.put('userId',userId);\njava.put('deskey',deskey);\njava.put('siteId',siteId);\nresult",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.chapterId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||String(java.get('userId'));\nvar deskey=deskey||String(java.get('deskey'));\nvar siteId=siteId||String(java.get('siteId'));\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\nvar data = {\n    timeStamp:Date.now(),\n    uaInfo:'1',\n    chapterId:result\n    };\ngetPostUrl(data,'qryChapterDetails');"
    },
    "searchUrl": "<js>\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do,';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data:encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar option={\n\"method\":\"POST\",\n\"body\":'cmd='+type+'&value=' + encodeURIComponent(JSON.stringify(value))\n}\nreturn url + JSON.stringify(option);\n}\n//搜索链接\nvar data ={\n    timeStamp:Date.now(),\n    bigType:\"0\",\n    content:key,\n    pageSize:10,\n    pageNum:1\n};\ngetPostUrl(data,'qrySearchList')\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "👑 影书小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.yingsx.com",
    "customButton": false,
    "customOrder": 569,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"月点击\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周点击\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总点击\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻奇幻 \",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真仙侠 \",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"青春都市 \",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史穿越 \",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游竞技 \",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻悬疑 \",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1723697915300,
    "respondTime": 3174,
    "ruleBookInfo": {
      "author": ".xx@a.1@text",
      "coverUrl": ".xsfm@img@src",
      "intro": ".jianjie@p@html",
      "kind": "[property~=category|status|update_time]@content##\\s..:.*",
      "lastChapter": ".xx@a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".xx@li.0@text",
      "tocUrl": ".gengduo@a@href"
    },
    "ruleContent": {
      "content": "id.nr@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\s*.*点击下一页.*\\s*"
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".xbk",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "span.2@text",
      "name": "a.1@text",
      "wordCount": ".tjrs@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": "ul.fk@li",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##https://www.yingsx.com/files/article/image/$2/$1/$1s.jpg###",
      "kind": "a.0@text##\\[|\\]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".lb@li",
      "chapterName": "text##.*章节列表.*|正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "a@href",
      "nextTocUrl": "class.bt-next@span@a@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"utf-8\",\n  \"method\": \"post\",\n  \"body\": \"type=articlename&s={{key}}&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱看书吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://cxb-pro.cread.com芜恙",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 571,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1729750417932,
    "loginUrl": "",
    "respondTime": 788,
    "ruleBookInfo": {
      "intro": "$.summary",
      "lastChapter": ""
    },
    "ruleContent": {
      "content": "$..content",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.list[:3]",
      "bookUrl": "https://cxb-pro.cread.com/cx/itf/getvolume?bookId={{$.id}},{\n  \"headers\": \"{packname:com.mfyueduqi.book,cnid:14001,version:5.6.0,vcode:98,platform:android,uid:90684954,appname:aks,oscode:28,channelId:14001}\"\n}",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.name@put:{name:$.name,bookId:$.id}",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": "$..bookChapters[*]",
      "chapterName": "$.name",
      "chapterUrl": "https://cxb-pro.cread.com:443/cx/itf/chapterRead?chapterId={{$.id}}&bookId=@get:{bookId}&full=0,{\n  \"headers\": \"{packname:com.mfyueduqi.book,cnid:14001,version:5.6.0,vcode:98,platform:android,uid:90684954,appname:aks,oscode:28,channelId:14001}\"\n}",
      "updateTime": "$.updateDate@js:java.timeFormat(result)"
    },
    "searchUrl": "https://cxb-pro.cread.com:443/cx/searchbooks,{\n  \"method\": \"POST\",\n  \"body\": \"pageNo={{page}}&version=5.6.0&keyword={{key}}\",\n  \"headers\": \"{packname:com.mfyueduqi.book,cnid:14001,version:5.6.0,vcode:98,platform:android,uid:90684954,appname:aks,oscode:28,channelId:14001}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "玄幻阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xuanhuange.net",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 572,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::http://www.xuanhuange.net/sort1/{{page}}/\n武侠::http://www.xuanhuange.net/sort2/{{page}}/\n都市::http://www.xuanhuange.net/sort3/{{page}}/\n历史::http://www.xuanhuange.net/sort4/{{page}}/\n言情::http://www.xuanhuange.net/sort5/{{page}}/\n穿越::http://www.xuanhuange.net/sort6/{{page}}/\n科幻::http://www.xuanhuange.net/sort7/{{page}}/\n恐怖::http://www.xuanhuange.net/sort8/{{page}}/\n校园::http://www.xuanhuange.net/sort9/{{page}}/\n异界::http://www.xuanhuange.net/sort10/{{page}}/\n全本::http://www.xuanhuange.net/quanben/{{page}}/",
    "lastUpdateTime": 1721731888090,
    "loginUrl": "",
    "respondTime": 6171,
    "ruleBookInfo": {
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.bookintro@tag.p@text##声明.*|友情分享.*|最新章节.*关于：",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "tocUrl": "id.newlist@tag.a@href"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.book_other@tag.span.0@text",
      "bookList": "id.sitebox@tag.dl",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "lastChapter": "class.book_other@tag.a.0@text",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.xuanhuange.net/modules/article/search.php?s=7673184438602983814&s={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "疯情书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://aabook.cyou",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 573,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"点击\",\"url\":\"/ranking.php?t=click\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书\",\"url\":\"/ranking.php?t=newbook\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"字数\",\"url\":\"/ranking.php?t=totalword\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"/category.php?t=xuanhuan&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"职场\",\"url\":\"/category.php?t=zhichang&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古典\",\"url\":\"/category.php?t=gudian&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"惊悚\",\"url\":\"/category.php?t=jingsong&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游\",\"url\":\"/category.php?t=wangyou&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"乡土\",\"url\":\"/category.php?t=xiangtu&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史\",\"url\":\"/category.php?t=lishi&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"耽美\",\"url\":\"/category.php?t=danmei&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"女尊\",\"url\":\"/category.php?t=nvzun&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/category.php?t=chuanyue&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人\",\"url\":\"/category.php?t=tongren&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/category.php?t=xiaoyuan&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/category.php?t=yanqing&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"官场\",\"url\":\"/category.php?t=guanchang&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"异能\",\"url\":\"/category.php?t=yineng&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"/category.php?t=dushi&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"/category.php?t=wuxia&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"/category.php?t=xianxia&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"单篇\",\"url\":\"/category.php?t=danpian&p={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36\"\n}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 4779,
    "ruleBookInfo": {
      "author": ".author@text##作者.",
      "coverUrl": "",
      "init": "",
      "intro": ".jianjieneirong@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".xinxi_content span.0:1@text&&.update_time@text##创建时间\\s|\\s.*",
      "lastChapter": ".new_zhangjie1 a.0@text",
      "name": ".book_name a@text",
      "tocUrl": ".xiaoshuomulu a@href",
      "wordCount": ".xinxi_content span.2@text##字"
    },
    "ruleContent": {
      "content": "<js>java.ajax(baseUrl.replace('read-', '_getcontent.php?id=').replace('.html','&v=' + result.match(/&v=(.*?)\"/)[1])).replaceAll('<style.*style>','').replaceAll('<([^<]*?)class(.*?)</(.*?)>','')</js>",
      "imageStyle": "0",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "td.3@text",
      "bookList": "tbody tr",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "kind": "td.1:5@text##\\[|\\]|\\s.*",
      "name": "a.0@text",
      "wordCount": "td.4@text"
    },
    "ruleSearch": {
      "author": "a.1@text",
      "bookList": ".sousuojieguo li",
      "bookUrl": "a.0@href",
      "coverUrl": "",
      "kind": "cite@text&&textNodes##小说|\\[|\\]",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".section_list li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.php?searchword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "正版",
    "bookSourceName": "黑岩小说玄奇.",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.heiyan.com玄奇.",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 575,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://www.heiyan.com/web/all/-1/-1/-1/-1/0/{{page}}/100\n免费小说::https://www.heiyan.com/web/all/-1/-1/1/-1/0/{{page}}/100\n收费小说::https://www.heiyan.com/web/all/-1/-1/0/-1/0/{{page}}/100\n完结小说::https://www.heiyan.com/web/all/-1/-1/-1/1/0/{{page}}/100\n连载小说::https://www.heiyan.com/web/all/-1/-1/-1/0/0/{{page}}/100\n悬疑全部::https://www.heiyan.com/web/all/1/-1/-1/-1/0/{{page}}/100\n悬疑免费::https://www.heiyan.com/web/all/1/-1/1/-1/0/{{page}}/100\n悬疑收费::https://www.heiyan.com/web/all/1/-1/0/-1/0/{{page}}/100\n悬疑完结::https://www.heiyan.com/web/all/1/-1/-1/1/0/{{page}}/100\n悬疑连载::https://www.heiyan.com/web/all/1/-1/-1/0/0/{{page}}/100\n历史全部::https://www.heiyan.com/web/all/3/-1/-1/-1/0/{{page}}/100\n历史免费::https://www.heiyan.com/web/all/3/-1/1/-1/0/{{page}}/100\n历史收费::https://www.heiyan.com/web/all/3/-1/0/-1/0/{{page}}/100\n历史完结::https://www.heiyan.com/web/all/3/-1/-1/1/0/{{page}}/100\n历史连载::https://www.heiyan.com/web/all/3/-1/-1/0/0/{{page}}/100\n军事全部::https://www.heiyan.com/web/all/5/-1/-1/-1/0/{{page}}/100\n军事免费::https://www.heiyan.com/web/all/5/-1/1/-1/0/{{page}}/100\n军事收费::https://www.heiyan.com/web/all/5/-1/0/-1/0/{{page}}/100\n军事完结::https://www.heiyan.com/web/all/5/-1/-1/1/0/{{page}}/100\n军事连载::https://www.heiyan.com/web/all/5/-1/-1/0/0/{{page}}/100\n玄幻全部::https://www.heiyan.com/web/all/6/-1/-1/-1/0/{{page}}/100\n玄幻免费::https://www.heiyan.com/web/all/6/-1/1/-1/0/{{page}}/100\n玄幻收费::https://www.heiyan.com/web/all/6/-1/0/-1/0/{{page}}/100\n玄幻完结::https://www.heiyan.com/web/all/6/-1/-1/1/0/{{page}}/100\n玄幻连载::https://www.heiyan.com/web/all/6/-1/-1/0/0/{{page}}/100\n奇幻全部::https://www.heiyan.com/web/all/14/-1/-1/-1/0/{{page}}/100\n奇幻免费::https://www.heiyan.com/web/all/14/-1/1/-1/0/{{page}}/100\n奇幻收费::https://www.heiyan.com/web/all/14/-1/0/-1/0/{{page}}/100\n奇幻完结::https://www.heiyan.com/web/all/14/-1/-1/1/0/{{page}}/100\n奇幻连载::https://www.heiyan.com/web/all/14/-1/-1/0/0/{{page}}/100\n仙侠全部::https://www.heiyan.com/web/all/7/-1/-1/-1/0/{{page}}/100\n仙侠免费::https://www.heiyan.com/web/all/7/-1/1/-1/0/{{page}}/100\n仙侠收费::https://www.heiyan.com/web/all/7/-1/0/-1/0/{{page}}/100\n仙侠完结::https://www.heiyan.com/web/all/7/-1/-1/1/0/{{page}}/100\n仙侠连载::https://www.heiyan.com/web/all/7/-1/-1/0/0/{{page}}/100\n武侠全部::https://www.heiyan.com/web/all/8/-1/-1/-1/0/{{page}}/100\n武侠免费::https://www.heiyan.com/web/all/8/-1/1/-1/0/{{page}}/100\n武侠收费::https://www.heiyan.com/web/all/8/-1/0/-1/0/{{page}}/100\n武侠完结::https://www.heiyan.com/web/all/8/-1/-1/1/0/{{page}}/100\n武侠连载::https://www.heiyan.com/web/all/8/-1/-1/0/0/{{page}}/100\n科幻全部::https://www.heiyan.com/web/all/10/-1/-1/-1/0/{{page}}/100\n科幻免费::https://www.heiyan.com/web/all/10/-1/1/-1/0/{{page}}/100\n科幻收费::https://www.heiyan.com/web/all/10/-1/0/-1/0/{{page}}/100\n科幻完结::https://www.heiyan.com/web/all/10/-1/-1/1/0/{{page}}/100\n科幻连载::https://www.heiyan.com/web/all/10/-1/-1/0/0/{{page}}/100\n游戏全部::https://www.heiyan.com/web/all/9/-1/-1/-1/0/{{page}}/100\n游戏免费::https://www.heiyan.com/web/all/9/-1/1/-1/0/{{page}}/100\n游戏收费::https://www.heiyan.com/web/all/9/-1/0/-1/0/{{page}}/100\n游戏完结::https://www.heiyan.com/web/all/9/-1/-1/1/0/{{page}}/100\n游戏连载::https://www.heiyan.com/web/all/9/-1/-1/0/0/{{page}}/100\n同人全部::https://www.heiyan.com/web/all/16/-1/-1/-1/0/{{page}}/100\n同人免费::https://www.heiyan.com/web/all/16/-1/1/-1/0/{{page}}/100\n同人收费::https://www.heiyan.com/web/all/16/-1/0/-1/0/{{page}}/100\n同人完结::https://www.heiyan.com/web/all/16/-1/-1/1/0/{{page}}/100\n同人连载::https://www.heiyan.com/web/all/16/-1/-1/0/0/{{page}}/100\n社会全部::https://www.heiyan.com/web/all/25/-1/-1/-1/0/{{page}}/100\n社会免费::https://www.heiyan.com/web/all/25/-1/1/-1/0/{{page}}/100\n社会收费::https://www.heiyan.com/web/all/25/-1/0/-1/0/{{page}}/100\n社会完结::https://www.heiyan.com/web/all/25/-1/-1/1/0/{{page}}/100\n社会连载::https://www.heiyan.com/web/all/25/-1/-1/0/0/{{page}}/100\n古言全部::https://www.heiyan.com/web/all/37/-1/-1/-1/0/{{page}}/100\n古言免费::https://www.heiyan.com/web/all/37/-1/1/-1/0/{{page}}/100\n古言收费::https://www.heiyan.com/web/all/37/-1/0/-1/0/{{page}}/100\n古言完结::https://www.heiyan.com/web/all/37/-1/-1/1/0/{{page}}/100\n古言连载::https://www.heiyan.com/web/all/37/-1/-1/0/0/{{page}}/100",
    "lastUpdateTime": 1731056537225,
    "loginUrl": "https://www.heiyan.com/accounts/login",
    "respondTime": 2184,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "intro": "pre.note@text",
      "kind": "@css:a:contains(书库)+a@text",
      "lastChapter": "",
      "name": "",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "$.chapter.htmlContent"
    },
    "ruleExplore": {
      "author": "tag.a.2@text",
      "bookList": "#resultDiv tr",
      "bookUrl": "a.title@href\n##\\d+##https://www.heiyan.com/chapter/$0/##",
      "coverUrl": "a.title@href\n##\\d+##https://b.heiyanimg.com/book/$0.jpg##",
      "kind": "",
      "lastChapter": "a.chapter@text",
      "name": "a.title@text",
      "wordCount": "td:eq(3)@text##\\[|\\]"
    },
    "ruleSearch": {
      "author": "authorname##<[^>]+>",
      "bookList": "data.content[*]",
      "bookUrl": "https://www.heiyan.com/chapter/{{@json:id}}/",
      "coverUrl": "https://b.heiyanimg.com/book/{{@json:id}}.jpg",
      "kind": "sortname",
      "lastChapter": "lastchaptername",
      "name": "name##<[^>]+>"
    },
    "ruleToc": {
      "chapterList": "li[id^=chapter]",
      "chapterName": "a@text",
      "chapterUrl": "a@href##\\d+$##https://a.heiyan.com/ajax/chapter/content/$0##",
      "isVip": ".isvip@text",
      "updateTime": "createdate"
    },
    "searchUrl": "https://search.heiyan.com/web/search?queryString={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "Namo",
    "bookSourceGroup": "免费",
    "bookSourceName": "蚂蚁文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mayiwxw.com仅搜索",
    "bookUrlPattern": "https://www.biquges.com",
    "customButton": false,
    "customOrder": 576,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:90.0) Gecko/20100101 Firefox/90.0\",\n    \"cookie\":\"Hm_lvt_8fd9f526ca72jb9418ca50c2g79d2f70=1597461516\"\n}",
    "lastUpdateTime": 1717820848996,
    "loginUrl": "",
    "respondTime": 731,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "init": "id.maininfo",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书首发域名：|.net。|顶点小说手机版阅读网址：|最新网址：www.mayiwxw.com"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.biquges.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.mayiwxw.com/modules/article/search.php?searchkey={{key}}",
    "weight": 60
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "滋滋读书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zzdushu.com",
    "bookUrlPattern": "http://www.zzdushu.com/book/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 577,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"⭕分类小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"首页\",\n    \"url\": \"/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/list1/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/list2/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/list3/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/list4/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/list5/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/list6/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/list7/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/list8/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕完结小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/full/1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/full/2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/full/3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/full/4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/full/5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/full/6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/full/7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/full/8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕排行榜⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周榜\",\n    \"url\": \"/top/week_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月榜\",\n    \"url\": \"/top/month_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总榜\",\n    \"url\": \"/top/all_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/top/all_1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/top/all_2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/top/all_3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/top/all_4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/top/all_5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/top/all_6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/top/all_7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/top/all_8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "lastUpdateTime": 1749886168251,
    "respondTime": 5615,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content##小说全文免费阅读完整版|小说全集|最新.*"
    },
    "ruleContent": {
      "content": "class.font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##本章未完.*|第.*[(1/2)]页|(?:[^\\u4E00-\\u9FA5\\s！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}(?<![\\.．点丶。])[\\.．点丶。]{1,2}(?![\\.．点丶。])(?:[^A-Z\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])(?:[^\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])+|(?:[^\\u4E00-\\u9FA5\\n！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}[\\.．点丶。](?:[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[oO][^\\n\\u4E00-\\u9FA5A-z]*[mM]|[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[nN]|[^\\n\\u4E00-\\u9FA5A-z]*[nN][^\\n\\u4E00-\\u9FA5A-z]*[eE][^\\n\\u4E00-\\u9FA5A-z]*[tT])(?![A-z])"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "dd.1@span.0@text",
      "bookList": ".col-md-6@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "dd.2:3@text##.*：|.*：",
      "lastChapter": "dd.4@a@text",
      "name": "h3@a@text##.*\\]|小说全文阅读|小说全集"
    },
    "ruleToc": {
      "chapterList": ".book_list2 li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-link@a@href\n@js:\nnext = [];\nurl = result[0];\nlength = result.length;\np = src.match(/page-link\">1\\/(\\d+)/)||[];\npage = Number(p[1]);\nif(length < page){\n\tfor(i = 2; i <= page; i++){\n\t\tlink = String(url).replace(/_\\d+/,`_${i}`);\n\t\tnext.push(link)\n\t\t}\n\t\tnext;\n\t}else result"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "品书楼小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.pinshulou.com",
    "bookUrlPattern": "http://www.pinshulou.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 578,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"⭕分类小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"首页\",\n    \"url\": \"/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/list1/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/list2/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/list3/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/list4/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/list5/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/list6/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/list7/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/list8/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕完结小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/full/1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/full/2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/full/3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/full/4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/full/5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/full/6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/full/7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/full/8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕排行榜⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周榜\",\n    \"url\": \"/top/week_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月榜\",\n    \"url\": \"/top/month_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总榜\",\n    \"url\": \"/top/all_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/top/all_1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/top/all_2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/top/all_3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/top/all_4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/top/all_5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/top/all_6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/top/all_7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/top/all_8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "lastUpdateTime": 1749886152927,
    "respondTime": 8555,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content##小说全文免费阅读完整版|小说全集|最新.*"
    },
    "ruleContent": {
      "content": "class.font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##本章未完.*|第.*[(1/2)]页|(?:[^\\u4E00-\\u9FA5\\s！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}(?<![\\.．点丶。])[\\.．点丶。]{1,2}(?![\\.．点丶。])(?:[^A-Z\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])(?:[^\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])+|(?:[^\\u4E00-\\u9FA5\\n！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}[\\.．点丶。](?:[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[oO][^\\n\\u4E00-\\u9FA5A-z]*[mM]|[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[nN]|[^\\n\\u4E00-\\u9FA5A-z]*[nN][^\\n\\u4E00-\\u9FA5A-z]*[eE][^\\n\\u4E00-\\u9FA5A-z]*[tT])(?![A-z])"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "dd.1@span.0@text",
      "bookList": ".col-md-6@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "dd.2:3@text##.*：|.*：",
      "lastChapter": "dd.4@a@text",
      "name": "h3@a@text##.*\\]|小说全文阅读|小说全集"
    },
    "ruleToc": {
      "chapterList": ".book_list2 li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-link@a@href\n@js:\nnext = [];\nurl = result[0];\nlength = result.length;\np = src.match(/page-link\">1\\/(\\d+)/)||[];\npage = Number(p[1]);\nif(length < page){\n\tfor(i = 2; i <= page; i++){\n\t\tlink = String(url).replace(/_\\d+/,`_${i}`);\n\t\tnext.push(link)\n\t\t}\n\t\tnext;\n\t}else result"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "五六书库",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.56shuku.info",
    "bookUrlPattern": "https://wap.56shuku.info/files/article/html/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 579,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1733289337583,
    "loginUrl": "https://wap.56shuku.info/login.php",
    "respondTime": 4845,
    "ruleBookInfo": {
      "author": "text.作者@text",
      "coverUrl": ".block_img2@img@src",
      "init": "class.cover",
      "intro": "class.intro_info@textNodes\n##最新章节推荐地址：.*",
      "kind": ".block_txt2@p.-2:-3:-4@text\n##更新：|状态：|分类：",
      "lastChapter": ".block_txt2@p.-1@a@text",
      "name": "h2@a@text"
    },
    "ruleContent": {
      "content": "#nr@html##.*\\(第.*页\\)",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##（本章未完.*继续阅读）|PS：.*"
    },
    "ruleExplore": {
      "author": "span.1@text",
      "bookList": ".list@ul",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "span.2@text",
      "kind": ".tjrs@i@text",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": ".case_shuqian@text",
      "bookList": "<js>\nif(result.match(/Just a moment/)){\ncookie.removeCookie(source.bookSourceUrl)\nvar x=java.get(\"url\")\njava.startBrowserAwait(x,\"验证\")\n//java.webView(null,x,null);\nresult=java.ajax(x);\n\t}result;\n\t</js>class.bookone",
      "bookUrl": ".case_name@a@href",
      "checkKeyWord": "剑来",
      "kind": "0",
      "lastChapter": ".case_last@a@text",
      "name": ".case_name@a@text"
    },
    "ruleToc": {
      "chapterList": "ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.bookSourceUrl)}}\n/modules/article/search.php?type=articlename&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 橘子小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xinshuge.net",
    "customButton": false,
    "customOrder": 580,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1738416335359,
    "respondTime": 73,
    "ruleBookInfo": {
      "author": "@css:span:contains(作者：)@text",
      "coverUrl": ".cover@img@src",
      "intro": ".intro@html##简介：|.*无弹窗.*",
      "kind": "@css:span:contains(分类：),span:contains(更新时间：),span:contains(状态：)@text##(分类|状态|更新时间)：",
      "lastChapter": ".info .last@a@text",
      "name": ".info@h2@text",
      "wordCount": "@css:span:contains(字数：)@text##字数："
    },
    "ruleContent": {
      "content": "#content@html##{{baseUrl}}|请记住本书首发.*",
      "replaceRegex": "##最新.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".bookbox",
      "bookUrl": ".bookname@a@href",
      "coverUrl": "img@src",
      "intro": ".bookinfo@p@text",
      "kind": ".cat@text##分类：",
      "lastChapter": ".update@a@text",
      "name": ".bookname@text"
    },
    "ruleToc": {
      "chapterList": "@css:.listmain a[href~=/[^/]+/\\d+.htm]",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php?ie=utf-8&q={{key}}",
    "weight": 58
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "小说ABC",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xsabc.com",
    "bookUrlPattern": "http://www.xsabc.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 581,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"⭕分类小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"首页\",\n    \"url\": \"/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/list1/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/list2/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/list3/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/list4/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/list5/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/list6/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/list7/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/list8/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕完结小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/full/1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/full/2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/full/3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/full/4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/full/5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/full/6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/full/7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/full/8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕排行榜⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周榜\",\n    \"url\": \"/top/week_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月榜\",\n    \"url\": \"/top/month_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总榜\",\n    \"url\": \"/top/all_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/top/all_1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/top/all_2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/top/all_3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/top/all_4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/top/all_5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/top/all_6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/top/all_7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/top/all_8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "lastUpdateTime": 1749886159794,
    "respondTime": 6834,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content##小说全文免费阅读完整版|小说全集|最新.*"
    },
    "ruleContent": {
      "content": "class.font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##本章未完.*|第.*[(1/2)]页|(?:[^\\u4E00-\\u9FA5\\s！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}(?<![\\.．点丶。])[\\.．点丶。]{1,2}(?![\\.．点丶。])(?:[^A-Z\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])(?:[^\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])+|(?:[^\\u4E00-\\u9FA5\\n！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}[\\.．点丶。](?:[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[oO][^\\n\\u4E00-\\u9FA5A-z]*[mM]|[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[nN]|[^\\n\\u4E00-\\u9FA5A-z]*[nN][^\\n\\u4E00-\\u9FA5A-z]*[eE][^\\n\\u4E00-\\u9FA5A-z]*[tT])(?![A-z])"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "dd.1@span.0@text",
      "bookList": ".col-md-6@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "dd.2:3@text##.*：|.*：",
      "lastChapter": "dd.4@a@text",
      "name": "h3@a@text##.*\\]|小说全文阅读|小说全集"
    },
    "ruleToc": {
      "chapterList": ".book_list2 li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-link@a@href\n@js:\nnext = [];\nurl = result[0];\nlength = result.length;\np = src.match(/page-link\">1\\/(\\d+)/)||[];\npage = Number(p[1]);\nif(length < page){\n\tfor(i = 2; i <= page; i++){\n\t\tlink = String(url).replace(/_\\d+/,`_${i}`);\n\t\tnext.push(link)\n\t\t}\n\t\tnext;\n\t}else result"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "👍 沙漠小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shamoxs.com",
    "customButton": false,
    "customOrder": 582,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort/1_{{page}}.html\n武侠::/sort/2_{{page}}.html\n都市::/sort/3_{{page}}.html\n历史::/sort/4_{{page}}.html\n网游::/sort/5_{{page}}.html\n科幻::/sort/6_{{page}}.html\n言情::/sort/7_{{page}}.html\n其他::/sort/8_{{page}}.html",
    "lastUpdateTime": 1761886842184,
    "respondTime": 6159,
    "ruleBookInfo": {
      "author": "#info p.0@text##.*：",
      "coverUrl": "#fmimg img@src",
      "intro": "#intro@html",
      "kind": ".con_top a.1@text&&#info p.2:1@text##.*：|小说|\\s.*",
      "lastChapter": "#info a@text",
      "name": "#info h1@text",
      "tocUrl": ".motion a@href"
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": ".l li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://pic.shamoxs.com/image/$2/$1/$1s.jpg###",
      "kind": ".s5@text",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "#nr",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://pic.shamoxs.com/image/$2/$1/$1s.jpg###",
      "kind": "td.4@text",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "#list dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n  'charset': 'gbk',\n  'method': 'POST',\n  'body': 'type=articlename&s={{key}}&submit='\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "阳光中文网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ygzww.com",
    "bookUrlPattern": "http://www.ygzww.com/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 583,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"⭕分类小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"首页\",\n    \"url\": \"/\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/list1/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/list2/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/list3/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/list4/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/list5/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/list6/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/list7/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/list8/{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕完结小说⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/full/1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/full/2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/full/3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/full/4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/full/5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/full/6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/full/7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/full/8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"⭕排行榜⭕\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"周榜\",\n    \"url\": \"/top/week_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"月榜\",\n    \"url\": \"/top/month_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"总榜\",\n    \"url\": \"/top/all_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"玄幻\",\n    \"url\": \"/top/all_1_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"武侠\",\n    \"url\": \"/top/all_2_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"都市\",\n    \"url\": \"/top/all_3_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"历史\",\n    \"url\": \"/top/all_4_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"网游\",\n    \"url\": \"/top/all_5_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"科幻\",\n    \"url\": \"/top/all_6_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"言情\",\n    \"url\": \"/top/all_7_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  },\n  {\n    \"title\": \"其他\",\n    \"url\": \"/top/all_8_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.25\n    }\n  }\n]",
    "lastUpdateTime": 1749886172770,
    "respondTime": 5291,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&\n[property=\"og:novel:status\"]@content&&\n[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:title\"]@content##小说全文免费阅读完整版|小说全集|最新.*"
    },
    "ruleContent": {
      "content": "class.font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##本章未完.*|第.*[(1/2)]页|(?:[^\\u4E00-\\u9FA5\\s！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}(?<![\\.．点丶。])[\\.．点丶。]{1,2}(?![\\.．点丶。])(?:[^A-Z\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])(?:[^\\u4E00-\\u9FA5\\s！？“「]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶])+|(?:[^\\u4E00-\\u9FA5\\n！？。”」]|[一二三四五六七八九零壹贰叁肆伍陆柒捌玖点丶]){4,}[\\.．点丶。](?:[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[oO][^\\n\\u4E00-\\u9FA5A-z]*[mM]|[^\\n\\u4E00-\\u9FA5A-z]*[cC][^\\n\\u4E00-\\u9FA5A-z]*[nN]|[^\\n\\u4E00-\\u9FA5A-z]*[nN][^\\n\\u4E00-\\u9FA5A-z]*[eE][^\\n\\u4E00-\\u9FA5A-z]*[tT])(?![A-z])"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "dd.1@span.0@text",
      "bookList": ".col-md-6@dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "kind": "dd.2:3@text##.*：|.*：",
      "lastChapter": "dd.4@a@text",
      "name": "h3@a@text##.*\\]|小说全文阅读|小说全集"
    },
    "ruleToc": {
      "chapterList": ".book_list2 li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".page-link@a@href\n@js:\nnext = [];\nurl = result[0];\nlength = result.length;\np = src.match(/page-link\">1\\/(\\d+)/)||[];\npage = Number(p[1]);\nif(length < page){\n\tfor(i = 2; i <= page; i++){\n\t\tlink = String(url).replace(/_\\d+/,`_${i}`);\n\t\tnext.push(link)\n\t\t}\n\t\tnext;\n\t}else result"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "by:繁̌華̌落̌盡̌終̌成̌殤̌",
    "bookSourceGroup": "免费",
    "bookSourceName": "露露书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.lulushuwu.com",
    "bookUrlPattern": "http://m.lulushuwu.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 584,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js: \nvar result = [];\njava.toast(\"🔥正在刷新列表,请稍等！\");\nvar push = (title, url, size) => result.push({\n  \"title\": title,\n  \"url\": url,\n  \"style\": {\n    \"layout_flexGrow\": 1,\n    \"layout_flexBasisPercent\": size\n  }\n});\n\nvar fl = java.ajax(\"https://m.lulushuwu.com/xiaoshuodaquan\");\n\nif (fl) {\n  \n  a = org.jsoup.Jsoup.parse(fl).select(\".typelist a\")\npush(\"🔥分类小说🔥\",null,1)\n    for(var i=0;i<a.length;i++){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.33;\n        title = String(title).replace(/\\s/g, \"\");\n        url=baseUrl+String(url).replace(/\\d+\\/$/,\"\")+\"/page_{{page}}.html\";\n        push(title,url,size)\n    };\n} else {\n  \n  java.toast(\"🤔列表刷新失败！！！\");\n}\nJSON.stringify(result);",
    "lastUpdateTime": 1745497017794,
    "respondTime": 9230,
    "ruleBookInfo": {
      "author": ".pt-info.1@text",
      "coverUrl": "img.0@src",
      "intro": ".intro@text",
      "kind": ".pt-info.0:2:3@text##.*：",
      "lastChapter": "#newchaperlist@li.0@a.0@text",
      "name": ".pt-name@text"
    },
    "ruleContent": {
      "content": "#BookText@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##[くくく√]"
    },
    "ruleExplore": {
      "author": ".s712.1@text",
      "bookList": ".book-li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".pt-desc@text",
      "kind": "{{@@.s712.0@text##.*:}}\n{{@@.s713@text}}",
      "name": ".pt-name@text"
    },
    "ruleSearch": {
      "bookList": ".ptm-list-view-cell",
      "bookUrl": "a.1@href",
      "checkKeyWord": "",
      "coverUrl": ".ptm-img-object@src",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://m.lulushuwu.com/home/search,{\n  \"body\": \"action=search&q={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🍩无忧书城[自写]",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.51shucheng.net/#xsw8093",
    "customButton": false,
    "customOrder": 585,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36',\n    \"Cookie\":\"0\"\n}",
    "lastUpdateTime": 1730127350797,
    "respondTime": 2183,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{\nn:\"[property~=book_name|title]@content||.book-title@text\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content||.book-meta@a@text\",\nl:\"[property~=lastest_chapter_name|latest_chapter_name]@content\",\ni:\"[property$=description]@content||.book-intro@text\",\nc:\"[property$=image]@content\"\n}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一@href\n@js:\nif(result){\n result=result[0].includes(\"_\")?result:\"\";\n}",
      "replaceRegex": "##{{book.author}}.*.接着再看更方便|本章没完.*继续阅读！如果被转码.*更换浏揽器即可。|本章未完.*退出阅读模式即可，谢谢|.*提醒.*看完记得.*|\\s*温馨提示.?亲爱的读者.*\\s*|\\d+。。",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": ".search_result@ul@li",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@src",
      "intro": "p@text",
      "kind": "",
      "lastChapter": "",
      "name": "h3@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#book-chapter-list@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "@js:\nvar su=source.getKey()\nvar htmlUrl=java.get(su,{}).headers('Location')\njava.log(`重定向：${htmlUrl[0]}`)\nvar posturl=htmlUrl[0]?htmlUrl[0]:(su.includes(\"#\")?su.match(/([^\\#]+)\\#/)[1]:su)\nposturl = posturl.slice(-1)=='/'?posturl.slice(0,-1):posturl\ncookie.removeCookie(posturl)\njava.log(`请求：${posturl}`)\n\nck=cookie.getCookie(posturl);\n\ncookie.setCookie(posturl,String(ck).replace(/ss_search_delay=.*/,\"\"));\n\nso=posturl+\"/search?q={{key}}\"\njava.put(\"url\",String(so))\nso",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "无极小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wujixsw.info/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 586,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734978735067,
    "loginUrl": "",
    "respondTime": 1560,
    "ruleBookInfo": {
      "author": "[property=og:novel:author]@content",
      "coverUrl": "[property=og:image]@content",
      "init": "",
      "intro": "[property=og:description]@content",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "[property=og:novel:latest_chapter_name]@content##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "[property=og:novel:book_name]@content##|\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|小说|笔趣阁|免费.*",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@textNodes##全本小说网.*最新章节！|全本小说网.*最快更新|最新章节！|一秒记住.*免费阅读！|.*第.*章.*|笔趣阁.*最快更新.*",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.novelslist2@tag.li!0",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.s3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |卷1",
      "name": "class.s2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://wujixsw.info/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "吾爱文学网②",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.x.com",
    "customButton": false,
    "customOrder": 587,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1692516557870,
    "respondTime": 604,
    "ruleBookInfo": {
      "coverUrl": "class.block_img2@img@src",
      "intro": "class.intro_info@text",
      "lastChapter": "class.block_txt2@tag.p.6@tag.a@text",
      "tocUrl": "text.查看目录@href"
    },
    "ruleContent": {
      "content": "id.nr1@textNodes"
    },
    "ruleExplore": {
      "author": "class.line@tag.a.2@text",
      "bookList": "class.cover@tag.p",
      "bookUrl": "class.line@tag.a.1@href",
      "kind": "class.line@tag.a.0@text",
      "name": "class.line@tag.a.1@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "class.cover@tag.p",
      "bookUrl": "tag.a.1@href",
      "kind": "tag.a.0@text",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://m.x2552.com/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"type=articlename&s={{key}}&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by:cwjdb",
    "bookSourceGroup": "免费",
    "bookSourceName": "吾爱文学网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.x2552.com",
    "customButton": false,
    "customOrder": 588,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n    java.toast(\"正在努力加载中，请稍后\");\n    \nvar sort = [];\nvar push = (title, url, type1, type2) => {\n    sort.push({\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: type1,\n            layout_flexBasisPercent: type2\n        }\n    });\n};\n\nvar x = [{\n        u: \"http://m.x2552.com/sort/\",\n        ti: \"༺ˇ»`全部分类´«ˇ༻\"\n    },\n    {\n        u: \"http://m.x2552.com/top/\",\n        ti: \"༺ˇ»`全部排行´«ˇ༻\"\n    }];\n    \nx.forEach(i => {\n    var o = org.jsoup.Jsoup.parse(java.ajax(i.u));\n    push(i.ti, \"\", 1, 1);\n    o.select('div.content a').forEach(j => {\n        var url = String(j.attr(\"href\")).replace(/(\\d+)\\/$/,\"{{page}}/\");\n        push(j.text(), url, 1, 0.25)\n    })\n});\n\npush(\"全本小说\", `/full/{{page}}/`, 1, 1);\n\nJSON.stringify(sort);",
    "header": "",
    "lastUpdateTime": 1748548913328,
    "respondTime": 15929,
    "ruleBookInfo": {
      "author": "text.作者@text##作者[：:]",
      "coverUrl": "img@src",
      "init": "",
      "intro": ".intro_info.0@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".block_txt2 p.3:4:5@text##(分类|状态|更新)[：:]",
      "lastChapter": ".block_txt2 a.-1@text",
      "name": ".block_txt2 h2 a@text",
      "tocUrl": "text.查看目录@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@html",
      "replaceRegex": "##\\/?\\d+{{book.name}}.*最新章节！|吾爱文学.*{{book.name}} ！|&nbspbr />|一秒记住.*免费阅读！|\\w+.*精彩阅读|(<!--章节内容开始-->)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": "p.line",
      "bookUrl": "a.1@href",
      "kind": "a.0@text##\\[|\\]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "ul.chapter li a",
      "chapterName": "text\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"type=articlename&s={{key}}&submit=\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "24.12.28 by 明月",
    "bookSourceGroup": "免费",
    "bookSourceName": "📚 梦书中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.mcmssc.la",
    "concurrentRate": "1500",
    "customButton": false,
    "customOrder": 592,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuanxiaoshuo/<,1-{{page}}.html>\n修真仙侠::/xiuzhenxiaoshuo/<,1-{{page}}.html>\n都市青春::/dushixiaoshuo/<,1-{{page}}.html>\n历史穿越::/chuanyuexiaoshuo/<,1-{{page}}.html>\n网游竞技::/wangyouxiaoshuo/<,1-{{page}}.html>\n科幻灵异::/kehuanxiaoshuo/<,1-{{page}}.html>\n其它小说::/qitaxiaoshuo/<,1-{{page}}.html>\n完本小说::/wanben/1_{{page}}\n最近更新::http://www.mcmssc.la",
    "lastUpdateTime": 1738400832434,
    "respondTime": 7851,
    "ruleBookInfo": {
      "author": "p:nth-child(2) > a@text",
      "coverUrl": "img@src",
      "intro": "#intro@html",
      "lastChapter": "p:nth-child(5) > a@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A]+\\.[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A0-9\\uFF10-\\uFF19-]+\\.[\\u0041-\\u005A\\u0061-\\u007A\\uFF21-\\uFF3A\\uFF41-\\uFF5A]{2,}.*|{{chapter.title}}|第[0-9一二两三四五六七八九十百千万]{1,9}章.*|[(（]?本章未?完[）)]?.*|\\(第.+页\\)|.?加入书签.*|.*下一页(翻页)?继续阅读.*|.*退出阅读模式.*|.*点击下载{{book.name}}.*|.*最新永久域名.*|.*一秒记住本站地址.*"
    },
    "ruleExplore": {
      "author": ".s4 > a@text",
      "bookList": ".l li",
      "bookUrl": ".s2 > a@href",
      "coverUrl": ".s2 > a@href\n<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": ".s1@text##\\[|\\]",
      "lastChapter": ".s3 > a@text",
      "name": ".s2 > a@text"
    },
    "ruleSearch": {
      "author": ".s4 > a@text",
      "bookList": "#main > div.novelslist2 > ul > li",
      "bookUrl": ".s2 > a@href",
      "coverUrl": ".s2 > a@href\n<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "{{@@.s6@text}} {{@@.s3 > a@text}}",
      "name": ".s2 > a@text"
    },
    "ruleToc": {
      "chapterList": "dd >a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.mcmssc.la/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "                    \"error:正文内容为空\n                                        \"error:正文内容为空\n                                        \"error:正文内容为空\n                                        \"error:正文内容为空\n                    \"error:正文内容为空\n\"\"\"\"\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 去读书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.qudushu.com",
    "bookUrlPattern": "http://www.qudushu.com/book/info/\\d+/\\d+.html",
    "customButton": false,
    "customOrder": 593,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/book/sort1/0/{{page}}.html\n武侠修真::/book/sort2/0/{{page}}.html\n都市言情::/book/sort3/0/{{page}}.html\n历史军事::/book/sort4/0/{{page}}.html\n穿越架空::/book/sort5/0/{{page}}.html\n游戏竞技::/book/sort6/0/{{page}}.html",
    "lastUpdateTime": 1721732890987,
    "loginUrl": "{\n  \"url\": \"null\"\n}",
    "respondTime": 1237,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "class.divbox cf@img@src",
      "intro": "class.tabcontent@class.tabvalue.0@text",
      "kind": "class.tabcontent@class.tabvalue.1@tag.td.2@text&&\nclass.tabcontent@class.tabvalue.1@tag.td.1@text&&\nclass.tabcontent@class.tabvalue.1@tag.td.0@text##最后更新：|连载状态：|作品分类：",
      "lastChapter": "h3@a@text",
      "name": "[property=\"og:novel:book_name\"]@content##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|小说|笔趣阁|免费.*",
      "tocUrl": "text.点击阅读@href"
    },
    "ruleContent": {
      "content": "id.acontent@html##去读书推荐各位.*|去读书.*com|如果您中途有事.*以便以后接着观看！|\\(|\\)"
    },
    "ruleExplore": {
      "author": "class.c_tag@tag.span.1@text&&",
      "bookList": "class.blockcontent@class.c_row",
      "bookUrl": "class.c_subject@tag.a.1@href",
      "coverUrl": "img@src",
      "intro": "class.c_description@text",
      "kind": "class.c_tag@tag.span.5@text&&\nclass.c_tag@tag.span.7@text",
      "lastChapter": "class.c_subject@tag.a.2@text",
      "name": "class.c_subject@tag.a.1@text"
    },
    "ruleSearch": {
      "author": "class.c_tag.0@tag.span.1@text",
      "bookList": "id.jieqi_page_contents@class.c_row",
      "bookUrl": "class.c_subject@a@href",
      "coverUrl": "img@src",
      "kind": "class.c_tag.0@tag.span.3@text&&\nclass.c_tag.0@tag.span.7@text&&\nclass.c_tag.1@tag.span.3@text",
      "lastChapter": "class.c_tag.1@tag.span.1@a@text",
      "name": "class.c_subject@a@text"
    },
    "ruleToc": {
      "chapterList": "class.index@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.qudushu.com/modules/article/search.php?q={{key}}",
    "weight": 58
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "快眼看书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xbotaodz.com",
    "customButton": false,
    "customOrder": 595,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "@js:\n(()=>{\n    var ua = \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.9999.99 Safari/537.36\";\n    var headers = {\n        \"User-Agent\": ua,\n        \"Referer\": baseUrl\n    };\n    return JSON.stringify(headers);\n})()",
    "lastUpdateTime": 1734979796449,
    "respondTime": 1443,
    "ruleBookInfo": {
      "author": ".baseinfo@class.pt-info.0@text##作者：",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": ".baseinfo@a.1@text",
      "name": ".baseinfo@a.0@text",
      "tocUrl": ".baseinfo@a.0@href"
    },
    "ruleContent": {
      "content": ".chaptercontent@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##（本章未完，请点击下一页继续阅读）|.*第.+?章.*|最新网址.*|楔子.*"
    },
    "ruleExplore": {
      "author": ".pt-info@text\n@js:\nresult.split(/nbsp;+/)[0]",
      "bookList": "class.pt-card pt-card-2@li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "class.pt-desc ptm-text-cut2@text",
      "kind": "a.2@text",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": ".pt-info@text##作者:||\n.pt-info@text\n@js:\nresult.split(/ +/)[0]",
      "bookList": "div.baseinfo&&class.pt-card pt-card-2@li&&class.ptm-content pt-infopage",
      "bookUrl": "a.0@href||a.1@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "kind": "a.1@text||a.2@text",
      "name": "a.0@text||a.1@text"
    },
    "ruleToc": {
      "chapterList": "-class.ptm-list-view chapterlist@class.ptm-list-view-cell@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//By情无羁25.04.25",
    "bookSourceGroup": "免费",
    "bookSourceName": "神藏小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.swangwx.la",
    "customButton": false,
    "customOrder": 596,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\njava.toast(\"🔥正在刷新列表,请稍等！\");\nvar push = (title, url, size) => result.push({\n    \"title\": title,\n    \"url\": url,\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": size\n    }\n});\nvar baseUrl = \"http://www.swangwx.la/sort.html\";\nvar tag = java.ajax(baseUrl);\nif (tag) {\n    var a = org.jsoup.Jsoup.parse(tag).select(\".toplist li a\");\n    push(\"🔥分类小说🔥\", null, 1);\n    for (var i = 0; i < a.length ; i++) {\n        var title = a[i].text();\n        var url = a[i].attr(\"href\");\n        var size = 0.25;\n        title = String(title).replace(/\\s/g, \"\");\n        url = String(url).replace(/\\.html/,'')+`/{{page}}.html`\n        push(title, url, size);\n    }\n} else {\n  java.toast(\"🤔列表刷新失败！！！\");     \n} \nJSON.stringify(result);",
    "header": "",
    "lastUpdateTime": 1745563259040,
    "respondTime": 2435,
    "ruleBookInfo": {
      "intro": "id.intro@tag.p.0@text"
    },
    "ruleContent": {
      "content": "<js>\na=src.match(/get\\('(.*?)'/)[1]\nb=source.key+a\nresult=java.ajax(b)\n</js>$.info"
    },
    "ruleExplore": {
      "author": ".a@text",
      "bookList": ".updatelist li",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.*\\/(\\d+)(\\d{3})##/files/article/image/$1/$1$2/$1$2s.jpg###",
      "kind": ".n@a.0@text",
      "lastChapter": ".c@text",
      "name": "strong@text"
    },
    "ruleSearch": {
      "author": "tag.span.1@tag.a@text",
      "bookList": "class.librarylist@children",
      "bookUrl": "tag.span.0@tag.a@href",
      "coverUrl": "class.pt-ll-l@tag.img@src",
      "kind": "tag.span.2@tag.a@text",
      "lastChapter": "class.last.0@tag.a@text",
      "name": "tag.span.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.dirlist three clearfix@tag.li@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.html?searchtype=novelname&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "网站正文故障",
    "bookSourceGroup": "免费",
    "bookSourceName": "必去吧楼",
    "bookSourceType": 0,
    "bookSourceUrl": "  http://m.bequ6.org",
    "customButton": false,
    "customOrder": 597,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732972367677,
    "respondTime": 3532,
    "ruleBookInfo": {
      "author": "text.作者：@text",
      "coverUrl": ".block_img2@img@src",
      "intro": ".intro_info@text",
      "kind": "text.分类：@text&&\ntext.状态：@text&&\ntext.更新：@text",
      "lastChapter": ".block_txt2@a.-1@text",
      "name": "h2@text",
      "tocUrl": "text.查看目录@href"
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "//*[not(@class='blue')]/text()##\\[.*\\]|\\/",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "kind": "##\\[(.*)\\]##$1##",
      "name": ".blue@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "✈ 茂鑫小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.tcmaoxin.org#",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 598,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1742560425457,
    "loginCheckJs": "",
    "loginUrl": "",
    "respondTime": 106,
    "ruleBookInfo": {
      "author": ".fix@p:nth-of-type(1)@text",
      "init": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|update_time]@content",
      "lastChapter": "p:nth-of-type(6)@a@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#content@textNodes"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list@li!0",
      "bookUrl": ".s2@a@href",
      "checkKeyWord": "",
      "kind": ".s1@text",
      "lastChapter": "{{@@.s3@a@text}} • {{@@.s5@text}}",
      "name": ".s2@a@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".middle select option!0@value"
    },
    "searchUrl": "http://www.tcmaoxin.org/search.php?keyWord={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 po18城",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po18.city",
    "bookUrlPattern": "https?://www.po18.city/read/\\d+/",
    "customButton": false,
    "customOrder": 599,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/sort1/{{page}}/\n仙侠武侠::/sort2/{{page}}/\n都市言情::/sort3/{{page}}/\n穿越历史::/sort4/{{page}}/\n科幻灵异::/sort5/{{page}}/\n网游竞技::/sort6/{{page}}/\n精品综合::/sort7/{{page}}/\n全本小说::/modules/article/articlelist.php?fullflag=1&page={{page}}",
    "lastUpdateTime": 1716235055683,
    "respondTime": 2676,
    "ruleBookInfo": {
      "author": ".infotitle@a@text",
      "coverUrl": "img@src",
      "intro": "id.aboutbook@text##…$|^【?(?:内容|本[书文])?(?:简介|文案)】?[：:； ]】?|^关于.*?：|\\*?\\s*(?:PS：)?(?:更多连?载?|连载免费)小说请?收藏：.*|后续章节：https://www.w.*|好看的激情视频请收藏：.*|更.?多.?(?:免费)?小.?说.?请.?收.?藏：.*|.*?主要讲述了：(?:简介：)?|[\\u4e00-\\u9fa5]+?最新鼎力大作，年度必看.*|[（【\\[]?[\\u4e00-\\u9fa5][┊┆┋┇][\\u4e00-\\u9fa5][┊┆┋┇].*?：[wWⓦ][оo○]{2}(?:⒙|18.)[νv]i[ρp].*|(?:[追精].[更彩].收..?藏|免.费.首.发|最.新.更.新|更多.章节|免费精彩在线|免费连载小说请收藏|追.更|首.发).*?：[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\.\\/，。｡、点點っ\\*丶·-\\u2488-\\u249b][（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}",
      "kind": ".typename@text&&.infotitle@time@text## 0$",
      "lastChapter": ".zjbox@tag.a.0@text##.*?[_ ](?=分[节卷]|第\\d{1,5}节)|(?i).*?[cＣ][oōΘ][мm] | 完结\\+番外|(?!）)\\s?（?(?:[尒小][说説]\\+影[视視]|精.彩.收.|[免全].[费网].首.?发|(?:哽茤内嫆|看书)綪到|首.?发：|追.?更：|御书屋导航站|[本泍][文彣][蓶唯]壹導航網[詀站]|看書就上|牢记P\\/o\\/1\\/8\\/网址导航站)?[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\.\\/，。｡、点點っ\\*丶·-\\u2488-\\u249b][「」（）\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}|^·|(?i).*?[cＣ][oōΘ][мm] |（(?:\\d+珍珠加更|求珠)）|（woo18）",
      "name": "h1@text## (番外)?完结(\\+番外|全本)?|TXT下载|（ 续更）|【简体中文】|（[简繁]）|[\\(\\s]简体\\)?"
    },
    "ruleContent": {
      "content": "p!1@textNodes##PO18脸红心跳|(?:PS：)?(?:更多(?:免费)?|连载免费)小说请?收藏：(?:po18.us|woo\\d*.(?:vip|com)|rourouwu.org)|好看的激情视频请收藏：.*?com 天天更新，惊喜不断|(?:ps:)?[（【\\[]?(题外话:|[\\u4e00-\\u9fa5]|注：㊣)(?:[┊┆┋┇☆★-](?:多章|[\\u4e00-\\u9fa5])|更多)[┊┆┋┇☆★-].*?：[wWⓦω]\\s*[оo○\\s]{2,3}(?:⒙|1\\s*8\\s*.)\\s*(?:ν[iì]ρ|v\\s*[iì]\\s*p).*|[（\\[]?(?:精.彩.[收小].[藏说]|免.费.[首看].[书发]|好.看.的.文.章|追.更|首.发|最.新.书.刊).*?：[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\.\\/，。｡、点點っ\\*丶·-\\u2488-\\u249b][（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}|（本文唯一正版只在：woo18.vip）|（本文唯一正版只在：.tw[\\)）]|ps：χyμzんαíωμ.cしμЬ\\(xyuzhaiwu.club\\)p?|yμzんаIωχ.cōм\\(yuzhaiwx.\\)|御書屋導航網站：Ｒ0ūsΗūЩū（肉書屋）。乄γＺ"
    },
    "ruleExplore": {
      "author": "span@text##作者：",
      "bookList": "id.alistbox",
      "bookUrl": "a!0@href",
      "coverUrl": "img@src",
      "intro": ".intro@text##…$|\\.{3}$|【?(?:内容|本[书文])?(?:简介|文案)】?[：:； ]】?|^关于.*?：|\\*?\\s*(?:PS：)?(?:更多连?载?|连载免费)小说请?收藏：.*|后续章节：https://www.w.*|好看的激情视频请收藏：.*|更.?多.?(?:免费)?小.?说.?请.?收.?藏：.*|.*?主要讲述了：(?:简介：)?|[\\u4e00-\\u9fa5]+?最新鼎力大作，年度必看.*|[（【\\[]?[\\u4e00-\\u9fa5][┊┆┋┇][\\u4e00-\\u9fa5][┊┆┋┇].*?：[wWⓦ][оo○]{2}(?:⒙|18.)[νv]i[ρp].*|(?:[追精].[更彩].收..?藏|免.费.首.发|最.新.更.新|更多.章节|免费精彩在线|免费连载小说请收藏|追.更|首.发).*?：[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\.\\/，。｡、点點っ\\*丶·-\\u2488-\\u249b][（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}",
      "kind": "li@text##字数：",
      "name": "a!0:2@text## 完结(?:\\+番外|全本)|TXT下载|《|》|【简体中文】|（[简繁]）|[\\(\\s]简体\\)?"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tr!0",
      "bookUrl": "a@href",
      "coverUrl": "a!1@href<js>\nvar a=result.match(/.*ad\\/(\\d+)\\//)[1];\nvar b=Math.floor(a/1000);\n\"http://img.po18.city/image/\"+b+\"/\"+a+\"/\"+a+\"s.jpg\"\n</js>",
      "kind": "td!0:1:2@text",
      "lastChapter": "a!0@text##.*?[_ ](?=分[节卷]|第\\d{1,5}节)| 完结\\+番外|(?!）)\\s?（?(?:[尒小][说説]\\+影[视視]|精.彩.收.|[免全].[费网].首.?发|(?:哽茤内嫆|看书)綪到|首.?发：|追.?更：|御书屋导航站|[本泍][文彣][蓶唯]壹導航網[詀站]|看書就上|牢记P\\/o\\/1\\/8\\/网址导航站)?[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\.\\/，。｡、点點っ\\*丶·-\\u2488-\\u249b][（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}|^·|(?i).*?[cＣ][oōΘ][мm] |（(?:\\d+珍珠加更|求珠)）|（woo18）",
      "name": "a!1@text## (番外)?完结(\\+番外|全本)?|TXT下载|【简体中文】|（[简繁]）|[\\(\\s]简体\\)?"
    },
    "ruleToc": {
      "chapterList": "+<js>\nvar a;\na=org.jsoup.Jsoup.parse(result.replace(/javascript:Chapter\\((\\d+)\\,(\\d+)\\)\\;/g,'/read/$2/$1/').replace(/(f=\\'\\/read\\/\\d+\\/\\d+\\/\\' ?>).*?_(?=分[节卷])/g,'$1').replace(/(f=\\'\\/read\\/\\d+\\/\\d+\\/\\' ?>).*?[cＣ][oōóΘ][мm] /gi,'$1').replace(/ 完结\\+番外|\\s?（?(?:[尒小][说説]\\+影[视視]|精.彩.收.|[免全].[费网].首.?发|(?:哽茤内嫆|看书)綪到|首.?发：|追.?更：|御书屋导航站|[本泍][文彣][蓶唯]壹導航網[詀站]|看書就上|牢记P\\/o\\/1\\/8\\/网址导航站)?\\d*[ωṕΡρχa-z].*?\\)(?=<\\/a>)|\\s?[（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐壹贰叁肆伍陆柒捌玖拾八哦!]{4,}[\\u2488-\\u249b\\.\\/，。｡、点點っ\\*丶·-][（）「」\\u2460-\\u24cf\\u02ff-\\u058f\\x2000-\\x4dff\\xac00-\\xffe0\\x28-\\x52f乄ṕẉṵ卍卐哦欧]{2,}(?=<\\/a>)|（(?:\\d+珍珠加更|求珠)）|（woo18）/gi,\"\"));\nvar b=a.select('dt:nth-of-type(2)~dd>a').toArray();\nfor (var i=0;i<b.length;i=i+3){\n   c=i+2;\nif(c<b.length){\n   var t;\n   t=b[i];\n   b[i]=b[i+2];\n   b[i+2]=t;\n}else{\n   c=i+1;\n   if(c<b.length){\n     var t;\n     t=b[i];\n     b[i]=b[i+1];\n     b[i+1]=t;\n}\n}\n}\nvar list=[];\nvar n=[];\nlist=b.map(x=>({n:x.text(),u:x.attr('href')}));\nlist\n</js>",
      "chapterName": "n",
      "chapterUrl": "u"
    },
    "searchUrl": "/modules/article/search.php?searchtype=articlename&searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "小版主",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.xiaobanzhu.com/",
    "customButton": false,
    "customOrder": 600,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/sort/1_{{page}}/\n修真小说::/sort/2_{{page}}/\n都市小说::/sort/3_{{page}}/\n穿越小说::/sort/4_{{page}}/\n  藏金阁  ::/sort/5_{{page}}/\n科幻小说::/sort/6_{{page}}/",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 7.1.1; Mi Note 3 Build/NMF26X; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.98 Mobile Safari/537.36\"\n}​",
    "lastUpdateTime": 1722044628528,
    "respondTime": 4366,
    "ruleBookInfo": {
      "author": ".block_txt2@p.2@a@text",
      "coverUrl": ".block_img2@img@src",
      "intro": ".intro_info@text",
      "kind": ".block_txt2@p.3@a@text",
      "lastChapter": ".block_txt2@p.5@a@text",
      "name": ".block_txt2@h2@a@text",
      "tocUrl": "text.查看目录@href",
      "wordCount": ".block_txt2@p.4@text&&.block_txt2@p.4@text"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##\\n.*本章未完.*\\n.."
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".line",
      "bookUrl": "a.1@href",
      "coverUrl": "",
      "kind": "a.0@text",
      "name": "a.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".chapter@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"type=articlename&s={{key}}&submit=\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "五五小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.changduzw.com未月十八改",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 602,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734385786688,
    "loginUrl": "",
    "respondTime": 9960,
    "ruleBookInfo": {
      "author": "class.status@tag.p.1@text",
      "coverUrl": "img@src",
      "init": "",
      "intro": "class.con@tag.p@text",
      "kind": "class.status@tag.a.0@text",
      "lastChapter": "class.red.1@text",
      "name": "class.status@tag.h1@text",
      "tocUrl": "text.点击阅读@href",
      "wordCount": "class.status@tag.p.-3@text##总字数."
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.grid@tag.td.2@text",
      "bookList": "class.odd",
      "bookUrl": "class.odd.0@tag.a.0@href",
      "coverUrl": "a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.changduzw.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "class.odd.0@tag.a.0@href<js>java.ajax(result)</js>class.con@tag.p@text",
      "kind": "class.even@text",
      "lastChapter": "class.odd.0@tag.a.0@href<js>java.ajax(result)</js>class.red.1@text",
      "name": "class.odd@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.mulu_list@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.changduzw.com/modules/article/search.php,{\n'charset': 'utf-8',\n'method': 'POST',\n'body': 'searchkey={{key}}&type=submit'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "永恒小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.4pan.org#",
    "bookUrlPattern": "http://wap.4pan.org/book/\\d+.html",
    "customButton": false,
    "customOrder": 604,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar v=source.getVariable();\nvar su=source.getKey();\nvar url=(!v||v==\"\")?su:v;\nvar li=url+\"/mulu/\";\nvar html=java.ajax(li);\nvar h=org.jsoup.Jsoup.parse(html)\nvar a=h.select('ul[class=clearfix] li a');\nvar list=[];\nfor(i in a){\n\tvar text=a[i].text();\n\tvar href=a[i].attr(\"href\");\nhref=String(href).replace(\"1.html\",'{{page}}.html');\n\tvar add=text+\"::\"+url+href;\n\tlist.push(add);\n\t}\nlist.join(\"&&\")",
    "header": "{ \"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1734566607751,
    "respondTime": 527,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": ".intro.0@text##阅读.*最新章节请关注.+",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "@js:\nd=java.getElements(\"#txt dd\");\nvar a=\"\";\nfor(i=0;i<d.length-1;i++){\n\ta+=d.select(`[data-id=${i}]`);\n\ta+=\"\\n\";\n\t}\na;",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{chapter.title}}|\\(第.*页\\)|（本章未完.*继续阅读）|阅读.*最新章节.*请关注.+",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "a@ownText##.*[(]|[):]|[【】].+",
      "bookList": "<js>\nvar sk=java.get(\"sk\");\nvar su=source.getKey();\nvar v=source.getVariable();\nvar so=/s.php/.test(baseUrl);\nif(so){\n\tvar bu=baseUrl.match(/^(.+)\\/s.php/)[1];\nif(bu!=su&&bu!=v){\n\tsource.setVariable(bu);\n\tjava.toast(\"地址变动，重新搜索加载！\")\n\tresult=java.ajax(baseUrl+`,{\n\t\t\"body\": \"s=${String(sk)}\",\n\t\t\"method\": \"POST\"}`);\n\t\t}\n\t}else{result=result}\n\tresult;\n</js>\n.bd li",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "a@href##\\D+((\\d+)\\d{3})\\D*##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "span@text##\\[|\\]",
      "name": "a@ownText##[()].+|.*[:【]|】"
    },
    "ruleToc": {
      "chapterList": "<js>\nd=java.getElements(\".list div\");\nvar li=\"\";\nfor(i in d){\n\tli+=d.select(`[data-id=${i}] li`);\n\tli+=\"\\n\";\n\t}\n\tli;\n</js>\nli a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{source.getVariable()?source.getVariable():source.getKey()\n}}/s.php,{\n  \"body\": \"s={{java.put('sk',key)}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": " 未来天王",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.weilaitianwang.org",
    "customButton": false,
    "customOrder": 606,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"最近更新\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻奇幻\",\"url\":\"/xuanhuanxiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真仙侠\",\"url\":\"/xiuzhenxiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市青春\",\"url\":\"/dushixiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史穿越\",\"url\":\"/chuanyuexiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/wangyouxiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻灵异\",\"url\":\"/kehuanxiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"/qitaxiaoshuo/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"/wanben/1_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1743588282109,
    "respondTime": 2170,
    "ruleBookInfo": {
      "author": "id.bookdetail.0@id.info.0@tag.p.0@tag.a.0@text",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "id.bookdetail.0@id.intro.0@textNodes",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "id.bookdetail.0@id.info.0@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html",
      "replaceRegex": "##.*天才一秒记住本.*\\s|.*最快更新.*无广告.*\\s|最新网址.*|章节错误.*"
    },
    "ruleExplore": {
      "author": "class.s4.0@text",
      "bookList": "id.newscontent.0@class.l.0@tag.li",
      "bookUrl": "class.s2.0@tag.a.0@href",
      "kind": "class.s1.0@text##\\[|\\]",
      "lastChapter": "class.s3.0@tag.a.0@text",
      "name": "class.s2.0@tag.a.0@text"
    },
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.novelslist2@tag.li.!0",
      "bookUrl": "class.s2@tag.a.0@href",
      "checkKeyWord": "失落文明",
      "coverUrl": "class.s2@tag.a.0@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\nsource.bookSourceUrl + 'files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.s3@text",
      "name": "class.s2@text"
    },
    "ruleToc": {
      "chapterList": "id.list.0@tag.dd.!11",
      "chapterName": "tag.a.0@text",
      "chapterUrl": "tag.a.0@href"
    },
    "searchUrl": "/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "/* 2023.12.24  by:遇知  制作 */\n\t\njm = Object.keys(link_Params).map((key)=>link_Params[key]).join(\"\");\n_md5 = String(java.md5Encode(jm));\nmd5 = _md5.substring(3,_md5.length-5);\napi_Params = {\n   \"ver\": \"1.6.4\",\n   \"md5\": md5\n};\nbody = Object.assign(link_Params, api_Params);\noption = {'method':'POST','body':JSON.stringify(body)};\nurl = link_Urlpath +\",\"+ JSON.stringify(option);",
    "bookSourceGroup": "免费",
    "bookSourceName": "乐读小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.book.bookld.com##",
    "customButton": false,
    "customOrder": 607,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\npush('榜单', null, 1, 1);\n  bd=[\"综合\",\"新书\",\"完结\",\"男生\",\"女生\",\"收藏\"];\n    bd.map((title,type)=>{\t\t\t\t\t\n\t\t\turl = `@js:link_Urlpath = \"/Book/RankingList\";\n\t   \tlink_Params =\t{\"ranking_id\":${type+91},\"start\":(page-1)*20,\"limit\":20};\t\n\t\t \teval(String(source.bookSourceComment));`;\n\t\t \t\n\t\t\t\tif(type+1 <= bd.length - bd.length%3)\n\t\t\t {\tpush(title, url, 1, 0.25);}\n\t\t\t\telse{ push(title, url, 0, 0.3);}\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\n   fl =[[\"男频\",\"100\",\n[\"都市\",\"玄幻\",\"仙侠\",\"灵异\",\"军史\",\"科幻\",\"竞技\",\"N次元\"]],\n[\"女频\",\"200\",\n[\"现言\",\"古言\",\"幻言\",\"灵异\",\"科幻\",\"青春\"]],\n[\"名著\",\"300\",\n[\"中国名著\",\"外国名著\"]]\n];\nfl.map([title,gender,list]=>{\n  \t\n\tpush(title, null, 1, 1);\n\t  list.map((title,type)=>{\n\t  \turl = `@js:link_Urlpath = \"/Book/QueryBookForCtgr\";\n\t   \tlink_Params =\t{\"type\":${type+1+Number(gender)},\"category\":0,\"serials\":\"不限\",\"vip\":\"不限\",\"start\":(page-1)*20,\"limit\":20};\t\n\t\t \teval(String(source.bookSourceComment));`;\n\tif(list.length > 3){\n\t\tif(type+1 <= list.length - list.length%3)\n\t\t\t {\tpush(title, url, 1, 0.25);}\n\t\t\t\telse{ push(title, url, 0, 0.29);}\n\t\t\t\t}\n\t\t\t\telse{ push(title, url, 1, 0.25);}\n    \t});\n\t});\n\nJSON.stringify(sort);",
    "header": "",
    "lastUpdateTime": 1731570717907,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 2576,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$.cover",
      "downloadUrls": "",
      "intro": " 标签：{{$.tags##\\n##,}}\n🕰 更新：{{$.updated}}\n♠️ 版权：{{$.MoreInfo##免责声明：|，.*}}\n📂 简介：{{$.longIntro}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.majorCate}}\n{{r=java.getString('isSerial');if(r!=\"\") r!='true'?'完结':'连载';}}\n{{$.updated##\\s.*}}",
      "lastChapter": "$.lastChapter",
      "name": "$.title",
      "tocUrl": "@js:\nlink_Urlpath = \"/Book/CatelogueList\";\nlink_Params =\t{ \n\t \"_id\": java.put('_id',java.getString('$._id')),\n  \"userID\": \"312818\"\n  };\neval(String(source.bookSourceComment));",
      "wordCount": "$.wordCount"
    },
    "ruleContent": {
      "content": "<js>\n$ = JSON.parse(result);\nbody = $.chapter.body;\nif(body!=null){\n\t\n\n//解密方式一（阅读内置方法）：\njmkey=\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjYFYoMbA0uW8by6+YIghxxsvibS9YW4yKVSulykAzZZwZ/+dNTkZ4inY7Pj08aksm6RCGKS6+WfvVQo/EdkcS5p2LY2/76qVzapyHsyQf/Pud6ATPKnwxNt/DaqjL35Z9K0NI/RF9x732RdIEOTKXppfRdzCa/1Ctm/5ZFilY8UmZsppkjDd3XkuPr3n3wVC8WFvqmdJ1N55prRlnaRaO+mIOXo3OsOzIxE5EdcE0TLT9OFZ3Wlbi3E0iI0v/ZsrWoL57YvLwo7BsARp7BansDCx8NZg6ObGQN/tNrE/nKqQTXeJjnFWXdLfhI7xivPPphkj5fNpiufIsIUEd7eXBwIDAQAB\";\ndata = java.base64DecodeToByteArray(body);\nkey = java.base64DecodeToByteArray(jmkey);\n\ncontent = java.createAsymmetricCrypto(\"RSA\").setPublicKey(key).decryptStr(data)\n\t\n/*\t\n//解密方式二（构造函数）：\nvar javaImport = new JavaImporter();\njavaImport.importPackage(\n\t   Packages.java.lang,\n     Packages.java.security,\n     Packages.java.security.interfaces,\n     Packages.java.security.spec,\n     Packages.android.util,\n     Packages.java.io,      \n     Packages.javax.crypto,\n     Packages.javax.crypto.spec\n);\nwith(javaImport){\n function Decode(str){\njmkey=\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjYFYoMbA0uW8by6+YIghxxsvibS9YW4yKVSulykAzZZwZ/+dNTkZ4inY7Pj08aksm6RCGKS6+WfvVQo/EdkcS5p2LY2/76qVzapyHsyQf/Pud6ATPKnwxNt/DaqjL35Z9K0NI/RF9x732RdIEOTKXppfRdzCa/1Ctm/5ZFilY8UmZsppkjDd3XkuPr3n3wVC8WFvqmdJ1N55prRlnaRaO+mIOXo3OsOzIxE5EdcE0TLT9OFZ3Wlbi3E0iI0v/ZsrWoL57YvLwo7BsARp7BansDCx8NZg6ObGQN/tNrE/nKqQTXeJjnFWXdLfhI7xivPPphkj5fNpiufIsIUEd7eXBwIDAQAB\";\n \tpublicKey = \tKeyFactory.getInstance(\"RSA\").generatePublic(new X509EncodedKeySpec(Base64.decode(jmkey, 0)));\n\n       instance = Cipher.getInstance(\"RSA\");\n        instance.init(2, publicKey);\n        decode = Base64.decode(str,0);\n        blockSize = instance.getBlockSize();\n        byteArrayOutputStream = new ByteArrayOutputStream(64);\n         i = 0;\n        while (true) {\n             i2 = i * blockSize;\n            if (decode.length - i2 > 0) {\n                byteArrayOutputStream.write(instance.doFinal(decode, i2, blockSize));\n                i++;\n            } else {\n                decode = byteArrayOutputStream.toByteArray();\n                byteArrayOutputStream.close();\n                return new String(decode);\n            }\n        }\n    }\n}\ncontent = Decode(body);\n\n*/\n\n}\nelse{ msg = $.msg; }\n</js>"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.books",
      "bookUrl": "@js:\nlink_Urlpath = \"/Book/ArticleInfo\";\nlink_Params =\t{ \n\t \"_id\": \"{{$._id}}\",\n  \"userID\": \"312818\"\n  };\neval(String(source.bookSourceComment));",
      "checkKeyWord": "",
      "coverUrl": "$.cover",
      "intro": "$.shortIntro",
      "kind": "{{$.majorCate}}\n{{r=java.getString('isSerial');if(r!=\"\") r!='true'?'完结':'连载';}}\n{{$.updated##\\s.*}}",
      "lastChapter": "$.lastChapter",
      "name": "$.title",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.mixToc.chapters",
      "chapterName": "$.title",
      "chapterUrl": "@js:\nlink_Urlpath = \"/Book/ChapterContent\";\nlink_Params =\t{ \n\t \"_id\": java.get(\"_id\"),\n  \"chapter_id\": \"{{$.chapter_id}}\",\n  };\neval(String(source.bookSourceComment));"
    },
    "searchUrl": "@js:\nlink_Urlpath = \"/Book/QueryArticleByName\";\nlink_Params =\t{\"query\": key};\neval(String(source.bookSourceComment));",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "溜达小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.liudatxt.net",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 609,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734862268621,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 361,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "id.bookintro@html",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content##小说|\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ".count@tag.span.-1@text"
    },
    "ruleContent": {
      "content": "id.content@html",
      "imageStyle": "0",
      "replaceRegex": "##感谢.*打赏.*|\\【看书福利.*|\\（未完待续\\）|无弹窗.*|\\【加入书签.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.book_other.0@tag.span.0@text",
      "bookList": "id.sitembox@tag.dl",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "lastChapter": "class.book_other.1@text##最新章节.| 更新时间.|..\\:.*",
      "name": "tag.a.1@text",
      "wordCount": "class.book_other.0@tag.span.-1@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.liudatxt.org/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ibiquzw.org",
    "bookUrlPattern": "http://m.ibiquzw.org/[\\d_]+/",
    "customButton": false,
    "customOrder": 611,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::/xclass/0/{{page}}.html\n玄幻奇幻::/xclass/1/{{page}}.html\n修真仙侠::/xclass/2/{{page}}.html\n都市青春::/xclass/3/{{page}}.html\n历史军事::/xclass/4/{{page}}.html\n网游竞技::/xclass/5/{{page}}.html\n科幻灵异::/xclass/6/{{page}}.html\n其它::/xclass/7/{{page}}.html\n全本::/quanben0_{{page}}.html\n其它::/quanben7_{{page}}.html\n玄幻奇幻::/quanben1_{{page}}.html\n修真仙侠::/quanben2_{{page}}.html\n都市青春::/quanben3_{{page}}.html\n历史军事::/quanben4_{{page}}.html\n网游竞技::/quanben5_{{page}}.html\n科幻灵异::/quanben6_{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1731827987247,
    "respondTime": 4062,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#chaptercontent@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{try{chapter.title}catch(e){\"\"} }}|\\(第\\d+.+页\\)"
    },
    "ruleExplore": {
      "author": "p.author@text",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": "p.-1@text##简介：",
      "kind": ".score@text",
      "name": "p.title@text"
    },
    "ruleSearch": {
      "author": "p.author a.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a.0@href",
      "checkKeyWord": "剑来",
      "coverUrl": "@js:'/images/defaultimg.png'",
      "kind": "p.-1@textNodes##\\|.*\\s##,",
      "lastChapter": "a.-1@text",
      "name": "p.title@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist p!0@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/SearchBook.php?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "女频",
    "bookSourceName": "腐书宅",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.fushuzhai.net",
    "customButton": false,
    "customOrder": 612,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "海棠耽美::http://m.fushuzhai.net/wapsort/7_{{page}}.html\n海棠言情::http://m.fushuzhai.net/wapsort/8_{{page}}.html\n情欲小说::http://m.fushuzhai.net/wapsort/9_{{page}}.html\n耽美小说::http://m.fushuzhai.net/wapsort/1_{{page}}.html\n辣文小说::http://m.fushuzhai.net/wapsort/2_{{page}}.html\n言情小说::http://m.fushuzhai.net/wapsort/3_{{page}}.html\n百合小说::http://m.fushuzhai.net/wapsort/4_{{page}}.html\n百合小说::http://m.fushuzhai.net/wapsort/5_{{page}}.html\n私密小说::http://m.fushuzhai.net/wapsort/5_{{page}}.html",
    "lastUpdateTime": 1727974410530,
    "respondTime": 7018,
    "ruleBookInfo": {
      "author": "//*[@property=\"og:novel:author\"]/@content",
      "canReName": "",
      "coverUrl": "",
      "init": "",
      "lastChapter": "//*[@property=\"og:novel:lastest_chapter_name\"]/@content",
      "tocUrl": "@js:\nif(result.match(/goChapterList\\(\\d+\\)/)){\n\tif(java.getElements(\"@@class.chapterList@li!-1\").toArray().length>8){\naid=result.match(/aid\\/(\\d+)/)[1];\nurl=book.origin+\"/mytool/getChapterList/,\";\nverify=book.getVariable(\"custom\");\noption={\n\"method\":\"POST\",\n\"body\":\"verify=\"+verify+\"&aid=\"+aid,\n\"headers\":JSON.parse(source.getLoginHeader() || \"[]\").headers,\n\"webView\":true\n}\nresult=url+JSON.stringify(option)\n}else{  baseUrl}\n}"
    },
    "ruleContent": {
      "content": "<js>\ncontent={\n    childNode:[],\n    childNodes:\nresult.match(/nrid=\"([^\"]+)\";/)?java.getElements(\"#\"+result.match(/nrid=\"([^\"]+)\";/)[1]+\"@p\").toArray():\"\",\n    UpWz:function(m, i) {\n        var k = Math.ceil((i + 1) % this.code);\n        k = Math.ceil(m - k);\n        return k\n    },\n    load:function(){\n  this.code=String(result).match(/codeurl=\"(\\d+)\"/)[1];\n        var e =String(java.base64Decode(java.getString('[name=client]@content'))).split(/[A-Z]+%/);\n\n        for (var i = 0; i < e.length; i++) {\n            var k = this.UpWz(e[i], i);\n            this.childNode[k]=this.childNodes[i]\n        }}\n}\n\nif(baseUrl.match(/getVerify/)){\n\thref=\"http://m.fushuzhai.net/mytool/getVerify/?d=\"+Math.random();\n\t\naid=java.get('aid')\nurl=\"http://m.fushuzhai.net/mytool/getChapterList/\";\nverify=book.getVariable(\"custom\");\nbody=\"verify=\"+verify+\"&aid=\"+aid+\"&sbt=提交\"\nc=String(java.post(url,body,{}).cookies()).replace(/\\{|\\}/g,'');\n\nheaders={\"headers\":{\"Cookie\":c}}\nsource.putLoginHeader(JSON.stringify(headers))\n\nresult='<img src=\"'+href+','+JSON.stringify(headers)+'\"><br>'+\"长按上面的图片查看验证码，或者右上角三点将图片样式改成FULL刷新正文查看验证码（没有图片的话请关闭替换净化）<br>详情页右上角三点，编辑书籍变量，填上验证码确定<br>详情页右上角三点刷新<br>如果刷新以后还是要获取的验证码，说明验证码不对，刷新正文获取新的验证码，重复上面步骤\"\n}else{if(baseUrl.match(/\\d+_2\\.html/)){\ncontent.load();\nresult=content.childNode.join(\"<br>\");}else if(baseUrl.match(/\\/\\d+\\.html/)){\nresult=java.getElements(\"@@class.container@p\")\n}else{\n\teval(String(java.ajax(\"http://www.ztgauntong.com/17mb/js/cryptojs_min.js\")));\n\tfunction d(a, b) {\r\n\t\tb = CryptoJS.MD5(b).toString();\r\n\t\tvar d = CryptoJS.enc.Utf8.parse(b.substring(0, 16));\r\n\t\tvar e = CryptoJS.enc.Utf8.parse(b.substring(16));\r\n\t\treturn CryptoJS.AES.decrypt(a, e, { iv: d, padding: CryptoJS.pad.Pkcs7 }).toString(CryptoJS.enc.Utf8)\r\n\t}\n\tresult=eval(result.match(/\\.html\\((d\\(\"[\\s\\S]+\"\\))\\)/)[1])\n\t}}\n\n</js>",
      "imageStyle": "TEXT",
      "nextContentUrl": ".chapterPages@a!0@href\n<js>\nif(!baseUrl.match(/_2/)){\nlist=result.toArray();\nlist.map((x,i)=>baseUrl.replace(/\\.html/,\"_\"+(Number(i)+2)+\".html\"))\n}\n</js>",
      "replaceRegex": "<js>\nresult.replace(/\\s*❎\\s*/g,'')\n.replace(/\\s*\\^_\\^爱你们\\s*/g,'')\n</js>",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "p.0@strong@text",
      "bookList": "class.common-bookele",
      "bookUrl": "class.abstract@a@href",
      "coverUrl": "@js:'https://kkimgs.yisou.com/ims?kt=url&at=smstruct&key=aHR0cDovL2Itc3NsLmR1aXRhbmcuY29tL3VwbG9hZHMvaXRlbS8yMDE3MDEvMjMvMjAxNzAxMjMxNzE4MTRfdndqYUcudGh1bWIuNzAwXzAuanBlZw==&sign=yx:I4-k8uKTZxDzaDmz08ieLmHWEKM=&tv=400_400'",
      "intro": "class.abstract@a@text",
      "name": "h3@a@text"
    },
    "ruleSearch": {
      "author": "p@strong@text",
      "bookList": "class.common-bookele",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "@js:'https://kkimgs.yisou.com/ims?kt=url&at=smstruct&key=aHR0cDovL2Itc3NsLmR1aXRhbmcuY29tL3VwbG9hZHMvaXRlbS8yMDE3MDEvMjMvMjAxNzAxMjMxNzE4MTRfdndqYUcudGh1bWIuNzAwXzAuanBlZw==&sign=yx:I4-k8uKTZxDzaDmz08ieLmHWEKM=&tv=400_400'",
      "intro": "class.abstract@text",
      "kind": "class.lastupdate@text##栏目：",
      "name": "class.articlename@text"
    },
    "ruleToc": {
      "chapterList": ".chapterList.0@li@a||li a\n<js>\nif(String(src).match(/url=\"[^\"]+\"\\+id\\+\".html\"/)){\nhref = String(src).match(/url=\"[^\"]+\"\\+id\\+\".html\"/)[0]\njava.put(\"url\",href)\n}\nif(String(src).match(/验证码不对/)){\nhref=book.origin+\"/mytool/getVerify/?d=\"+Math.random();\nresult='<a href=\"'+href+'\">验证码</a>'\n}else{result=result}\nif(baseUrl.match(/\\/\\d+/)){\n\tlist=result.toArray().slice(0,-1);\n\tlist.reverse().join(\"\")\n\t}else{\n\t\tresult=result\n\t\t}\n</js>\na",
      "chapterName": "text",
      "chapterUrl": "href\n@js:\nif(result.match(/go.*?\\(\\d+\\)/)){\n\tid=result.match(/go.*?\\((\\d+)\\)/)[1]\n\teval(String(java.get(\"url\")))\n\tresult = url\n\t}else{\n\t\tresult\n\t\t}"
    },
    "searchUrl": "/search.html,{\n'method': 'POST',\n'body': 'key={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "出处源-仓库名著阅读",
    "bookSourceType": 2,
    "bookSourceUrl": "https://api.diandu.com/",
    "customButton": false,
    "customOrder": 613,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"📚全部书籍\",\"url\":\"https://api.520diandu.com/api/read/allReadBooks?uid=&key=&page={{page}}&cv=134&from=web\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1745162408780,
    "respondTime": 5139,
    "ruleBookInfo": {
      "name": ""
    },
    "ruleContent": {
      "content": "@get:{img}@js:headers={\"headers\":{\"Referer\":baseUrl}};\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "$..books[*]",
      "bookUrl": "https://api.520diandu.com/api/read/readAllPages?uid=&key=&cv=134&from=web&bid={{$.id}}",
      "checkKeyWord": "封神",
      "coverUrl": "$.famous",
      "intro": "$.title",
      "name": "$.book_name"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.page",
      "chapterUrl": "$.pic@put:{img:pic}"
    },
    "searchUrl": "https://api.520diandu.com/api/read/allReadBooks?uid=&key=&name={{key}}&page={{page}}&cv=134&from=app",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "晚班小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mk.info",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 614,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1734644708068,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1958,
    "ruleBookInfo": {
      "author": "class.info@tag.span.0@text##作者：",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text##简介：|各位书友.*",
      "kind": "class.info@tag.span.1@text##分类：",
      "lastChapter": "class.info@tag.a.-1@text&&class.info@class.last.0@text##更新时间：|..\\:.*",
      "name": "class.info@tag.h2@text",
      "tocUrl": "text.开始阅读@href"
    },
    "ruleContent": {
      "content": ".ReadAjax_content@html",
      "imageStyle": "0",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##请记住本书首发.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text",
      "name": "tag.h4@text"
    },
    "ruleToc": {
      "chapterList": "class.book_last@dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://wap.99mk.net/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "wifi用用不了",
    "bookSourceGroup": "免费",
    "bookSourceName": "桃桃书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.ttshu12.com/",
    "customButton": false,
    "customOrder": 615,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://m.ttshu12.com/xiaoshuodaquan/page_{{page}}.html\n玄幻魔法::https://m.ttshu12.com/xuanhuan/page_{{page}}.html\n武侠修真::https://m.ttshu12.com/xiuzhen/page_{{page}}.html\n历史穿越::https://m.ttshu12.com/lishi/page_{{page}}.html\n游戏竞技::https://m.ttshu12.com/wangyou/page_{{page}}.html\n都市言情::https://m.ttshu12.com/dushi/page_{{page}}.html\n科幻小说::https://m.ttshu12.com/kehuan/page_{{page}}.html\n女频小说::https://m.ttshu12.com/nvpin/page_{{page}}.html",
    "lastUpdateTime": 1673291543969,
    "respondTime": 46958,
    "ruleBookInfo": {
      "author": "class.pt-info.1@text##作者：",
      "coverUrl": "class.baseinfo@img@src",
      "intro": "class.intro@text",
      "kind": "class.pt-info.2@a@text",
      "lastChapter": "id.newchaperlist@li.0@text"
    },
    "ruleContent": {
      "content": "id.BookText@html",
      "nextContentUrl": "text.下一页@href##$##,{'webView': true}"
    },
    "ruleExplore": {
      "author": "class.s712.1@text##作者：",
      "bookList": "class.book-li",
      "bookUrl": "class.pt-cover@a@href",
      "coverUrl": "class.pt-cover@a@img@src",
      "intro": "class.pt-desc ptm-text-cut@text##简介：",
      "kind": "class.s712.0@text##分类：",
      "name": "class.pt-name@text"
    },
    "ruleSearch": {
      "bookList": "class.ptm-list-view-cell ptm-img ptm-col-xs-4",
      "bookUrl": "class.imgarea@a@href",
      "checkKeyWord": "斗破苍穹",
      "coverUrl": "class.imgarea@img@src",
      "name": " class.ptm-block pt-name ptm-text-cut@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href##$##,{'webView': true}",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://m.ttshu12.com/home/search,{\n  \"body\": \"action=search&q={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "果文学网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.guowx.com",
    "bookUrlPattern": "http://\\w+.guowx.com/$",
    "customButton": false,
    "customOrder": 616,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::http://www.guowx.com/xuanhuan<,?page={{page}}>\n武侠仙侠::http://www.guowx.com/xianxia<,?page={{page}}>\n都市言情::http://www.guowx.com/dushi<,?page={{page}}>\n历史军事::http://www.guowx.com/lishi<,?page={{page}}>\n科幻传奇::http://www.guowx.com/kehuan<,?page={{page}}>\n恐怖灵异::http://www.guowx.com/kongbu<,?page={{page}}>\n其他类型::http://www.guowx.com/qita<,?page={{page}}>\n全本小说::http://www.guowx.com/quanben<,?page={{page}}>",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1763601574712,
    "respondTime": 15031,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "downloadUrls": "text.下载@href",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "wordCount": "{{@@#count span.1@text}}字"
    },
    "ruleContent": {
      "content": "#TextContent p@textNodes##([^\\n]*?(提醒您|想看|的作品|本作者)[\\s\\S]*?《[\\s\\S]*?》[\\s\\S]*?完整章节[\\s\\S]*?(ｏｍ|om)\\)[\\s\\S]*?\\r?\\n?|([\\s\\S]{3}ｇｕｏ|[\\s\\S]{7}来|[\\s\\S]{2}果)([\\s\\S]*?)(om|ｏm|ｏｍ)\\))##",
      "nextContentUrl": "@js:\n(()=>{\n   //根据url获取下一页nextBaseUrl的nextPage \n   if (/\\?page=\\d+/.test(baseUrl)) {\n      nextPage = parseInt(baseUrl.match(/page=(\\d+)/)[1])+1;\n   } else {\n      nextPage =2\n   }\n   //根据result的区别判断是否加载下一页\n   if (result.includes('id=\"linkNext\"')) {\n      //置null,否则会尝试执行\n      nextBaseUrl = null;\n  } else {\n      nextBaseUrl = baseUrl.replace(/\\?page=\\d+/, '')+\"?page=\"+nextPage;\n  }\n})()\nnextBaseUrl"
    },
    "ruleExplore": {
      "bookList": "#sitebox dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@_src",
      "intro": ".book_des@text",
      "kind": "span.2:3:1@text",
      "lastChapter": "a.-1@text",
      "name": "h3 a@text",
      "wordCount": "{{@@span.-1@text}}字"
    },
    "ruleSearch": {
      "bookList": "#nr",
      "bookUrl": "a.1@href",
      "checkKeyWord": "我的",
      "coverUrl": "img@_src",
      "intro": ".book_des@text",
      "kind": "span.2:3:1@text",
      "lastChapter": "a.-1@text",
      "name": "h3 a@text",
      "wordCount": "{{@@span.-1@text}}字"
    },
    "ruleToc": {
      "chapterList": "#chapterList li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "@js:\n\nvar url=source.getKey();\n\nvar html = java.ajax(url);\n\ntoken = org.jsoup.Jsoup.parse(html).select('input[name=_token]').attr('value');\n\nurl+\"/search,\"+JSON.stringify({\n  \"body\": `_token=${token}&keyword=${key}&searchtype=articlename`,\n  \"method\": \"post\"\n})",
    "weight": 0
  },
  {
    "bookSourceComment": "||🎉新笔趣阁💜💜xbiquge#cookie0718",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "md♛+新笔趣阁 ♜♜✘cookie",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xbiquge.lacookie",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 618,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::http://www.xbiquge.la/fenlei/1_{{page}}.html\n修真小说::http://www.xbiquge.la/fenlei/2_{{page}}.html\n都市小说::http://www.xbiquge.la/fenlei/3_{{page}}.html\n穿越小说::http://www.xbiquge.la/fenlei/4_{{page}}.html\n网游小说::http://www.xbiquge.la/fenlei/5_{{page}}.html\n科幻小说::http://www.xbiquge.la/fenlei/6_{{page}}.html",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:90.0) Gecko/20100101 Firefox/90.0\",\n    \"Cookie\": \"Hm_lpvt_covid197ca72ab9804ca50c2fcovid19:1234567890\"\n}",
    "lastUpdateTime": 1720836979297,
    "loginUrl": "",
    "respondTime": 3251,
    "ruleBookInfo": {
      "author": "#info @p.0 @text##作.*者：",
      "coverUrl": "#fmimg @img @src",
      "intro": "#intro @p.1 @text",
      "kind": ".con_top @text##.*阁\\s>\\s|>.*",
      "lastChapter": "#info @p.3 @title",
      "name": "#info @h1 @text",
      "wordCount": "#info @p.2 @text ##最后更新："
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "imageStyle": "0",
      "webJs": "getDecode();$('#content').html();"
    },
    "ruleExplore": {
      "author": "tag.span.2@text",
      "bookList": "class.l@tag.ul@tag.li",
      "bookUrl": "tag.span.0@tag.a@href",
      "lastChapter": "tag.span.1@tag.a@text",
      "name": "tag.span.0@tag.a@text"
    },
    "ruleSearch": {
      "author": ".even.1 @text",
      "bookList": ".grid @tbody @tr!0",
      "bookUrl": ".even.0 @a @href",
      "coverUrl": ".even.0 @a @href##.+\\D((\\d+)\\d{3})\\D##https://www.xbiquge.la/files/article/image/$2/$1/$1s.jpg###",
      "lastChapter": ".odd.0 @a @text",
      "name": ".even.0 @a @text"
    },
    "ruleToc": {
      "chapterList": "#list @dd",
      "chapterName": "a @text",
      "chapterUrl": "a @href##$##,{\n\"headers\": {\"Cookie\": \"covid19=; UM_distinctid=;\"}\n}"
    },
    "searchUrl": "http://www.xbiquge.la/modules/article/waps.php?searchkey={{key}}&page=<,{{page}}>",
    "weight": 70
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": " 笔趣阁网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.39txt.com",
    "customButton": false,
    "customOrder": 620,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3704.400 QQBrowser/10.4.3587.400\"\n}",
    "lastUpdateTime": 1738398790943,
    "respondTime": 1114,
    "ruleBookInfo": {
      "author": "class.info@tag.h3@tag.a@text",
      "coverUrl": "class.img@tag.img@src",
      "intro": "id.intro@html",
      "name": "class.info@tag.h1@text"
    },
    "ruleContent": {
      "content": "id.book_text@html",
      "replaceRegex": "##一秒记住.*免费阅读！"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.chapterlist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/modules/article/search.php?q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "年梦阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.shaoniandream.com",
    "customButton": false,
    "customOrder": 621,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"version\": \"v3\"\n}",
    "lastUpdateTime": 1721279165869,
    "loginUi": "[\n    {\n        name: \"账号\",\n        type: \"text\"\n    },\n    {\n        name: \"密码\",\n        type: \"password\"\n    }\n]",
    "loginUrl": "<js>\n  function login() {\n  \t const user = String(source.getLoginInfoMap().get(\"账号\"))\n    const pw = String(source.getLoginInfoMap().get(\"密码\"))\n    let sign = java.md5Encode(`isDevice=Android&password=${pw}&phone=${user}&regDevice=2&key=87ac02d392a8d3566fe7748c8de00af3&secrect=57dcuidu8aa8062bfe8042ea65310669`).toString().toUpperCase()\n    let data = JSON.stringify({\n      isDevice: \"Android\",\n      password: pw,\n      phone: user,\n      regDevice: \"2\",\n      sign: sign\n    })\n    let op = JSON.stringify({\n      method: \"POST\",\n      body: data\n    })\n    let res = java.ajax(`https://api.shaoniandream.com/Login/login,${op}`)\n    let $ = JSON.parse(res)\n    if($.status != 1) java.toast($.msg)\n    java.put(\"uid\",$.data.id)\n    source.putLoginHeader(JSON.stringify({\n      logintoken: $.data.logintoken\n    }))\n  \t}\n</js>",
    "respondTime": 376,
    "ruleBookInfo": {
      "author": "AuthorObj.penName",
      "coverUrl": "http://alioss.shaoniandream.com{{$.picture}}",
      "init": "data",
      "intro": "jianjie",
      "kind": "sortName",
      "lastChapter": "ChapterName##连载至",
      "name": "title",
      "tocUrl": "<js>\n  let uid =  java.get(\"uid\") != \"undefined\" ? java.get(\"uid\") : \"-1\"\n  let sign = java.md5Encode(`BookID={{$.id}}&UserID=${uid}&isDevice=Android&regDevice=2&key=87ac02d392a8d3566fe7748c8de00af3&secrect=57dcuidu8aa8062bfe8042ea65310669`).toString().toUpperCase()\n  let data = JSON.stringify({\n    BookID: {{$.id}},\n    UserID: uid,\n    isDevice: \"Android\",\n    regDevice: \"2\",\n    sign: sign\n  })\n  let op = JSON.stringify({\n      method: \"POST\",\n      body: data\n    })\n  \"https://api.shaoniandream.com/Booklibrary/readdir,\" + op\n</js>",
      "wordCount": "FontCount"
    },
    "ruleContent": {
      "content": "<js>\n  let $ = JSON.parse(result)\n  let content = $.data.show_content.map((item)=>{\n    return java.base64Decode(item.content)\n  }).join(\"\\n\").trim()\n  let img = $.data.chapterpic.map((item)=>{\n    return `<img src=\"http://alioss.shaoniandream.com${item.url}\" />`\n  }).join(\"\\n\").trim()\n  let miaoshu = java.base64Decode($.data.miaoshu)\n  let txt = \"\"\n  if(miaoshu != \"\")\n    txt = `${content}\\n${img}\\n作者有话说：\\n${miaoshu}`\n  else txt = `${content}\\n${img}`\n  txt\n</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "penName",
      "bookList": "data",
      "bookUrl": "<js>\n  let uid =  java.get(\"uid\") != \"undefined\" ? java.get(\"uid\") : \"-1\"\n  let sign = java.md5Encode(`BookID={{$.BooksID}}&UserID=${uid}&isDevice=Android&regDevice=2&key=87ac02d392a8d3566fe7748c8de00af3&secrect=57dcuidu8aa8062bfe8042ea65310669`).toString().toUpperCase()\n  let data = JSON.stringify({\n    BookID: {{$.BooksID}},\n    UserID: uid,\n    isDevice: \"Android\",\n    regDevice: \"2\",\n    sign: sign\n  })\n  let op = JSON.stringify({\n      method: \"POST\",\n      body: data\n    })\n  \"https://api.shaoniandream.com/Booklibrary/bookdetail,\" + op\n</js>",
      "coverUrl": "http://alioss.shaoniandream.com{{$.picture}}",
      "intro": "jianjie",
      "kind": "SortObj.cname",
      "lastChapter": "",
      "name": "title",
      "wordCount": "FontCount"
    },
    "ruleToc": {
      "chapterList": "<js>\n  let $ = JSON.parse(result)\n  let uid = java.get(\"uid\") != \"undefined\" ? java.get(\"uid\") : \"-1\"\n  let array = []\n  $.data.chapterList.forEach((booklet) => {\n    array.push({\n    \t name: booklet.title,\n    \t isv: true\n    })\n    booklet.chapterList.forEach((chapter) => {\n    \t let sign = java.md5Encode(`BookID=${$.data.id}&UserID=${uid}&chapter_id=${chapter.id}&isDevice=Android&isMarket=true&regDevice=2&key=87ac02d392a8d3566fe7748c8de00af3&secrect=57dcuidu8aa8062bfe8042ea65310669`).toString().toUpperCase()\n    \t let data = JSON.stringify({\n    \t   BookID: $.data.id,\n    \t   UserID: uid,\n    \t   chapter_id: chapter.id,\n    \t   isDevice: \"Android\",\n    \t   isMarket:\"true\",\n    \t   regDevice: \"2\",\n    \t   sign: sign\n    \t })\n      let op = JSON.stringify({\n        method: \"POST\",\n        body: data\n      })\n      array.push({\n        name: chapter.title,\n        url: \"https://api.shaoniandream.com/Booklibrary/readchapter,\" + op,\n        time: java.timeFormat(chapter.release_time_now * 1000),\n        vip: chapter.isFree == 1,\n        buy: chapter.lock == 1\n      })\n    })\n  })\n  array\n</js>",
      "chapterName": "name",
      "chapterUrl": "url",
      "isPay": "buy",
      "isVip": "vip",
      "isVolume": "isv",
      "preUpdateJs": "",
      "updateTime": "time"
    },
    "searchUrl": "<js>\n  let sign = java.md5Encode(`count=10&isDevice=Android&keywords=${key}&page=1&regDevice=2&key=87ac02d392a8d3566fe7748c8de00af3&secrect=57dcuidu8aa8062bfe8042ea65310669`).toString().toUpperCase()\n  let data = JSON.stringify({\n    count: 10,\n    isDevice: \"Android\",\n    keywords: key,\n    page: 1,\n    regDevice: \"2\",\n    sign: sign\n  })\n  let op = JSON.stringify({\n      method: \"POST\",\n      body: data\n    })\n  \"https://api.shaoniandream.com/Booklibrary/index,\" + op\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "主站：https://www.18wen18.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 海棠书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.haitang4.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 624,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"排行榜\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总排行\",\"url\":\"/top/allvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月排行\",\"url\":\"/top/monthvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐\",\"url\":\"/top/allvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐\",\"url\":\"/top/monthvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总收藏\",\"url\":\"/top/goodnum-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数榜\",\"url\":\"/top/size-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"更新榜\",\"url\":\"/top/lastupdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新入库\",\"url\":\"/top/postdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"全部分类\",\"url\":\"/sort/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"玄幻奇幻\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠修真\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史穿越\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻未来\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖悬疑\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他类型\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"/wanben-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1724338191973,
    "loginUrl": "",
    "respondTime": 4684,
    "ruleBookInfo": {
      "author": "##:author\"[^\"]+\"([^\"]*)##$1###",
      "coverUrl": "##og:image\"[^\"]+\"([^\"]*)##$1###",
      "intro": "##:description\"[^\"]+\"([^\"]*)##$1###",
      "kind": "##:category\"[^\"]+\"([^\"]*)##$1###",
      "lastChapter": "##_chapter_name\"[^\"]+\"([^\"]*)##$1###",
      "name": "##:book_name\"[^\"]+\"([^\"]*)##$1###",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "div#content@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": "ul.topul>li",
      "bookUrl": "h2>a@href",
      "checkKeyWord": "我的",
      "coverUrl": "img@src",
      "intro": "p@text",
      "kind": "i.lianzai@text",
      "lastChapter": "",
      "name": "h2>a@text",
      "wordCount": ".other@text"
    },
    "ruleToc": {
      "chapterList": "ul.2@li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "导入txt小说",
    "bookSourceGroup": "免费",
    "bookSourceName": "八零电子（导）",
    "bookSourceType": 3,
    "bookSourceUrl": "https://m.txt80.cc/",
    "bookUrlPattern": "https://m.txt80.cc/.*html",
    "customButton": false,
    "customOrder": 625,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"首页\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"书库\",\"url\":\"/all/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"排行\",\"url\":\"/hot/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"推荐\",\"url\":\"/recommendall/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新\",\"url\":\"/new/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市小说\",\"url\":\"/dushi/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女生言情\",\"url\":\"/yanqing/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻奇幻\",\"url\":\"/xuanhuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/wuxia/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/wangyou/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军事历史\",\"url\":\"/junshi/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻灵异\",\"url\":\"/kehuan/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美同人\",\"url\":\"/danmei/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"文学名著\",\"url\":\"/wenxue/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"/qita/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1759588685577,
    "respondTime": 2426,
    "ruleBookInfo": {
      "author": ".mt10.1@a@text",
      "coverUrl": "img@src",
      "downloadUrls": "text.下载地址@href<js>\njava.ajax(\"https://m.txt80.cc\"+result[0])\n</js>text.下载地址@href",
      "init": "class.module mt10",
      "intro": ".con@text##简介：",
      "kind": ".gray.1:3@text\n##分类：|进度：",
      "lastChapter": ".gray.4@text##更新：",
      "name": "h1@text",
      "wordCount": ".gray.2@text##大小："
    },
    "ruleContent": {},
    "ruleExplore": {},
    "ruleSearch": {
      "author": "p.1@text",
      "bookList": ".imgtextlist@li",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@src",
      "intro": "class.intro@text##简介：",
      "kind": "class.red@text||p.2@text\n##更新：|\\[|\\]",
      "name": "p.0@text\n##《|》|\\[.*\\]",
      "wordCount": "p.3@text##大小："
    },
    "ruleToc": {},
    "searchUrl": "/e/search/index.php,{\n  \"body\": \"show=title,softsay,softwriter&keyboard={{key}}&tbname=download&tempid=1&Submit22=搜索\",\n  \"method\": \"post\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "快看漫画①",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.kuaikanmanhua.comHaxc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 626,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✿　　　　　　　榜    单　　　　　　　✿\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"国漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=9\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=10\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=11\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=6\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"少年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=5\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青女榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=7\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青年榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=8\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新作榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=2\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=12\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"口碑榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=3\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"畅销榜\",\"url\":\"http://m.kuaikanmanhua.com/mini/v1/comic/mkuaikan/rank_list?since={{24*(page-1)}}&limit=24&need_ranks=true&rank_id=4\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　状    态　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"推荐\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最火热\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=2&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新上架\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=0&sort=3&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"连载中\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=1&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"已完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=2&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►免费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=1&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►付费\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=2&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"►抢先看\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=0&update_status=0&pay_status=3&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"🔹　　 　　　　分    类　 　　　　　🔹 \",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"恋爱\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=20&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"强剧情\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=82&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古风\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=46&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=47&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=22&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"唯美\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=58&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=67&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=57&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"韩漫\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=60&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"大女主\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=77&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完结\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=40&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=80&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"萌系\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=62&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=32&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=63&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞笑\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=71&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=48&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"正能量\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=54&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总裁\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=52&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"投稿\",\"url\":\"http://m.kuaikanmanhua.com/search/mini/topic/multi_filter?page={{page}}&size=24&tag_id=76&update_status=0&pay_status=0&sort=1&fav_filter=0&gender=0\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 SearchCraft/3.6.5 (Baidu; P1 9.0)\"\n}",
    "lastUpdateTime": 1706270468901,
    "loginUrl": "http://m.kuaikanmanhua.com/mob/booklist",
    "respondTime": 2608,
    "ruleBookInfo": {
      "author": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].topicInfo.user.nickname",
      "coverUrl": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.vertical_image_url",
      "intro": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.description",
      "kind": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.tags",
      "lastChapter": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.update_status.replace(/^.*?已更/,\"\")",
      "name": "@js:\neval(result.match(/__NUXT__[^<]*/)[0]);\n__NUXT__.data[0].topicInfo.title"
    },
    "ruleContent": {
      "content": "class.ComicPics@img@html##data-src##src",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author_name",
      "bookList": "$.data.topics||$.data.cards||$.hits.topicMessageList||$.hits",
      "bookUrl": "$.id||$.topic_id@js:\"http://m.kuaikanmanhua.com/mobile/\"+result+\"/list/\"",
      "coverUrl": "$.vertical_image_url||$.image_url||$.cover_image_info.images[*].url",
      "intro": "description",
      "kind": "$.category||$.recommend_tag[1].title",
      "lastChapter": "$.latest_comic_title",
      "name": "$.title.text||$.title"
    },
    "ruleToc": {
      "chapterList": "<js>\na=eval(result.match(/__NUXT__[^<]*/)[0]);\nresult=JSON.stringify(__NUXT__);\n</js>\n$.data[*].comicList[*]",
      "chapterName": "$.title",
      "chapterUrl": "$.id\n@js:\"http://m.kuaikanmanhua.com/mobile/comics/\"+result",
      "isVip": "$.is_free\n@js:result=='true'?false:true",
      "updateTime": "@js:java.timeFormat({{$.updated_at}})"
    },
    "searchUrl": "http://m.kuaikanmanhua.com/search/mini/topic/title_and_author?page={{page}}&size=24&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": " 海棠书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.haitangshuwu.info/",
    "customButton": false,
    "customOrder": 627,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::list1_{{page}}.html\n武侠仙侠::list2_{{page}}.html\n都市言情::list3_{{page}}.html\n历史穿越::list4_{{page}}.html\n网游竞技::list5_{{page}}.html\n科幻灵异::list6_{{page}}.html\n恐怖惊悚::list7_{{page}}.html\n其他类型::list8_{{page}}.html",
    "lastUpdateTime": 1680693306274,
    "respondTime": 2705,
    "ruleBookInfo": {
      "coverUrl": "img src",
      "name": ".title@h1@text",
      "tocUrl": "text.点击阅读@href"
    },
    "ruleContent": {
      "content": "#inner@html"
    },
    "ruleExplore": {
      "author": "p.1@text##分类：.*",
      "bookList": ".bd.0@li",
      "bookUrl": ".name@a@href",
      "intro": ".fr.0@text",
      "kind": "span.1@textNodes",
      "name": ".name@text",
      "wordCount": "span.-2@textNodes"
    },
    "ruleSearch": {
      "author": ".odd.1@text",
      "bookList": "tr!0",
      "bookUrl": ".odd.0@a@href",
      "lastChapter": ".even.0@text",
      "name": ".odd.0@a@text",
      "wordCount": ".even.1@text"
    },
    "ruleToc": {
      "chapterList": "ol li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "modules/article/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "小说阅读网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.readnovel.com",
    "bookUrlPattern": "",
    "concurrentRate": "500",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 628,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "风云榜::https://www.readnovel.com/rank/hxyuepiao?pageNum={{page}}\n阅文风云榜::https://www.readnovel.com/rank/ywyuepiao?pageNum={{page}}\n周推荐榜::https://www.readnovel.com/rank/recom?pageNum={{page}}\n玄幻::https://www.readnovel.com/category/20001_f1_f1_f1_f1_f1_0_{{page}}\n奇幻::https://www.readnovel.com/category/20005_f1_f1_f1_f1_f1_0_{{page}}\n武侠::https://www.readnovel.com/category/20010_f1_f1_f1_f1_f1_0_{{page}}\n仙侠::https://www.readnovel.com/category/20014_f1_f1_f1_f1_f1_0_{{page}}\n都市::https://www.readnovel.com/category/20019_f1_f1_f1_f1_f1_0_{{page}}\n现实::https://www.readnovel.com/category/20065_f1_f1_f1_f1_f1_0_{{page}}\n军事::https://www.readnovel.com/category/20032_f1_f1_f1_f1_f1_0_{{page}}\n历史::https://www.readnovel.com/category/20028_f1_f1_f1_f1_f1_0_{{page}}\n游戏::https://www.readnovel.com/category/20050_f1_f1_f1_f1_f1_0_{{page}}\n体育::https://www.readnovel.com/category/20054_f1_f1_f1_f1_f1_0_{{page}}\n科幻::https://www.readnovel.com/category/20042_f1_f1_f1_f1_f1_0_{{page}}\n悬疑::https://www.readnovel.com/category/20037_f1_f1_f1_f1_f1_0_{{page}}\n轻小说::https://www.readnovel.com/category/20059_f1_f1_f1_f1_f1_0_{{page}}\n短篇::https://www.readnovel.com/category/20076_f1_f1_f1_f1_f1_0_{{page}}\n热销榜::https://www.readnovel.com/rank/hotsales?pageNum={{page}}\n完本榜::https://www.readnovel.com/rank/finish?pageNum={{page}}\n点击榜::https://www.readnovel.com/rank/click?pageNum={{page}}\n收藏榜::https://www.readnovel.com/rank/collect?pageNum={{page}}",
    "header": "",
    "lastUpdateTime": 1737975752971,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 4226,
    "ruleBookInfo": {
      "author": "",
      "canReName": "",
      "coverUrl": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ".book-title@text",
      "tocUrl": "@js:baseUrl+'\\#Catalog'",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".ywskythunderfont@html",
      "imageStyle": "",
      "nextContentUrl": "text.下一页@href||text.下一章@href",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "h4@text||.book-mid-info@tag.p.0@class.name default@text",
      "bookList": ".right-book-list@tag.li||.book-img-text@tag.li",
      "bookUrl": ".book-img@tag.a.0@href||.red-btn@href",
      "coverUrl": ".book-img@tag.img.0@src||.book-img-box@tag.img@src",
      "intro": ".intro@text||.intro@text",
      "kind": ".org@text||.author@tag.a.1@text",
      "lastChapter": ".update@tag.a.0@text##最新更新 (.*)##$1",
      "name": "h3@text||h4@text"
    },
    "ruleSearch": {
      "author": ".book-mid-info@tag.p.0@class.name default@text",
      "bookList": ".book-img-text@tag.li",
      "bookUrl": ".red-btn@href",
      "coverUrl": ".book-img-box@tag.img@src",
      "intro": ".intro@text",
      "kind": ".author@tag.a.1@text",
      "lastChapter": ".update@tag.a.0@text##最新更新 (.*)##$1",
      "name": "h4@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".volume-wrap@class.volume@tag.li\n||class.volume-wrap@class.volume!0@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://www.readnovel.com/so/{{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xbiquwx.la",
    "customButton": false,
    "customOrder": 629,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1756113098443,
    "respondTime": 1433,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "#intro@html##本站提示.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content##小说|\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr)\n.replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{\nn=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t\n}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##https://www.xbiquwx.la/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "a.1@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "a.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": "#list dd a",
      "chapterName": "text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "                    \"error:Connection reset\n                                        \"error:Connection reset\n                                        \"error:Connection reset\n                                        \"error:Connection reset\n                    \"error:Connection reset\n\"\"\"\"\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "♜飞速小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.feisuwx.org/#pb1101",
    "bookUrlPattern": "http://www.feisuwx.org/book/\\d+/\\d+/index.html",
    "customButton": false,
    "customOrder": 630,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1721732157559,
    "loginUrl": "",
    "respondTime": 29,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.list@tag.dd.0@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |卷1",
      "name": "id.info@tag.h1@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##无弹窗小说网.*ＣＯＭ|读.*请记好本站.*org"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.novelslist3@tag.li",
      "bookUrl": "class.s2@tag.a@href@js:\nvar id = result.match(/(\\d+).html\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.feisuwx.org/book/'+iid+'/'+id+'/index.html';",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+).html\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.feisuwx.org/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s1@text&&\nclass.s7@text",
      "lastChapter": "class.s3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |卷1",
      "name": "class.s2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text##【求收藏！】|（.*）",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.feisuwx.org/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "若初文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruochu.com一程",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 631,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "短篇::http://search.ruochu.com/web/all?sort=110&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n婚恋::http://search.ruochu.com/web/all?sort=35&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n都市::http://search.ruochu.com/web/all?sort=4&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n职场::http://search.ruochu.com/web/all?sort=11&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n豪门::http://search.ruochu.com/web/all?sort=12&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n总裁::http://search.ruochu.com/web/all?sort=13&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n架空::http://search.ruochu.com/web/all?sort=15&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n穿越::http://search.ruochu.com/web/all?sort=17&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宫斗::http://search.ruochu.com/web/all?sort=19&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n宅斗::http://search.ruochu.com/web/all?sort=20&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n青春::http://search.ruochu.com/web/all?sort=21&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n仙侠::http://search.ruochu.com/web/all?sort=7&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n修真::http://search.ruochu.com/web/all?sort=22&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n玄幻::http://search.ruochu.com/web/all?sort=6&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n武侠::http://search.ruochu.com/web/all?sort=8&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n历史::http://search.ruochu.com/web/all?sort=3&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\n纯爱::http://search.ruochu.com/web/all?sort=23&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0",
    "lastUpdateTime": 1716231851451,
    "loginUrl": "",
    "respondTime": 829,
    "ruleBookInfo": {
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": "class.page-content@html",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "$.data.content",
      "bookUrl": "$.id@js:\"https://www.ruochu.com/book/\"+result",
      "coverUrl": "$.iconUrlSmall@js:\"https://b.heiyanimg.com\"+result",
      "intro": "$.introduce",
      "kind": "$.sortname",
      "lastChapter": "$.lastchaptername",
      "name": "$.name"
    },
    "ruleToc": {
      "chapterList": "class.float-list fill-block@tag.li",
      "chapterName": "html@js:if(result.match(/isvip/)){\nresult=\"🔒\"+result.match(/>([^<]+)<\\/a>/)[1];\n}else{result=result.match(/>([^<]+)<\\/a>/)[1];}",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://search.ruochu.com/web/search?queryString={{key}}&highlight=false&page=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "新御宅屋🎗",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yuzhaiwuvip.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 632,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "                                全      部                                 ::\n 更新时间  ::/shuku/0/0/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/0/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/0/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/0/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/0/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/0/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/0/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/0/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/0/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/0/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/0/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/0/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/0/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/0/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/0/0/0/0/0/goodnum/{{page}}.html\n                                 玄幻奇幻                                 ::\n 更新时间  ::/shuku/0/1/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/1/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/1/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/1/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/1/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/1/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/1/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/1/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/1/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/1/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/1/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/1/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/1/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/1/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/1/0/0/0/0/goodnum/{{page}}.html\n                                武侠仙侠                                 ::\n 更新时间  ::/shuku/0/2/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/2/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/2/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/2/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/2/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/2/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/2/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/2/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/2/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/2/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/2/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/2/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/2/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/2/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/2/0/0/0/0/goodnum/{{page}}.html                           \n                                都市生活                                 ::\n 更新时间  ::/shuku/0/3/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/3/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/3/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/3/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/3/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/3/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/3/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/3/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/3/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/3/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/3/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/3/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/3/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/3/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/3/0/0/0/0/goodnum/{{page}}.html                               \n                                历史穿越                                 ::\n 更新时间  ::/shuku/0/4/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/4/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/4/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/4/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/4/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/4/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/4/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/4/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/4/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/4/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/4/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/4/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/4/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/4/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/4/0/0/0/0/goodnum/{{page}}.html                                \n                                科幻未来                                 ::\n 更新时间  ::/shuku/0/5/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/5/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/5/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/5/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/5/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/5/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/5/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/5/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/5/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/5/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/5/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/5/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/5/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/5/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/5/0/0/0/0/goodnum/{{page}}.html                                \n                                游戏竞技                                 ::\n 更新时间  ::/shuku/0/6/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/6/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/6/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/6/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/6/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/6/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/6/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/6/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/6/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/6/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/6/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/6/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/6/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/6/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/6/0/0/0/0/goodnum/{{page}}.html                                \n                                其他类型                                 ::\n 更新时间  ::/shuku/0/7/0/0/0/0/lastupdate/{{page}}.html\n 入库时间  ::/shuku/0/7/0/0/0/0/postdate/{{page}}.html\n 编辑推荐  ::/shuku/0/7/0/0/0/0/toptime/{{page}}.html\n周点击::/shuku/0/7/0/0/0/0/weekvisit/{{page}}.html\n月点击::/shuku/0/7/0/0/0/0/monthvisit/{{page}}.html\n总点击::/shuku/0/7/0/0/0/0/allvisit/{{page}}.html\n周推荐::/shuku/0/7/0/0/0/0/weekvote/{{page}}.html\n月推荐::/shuku/0/7/0/0/0/0/monthvote/{{page}}.html\n总推荐::/shuku/0/7/0/0/0/0/allvote/{{page}}.html\n周鲜花::/shuku/0/7/0/0/0/0/weekflower/{{page}}.html\n月鲜花::/shuku/0/7/0/0/0/0/monthflower/{{page}}.html\n总鲜花::/shuku/0/7/0/0/0/0/allflower/{{page}}.html\n总月票::/shuku/0/7/0/0/0/0/allvipvote/{{page}}.html\n  字数  ::/shuku/0/7/0/0/0/0/words/{{page}}.html\n收藏数::/shuku/0/7/0/0/0/0/goodnum/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1734258191382,
    "loginUrl": "",
    "respondTime": 4699,
    "ruleBookInfo": {
      "author": ".xq_bookne@div.-5@text",
      "coverUrl": ".lazyload.img@src",
      "init": "",
      "intro": ".bookintro@text",
      "kind": ".xq_bookne@div.-4@text##类别：",
      "lastChapter": "",
      "name": ".xq_bookne@class.one@em@text",
      "tocUrl": ".btn_book@a.-1@href",
      "wordCount": ".xq_bookne@div.-2@text##字数："
    },
    "ruleContent": {
      "content": "id.YiJianZhan@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.book_other@ownText",
      "bookList": "id.sitebox@dl",
      "bookUrl": "h3@tag.a.0@href",
      "checkKeyWord": "",
      "coverUrl": "tag.img@src",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span@text",
      "name": "dd@h3@a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/modules/article/search.php,{\n\"charset\": \"utf-8\",\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}&searchtype=all\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biquzw.info",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 633,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻小说\",\"url\":\"/list/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"修真小说\",\"url\":\"/list/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"都市小说\",\"url\":\"/list/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"穿越小说\",\"url\":\"/list/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"网游小说\",\"url\":\"/list/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/list/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}}]",
    "header": "",
    "lastUpdateTime": 1731748536539,
    "loginUrl": "",
    "respondTime": 1634,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作 者:",
      "coverUrl": "id.fmimg@tag.img@src",
      "init": "",
      "intro": "id.intro@tag.p.0@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@a@href<js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'https://www.xbiquwx.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.odd.0@tag.a@href",
      "coverUrl": "class.odd.0@tag.a@href<js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'https://www.xbiquwx.la/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "class.even.0@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.odd.0@tag.a@text",
      "wordCount": "class.even.1@text##k##万字"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.biquzw.info/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "棉花糖说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mhtxs.la",
    "bookUrlPattern": "https://www.mhtxs.la/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 636,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/mulu/1-{{page}}.html\n武侠修真::/mulu/2-{{page}}.html\n都市言情::/mulu/3-{{page}}.html\n历史军事::/mulu/4-{{page}}.html\n侦探推理::/mulu/5-{{page}}.html\n网游动漫::/mulu/6-{{page}}.html\n科幻小说::/mulu/7-{{page}}.html\n恐怖灵异::/mulu/8-{{page}}.html\n同人小说::/mulu/9-{{page}}.html\n穿越小说::/mulu/10-{{page}}.html",
    "lastUpdateTime": 1730742869797,
    "loginUrl": "",
    "respondTime": 875,
    "ruleBookInfo": {
      "author": "[name=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "id.intro@textNodes",
      "kind": "[name=\"og:novel:category\"]@content&&[name=\"og:novel:status\"]@content&&[name=\"og:novel:update_time\"]@content",
      "lastChapter": "[name=\"og:novel:latest_chapter_name\"]@content##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "[name=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "class.content@html##最新网址.*la|下载本书最(.|\\n)* ",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "author": "tag.a.2@text",
      "bookList": "class.alistbox",
      "bookUrl": "h2@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.intro@textNodes",
      "lastChapter": "tag.a.3@text",
      "name": "tag.a.1@text##\\《|\\》"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##https://www.mhtxs.la/book/image/$2/$1/$1s.jpg###",
      "kind": "class.odd.1@text",
      "lastChapter": "class.odd.0@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.even.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "tag.dd@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.mhtxs.la/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁,免费",
    "bookSourceName": "笔趣网吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.biquw.info/",
    "bookUrlPattern": "http://www.biquw.info/book/\\d+/",
    "customButton": false,
    "customOrder": 638,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"书库全部\",\"url\":\"/xs/quanbu-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"/xs/1-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"仙侠小说\",\"url\":\"/xs/2-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"都市小说\",\"url\":\"/xs/3-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"军史小说\",\"url\":\"/xs/4-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"网游小说\",\"url\":\"/xs/5-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/xs/6-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"灵异小说\",\"url\":\"/xs/7-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"言情小说\",\"url\":\"/xs/8-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"其他小说\",\"url\":\"/xs/9-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"全本小说\",\"url\":\"/xs/quanbu-default-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}},{\"title\":\"最新小说\",\"url\":\"/xs/0-lastupdate-0-0-0-0-0-0-{{page}}.html\",\"style\":{\"layout_flexGrow\":0.25}}]",
    "lastUpdateTime": 1734862232246,
    "loginUrl": "",
    "respondTime": 721,
    "ruleBookInfo": {
      "author": "class.options@tag.span.0@text",
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": ".bookinfo_intro@text",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content",
      "lastChapter": "class.update@a@text",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {
      "author": "tag.dd.1@span@text",
      "bookList": "class.sitebox@dl",
      "bookUrl": "h3@a@href",
      "coverUrl": "img@src",
      "intro": "tag.dd.2@text",
      "kind": "class.uptime@text",
      "lastChapter": "tag.dd.3@a@text",
      "name": "h3@a@text"
    },
    "ruleSearch": {
      "author": "class.s3@text",
      "bookList": "class.toplist@li",
      "bookUrl": "class.s1@a@href",
      "coverUrl": "class.s1@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'http://www.biquw.info/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s5@text&&\nclass.s6@text",
      "lastChapter": "class.s2@a@text",
      "name": "class.s1@a@text",
      "wordCount": "class.s4@text"
    },
    "ruleToc": {
      "chapterList": "class.book_list@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/modules/article/search.php?action=login&searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "漫画小屋（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.dm.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 639,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732184308404,
    "loginUrl": "",
    "respondTime": 335,
    "ruleBookInfo": {
      "author": "p.detail-main-info-author@tag.a@text",
      "coverUrl": "img.detail-main-bg@src",
      "intro": "p.detail-desc@text",
      "kind": "p.detail-main-info-class@tag.a@text",
      "lastChapter": "ul.detail-list-select@tag,li.0@text",
      "name": "p.detail-main-info-title@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "@js:header={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\neval(result.match(/eval(.*?)\\{\\}\\)\\)/)[0])\nvar image_list = []\nnewImgs.map(item=>{\n    image_list.push('<img src=\"'+item+','+JSON.stringify(headers)+'\">')\n})\nimage_list.join(\"\\n\")",
      "imageStyle": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p.0@text",
      "bookList": "ul.book-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "p.book-list-info-desc@text",
      "kind": "",
      "lastChapter": "",
      "name": "p.book-list-info-title@text"
    },
    "ruleToc": {
      "chapterList": "-ul.detail-list-select@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://m.dm5.com/search?title={{key}}&language=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "酸奶漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.kkk.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 641,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1743751599534,
    "loginUrl": "",
    "respondTime": 412,
    "ruleBookInfo": {
      "author": "p.detail-main-info-author@tag.a@text",
      "coverUrl": "img.detail-main-bg@src",
      "intro": "p.detail-desc@text",
      "kind": "p.detail-main-info-class@tag.a@text",
      "lastChapter": "ul.detail-list-select@tag,li.0@text",
      "name": "p.detail-main-info-title@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "@js:header={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\neval(result.match(/eval(.*?)\\{\\}\\)\\)/)[0])\nvar image_list = []\nnewImgs.map(item=>{\n    image_list.push('<img src=\"'+item+','+JSON.stringify(headers)+'\">')\n})\nimage_list.join(\"\\n\")",
      "imageStyle": "",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p.0@text",
      "bookList": "ul.book-list@tag.li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "p.book-list-info-desc@text",
      "kind": "",
      "lastChapter": "",
      "name": "p.book-list-info-title@text"
    },
    "ruleToc": {
      "chapterList": "ul.detail-list-select@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "@js:var vip_bool = result.select('img').hasClass('detail-list-lock');\nif(!vip_bool){\nvip_bool = result.select('img').hasClass('detail-list-2-info-right');\n}\nvip_bool;"
    },
    "searchUrl": "https://m.1kkk.com/search?title={{key}}&language=1",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空",
    "bookSourceGroup": "免费",
    "bookSourceName": "贼子网吧（导入）",
    "bookSourceType": 3,
    "bookSourceUrl": "https://m.zei8.vip",
    "customButton": false,
    "customOrder": 642,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "东方玄幻::/xuanhuan/<,index_{{page}}.html>\n传统武侠::/chuantongwuxia/<,index_{{page}}.html>\n恐怖惊悚::/kongbujing/<,index_{{page}}.html>\n现代都市::/xiandaidushi/<,index_{{page}}.html>\n人物传记::/renwuchuanji/<,index_{{page}}.html>\n网游动漫::/wangyoudongman/<,index_{{page}}.html>\n军事历史::/junshilishi/<,index_{{page}}.html>\n热点资源::/redianziyuan/<,index_{{page}}.html>\n西方奇幻::/xifangqihuan/<,index_{{page}}.html>\n仙侠修真::/xianxiaxiuzhen/<,index_{{page}}.html>\n侦探推理::/zhentantuili/<,index_{{page}}.html>\n经典科幻::/jingdiankehuan/<,index_{{page}}.html>\n名著杂志::/mingzhuzazhi/<,index_{{page}}.html>\n历史穿越::/lishichuanyue/<,index_{{page}}.html>\n传统言情::/chuantongyanqing/<,index_{{page}}.html>\n都市社会::/dushishehui/<,index_{{page}}.html>\n幻想现言::/huanxiangxianyan/<,index_{{page}}.html>\n耽美百合::/danmeibaihe/<,index_{{page}}.html>",
    "lastUpdateTime": 1729724995028,
    "respondTime": 223110,
    "ruleBookInfo": {
      "author": ".xza@p.0@text",
      "coverUrl": ".js@img@src",
      "downloadUrls": ".down@a@href<js>java.ajax(result)\n</js>.downfile@a@href",
      "intro": ".js@textNodes",
      "kind": ".xza@li@text",
      "name": ".wp3@a.-1@text"
    },
    "ruleContent": {},
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "ul@li",
      "bookUrl": "a@href",
      "coverUrl": "",
      "kind": "span@text",
      "name": "a@text"
    },
    "ruleToc": {},
    "searchUrl": "/e/search/index.php,{\n  \"body\": \"keyboard={{key}}&show=title,softwriter&tbname=download&tempid=1\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 蚂蚁阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.mayitxt.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 643,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总榜\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"月榜\",\"url\":\"/top/monthvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"周榜\",\"url\":\"/top/weekvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总推\",\"url\":\"/top/allvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"月推\",\"url\":\"/top/monthvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"周推\",\"url\":\"/top/weekvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"最新\",\"url\":\"/top/postdate/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"最近\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"收藏\",\"url\":\"/top/goodnum/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"字数\",\"url\":\"/top/size/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/sort/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"仙侠\",\"url\":\"/sort/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/sort/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/sort/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"军事\",\"url\":\"/sort/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"灵异\",\"url\":\"/sort/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/sort/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"/sort/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"现言\",\"url\":\"/sort/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"古言\",\"url\":\"/sort/10/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"/sort/11/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"青春\",\"url\":\"/sort/12/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"豪门\",\"url\":\"/sort/14/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/sort/15/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/sort/13/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "header": "{\n    \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1752213208987,
    "loginUrl": "",
    "respondTime": 6114,
    "ruleBookInfo": {
      "author": ".author[0]@text",
      "coverUrl": "img.0@src",
      "init": "",
      "intro": ".breviary@html",
      "kind": ".data_list@i.0@text&&.list@i@text##\\s.*",
      "lastChapter": ".list@a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "id.main_title@h1@text##全文.*",
      "tocUrl": ".button_list@a.2@href",
      "wordCount": ".data_list@em.0@text##字"
    },
    "ruleContent": {
      "content": "id.ChapterContents@html",
      "imageStyle": "",
      "replaceRegex": "##一秒记住.*|免费小说.*|.本章完.|正在手打中.*|.*蚂蚁阅读.*|.*精华书阁.*|为您提供.*好书签.|.*免费阅读.|\\s*最新网址：.*\\s*"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "span@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "a.1@href",
      "checkKeyWord": "",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "a.0@text&&td.6:4@text##\\[|\\]",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text##全文.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".float-list@li",
      "chapterName": "a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "a@href",
      "isVip": "",
      "updateTime": "createdate"
    },
    "searchUrl": "/modules/article/search.php?q={{key}}&searchtype=all&s=17333194950446968473",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "瑞雪漫画（魔法）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.yydsmh.com/",
    "customButton": false,
    "customOrder": 644,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"𓆡𓆝𓆟地ོ区ོ​​𓆟𓆜𓆞\",\"url\":\"\",\"style\":\n{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n\n{\"title\":\"🥣日漫\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=日漫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"🥣港台\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=港台&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"🥣美漫\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=美漫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"🥣国漫\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=国漫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"🥣韩漫\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=韩漫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n\n{\"title\":\"𓆡𓆝𓆟进ོ度ོ​​𓆟𓆜𓆞\",\"url\":\"\",\"style\":\n{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n\n{\"title\":\"🥣连载中\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=连载中&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n{\"title\":\"🥣已完结\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=已完结&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n\n{\"title\":\"𓆡𓆝𓆟喜ོ好ོ​​𓆟𓆜𓆞\",\"url\":\"\",\"style\":\n{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n\n{\"title\":\"💫全部🥣\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=全部&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":1}},\n\n{\"title\":\"🥣大女主\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=大女主&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":1}},\n\n{\"title\":\"🥣性转换\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=性转换&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n{\"title\":\"🥣异世界\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=异世界&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n{\"title\":\"🥣轻小说\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=轻小说&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n{\"title\":\"🥣欢乐向\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=欢乐向&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.4}},\n\n{\"title\":\"💫热血₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=热血&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫长条₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=长条&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫百合₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=百合&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫耽美₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=耽美&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫纯爱₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=纯爱&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫后宫₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=后宫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫韩漫₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=韩漫&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫奇幻₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=奇幻&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫生活₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=生活&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫悬疑₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=悬疑&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫格斗₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=搞笑&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫搞笑₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=搞笑&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫伪娘₯\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=伪娘&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫竞技⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=竞技&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫职场⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=职场&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫萌系⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=萌系&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫冒险⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=冒险&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫治愈⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=治愈&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫都市⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=都市&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫霸总⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=霸总&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫神鬼⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=神鬼&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫侦探⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=侦探&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫爱情⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=爱情&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫古风⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=古风&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫科幻⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=科幻&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫穿越⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=穿越&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫校园⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=校园&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫美食⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=美食&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫剧情⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=剧情&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫节操⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=节操&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫励志⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=励志&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫历史⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=历史&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫战争⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=战争&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"💫恐怖⚡︎\",\"url\":'https://www.yydsmh.com/api/comic/index/lists,{\"body\":\"area=9&tags=恐怖&full=3&page={{page}}\",\"method\":\"POST\"}',\n\"style\":{\"layout_flexGrow\":1,\n\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1734944219129,
    "respondTime": 4644,
    "ruleBookInfo": {
      "author": "#detail > div > div.book-name > h1 > span@text",
      "coverUrl": "div.book-cover.comic-item > div > img@src",
      "intro": "#js_desc_content@text",
      "kind": "div.book-name > div > ul.types > li:nth-child(3) > a@text"
    },
    "ruleContent": {
      "content": "#imgsec@html",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "$.info_url",
      "coverUrl": "$.bcover",
      "intro": "$.content",
      "kind": "$.area",
      "lastChapter": "$.lastchapter",
      "name": "$.bname"
    },
    "ruleSearch": {
      "bookList": "#js_comicSortList > li",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": "a > div > img@src",
      "lastChapter": "a > div > span@text",
      "name": "a > p@text"
    },
    "ruleToc": {
      "chapterList": "#js_chapters > li",
      "chapterName": "a@text\n@js:\na=\"🥣\"+result",
      "chapterUrl": "a@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\nhttps://www.yydsmh.com/search?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "全免漫画（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://api-cdn.kaimanhua.com",
    "customButton": false,
    "customOrder": 645,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nresult=\"\";\n   f=[\"热血\",\"机战\",\"运动\",\"推理\",\"冒险\",\"耿美\",\"百合\",\"搞笑\",\"战争\",\"神魔\",\"忍者\",\"竞技\",\"悬疑\",\"社会\",\"恋爱\",\"宠物\",\"吸血\",\"萝莉\",\"后宫\",\"御姐\",\"霸总\",\"玄幻\",\"古风\",\"历史\",\"漫改\",\"游戏\",\"穿越\",\"恐怖\",\"真人\",\"科幻\",\"防疫\",\"都市\",\"武侠\",\"修真\",\"生活\",\"动作\"];    \np=[\"rexue\",\"jizhan\",\"yundong\",\"tuili\",\"maoxian\",\"liaomei\",\"baihe\",\"gaoxiao\",\"zhanzhen\",\"shenmo\",\"renzhe\",\"jingji\",\"xuanyi\",\"shehui\",\"lianai\",\"chongwu\",\"xixue\",\"luoli\",\"hougong\",\"yujie\",\"bazong\",\"xuanhuan\",\"gufeng\",\"lishi\",\"mangai\",\"youxi\",\"chuanyue\",\"kongbu\",\"zhenren\",\"kehuan\",\"fangyi\",\"dushi\",\"wuxia\",\"xiuzhen\",\"shenghuo\",\"dongzuo\"];\na=\"::https://api-cdn.kaimanhua.com/comic-api/v1/comic/getsortlist?status_id=0&comic_sort=\";\nb=\"&human_type=0&orderby=date&pagesize=30&page={{page}}&young_mode=0&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8\";\n\nfor(i in f){\n\tresult=result+f[i]+a+p[i]+b+\"\\n\";\n\t}\n</js>",
    "lastUpdateTime": 1759429756100,
    "respondTime": 1235,
    "ruleBookInfo": {
      "author": "$.author_name",
      "coverUrl": "$.cover_img_34",
      "init": "<js>\nresult=String(java.getString(\"$.data\")).replace(/arsadata/,\"\");\njava.aesBase64DecodeToString(result,\"4548ded8c9e02690\",\"AES/CBC/PKCS5Padding\",\"1992360ee9bc4f8f\");\n</js>",
      "intro": "<br>\n🏅 评分：{{Math.round(java.getString('$.avgscore'))/10}}分\n🕰 更新：{{String(java.timeFormat(java.getString('$.update_time'))).replace(/\\//g,\"-\").replace(/\\s/g,\"🔸\")}}\n🎗 标签：{{result=String(java.getString('$.comic_taglist')).replace(/\\n/g,\",\")}}\n📂 简介：{{$.comic_desc}}",
      "kind": "{{result=String(java.getString('$.sort_typelist')).replace(/\\{|\\}|\\w*=/g,\"\").replace(/\\n/g,\",\")}}",
      "lastChapter": "$.lastchapter_title",
      "name": "$.comic_name@put:{cid:$.comic_id}"
    },
    "ruleContent": {
      "content": "<js>\nresult=String(java.getString(\"$.data\")).replace(/arsadata/,\"\");\nu=java.aesBase64DecodeToString(result,\"4548ded8c9e02690\",\"AES/CBC/PKCS5Padding\",\"1992360ee9bc4f8f\");\nimg=u.match(/\\[(.*)\\]/)[1].split(\",\").map(x=>'\\n<img src='+x+'>').join(\"\\n\")\n</js>"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.comic_author",
      "bookList": "$.data.data",
      "bookUrl": "@js:\nt=\"/comic-api/v2/comic/getcomicdatacomic_id={{$.comic_id}}&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8erciyuan2020\";\nsign=java.md5Encode(t);\nb={\n\"method\": \"GET\",\n\"headers\": {\n\"User-Agent\": \"okhttp/4.9.1\",\n\"m-request-id\": sign\n}\n};\n\"https://api-cdn.kaimanhua.com/comic-api/v2/comic/getcomicdata?comic_id={{$.comic_id}}&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8,\"+JSON.stringify(b);",
      "coverUrl": "$.cover_img",
      "intro": "$.cartoon_desc",
      "kind": "{{result=String(java.getString('$.comic_type')).replace(/,|\\w*/g,\"\").replace(/\\|/g,\",\")}}\n{{String(java.timeFormat(java.getString('$.update_time'))).replace(/\\//g,\"-\").replace(/\\s.*/g,\"\")}}",
      "lastChapter": "$.last_chapter_name",
      "name": "$.comic_name"
    },
    "ruleToc": {
      "chapterList": "<js>\nresult=String(java.getString(\"$.data\")).replace(/arsadata/,\"\");\njava.aesBase64DecodeToString(result,\"4548ded8c9e02690\",\"AES/CBC/PKCS5Padding\",\"1992360ee9bc4f8f\");\n</js>\n$.chapters[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "@js:\ncid='@get:{cid}'\nchapter_id='{{$.chapter_id}}'\nt=\"/comic-api/v2/comic/getchapterdatacomic_id=\"+cid+\"&chapter_id=\"+chapter_id+\"&quality=middle&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8erciyuan2020\";\nsign=java.md5Encode(t);\nb={\n\"method\": \"GET\",\n\"headers\": {\n\"User-Agent\": \"okhttp/4.9.1\",\n\"access-token\":\"v1_090fNTIt4Omg86B7LUPcqWRTkvW8JjjLYXTxnm01BiXN8SgniETjucYezOrjZoOopFGr02Fj12RREysE4eHukTCc/LuyeIHzFGMayAgLGaSF8+jMMwrnDdTuYdFk34z7DZf+Zy+VHtjFS0Uy6n6Vyr/5GuJy6FDcbCoVBCjdbFneHjV38UwHjL6AwauUMFfa0f3uSEqGWZG6xn9+OpAn6GGRWHaypicXswr450DO29FcuqP7pHCSldVJtIzOv/Uc\",\n\"m-request-id\": sign\n}\n};\n\"https://api-cdn.kaimanhua.com/comic-api/v2/comic/getchapterdata?comic_id=@get:{cid}&chapter_id={{$.chapter_id}}&quality=middle&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8,\"+JSON.stringify(b);"
    },
    "searchUrl": "https://api-cdn.kaimanhua.com/comic-api/v1/comic/getsortlist?search_key={{key}}&orderby=shoucang&page={{page}}&pagesize=20&young_mode=0&client-type=android&productname=qmmh&client-channel=xiaomi&platformname=android&client-version=1.4.8",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "随心看吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.suixkan.com关耳",
    "customButton": false,
    "customOrder": 646,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1732127931680,
    "respondTime": 780,
    "ruleBookInfo": {
      "kind": "",
      "tocUrl": "class.sumchapter@a@href"
    },
    "ruleContent": {
      "content": "class.con@html",
      "nextContentUrl": "",
      "replaceRegex": "##\\s*.*?本章.*?完.*\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".v-author@text",
      "bookList": "class.v-list-item\n@js:\nlist=result.toArray();\nlist1=[];\nfor(i in list){\nif(list[i].text().indexOf(java.get('key'))>-1){\nlist1.push(list[i])\n}\n}\nlist1.map(x=>x)",
      "bookUrl": "##=\"newWebView\\('([^']+)'##$1###",
      "coverUrl": "",
      "intro": ".v-intro@text",
      "kind": "tag.div.-1@text",
      "lastChapter": "<js>\nurl=String(result).match(/=\"newWebView\\('([^']+)'/)[1];url='https://m.suixkan.com'+url\njava.ajax(url)</js>\nclass.chapter-entrance@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog_ls@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.suixkan.com/s/1.html?keyword={{key}}\n@js:java.put('key',key);result",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "天意文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.tywx.com",
    "customButton": false,
    "customOrder": 647,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1742287653335,
    "respondTime": 3657,
    "ruleBookInfo": {
      "author": "id.add_info@p.0@text",
      "intro": "⌚{{@@id.add_info@p.5@text}}\n{{'\\n'+'​'}}\n简介📕：\n{{@@id.add_intro@text}}",
      "lastChapter": "class.chapter.0@text",
      "name": "id.add_info@h1@text"
    },
    "ruleContent": {
      "content": "id.nr1@p@text##你正在阅读 《.*》 章节：.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a@text##(.*)：##$1###",
      "bookList": "div.s_list:nth-of-type(n+3)",
      "bookUrl": "a@href##$##,{'webView': true}",
      "name": "a@text##《(.*)》##$1###"
    },
    "ruleToc": {
      "chapterList": "id.add_chapter_list_link@li@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}"
    },
    "searchUrl": "https://bqg123.net/search?form=biqusoso&keyword={{key}},{'webView':true}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "就爱文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.92xs.info#",
    "customButton": false,
    "customOrder": 648,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总排行榜\",\"url\":\"/allvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总推荐榜\",\"url\":\"/allvote-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月排行榜\",\"url\":\"/monthvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月推荐榜\",\"url\":\"/monthvote-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周排行榜\",\"url\":\"/weekvisit-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周推荐榜\",\"url\":\"/weekvote-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/postdate-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/lastupdate-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏榜\",\"url\":\"/goodnum-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"字数排行\",\"url\":\"/size-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"推理\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"恐怖\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/sort/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/sort/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1734979175643,
    "respondTime": 2360,
    "ruleBookInfo": {
      "author": ".p_author@text",
      "coverUrl": "#bookimg img@src",
      "downloadUrls": "#button_all a.1@href",
      "intro": "#bookintro p.-1@html##【展开】.*",
      "kind": "#count span.0:3@text&&#keywords@text##.*：|小说|\\s.*",
      "lastChapter": "#newlist a.1@text",
      "name": ".d_title h1@text",
      "tocUrl": ".newrap a.0@href",
      "wordCount": "#count span.2@text"
    },
    "ruleContent": {
      "content": "#ccontent@textNodes"
    },
    "ruleExplore": {
      "author": ".rankpage_list7@text",
      "bookList": ".rankpage_list_box",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.*/(\\d+)(\\d+)(\\d+)(\\d+).*##/files/article/image/$1/$1$2$3$4/$1$2$3$4s.jpg",
      "kind": ".rankpage_list2@text&&.rankpage_list4@text&&.rankpage_list8@text##\\[|\\]|小说",
      "lastChapter": "",
      "name": ".rankpage_list3@text",
      "wordCount": ".rankpage_list5@text"
    },
    "ruleSearch": {
      "author": ".odd.1@text",
      "bookList": "#author@tbody@tr!0",
      "bookUrl": "a.0@href##.com/##.la/",
      "checkKeyWord": "",
      "coverUrl": "a.0@href##.*/(\\d+)(\\d+)(\\d+)(\\d+).*##/files/article/image/$1/$1$2$3$4/$1$2$3$4s.jpg",
      "kind": ".even.2@text&&.odd.2@text",
      "lastChapter": ".even.0@text",
      "name": ".odd.0@text",
      "wordCount": ".even.1@text"
    },
    "ruleToc": {
      "chapterList": ".ccss",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/modules/article/search.php,{'method':'post','body':'searchtype=articlename=author&searchkey={{key}}'}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费,有声",
    "bookSourceName": "猫耳听书",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.comguaner",
    "customButton": false,
    "customOrder": 650,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "百合分类::https://www.missevan.com/dramaapi/filter?filters=0_5_0_0_0&page={{page}}&order=1&page_size=20\n现代::https://www.missevan.com/dramaapi/filter?filters=0_5_0_1_0&page={{page}}&order=1&page_size=20\n古风::https://www.missevan.com/dramaapi/filter?filters=0_5_0_2_0&page={{page}}&order=1&page_size=20\n民国::https://www.missevan.com/dramaapi/filter?filters=0_5_0_3_0&page={{page}}&order=1&page_size=20",
    "lastUpdateTime": 1734842669721,
    "respondTime": 3223,
    "ruleBookInfo": {
      "intro": "class.intro-content@html||$.info.sound.intro",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##类型：|标签：无|标签：",
      "tocUrl": "@js:\nif(baseUrl.match(/dramaapi|mdrama/)){\nresult='https://www.missevan.com/dramaapi/getdrama?drama_id='+baseUrl.match(/(\\d+)/)[1]\n}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl"
    },
    "ruleExplore": {
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/mdrama/drama/{{$.id}},{\"webView\":true}",
      "coverUrl": "$.cover",
      "kind": "$.type_name",
      "lastChapter": "$.newest",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "$.username||$.author",
      "bookList": "<js>\nkey=java.get('key');\npage=java.get('page');\n\n//创建两个空数组\njson=[];json2=[];\n\n//判定json里是否有列表\nif(JSON.parse(result).info.Datas){\njson=JSON.parse(result).info.Datas;}\n\n//加载单曲搜索页面并转为json\njson1=JSON.parse(java.ajax('https://www.missevan.com/sound/getsearch?s='+key+'&type=3&page_size=10&p='+page));\n\n//判定json里是否有列表\nif(json1.info.Datas){\njson2=json1.info.Datas\n}\n\n//剧集搜索列表与单曲搜索列表拼接\nlist=json.concat(json2);\n\nresult=JSON.stringify(list)\n</js>\n$.[*]",
      "bookUrl": "<js>\nid=String(result).match(/id=(\\d+)/)[1];\nif(!String(result).match(/catalog_name/)){\nresult='https://www.missevan.com/sound/getsound?soundid='+id\n}else{result='https://www.missevan.com/dramaapi/getdrama?drama_id='+id}\n</js>",
      "coverUrl": "$.front_cover||$.cover",
      "intro": "$.abstract",
      "kind": "{$.type_name},{$.catalog_name}##\\{.*?\\}",
      "lastChapter": "$.newest",
      "name": "$.soundstr||$.name"
    },
    "ruleToc": {
      "chapterList": "<js>'['+result+']'</js>\n$..info.episodes.episode[*]||$..info.episodes.music[*]||$.[*]",
      "chapterName": "$.name||$.info.sound.soundstr",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id||$.info.sound.id}}"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page={{page}}\n@js:java.put('key',key);java.put('page',page);result",
    "weight": 0
  },
  {
    "bookSourceComment": "By关耳+乃星补加发现",
    "bookSourceGroup": "有声",
    "bookSourceName": "猫耳FM",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.com乃星",
    "customButton": false,
    "customOrder": 653,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "纯爱•全部::https://www.missevan.com/dramaapi/filter?filters=0_4_0_0_0&page={{page}}&order=1&page_size=20\n纯爱•现代::https://www.missevan.com/dramaapi/filter?filters=0_4_0_1_0&page={{page}}&order=1&page_size=20\n纯爱•古风::https://www.missevan.com/dramaapi/filter?filters=0_4_0_2_0&page={{page}}&order=1&page_size=20\n纯爱•民国::https://www.missevan.com/dramaapi/filter?filters=0_4_0_3_0&page={{page}}&order=1&page_size=20\n\n言情•全部::https://www.missevan.com/dramaapi/filter?filters=0_6_0_0_0&page={{page}}&order=1&page_size=20\n言情•现代::https://www.missevan.com/dramaapi/filter?filters=0_6_0_1_0&page={{page}}&order=1&page_size=20\n言情•古风::https://www.missevan.com/dramaapi/filter?filters=0_6_0_2_0&page={{page}}&order=1&page_size=20\n言情•民国::https://www.missevan.com/dramaapi/filter?filters=0_6_0_3_0&page={{page}}&order=1&page_size=20",
    "lastUpdateTime": 1723224781837,
    "respondTime": 2920,
    "ruleBookInfo": {
      "init": "",
      "intro": "//*[@class=\"intro-content\"]",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##类型：|标签：无|标签：",
      "name": "",
      "tocUrl": "https://www.missevan.com/dramaapi/getdrama?drama_id={{baseUrl.match(/(\\d+)/)[1]}}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl",
      "imageStyle": "0",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/mdrama/drama/{{$.id}},{\"webView\":true}",
      "coverUrl": "$.cover",
      "intro": "",
      "kind": "$.type_name",
      "lastChapter": "$.newest",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/dramaapi/getdrama?drama_id={{$.id}}",
      "coverUrl": "cover ",
      "intro": "abstract",
      "kind": "{{$.type_name}},{{$.catalog_name}}",
      "lastChapter": "newest ",
      "name": "name",
      "wordCount": "catalog_name "
    },
    "ruleToc": {
      "chapterList": "$.info.episodes.episode",
      "chapterName": "$.name",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id}}",
      "isVip": "$.need_pay"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page=1",
    "weight": 0
  },
  {
    "bookSourceComment": "--未月十八小改\n有缺字，仅做榜单，阅读换源“晋江🔸阅读”",
    "bookSourceGroup": "正版",
    "bookSourceName": "晋江详榜（发现）",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.jjwxc.net未月十八小改",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 654,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"✿                      总   榜                     ✿\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 驻 站 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=19&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字 数 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=8&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 长 生 殿 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=9&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=3&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=5&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=4&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=6&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 总 分 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=7&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"霸王票榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=13&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"勤奋指数 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=15&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"栽培月榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=18&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"千字金榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=21&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"完结高分 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=20&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=8\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=13\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无CP完结\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=46\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=21&str=26\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                     无   c p                     ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=18\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 完 结 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=40\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                     百     合                     ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=17\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重来一次 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10901\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇幻异闻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10902\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10903\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10904\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想未来\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10905\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10906\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天赐良缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10907\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚娱乐\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10908\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10909\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10910\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10911\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10912\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古色古香\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10101\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10102\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10103\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10104\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10105\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10106\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊女强\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10107\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"传奇武侠\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10108\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇虐渣\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10109\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市井人家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10110\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科举朝堂\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10111\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10112\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    都市青春                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10201\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10202\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10203\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚前婚后\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10204\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10205\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"破镜重圆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10206\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"近水楼台\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10207\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时代新风\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10208\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天之骄子\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10209\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐星光\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10210\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢喜冤家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10211\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"因缘邂逅\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10212\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校园青春\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10213\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚流行\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10214\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"甜心蜜意\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10215\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10216\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    幻想言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=3\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10301\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10302\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生赢家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10303\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时代奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10304\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10305\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10306\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10307\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10308\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代架空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10309\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神奇能力\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10310\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市异闻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10311\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10312\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"打脸爽文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10313\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿书攻略\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10314\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"流金年代\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10315\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐时尚\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10316\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代穿越                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10401\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊女强\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10402\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10403\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10404\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10405\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10406\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"前世今生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10407\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10408\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市井人家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10409\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科举朝堂\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10410\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10411\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇虐渣\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10412\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    奇幻言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10501\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10502\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"另类幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10503\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法幻情\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10504\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真升级\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10505\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"灵异神怪\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10506\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10507\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世穿书\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10508\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10509\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10510\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异闻传说\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10511\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄奇幻界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10512\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    未来游戏                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=8&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻世界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10601\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际机甲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10602\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世异世\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10603\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏电竞\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10604\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来架空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10605\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异度幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10606\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10607\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑推理\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10608\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10609\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限领域\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10610\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宠灵怪\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10611\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"惊奇档案\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10612\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    二 次 元                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=11\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方古风\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11105\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西幻魔幻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11106\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"乙女游戏\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11107\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异界穿书\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11108\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血冒险\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11109\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能超能\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11110\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经营基建\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11111\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"浪漫情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11112\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11113\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"偶像育成\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11114\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"竞技社团\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11115\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"新奇幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11116\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    衍生言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=12\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 名   著 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11201\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方罗曼\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11202\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11203\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11204\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11205\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"江湖恩怨\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11206\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐竞技\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11207\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 其 他  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11208\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    现代纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=15\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢喜冤家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10701\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市甜文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10702\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10703\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代都市\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10704\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校园青春\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10705\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10706\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"打脸逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10707\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"边缘恋曲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10708\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10709\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10710\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10711\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10712\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"竞技人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10713\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚娱乐\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10714\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10715\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚前婚后\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10716\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    幻想纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=43\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无 限 流\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11801\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世狂想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11802\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿世界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11803\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  系 统 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11804\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠修真\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11805\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异闻秘术\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11806\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宠频道\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11807\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"边缘幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11808\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐星光\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11809\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11810\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重生穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11811\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生赢家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11812\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想甜宠\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11813\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级爽文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11814\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇幻灵异\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11815\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻机甲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11816\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=16\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷将相\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10801\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10802\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠修真\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10803\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10804\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10805\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西幻异世\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10806\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10807\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10808\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10809\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄幻灵异\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10810\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10811\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10812\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    衍生纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=21\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 月 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 总 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"名著传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"江湖奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无cp其他\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无CP 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生其他\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方罗曼\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无cp次元\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都 市 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻 想 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元热血\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11012\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "",
    "lastUpdateTime": 1735059008148,
    "loginUrl": "",
    "respondTime": 1236,
    "ruleBookInfo": {
      "canReName": "1",
      "coverUrl": "class.noveldefaultimage@src",
      "intro": "@js:\nli=String(java.getString('@@class.smallreadbody!0@span@text&&class.rightul.0@tag.li.1@text',false)).replace(/\\n/g,'•');\nintro=String(java.getString('@@id.novelintro.0@html',false));\nresult=String(li+'\\n————————————————————'+intro);\na=result.replace(/作品视角/,'◎作品视角').replace(/\\s{2,}/g,'\\n').replace(/立意/,'◎立意').replace(/内容标签/,'    ◎标签').replace(/一句话简介/,'◎短简').replace(/搜索关键字：/,'◎').replace(/ ┃ /g,'\\n◎').replace(/•◎/g,'\\n◎').replace(/：•/,'：').replace(/(?:◎标签：|◎主角：|◎配角：|◎其它：|◎短简：|◎作品视角：)\\n/g,'').replace(/•$/gm,'')\n##手机地址：",
      "kind": "//*[@itemprop=\"updataStatus\"]/text()&&//*[@itemprop=\"genre\"]/text()&&//*[@itemprop=\"updataStatus\"]/font/text()##-##,",
      "lastChapter": "id.oneboolt@tag.tr.-2@tag.span.0@text&&id.oneboolt@tag.tr.-2@tag.td.-1@tag.span@text\n@js:result.replace(/\\n/g,'·').replace(/(.*?)\\[VIP\\]/,'🔒$1')",
      "name": "tag.title@text##《(.*?)》##$1###",
      "wordCount": "//span[@itemprop=\"wordCount\"]/text()"
    },
    "ruleContent": {
      "content": "class.b module@tag.li.0@textNodes&&class.b module@tag.li.1@textNodes##网友：|评分：|.*分\\｜.{4}",
      "imageStyle": "0",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.0@text\",false)\n}else{java.getString(\"@@tag.a.1@text\",false)}",
      "bookList": "tbody@tr!0||class.b module@tag.li!-1",
      "bookUrl": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.1@href\",true)\n}else{result=java.getString(\"@@tag.a.0@href\",true);\nif(result.match(/\\/(\\d+)/)){\nvar id=result.match(/\\/(\\d+)/)[1]\nresult=\"http://www.jjwxc.net/onebook.php?novelid=\"+id}\nelse{result=java.getString(\"@@tag.a.0@href\",true);}}",
      "coverUrl": "tag.td.2@a@href||tag.a.1@href@js:result.replace(/.+novelid=/, 'http:\\/\\/i9-static.jjwxc.net\\/novelimage.php?novelid=')",
      "intro": "class.tooltip@rel&&tag.td.1@a@title##<br>|标签：|简介：|size=\"\\d+\"",
      "kind": "{{@@tag.td.4@text}},{{@@tag.td.5@text}},{{@@tag.td.3@text}},{{@@tag.span@text}}##(\\d+)",
      "lastChapter": "tag.td.8@text||tag.td.-1@text",
      "name": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.1@text\",false)\n}else{\na=String(result).match(/有更新/)?'🔥有更新':'';\nString(java.getString(\"@@tag.a.0@text\",false)).replace(/《|》/g,'')+a}",
      "wordCount": "tag.td.-3@text"
    },
    "ruleSearch": {
      "author": "tag.a.0@text",
      "bookList": "@css:tbody tr:lt(5)",
      "bookUrl": "tag.a.1@href",
      "intro": "tag.td.2@text",
      "kind": "font@text&&tag.td.3@text&&tag.td.5@text",
      "lastChapter": "<js>\nvar a=String(result).match(/href=\"(onebook.php\\?novelid=\\d+)/)[1];\nvar url=\"http://www.jjwxc.net/\"+a;\norg.jsoup.Jsoup.connect(url).get()</js>\nid.oneboolt@tag.tr.-2@tag.span.0@text##(.*?)\\[VIP\\]##🔒$1",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "@css:tr[itemprop~=chapter]",
      "chapterName": "tag.font@text&&tag.a.0@text##\\[VIP\\]\\n*##🔒 ",
      "chapterUrl": "tag.a.0@href||tag.a.0@rel\n<js>\nid=result.match(/ovelid=(\\d+)&chapterid=(\\d+)/);\nif(String(chapter.title).indexOf('🔒 ')>-1){\nresult='https://wap.jjwxc.net/vip/'+id[1]+'/'+id[2]\n}else{\nresult='https://m.jjwxc.net/book2/'+id[1]+'/'+id[2]}\n</js>",
      "isVip": "",
      "updateTime": "tag.td.3@text&&tag.td.2@text&&tag.span.-1@text\n@js:result.replace(/\\n/g,'·').replace(/·/,'字·')"
    },
    "searchUrl": "https://www.jjwxc.net/bookbase.php?searchkeywords={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "                    \"error:Timed out waiting for 180000 ms\n                                        \"error:Timed out waiting for 180000 ms\n                                        \"error:Unable to resolve host \"api.lestory.cn\": No address associated with hostname\n                    如要登录，请看搜索地址，请先删了Token的值再获取验证码\n填写token=登录\n需填写token的地方\n1.搜索页的搜索地址\n2.发现页的每日福利跟阅读15s书币<不领的话可不填>\n3.目录页的章节url\n感谢酷安@渊呀  指导\"\"\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "悸花阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.lestory.cn关耳edit",
    "customButton": false,
    "customOrder": 655,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1732637095727,
    "loginUrl": "",
    "respondTime": 4352,
    "ruleBookInfo": {
      "author": "$.data.book.author",
      "canReName": "",
      "intro": "$.data.book.description\n<js>if(!result){\ntoken=java.get('token');\nvar time = Math.round(new Date()/1000);\nresult='❗️通过离线下载这本书，刷每日阅读，离线下载一直显示正在启动的话是已经开始了，不用管它，因为是一直循环访问网址，手机可能会发烫，取消离线下载即可停止,如果取消很久还是发烫，请杀后台❗️';\nlist=[\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\",\"sign\":String(s)}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/user/center,'+JSON.stringify(option);\naaa=JSON.parse(String(java.ajax(url))).data;\nresult+'\\n剩余书币：'+aaa.remain+'\\n今日获得书币：'+aaa.coin_today+'\\n今日阅读：'+aaa.today_read_duration+'分钟\\n点右上角刷新此页面更新数据'\n}else{result=result}</js>",
      "kind": "",
      "lastChapter": "{{$.data.book.last_chapter}}•{{$.data.book.last_chapter_time}}##更新于",
      "name": "$.data.book.name",
      "tocUrl": "$.data.book.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/chapter/catalog,'+JSON.stringify(option)\n</js>",
      "wordCount": "$.data.book.total_words"
    },
    "ruleContent": {
      "content": "$.data.content\n<js>\n//每日阅读书币\nif(baseUrl.match(/report-reward/)){\ntoken=java.get(\"token\");\nvar time = Math.round(new Date()/1000);\n\nlist=[\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\",\"sign\":String(s)}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/remain/report-reward,'+JSON.stringify(option);\ni=10;\n\n//循环1000次，15s一次\nfor(i=0;i<=1000;i++){ \nvar start =(new Date()).getTime();\n\t// 阻塞15s\n    while((new Date()).getTime() - start < 15000) {\n        continue;\n    }\njava.log(JSON.parse(String(java.ajax(url))).data.reward_gold);\n}}\n\n\n//正文\njava.aesBase64DecodeToString(String(result),\"lCFS!FChsEabjLBu\",\"AES/CBC/PKCS5Padding\",\"0123456789012345\")\n</js>",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "<js>\nif(!baseUrl.match(/welfare\\/award/)){\nif(baseUrl.match(/bookid/)){\njava.put('token',baseUrl.match(/token=(.*)/)[1]);\njava.put('book',baseUrl.match(/(\\d+)/)[1]);\nlist=[{\"name\":\"每日阅读书币\",\"book_id\":baseUrl.match(/(\\d+)/)[1]}];\nresult=JSON.stringify(list)\n}else{\n\npage=java.get('page');\nvar time = Math.round(new Date()/1000);\ncat=baseUrl.match(/cat=(\\d+)/)[1];\nfinished=baseUrl.match(/finished=(\\d+)/)[1];\nlist=[\n\"finished=\"+finished,\n\"cat=\"+cat,\n\"page_num=\"+page,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"ver=2.1.3\",\n\"product=1\",\n\"token=\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\n\nsign=sign(list);\n\njson={\"finished\":String(finished),\"cat\":String(cat),\"sign\":String(sign),\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"page_num\":String(page),\"osType\":\"2\",\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/book/category-index,'+JSON.stringify(option);\njava.ajax(url)}}else{\nl=[];\nvar time = Math.round(new Date()/1000);\nvar token=baseUrl.match(/token=(.*)/)[1];\nlist=[\n\"read_time=44800\",\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\n\njson={\"read_time\":\"44800\",\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":String(s),\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/remain/add-read-time,'+JSON.stringify(option);\nl.push(String(java.ajax(url)));\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nfor(i=1;i<=10;i++){\nurl='http://api.lestory.cn/welfare/award?token='+token+'&award_type='+i;\nl.push(String(java.ajax(url)));\n}\nresult=JSON.stringify(l);}\n</js>\n$.data.list.list[*]||$.[*]",
      "bookUrl": "$.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/book/info,'+JSON.stringify(option)\n</js>",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag[*].tab",
      "name": "$.name||$.data.award||$.msg##^(\\d+)$##已领取$1书币"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.list[*]",
      "bookUrl": "$.book_id\n<js>\nvar time = Math.round(new Date()/1000);\nlist=[\n\"book_id=\"+result,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"token=\",\n\"ver=2.1.3\",\n\"product=1\",\n\"sysVer=10\"\n];\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\nsign=sign(list);\n\njson={\"sign\":sign,\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"osType\":\"2\",\"book_id\":result,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\n'http://api.lestory.cn/book/info,'+JSON.stringify(option)\n</js>",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "$.tag[*].tab",
      "lastChapter": "{{$.last_chapter}}•{{$.last_chapter_time}}##更新于",
      "name": "$.name",
      "wordCount": "$.total_words"
    },
    "ruleToc": {
      "chapterList": "<js>\n$=JSON.parse(result);\nif($.code==\"700\"){\nlist=[{\"chapter_title\":\"阅读15s书币\",\"href\":\"http://api.lestory.cn/remain/report-reward\"}];\nresult=JSON.stringify(list)\n}else{result=JSON.stringify($.data.chapter_list)}</js>$.[*]",
      "chapterName": "$.chapter_title",
      "chapterUrl": "$.href<js>\n//填上你的Token\n\nToken=\"34304776fc02d974a641eef13b603e20\";\n\n//下面不要动\nvar time = Math.round(new Date()/1000);\nvar token=java.get('token')!=''?java.get('token'):java.put('token',Token);\nif(!result){\nlist=[\n\"book_id={{$.book_id}}\",\n\"chapter_id={{$.chapter_id}}\",\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\n\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\ns=sign(list);\n\n\njson={\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":String(s),\"sysVer\":\"10\",\"book_id\":\"{{$.book_id}}\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"chapter_id\":\"{{$.chapter_id}}\",\"lang\":\"zh-hans\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/chapter/text,'+JSON.stringify(option)}else{result=result}\n</js>",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "<js>\n/*调试->右上角的小虫子，随便搜一个词*/\n/*Token写了东西的话要删掉才能进行下面步骤：\n①填上电话号码点调试会获取验证码；\n②填上验证码点调试会获取token；\n③把token填在Token【目录的章节url那也有个token记得也要填，不填的话从发现点的书是没有登录的】；\n④把电话号码跟验证码的值删了【❗️填了电话号码会一搜索就发验证码】，保存书源*/\n/*如登录过期需要重新登录，请删除以前填写的token再调试获取验证码，重复前面的步骤*/\n\n电话号码=\"\";\n\n验证码=\"\";\n\nToken=\"34304776fc02d974a641eef13b603e20\";\n\n//下面不要动\nvar time = Math.round(new Date()/1000);\ntoken=java.put('token',Token);\nfunction sign(list){\nvar sb='';\nsb+=\"Fb0gqLMSf5Android\";\nlist=list.sort();\ni=0;\nwhile(i<list.length){\nif(i==0){\nsb+=list[i]\n}else{\n    if(list[i].match(/lang-app=/)){  \n      i2=i+1;\n     i3=i2+1;\n     if (list[i2] != null && list[i2].match(/lang=/)) {\n                        sb+=\"&\";\n                        sb+=list[i2];\n                        \n                        sb+=\"&\";\n                        sb+=list[i];\n                        \n                        i = i3;\n                    }\n           }\n                sb+=\"&\";\n                sb+=list[i];             \n      }\ni++\n}\nsb+=\"AEdDtho2CjiH901aVK7swFqclu6NmzJ4\";\nreturn String(java.md5Encode(sb)).toUpperCase()\n}\n\n\n\n//获取验证码开始\nnum=电话号码;\ny=验证码;\nif(num.match(/^\\d{11}$/) && !y  && !Token){\nlist2=[\n \"mobile=86\"+num,\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\ns=sign(list2);\njson2={ \"mobile\": \"86\"+String(num),\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":s,\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption1={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json2)\n}\nurl='http://api.lestory.cn/message/send,'+JSON.stringify(option1);\njava.log(JSON.parse(java.ajax(url)).msg==\"success\"?\"验证码发送成功，请注意短信\":\"验证码获取失败，请稍候再试\");\n}else if(y && !Token){\nlist2=[\n \"mobile=86\"+num,\n\"code=\"+y,\n\"appId=\",\n\"osType=2\",\n\"product=1\",\n\"sysVer=10\",\n\"time=\"+time,\n\"token=\"+token,\n\"ver=2.1.3\",\n\"packageName=com.lestory.jihua.an\",\n\"lang-app=zh-Hans\",\n\"lang=zh-hans\",\n\"locale=CN\"\n]\ns=sign(list2);\njson2={ \"code\":String(y),\"mobile\": \"86\"+String(num),\"product\":\"1\",\"ver\":\"2.1.3\",\"sign\":s,\"sysVer\":\"10\",\"locale\":\"CN\",\"token\":String(token),\"lang-app\":\"zh-Hans\",\"appId\":\"\",\"osType\":\"2\",\"time\":time,\"packageName\":\"com.lestory.jihua.an\",\"lang\":\"zh-hans\"}\n\noption1={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json2)\n}\nurl='http://api.lestory.cn/user/mobile-login,'+JSON.stringify(option1);\na=JSON.parse(java.ajax(url));\njava.log(a.msg==\"success\"?'❗️下面是你的Token，请复制❗️\\n'+a.data.user_token:JSON.stringify(a));\n}\n//获取验证码结束\n\n\n\n\n\n\nlist=[\n\"page_num=\"+page,\n\"keyword=\"+key,\n\"lang=zh-hans\",\n\"lang-app=zh-Hans\",\n\"locale=CN\",\n\"osType=2\",\n\"packageName=com.lestory.jihua.an\",\n\"time=\"+time,\n\"ver=2.1.3\",\n\"product=1\",\n\"token=\",\n\"sysVer=10\"\n];\n\n\njava.put('token',Token);\ns1=sign(list);\n\njson={\"sign\":String(s1),\"packageName\":\"com.lestory.jihua.an\",\"time\":time,\"token\":\"\",\"locale\":\"CN\",\"page_num\":page,\"osType\":\"2\",\"keyword\":key,\"lang\":\"zh-hans\",\"lang-app\":\"zh-Hans\",\"ver\":\"2.1.3\",\"product\":1,\"sysVer\":\"10\"}\n\noption={\n\"method\": \"POST\",\n\"body\": JSON.stringify(json)\n}\nurl='http://api.lestory.cn/book/search,'+JSON.stringify(option)\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费,有声",
    "bookSourceName": "猫耳听书",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.com♤guaner",
    "customButton": false,
    "customOrder": 656,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "百合分类::https://www.missevan.com/dramaapi/filter?filters=0_5_0_0_0&page={{page}}&order=1&page_size=20\n现代::https://www.missevan.com/dramaapi/filter?filters=0_5_0_1_0&page={{page}}&order=1&page_size=20\n古风::https://www.missevan.com/dramaapi/filter?filters=0_5_0_2_0&page={{page}}&order=1&page_size=20\n民国::https://www.missevan.com/dramaapi/filter?filters=0_5_0_3_0&page={{page}}&order=1&page_size=20",
    "lastUpdateTime": 1734839226764,
    "respondTime": 2635,
    "ruleBookInfo": {
      "intro": "class.intro-content@html||$.info.sound.intro",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##类型：|标签：无|标签：",
      "tocUrl": "@js:\nif(baseUrl.match(/dramaapi|mdrama/)){\nresult='https://www.missevan.com/dramaapi/getdrama?drama_id='+baseUrl.match(/(\\d+)/)[1]\n}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl"
    },
    "ruleExplore": {
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/mdrama/drama/{{$.id}},{\"webView\":true}",
      "coverUrl": "$.cover",
      "kind": "$.type_name",
      "lastChapter": "$.newest",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "$.username||$.author",
      "bookList": "<js>\nkey=java.get('key');\npage=java.get('page');\n\n//创建两个空数组\njson=[];json2=[];\n\n//判定json里是否有列表\nif(JSON.parse(result).info.Datas){\njson=JSON.parse(result).info.Datas;}\n\n//加载单曲搜索页面并转为json\njson1=JSON.parse(java.ajax('https://www.missevan.com/sound/getsearch?s='+key+'&type=3&page_size=10&p='+page));\n\n//判定json里是否有列表\nif(json1.info.Datas){\njson2=json1.info.Datas\n}\n\n//剧集搜索列表与单曲搜索列表拼接\nlist=json.concat(json2);\n\nresult=JSON.stringify(list)\n</js>\n$.[*]",
      "bookUrl": "<js>\nid=String(result).match(/id=(\\d+)/)[1];\nif(!String(result).match(/catalog_name/)){\nresult='https://www.missevan.com/sound/getsound?soundid='+id\n}else{result='https://www.missevan.com/dramaapi/getdrama?drama_id='+id}\n</js>",
      "coverUrl": "$.front_cover||$.cover",
      "intro": "$.abstract",
      "kind": "{$.type_name},{$.catalog_name}##\\{.*?\\}",
      "lastChapter": "$.newest",
      "name": "$.soundstr||$.name"
    },
    "ruleToc": {
      "chapterList": "<js>'['+result+']'</js>\n$..info.episodes.episode[*]||$..info.episodes.music[*]||$.[*]",
      "chapterName": "$.name||$.info.sound.soundstr",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id||$.info.sound.id}}"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page={{page}}\n@js:java.put('key',key);java.put('page',page);result",
    "weight": 60
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "㊣ 若初文学",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ruochu.com♤yc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 657,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"历史\",\"url\":\"http://search.ruochu.com/web/all?sort=3&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"http://search.ruochu.com/web/all?sort=4&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"http://search.ruochu.com/web/all?sort=6&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"仙侠\",\"url\":\"http://search.ruochu.com/web/all?sort=7&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"http://search.ruochu.com/web/all?sort=8&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻\",\"url\":\"http://search.ruochu.com/web/all?sort=10&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"职场\",\"url\":\"http://search.ruochu.com/web/all?sort=11&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"豪门\",\"url\":\"http://search.ruochu.com/web/all?sort=12&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总裁\",\"url\":\"http://search.ruochu.com/web/all?sort=13&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"奇幻\",\"url\":\"http://search.ruochu.com/web/all?sort=14&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"架空\",\"url\":\"http://search.ruochu.com/web/all?sort=15&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"http://search.ruochu.com/web/all?sort=17&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宫斗\",\"url\":\"http://search.ruochu.com/web/all?sort=19&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"宅斗\",\"url\":\"http://search.ruochu.com/web/all?sort=20&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"青春\",\"url\":\"http://search.ruochu.com/web/all?sort=21&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱\",\"url\":\"http://search.ruochu.com/web/all?sort=23&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"竞技\",\"url\":\"http://search.ruochu.com/web/all?sort=27&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"种田\",\"url\":\"http://search.ruochu.com/web/all?sort=28&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"未来\",\"url\":\"http://search.ruochu.com/web/all?sort=29&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"http://search.ruochu.com/web/all?sort=32&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"西漫\",\"url\":\"http://search.ruochu.com/web/all?sort=33&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"探案\",\"url\":\"http://search.ruochu.com/web/all?sort=34&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"婚恋\",\"url\":\"http://search.ruochu.com/web/all?sort=35&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古言\",\"url\":\"http://search.ruochu.com/web/all?sort=37&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"民国\",\"url\":\"http://search.ruochu.com/web/all?sort=38&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现言\",\"url\":\"http://search.ruochu.com/web/all?sort=39&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"百合\",\"url\":\"http://search.ruochu.com/web/all?sort=40&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"异能\",\"url\":\"http://search.ruochu.com/web/all?sort=43&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"现实\",\"url\":\"http://search.ruochu.com/web/all?sort=54&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"短篇\",\"url\":\"http://search.ruochu.com/web/all?sort=110&words=-1&free=&finish=&order=0&page={{page}}&size=100&solicitingid=0\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1731056761860,
    "loginUrl": "",
    "respondTime": 696,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "text.目录@href"
    },
    "ruleContent": {
      "content": ".page-content@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorname",
      "bookList": "$.data.content[*]",
      "bookUrl": "$.id@js:\"https://www.ruochu.com/book/\"+result",
      "coverUrl": "$.iconUrlSmall@js:\"https://b.heiyanimg.com\"+result",
      "intro": "标签：{{$.tags}}{{'\\n'+'​'}}\n{{$.introduce}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "$.sortname&&$.updatetime##\\s.*",
      "lastChapter": "$.lastchaptername",
      "name": "$.name",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": ".float-list li",
      "chapterName": "html@js:if(result.match(/isvip/)){\nresult=\"🔒\"+result.match(/>([^<]+)<\\/a>/)[1];\n}else{result=result.match(/>([^<]+)<\\/a>/)[1];}",
      "chapterUrl": "a@href",
      "updateTime": "span@text"
    },
    "searchUrl": "http://search.ruochu.com/web/search?queryString={{key}}&highlight=false&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//仅供学习研究使用，请在24h内删除\n//同网址https://api.midukanshu.com/\n/**\n//目录url规则，获取目录url\thttps://api.midureader.com/fiction/book/getChaptersCdn,{\"method\": \"POST\",\"body\": \"app=midu&lastUpdatedTime=&bookId={{$.book_id}}\"}\n//目录列表规则，获取目录列表\n$..url\n<js>\nurl=String(result).match(/\"(.*)\"/) [1].replace(/\\\\/g,'').trim();\njava.ajax(url)\n//java.log(url)\n</js>\n$.[*]\n*/",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌙 米读小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.midureader.com/##@遇知",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 658,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort = [];\npush = (title, url, type) => sort.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: type\n    }\n});\n$$ = (second_channel, status) => `/fiction/search/channel,{\"method\": \"POST\",\"body\": \"app=midu&second_channel=${second_channel}&status=${status}&page={{page-1}\\}&rank=\"}`;\n[\n    [\n        [\"玄幻\", 3],\n        [\"都市\", 5],\n        [\"推理\", 7],\n        [\"仙侠\", 15],\n        [\"科幻\", 27],\n        [\"游戏\", 30],\n        [\"武侠\", 32],\n        [\"历史\", 35],\n        [\"奇幻\", 39],\n        [\"军事\", 93],\n        [\"体育\", 47],\n        [\"现实\", 79],\n        [\"同人\", 61]\n    ],\n    [\n        [\"现代言情\", 13],\n        [\"古代言情\", 17],\n        [\"悬疑刑侦\", 24],\n        [\"玄幻仙侠\", 41],\n        [\"青春校园\", 51],\n        [\"同人小说\", 68],\n        [\"科幻空间\", 78],\n        [\"游戏竞技\", 95]\n    ]\n].map((Arr, isN) => {\n    push(\"༺ˇ»`ʚ \" + (isN ? \"女\" : \"男\") + \"频 ɞ´«ˇ༻\", null, 1);\n    Arr.map([title, second_channel] => {\n        [\"[\" + title + \"]\", \"完结\", \"连载\"].map((title, status) => {\n            push(title, $$(second_channel, status), 0.25);\n        });\n    });\n});\nJSON.stringify(sort);",
    "header": "{\"User-Agent\":\"okhttp/3.12.1\"}",
    "lastUpdateTime": 1736505490331,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 1521,
    "ruleBookInfo": {
      "author": "$.author",
      "canReName": "",
      "coverUrl": "$..cover",
      "downloadUrls": "",
      "init": "$.data",
      "intro": "🏅 评分：{{$.score}}分\n🔥 热度：{{$.hot}}{{$.hotLabel}}\n🎗 标签：{{$..name##\\s##，}}\n🕰 更新时间：{{$.updateStatus}}\n📂 简介：{{$..description}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{java.getString('$.end_status')=='1'?'完结':'连载'}}\n{{$.category}}\n{{$.score}}分",
      "lastChapter": "",
      "name": "$.title",
      "tocUrl": "@js:\ntry{\n\"https://book.midureader.com/book/chapter_list/100/{{$.book_id}}.txt\"\n}\ncatch(e){\n\t\"https://book-spare.midureader.com/book/chapter_list/100/{{$.book_id}}.txt\"\n\t}",
      "wordCount": "$.word_count"
    },
    "ruleContent": {
      "content": "$..content\n@js:\n   if(result!=\"\"){\tresult}\n      else{java.ajax(baseUrl)}",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "$..leftTags..text## · .*",
      "bookList": "$.data[*]",
      "bookUrl": "https://api.midureader.com/fiction/book/getDetail,{\n  \"method\": \"POST\",\n  \"body\": \"app=midu&book_id={{$..book_id}}\"\n}\n##(getBrief||getDetail)选用其中之一",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "{{$..leftTags..text##·|\\d.*}}##.*\\s",
      "name": "$..title",
      "wordCount": "$..leftTags..text##.*·"
    },
    "ruleSearch": {
      "author": "$.author||$..emAuthor",
      "bookList": "$.data[*]",
      "bookUrl": "https://api.midureader.com/fiction/book/getDetail,{\n  \"method\": \"POST\",\n  \"body\": \"app=midu&book_id={{$..book_id}}\"\n}\n##(getBrief||getDetail)选用其中之一",
      "checkKeyWord": "斗破苍穹",
      "coverUrl": "$..cover",
      "intro": "$..description",
      "kind": "{{java.getString('$.end_status')=='1'?'完结':'连载'}}\n{{$.category}}\n{{$..name##\\s.*}}\n{{$.score}}分",
      "lastChapter": "",
      "name": "$..title",
      "wordCount": "$.word_count"
    },
    "ruleToc": {
      "chapterList": "$.[*]",
      "chapterName": "$.title",
      "chapterUrl": "@js:\ntry{\n\"https://book.midureader.com/book/chapter/segment/master/{{$.bookId}}/{{$.chapterId}}/{{$.content_md5}}.txt\"\n}\ncatch(e){\n\t\"https://book.midureader.com/book/chapter/master/{{$.bookId}}_{{$.chapterId}}.txt\"\n\t}",
      "isVip": "",
      "isVolume": "",
      "updateTime": ""
    },
    "searchUrl": "@js:\nvar option = {   \n        \"method\": \"POST\",\n        \"body\": \"app=midu&keyword={{key}}&page={{page-1}}\"\n    };\ntry{\n\trun;\n\t\n\"https://api.midureader.com/fiction/search/search,\"+ JSON.stringify(option)\n}\ncatch(e){\n\t\"https://api.midureader.com/fiction/search/searchV2,\"+ JSON.stringify(option)\n\t}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "必去楼",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.bequ6.org",
    "customButton": false,
    "customOrder": 659,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url+\"/sort/\";\nvar ph=url+\"/top/\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".content li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".content li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".content li a\");\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\n  url=String(url).replace(\"1/\",\"{{page}}/\")\n        push(title,url,size)\n    };\n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\")\n        size=0.25;\n        push(title,url,size)\n    }\npush(\"🌹全本🌹\",\"/full/{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)\n",
    "lastUpdateTime": 1754012648558,
    "respondTime": 8877,
    "ruleBookInfo": {
      "author": "text.作者：@text",
      "coverUrl": ".block_img2@img@src",
      "intro": ".intro_info@text",
      "kind": "text.分类：@text&&\ntext.状态：@text&&\ntext.更新：@text",
      "lastChapter": ".block_txt2@a.-1@text",
      "name": "h2@text",
      "tocUrl": "text.查看目录@href"
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "//*[not(@class='blue')]/text()##\\[.*\\]|\\/",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "kind": "##\\[(.*)\\]##$1##",
      "name": ".blue@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "/search?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁b14",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mayiwxw.com/#pb1101",
    "bookUrlPattern": "https://www.mayiwxw.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 660,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::https://m.mayiwxw.com/sort/1_{{page}}/\n修真小说::https://m.mayiwxw.com/sort/2_{{page}}/\n都市小说::https://m.mayiwxw.com/sort/3_{{page}}/\n穿越小说::https://m.mayiwxw.com/sort/4_{{page}}/\n网游小说::https://m.mayiwxw.com/sort/5_{{page}}/\n科幻小说::https://m.mayiwxw.com/sort/6_{{page}}/\n其他小说::https://m.mayiwxw.com/sort/7_{{page}}/\n女生频道::https://m.mayiwxw.com/sort/8_{{page}}/",
    "lastUpdateTime": 1721206399431,
    "loginUrl": "",
    "respondTime": 4165,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作    者：",
      "coverUrl": "id.fmimg@tag.img.0@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书首发域名：|.net。|顶点小说手机版阅读网址：|最新网址.*com"
    },
    "ruleExplore": {
      "author": "class.newbook_author@a@text",
      "bookList": "class.newbook_list",
      "bookUrl": "class.newbook_title@a@href@js:'https://www.mayiwxw.com'+result",
      "coverUrl": "img@src",
      "intro": "class.newbook_intor@text",
      "name": "class.newbook_title@a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.mayiwxw.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.mayiwxw.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "有声",
    "bookSourceName": "喜马拉雅",
    "bookSourceType": 1,
    "bookSourceUrl": "http://search.ximalaya.compb",
    "customButton": false,
    "customOrder": 661,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=玄幻&page={{page}}&rows=20&spellchecker=true\n大剧::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=大剧&page={{page}}&rows=20&spellchecker=true\n仙侠::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=仙侠&page={{page}}&rows=20&spellchecker=true\n都市::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=都市&page={{page}}&rows=20&spellchecker=true\n经典::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=经典&page={{page}}&rows=20&spellchecker=true\n幻想::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=幻想&page={{page}}&rows=20&spellchecker=true\n武侠::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=武侠&page={{page}}&rows=20&spellchecker=true\n历史::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=历史小说&page={{page}}&rows=20&spellchecker=true\n教材::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=教材&page={{page}}&rows=20&spellchecker=true\n多人::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=多人剧&page={{page}}&rows=20&spellchecker=true\n相声::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=相声&page={{page}}&rows=20&spellchecker=true\n英文::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=英文原版&page={{page}}&rows=20&spellchecker=true\n名著::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=名著&page={{page}}&rows=20&spellchecker=true\n乡村::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=乡村&page={{page}}&rows=20&spellchecker=true\n广播::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=广播剧&page={{page}}&rows=20&spellchecker=true\n游戏::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=游戏&page={{page}}&rows=20&spellchecker=true\n无限::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=无限&page={{page}}&rows=20&spellchecker=true\n魔幻::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=魔法&page={{page}}&rows=20&spellchecker=true\n☆                  音 乐                  ☆::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=音乐&page={{page}}&rows=20&spellchecker=true\n乡村::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=乡村&page={{page}}&rows=20&spellchecker=true\n流行::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=流行Top&page={{page}}&rows=20&spellchecker=true\n老歌::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=老歌&page={{page}}&rows=20&spellchecker=true\n榜单::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=榜单&page={{page}}&rows=20&spellchecker=true\n巅峰::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=巅峰榜&page={{page}}&rows=20&spellchecker=true",
    "lastUpdateTime": 1721097835758,
    "loginUrl": "",
    "respondTime": 1640,
    "ruleBookInfo": {
      "tocUrl": "http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId=@get:{book}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=1"
    },
    "ruleContent": {
      "content": "",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "nickname",
      "bookList": "$.response.docs",
      "bookUrl": "http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId={$.id}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=1",
      "coverUrl": "cover_path",
      "intro": "$..intro",
      "kind": "category_title",
      "name": "title@put:{book:id}"
    },
    "ruleToc": {
      "chapterList": "$.data.list",
      "chapterName": "title",
      "chapterUrl": "playPathAacv224",
      "nextTocUrl": "<js>\nvar a = 'http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId=@get:{book}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=';\nvar r = [];\nfor(var i=1;i<40;i++){\n    r.push(a + parseInt(i*1));\n}\nr\n</js>"
    },
    "searchUrl": "http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw={{key}}&page={{page}}&rows=20&spellchecker=true",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "溜达小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.liudatxt.org/",
    "customButton": false,
    "customOrder": 662,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1735031716610,
    "respondTime": 423,
    "ruleBookInfo": {
      "author": "#author@a@text",
      "coverUrl": "#bookimg@img@src",
      "intro": "#bookintro@p@text",
      "kind": ".bookright@span.1:5@text",
      "lastChapter": "#newlist@li.0@a@text",
      "name": "h1@text",
      "tocUrl": "div.newrap@a.0@href",
      "wordCount": ".bookright@span.7@text&&span.uptime@sapn@text@js:result+'字'"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {
      "bookList": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.book_other.0@tag.span.0@text",
      "bookList": "id.sitembox@tag.dl",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "kind": "class.book_other.0@tag.span.1@text",
      "lastChapter": "class.book_other.1@tag.a@text",
      "name": "tag.a.1@text",
      "wordCount": "class.book_other.0@tag.span.3@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.li@tag.a",
      "chapterName": "text##正文|_",
      "chapterUrl": "href"
    },
    "searchUrl": "search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "正版",
    "bookSourceName": "UC小说 一程",
    "bookSourceType": 0,
    "bookSourceUrl": "http://xiaoshuo.uc.cnyc",
    "customButton": false,
    "customOrder": 663,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar cat1='都市,玄幻,仙侠,灵异,历史,游戏,科幻,武侠,奇幻,竞技';var list=[];\nfunction getUrl(cats,url1){cats.split(',').forEach((i)=>{list.push(i+'::'+url1+i)})};\nlist.push('男频::');\ngetUrl(cat1,'http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&onlyCpBooks=1&status=2&firstCate=');\nlist.join('\\n')\n</js>",
    "lastUpdateTime": 1754559835602,
    "respondTime": 2153,
    "ruleBookInfo": {
      "init": "<js>\nvar bookId=java.get('bid');\nvar encryptKey=\"37e81a9d8f02596e1b895d07c171d5c9\",user_id=\"8000000\",timestamp=parseInt((new Date).getTime()/1e3);\nvar o=bookId+timestamp+user_id+encryptKey;\nvar sign=java.md5Encode(o);\nvar list={'turl':'https://ocean.shuqireader.com/api/bcspub/qswebapi/book/chapterlist?_=&bookId='+bookId+'&user_id=8000000&sign='+sign+'&timestamp='+timestamp};list\n</js>",
      "tocUrl": "turl"
    },
    "ruleContent": {
      "content": "ChapterContent@js:\nfunction p(e) {\n    return e.split(\"\").map(function (e) {\n        return e.match(/[A-Za-z]/) ? (c = Math.floor(e.charCodeAt(0) / 97), k = (e.toLowerCase().charCodeAt(0) - 83) % 26 || 26, String.fromCharCode(k + (0 == c ? 64 : 96))) : e\n    }).join(\"\")\n}\njava.base64Decode(p(result))"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "🔖标签：{{$.tags}}\n{{$.desc}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.category}},{{$.status}}<js>result.replace(/1$/,'完结').replace(/0$/,'连载')</js>",
      "lastChapter": "$.uptime<js>java.getString('$.last_chapter_name')+' '+java.timeFormat(result*1000)</js>",
      "name": "title",
      "wordCount": "words"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "🔖标签：{{$.tags}}\n{{$.desc}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.category}},{{$.status}}<js>result.replace(/1$/,'完结').replace(/0$/,'连载')</js>",
      "name": "title",
      "wordCount": "words"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList[0].volumeList<js>java.put('freeUrlPre',java.getString('$.data.freeContUrlPrefix'));java.put('shortUrlPre',java.getString('$.data.shortContUrlPrefix'));result</js>",
      "chapterName": "chapterName",
      "chapterUrl": "<js>var l=java.getString('$.contUrlSuffix');if(l.indexOf('reqEncryptParam')==-1){java.get('freeUrlPre')+l}else{java.get('shortUrlPre')+java.getString('$.shortContUrlSuffix')}</js>",
      "isVip": "chapterPrice"
    },
    "searchUrl": "http://read.xiaoshuo1-sm.com/novel/i.php?do=is_serchpay&page=1&size=10&q={{key}}&filterMigu=1&p=17&shuqi_h5=&_=1619653492249",
    "weight": 100
  },
  {
    "bookSourceGroup": "正版",
    "bookSourceName": "㊣ UC小说 一程",
    "bookSourceType": 0,
    "bookSourceUrl": "http://xiaoshuo.uc.cn♤yc",
    "customButton": false,
    "customOrder": 664,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar cat1='都市,玄幻,仙侠,灵异,历史,游戏,科幻,武侠,奇幻,竞技';var list=[];\nfunction getUrl(cats,url1){cats.split(',').forEach((i)=>{list.push(i+'::'+url1+i)})};\nlist.push('男频::');\ngetUrl(cat1,'http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&onlyCpBooks=1&status=2&firstCate=');\nlist.join('\\n')\n</js>",
    "lastUpdateTime": 1754559839008,
    "respondTime": 2125,
    "ruleBookInfo": {
      "init": "<js>\nvar bookId=java.get('bid');\nvar encryptKey=\"37e81a9d8f02596e1b895d07c171d5c9\",user_id=\"8000000\",timestamp=parseInt((new Date).getTime()/1e3);\nvar o=bookId+timestamp+user_id+encryptKey;\nvar sign=java.md5Encode(o);\nvar list={'turl':'https://ocean.shuqireader.com/api/bcspub/qswebapi/book/chapterlist?_=&bookId='+bookId+'&user_id=8000000&sign='+sign+'&timestamp='+timestamp};list\n</js>",
      "tocUrl": "turl"
    },
    "ruleContent": {
      "content": "ChapterContent@js:\nfunction p(e) {\n    return e.split(\"\").map(function (e) {\n        return e.match(/[A-Za-z]/) ? (c = Math.floor(e.charCodeAt(0) / 97), k = (e.toLowerCase().charCodeAt(0) - 83) % 26 || 26, String.fromCharCode(k + (0 == c ? 64 : 96))) : e\n    }).join(\"\")\n}\njava.base64Decode(p(result))"
    },
    "ruleExplore": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "🔖标签：{{$.tags}}\n{{$.desc}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.category}},{{$.status}}<js>result.replace(/1$/,'完结').replace(/0$/,'连载')</js>",
      "lastChapter": "$.uptime<js>java.getString('$.last_chapter_name')+' '+java.timeFormat(result*1000)</js>",
      "name": "title",
      "wordCount": "words"
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'http://xiaoshuo.uc.cn/#!/ct/cover/bid/'+result</js>",
      "coverUrl": "cover",
      "intro": "🔖标签：{{$.tags}}\n{{$.desc}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "{{$.category}},{{$.status}}<js>result.replace(/1$/,'完结').replace(/0$/,'连载')</js>",
      "name": "title",
      "wordCount": "words"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList[0].volumeList<js>java.put('freeUrlPre',java.getString('$.data.freeContUrlPrefix'));java.put('shortUrlPre',java.getString('$.data.shortContUrlPrefix'));result</js>",
      "chapterName": "chapterName",
      "chapterUrl": "<js>var l=java.getString('$.contUrlSuffix');if(l.indexOf('reqEncryptParam')==-1){java.get('freeUrlPre')+l}else{java.get('shortUrlPre')+java.getString('$.shortContUrlSuffix')}</js>",
      "isVip": "chapterPrice"
    },
    "searchUrl": "http://read.xiaoshuo1-sm.com/novel/i.php?do=is_serchpay&page=1&size=10&q={{key}}&filterMigu=1&p=17&shuqi_h5=&_=1619653492249",
    "weight": 0
  },
  {
    "bookSourceComment": "https://jt12.de/SYV2/2023/03/25/6/58/48/1679698728641e2b28dfb06.json\nby.酷安@在上温某某\n迷迭补发现列表\n源变量\n✱✱输入数字 变更发现列表：\n1  男榜+女榜  (默认列表)\n2  女榜+男榜\n3  仅男榜\n4  仅女榜\n5  旧的发现列表\n✱若发现列表没变更，长按列表顶栏，弹出菜单选“刷新”，收起列表再摊开。",
    "bookSourceGroup": "免费",
    "bookSourceName": "多看阅读②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.duokan.com/",
    "customButton": false,
    "customOrder": 665,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"cookie\":\"device_id=D900MIVU7AH2SDF9;platform=wap;user_preference=%7B%7D;Hm_lvt_1c932f22da573f2870e8ab565f4ff9cb=1616847894;build=999000000;Hm_lpvt_1c932f22da573f2870e8ab565f4ff9cb=1616849443;app_id=duokan_h5;channel=Y0X66A;user_type=3\"}",
    "lastUpdateTime": 1720612229177,
    "loginUrl": "https://account.xiaomi.com/fe/service/login/password?display=mobile&sid=reader&qs",
    "respondTime": 2025,
    "ruleBookInfo": {
      "coverUrl": "",
      "kind": "$.item.tags[*]&&$.rights",
      "lastChapter": "$.item.latest",
      "name": "",
      "tocUrl": "$.item.fiction_id@js:\"https://www.duokan.com/store/v0/fiction/detail/\"+result+\"?chapter_id=0&_t=&_c=\"",
      "wordCount": "$.item.word_count"
    },
    "ruleContent": {
      "content": "$.url@js:\nlet content=\"\"\nif(result){\nlet b64 = java.ajax(result)\nlet str=java.base64Decode(b64.match(/'(.+?)'/)[1])\nlet list=JSON.parse(str).p\nfor (i =0;i<list.length;i++){\ncontent+= list[i]+\"\\n\"\n}\n}else{\ncontent+=\"购买后继续阅读本章内容\"\n}\ncontent",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "$.authors",
      "bookList": "$.items[*]",
      "bookUrl": "$.fiction_id@js:\"https://www.duokan.com/hs/v0/android/fiction/book/\"+result",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$.new_tags&&$.rights",
      "name": "$.title",
      "wordCount": "$.word_count"
    },
    "ruleSearch": {
      "author": "$.role[0][1]",
      "bookList": "$.items[*]",
      "bookUrl": "$.source_id@js:\"https://www.duokan.com/hs/v0/android/fiction/book/\"+result",
      "checkKeyWord": "九星霸体诀",
      "coverUrl": "$.cover",
      "intro": "$.intro",
      "kind": "",
      "lastChapter": "",
      "name": "$.title",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.item.toc[*]",
      "chapterName": "$.title",
      "chapterUrl": "$.seq_id@js:\n\"https://www.duokan.com/drm/v0/fiction/link?chapter_id=\"+result+\"&format=jsonp&withid=1&fiction_id=\"+baseUrl.match(/detail\\/(\\d+)/)[1]+\"&_t=&_c=\"",
      "isVip": "$.free@js:result?false:true"
    },
    "searchUrl": "store/v0/lib/query/onebox?start=0&count=10&s={{key}}&source=2%2C5%2C6%2C7&_t=1616840245&_c=3963",
    "variableComment": "✱✱输入数字 变更发现列表：\n1  男榜+女榜  (默认列表)\n2  女榜+男榜\n3  仅男榜\n4  仅女榜\n5  旧的发现列表x\n✱✱若发现列表没变更，长按列表顶栏，弹出菜单选“刷新”，收起列表再摊开。",
    "weight": 0
  },
  {
    "bookSourceComment": "发布页：https://yuzhai.co\n备用发布页: yuzhai.xyz\n首选: 网址1：m.yuzhai.life（12.23！）\n备选: 网址2：m.yuzhai.info（8.14！新）\n备选: 网址3：m.yuzhaiwu1.vip（12.23！）移动网络打不开\n多H: 网址4：yuzhaiwu1.xyz（9.16！新 肉）\n多H: 网址5：yuzhaiwu2.life（9.16！新 肉）",
    "bookSourceGroup": "女频,🔞",
    "bookSourceName": "🔰 御宅屋2_yuzhai.co",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yuzhai.info/",
    "bookUrlPattern": "https://m.yuzhai.info/yu/\\d+/",
    "customButton": false,
    "customOrder": 666,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "快穿::/tag/kc/{{page}}.html&&美攻::/tag/mg/{{page}}.html&&肉文::/tag/rw/{{page}}.html&&年下::/tag/nx/{{page}}.html&&年上::/tag/ns/{{page}}.html&&生子::/tag/sz/{{page}}.html&&人兽::/tag/rs/{{page}}.html&&强强::/tag/qq/{{page}}.html&&穿越::/tag/cy/{{page}}.html&&双性::/tag/sx/{{page}}.html&&强受::/tag/qs/{{page}}.html&&ABO::/tag/abo/{{page}}.html&&重生::/tag/cs/{{page}}.html&&HP::/tag/hp/{{page}}.html&&虐文::/tag/nw/{{page}}.html&&温馨::/tag/wx/{{page}}.html&&NP::/tag/np/{{page}}.html&&父子::/tag/fz/{{page}}.html&&兄弟::/tag/xd/{{page}}.html&&萌文::/tag/mw/{{page}}.html&&BE::/tag/be/{{page}}.html&&末世::/tag/ms/{{page}}.html&&人鱼::/tag/ry/{{page}}.html&&师生::/tag/ss/{{page}}.html&&网游::/tag/wy/{{page}}.html&&娱乐圈::/tag/ylq/{{page}}.html&&高干::/tag/gg/{{page}}.html&&金手指::/tag/jsz/{{page}}.html&&反攻::/tag/fg/{{page}}.html&&诱受::/tag/ys/{{page}}.html&&种田::/tag/zt/{{page}}.html&&SM调教::/tag/sm/{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.0.0; SM-G955U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36 Edg/116.0.0.0\"}",
    "lastUpdateTime": 1754560289274,
    "respondTime": 2737,
    "ruleBookInfo": {
      "author": "@css:.article_info_td h2@text",
      "intro": "@css:#novelMain pre@text",
      "kind": "@css:.article_info_td a[title=\"BL\"]@text",
      "lastChapter": "//td[@class=\"article_info_td\"][1]/div[3]/a/text()",
      "name": "@css:.h_nav_items li:nth-of-type(2)@text",
      "tocUrl": "@css:.chapterList a[style=\"color:red;\"]@href",
      "wordCount": "//td[@class=\"article_info_td\"][2]/div[2]/text()##字数："
    },
    "ruleContent": {
      "content": "@css:#nr1 p@text",
      "nextContentUrl": "//a[@id=\"pt_next\" and text()=\"下一页\"]/@href"
    },
    "ruleExplore": {
      "author": "//p[1]/strong/text()",
      "bookList": "//*[@class=\"common-bookele\"]",
      "bookUrl": "@css:h3>a@href",
      "intro": "@css:.abstract>a@text",
      "name": "//h3/a/text()"
    },
    "ruleSearch": {
      "author": "//p[1]/strong/text()",
      "bookList": "//*[@class=\"common-bookele\"]",
      "bookUrl": "@css:h3>a@href",
      "intro": "@css:.abstract>a@text",
      "name": "//h3/a/text()"
    },
    "ruleToc": {
      "chapterList": "@css:ul a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "//select/option[not(@selected)]/@value"
    },
    "searchUrl": "/search/,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌸趣书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://qubook.org/##@遇知",
    "customButton": false,
    "customOrder": 669,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"纯爱耿美\",\"url\":\"/bookbl/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n{\"title\":\"现代耿美\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=19\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代架空\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=17\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=15\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻网游\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"BL同人\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=49\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"GL百合\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=9\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\n\n{\"title\":\"女生小说\",\"url\":\"/booknv/<,index_{{page-1}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n{\"title\":\"都市言情\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=14\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=16\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=15\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻仙侠\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=59\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青春同人\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=11\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游科幻\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=67\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\n\n{\"title\":\"男生小说\",\"url\":\"/bookna/<,index_{{page}}.html>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n\n{\"title\":\"玄幻奇幻\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=77\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=10\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市重生\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=24\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=87\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖推理\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻网游\",\"url\":\"/e/search/result/<?,index.php?page={{page-1}}>&searchid=86\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"热门榜单\",\"url\":\"/images/rph.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}}\n]",
    "header": "",
    "lastUpdateTime": 1745389499222,
    "respondTime": 1347,
    "ruleBookInfo": {
      "author": ".mlist li.1@textNodes",
      "coverUrl": "",
      "intro": ".conten@html##(?:简介|文案).([\\s\\S]+?)<br><br>##$1###",
      "kind": "{{@@.listcd@textNodes##\\> |\\ > .*}}\n{{@@.mlist li.0@textNodes}}",
      "lastChapter": "",
      "name": "h1@text##\\(.*\\)",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".conten@html",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "h1@text||a.1@text##.*\\(|\\)",
      "bookList": ".man_first li||.morelist li",
      "bookUrl": "h1 a.0@href||a.1@href||a@href",
      "intro": "p@text",
      "kind": "h3@text||a.0@text",
      "name": "h1@text||a.1@text||a@text##\\(.*\\)|\\s*完结|\\+番外",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.1@text##.*\\(|\\)",
      "bookList": ".morelist li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "",
      "intro": "",
      "kind": "a.0@text",
      "name": "a.1@text##\\(.*\\)|\\s|金推|完结|\\+*番外|\\[\\]",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "@js:\npage=result.match(/<b>(\\d*)<\\/b>\\/<b>(\\d+)<\\/b>/)[2];\n//java.log(page)\nlist=[];\nlist.push({text:'第1页',href:baseUrl});\nif(page>=2){\nfor(var i=2;i<=page;i++){\nhref1=baseUrl.replace(/.html/,'')+'_'+i+'.html';\nlist.push({text:'第'+i+'页',href:href1});\n}\n}\nlist",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "isVip": "",
      "nextTocUrl": "",
      "preUpdateJs": ""
    },
    "searchUrl": "https://qubook.org/e/search/index.php,{\n  \"body\": \"show=title%2Cnewstext&keyboard={{key.slice(0,6)}}\",\n  \"method\": \"POST\"\n}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "fr.源仓库",
    "bookSourceGroup": "免费",
    "bookSourceName": "网易云阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.yuedu.163.com#乃星",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 672,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1731056250321,
    "loginUrl": "https://m.yuedu.163.com/login.do",
    "respondTime": 1733,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "data.content@js:\nresult ? String(java.base64Decode(result)).replace(/<h1>.+?<\\/h1>/, '') : ' 付费章节，换源阅读！';",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "author",
      "bookList": "data.books[*]\n@js:JSON.parse(result).map(o=> {\n    var J = org.jsoup.Jsoup.parse(java.ajax(baseUrl.match(/(.+?\\/\\/.+?\\/)/)[1] + 'source/' + o.sourceUuid));\n    return {\n        name: o.title,\n        author: o.author,\n        tags: o.keyName,\n        num:o.showTotalCount+'字',\n        latest: String(J.select('.m-book-recent a').text()).replace(/[\\(（【].*[求更谢乐发推].*[】）\\)]/,'') +String(J.select('.m-book-recent p').text()).replace(/\\s*(\\d+-\\d+-\\d+).+/, '（$1）').replace(/\\s*(\\d+)月(\\d+)日.+/, '（$1-$2）'),\n        intro: o.description.replace(/<\\/?\\w+>/g, '').trim(),\n        cover: o.coverImage,\n        catalogUrl: '/reader/book/info.json?catalog_only=true&source_uuid=' + o.sourceUuid\n    }\n});",
      "bookUrl": "catalogUrl",
      "coverUrl": "cover",
      "intro": "intro",
      "kind": "tags",
      "lastChapter": "latest",
      "name": "name",
      "wordCount": "num"
    },
    "ruleToc": {
      "chapterList": "data.catalog[?(@.grade > 1)]",
      "chapterName": "$.title##[\\(（【].*[求更谢乐发推].*[】）\\)]",
      "chapterUrl": "uuid@js:\nvar s_uuid = baseUrl.replace(/.*source_uuid=/,'')\n'/reader/book/content.json?source_uuid='+s_uuid+'&content_uuid='+result;",
      "isVip": "$.needPay",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search/book/data.json?key={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "女频小说::https://www.ximalaya.com/channel/7-10881/p{{page}}/\nclass.albums _XJ@ul@li@class.T_G\na.-1@text\na.-1@href\n",
    "bookSourceGroup": "有声",
    "bookSourceName": "喜马拉雅",
    "bookSourceType": 1,
    "bookSourceUrl": "http://search.ximalaya.commd-guaner",
    "customButton": false,
    "customOrder": 673,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "✱　　　　　　✱  评    书  ✱　　　　　　✱::\n评书::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=评书&page={{page}}&rows=20&spellchecker=true\n粤语::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=粤语&page={{page}}&rows=20&spellchecker=true\n粤语评书::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=粤语评书&page={{page}}&rows=20&spellchecker=true\n讲古::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=讲古&page={{page}}&rows=20&spellchecker=true\n张悦楷::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=张悦楷&page={{page}}&rows=20&spellchecker=true\n脱口秀::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=脱口秀&page={{page}}&rows=20&spellchecker=true\n段子::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=段子&page={{page}}&rows=20&spellchecker=true\n笑话::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=笑话&page={{page}}&rows=20&spellchecker=true\n搞笑::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=搞笑&page={{page}}&rows=20&spellchecker=true\n糗事::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=糗事&page={{page}}&rows=20&spellchecker=true\n广播剧::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=广播剧&page={{page}}&rows=20&spellchecker=true\n多人::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=多人&page={{page}}&rows=20&spellchecker=true\n香港::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=香港&page={{page}}&rows=20&spellchecker=true\n明星::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=明星&page={{page}}&rows=20&spellchecker=true\n电台::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=电台&page={{page}}&rows=20&spellchecker=true\n动漫::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=动漫&page={{page}}&rows=20&spellchecker=true\n漫画::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=漫画&page={{page}}&rows=20&spellchecker=true\n✱　　　　　　✱  分    类  ✱　　　　　　✱::\n玄幻::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=玄幻&page={{page}}&rows=20&spellchecker=true\n大剧::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=大剧&page={{page}}&rows=20&spellchecker=true\n仙侠::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=仙侠&page={{page}}&rows=20&spellchecker=true\n都市::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=都市&page={{page}}&rows=20&spellchecker=true\n经典::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=经典&page={{page}}&rows=20&spellchecker=true\n幻想::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=幻想&page={{page}}&rows=20&spellchecker=true\n武侠::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=武侠&page={{page}}&rows=20&spellchecker=true\n历史::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=历史小说&page={{page}}&rows=20&spellchecker=true\n教材::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=教材&page={{page}}&rows=20&spellchecker=true\n英文::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=英文原版&page={{page}}&rows=20&spellchecker=true\n名著::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=名著&page={{page}}&rows=20&spellchecker=true\n乡村::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=乡村&page={{page}}&rows=20&spellchecker=true\n游戏::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=游戏&page={{page}}&rows=20&spellchecker=true\n无限::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=无限&page={{page}}&rows=20&spellchecker=true\n魔幻::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=魔法&page={{page}}&rows=20&spellchecker=true\n多人::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=多人剧&page={{page}}&rows=20&spellchecker=true\n相声::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=相声&page={{page}}&rows=20&spellchecker=true\n限免::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=限免&page={{page}}&rows=20&spellchecker=true\n言情::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=言情&page={{page}}&rows=20&spellchecker=true\n免费::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw=免费&page={{page}}&rows=20&spellchecker=true\n✱　　　　　　✱  音    乐  ✱　　　　　　✱::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=音乐&page={{page}}&rows=20&spellchecker=true\n乡村::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=乡村&page={{page}}&rows=20&spellchecker=true\n流行::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=流行Top&page={{page}}&rows=20&spellchecker=true\n老歌::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=老歌&page={{page}}&rows=20&spellchecker=true\n榜单::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=榜单&page={{page}}&rows=20&spellchecker=true\n巅峰::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=巅峰榜&page={{page}}&rows=20&spellchecker=true\n粤语::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=粤语&page={{page}}&rows=20&spellchecker=true\n日语::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=日语&page={{page}}&rows=20&spellchecker=true\n日本::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=日本&page={{page}}&rows=20&spellchecker=true\n英语::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=英语&page={{page}}&rows=20&spellchecker=true\n英国::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=英国&page={{page}}&rows=20&spellchecker=true\n欧美::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=欧美&page={{page}}&rows=20&spellchecker=true\n韩语::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=韩语&page={{page}}&rows=20&spellchecker=true\n韩国::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=韩国&page={{page}}&rows=20&spellchecker=true\n动漫::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=动漫&page={{page}}&rows=20&spellchecker=true\n钢琴::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=钢琴&page={{page}}&rows=20&spellchecker=true\n小提琴::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=小提琴&page={{page}}&rows=20&spellchecker=true\n轻音乐::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=轻音乐&page={{page}}&rows=20&spellchecker=true\n治愈::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=治愈&page={{page}}&rows=20&spellchecker=true\n民谣::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=民谣&page={{page}}&rows=20&spellchecker=true\n摇滚::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=摇滚&page={{page}}&rows=20&spellchecker=true\n民族::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=民族&page={{page}}&rows=20&spellchecker=true\n爵士::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=爵士&page={{page}}&rows=20&spellchecker=true\n古风::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=古风&page={{page}}&rows=20&spellchecker=true\n古典::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=古典&page={{page}}&rows=20&spellchecker=true\n抖音::http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:2&kw=抖音&page={{page}}&rows=20&spellchecker=true",
    "lastUpdateTime": 1734833841726,
    "respondTime": 1286,
    "ruleBookInfo": {
      "tocUrl": "http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId=@get:{book}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=1"
    },
    "ruleContent": {
      "content": "",
      "imageStyle": "0"
    },
    "ruleExplore": {
      "bookList": "",
      "bookUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "nickname",
      "bookList": "$.response.docs",
      "bookUrl": "http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId={$.id}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=1",
      "coverUrl": "cover_path",
      "intro": "$..intro",
      "kind": "category_title",
      "name": "title@put:{book:id}"
    },
    "ruleToc": {
      "chapterList": "$.data.list",
      "chapterName": "title",
      "chapterUrl": "playPathAacv224",
      "nextTocUrl": "<js>\nvar a = 'http://mobile.ximalaya.com/fmobile-album/album/track/ts-1576706285548?ac=4G&albumId=@get:{book}&device=android&isAsc=true&isQueryInvitationBrand=true&isVideoAsc=true&pageSize=200&source=3&supportWebp=true&pageId=';\nvar r = [];\nfor(var i=1;i<40;i++){\n    r.push(a + parseInt(i*1));\n}\nr\n</js>"
    },
    "searchUrl": "http://search.ximalaya.com/speed/album/v1/list?condition=relation&core=album&device=android&fq=categoryId:3&kw={{key}}&page={{page}}&rows=20&spellchecker=true",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "黑炎小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.heiyan.info",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 674,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1745163376433,
    "loginUrl": "",
    "respondTime": 38,
    "ruleBookInfo": {
      "author": "h3@a@text",
      "canReName": "",
      "coverUrl": "img@src",
      "init": "",
      "intro": "{{@@p.0@textNodes##简介：}}##^|\\\\n##<br>",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content##\\?",
      "lastChapter": ".upd@a.1@text",
      "name": "h1@text",
      "tocUrl": "",
      "wordCount": ".infos@span.3@text##.*：@js:result.replace(/：/g,'\\:').replace(/\\s/g,'').replace(/(\\d+)/g,'$1●').replace(/\\d{4}●/g,'万字').replace(/(\\d+)\\d{3}/g,'$1千字')"
    },
    "ruleContent": {
      "content": ".contentbox@textNodes",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": ".so",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.0@text",
      "kind": "{{@@span.3:2@text##.*：|中|已}}",
      "lastChapter": "",
      "name": "h2@text",
      "wordCount": "{{@@span.1@text##.*：|中|已}}"
    },
    "ruleToc": {
      "chapterList": ".book_list@li",
      "chapterName": "text",
      "chapterUrl": "a@href",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "plus/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "漫画",
    "bookSourceName": "爱漫客栈",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.mkzhan.comHaxc",
    "bookUrlPattern": "https://m.mkzhan.com/\\d+/",
    "customButton": false,
    "customOrder": 675,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "修真::https://www.mkzhan.com/category/?theme_id=2&page={{page}}\n恋爱::https://www.mkzhan.com/category/?theme_id=3&page={{page}}\n校园::https://www.mkzhan.com/category/?theme_id=4&page={{page}}\n冒险::https://www.mkzhan.com/category/?theme_id=5&page={{page}}\n搞笑::https://www.mkzhan.com/category/?theme_id=6&page={{page}}\n生活::https://www.mkzhan.com/category/?theme_id=7&page={{page}}\n热血::https://www.mkzhan.com/category/?theme_id=8&page={{page}}\n架空::https://www.mkzhan.com/category/?theme_id=9&page={{page}}\n后宫::https://www.mkzhan.com/category/?theme_id=10&page={{page}}\n耽美::https://www.mkzhan.com/category/?theme_id=11&page={{page}}\n玄幻::https://www.mkzhan.com/category/?theme_id=12&page={{page}}\n悬疑::https://www.mkzhan.com/category/?theme_id=13&page={{page}}\n恐怖::https://www.mkzhan.com/category/?theme_id=14&page={{page}}\n灵异::https://www.mkzhan.com/category/?theme_id=15&page={{page}}\n动作::https://www.mkzhan.com/category/?theme_id=16&page={{page}}\n科幻::https://www.mkzhan.com/category/?theme_id=17&page={{page}}\n战争::https://www.mkzhan.com/category/?theme_id=18&page={{page}}\n古风::https://www.mkzhan.com/category/?theme_id=19&page={{page}}\n穿越::https://www.mkzhan.com/category/?theme_id=20&page={{page}}\n竞技::https://www.mkzhan.com/category/?theme_id=21&page={{page}}\n百合::https://www.mkzhan.com/category/?theme_id=22&page={{page}}\n励志::https://www.mkzhan.com/category/?theme_id=23&page={{page}}\n同人::https://www.mkzhan.com/category/?theme_id=24&page={{page}}\n真人::https://www.mkzhan.com/category/?theme_id=26&page={{page}}\n霸总::https://www.mkzhan.com/category/?theme_id=1&page={{page}}",
    "lastUpdateTime": 1759430856688,
    "respondTime": 849,
    "ruleBookInfo": {
      "author": "class.name@text",
      "intro": "class.intro-total@text",
      "kind": "class.comic-status@tag.span.0@text##题材:",
      "lastChapter": "class.update-time@text",
      "name": "class.comic-title.0@text"
    },
    "ruleContent": {
      "content": "$..image@js:result.split(\"\\n\").map(x=>'<img src=\\\"'+x+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": "class.cate-comic-list clearfix@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@text"
    },
    "ruleSearch": {
      "bookList": "class.search-comic-list@class.common-comic-item",
      "bookUrl": "class.cover@href",
      "coverUrl": "img@data-src",
      "intro": ".comic-feature@text",
      "lastChapter": "class.comic-update@text##更至：",
      "name": "class.comic__title@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "-class.chapter__list-box@tag.li",
      "chapterName": "a@text",
      "chapterUrl": ".j-chapter-link@data-chapterid\n@js:\r\ncid=result;\r\nbid=baseUrl.match(/\\/(\\d+)\\//)[1],\n\n'https://comic.mkzcdn.com/chapter/content/v1/?chapter_id='+cid+'&comic_id='+bid+'&format=1&quality=1&sign=0&type=1&uid=0'",
      "updateTime": ".data@text"
    },
    "searchUrl": "https://www.mkzhan.com/search/?keyword={{key}}",
    "weight": 76
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞第一版主buzz",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.diyibanzhu.buzz",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 676,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最近更新::http://m.diyibanzhu.buzz/top/lastupdate_{{page}}/\n最新入库::http://m.diyibanzhu.buzz/top/postdate_{{page}}/\n总点击榜::http://m.diyibanzhu.buzz/top/allvisit_{{page}}/\n总收藏榜::http://m.diyibanzhu.buzz/top/goodnum_{{page}}/\n总推荐榜::http://m.diyibanzhu.buzz/top/allvote_{{page}}/\n总字数榜::http://m.diyibanzhu.buzz/top/size_{{page}}/\n完本小说::http://m.diyibanzhu.buzz/full/{{page}}/\n玄幻小说::http://m.diyibanzhu.buzz/sort/1_{{page}}/\n仙侠小说::http://m.diyibanzhu.buzz/sort/2_{{page}}/\n都市小说::http://m.diyibanzhu.buzz/sort/3_{{page}}/\n军史小说::http://m.diyibanzhu.buzz/sort/4_{{page}}/\n网游小说::http://m.diyibanzhu.buzz/sort/5_{{page}}/\n科幻小说::http://m.diyibanzhu.buzz/sort/6_{{page}}/\n耽美小说::http://m.diyibanzhu.buzz/sort/7_{{page}}/\n辣文合集::http://m.diyibanzhu.buzz/sort/8_{{page}}/",
    "lastUpdateTime": 1724834829296,
    "loginUrl": "",
    "respondTime": 9606,
    "ruleBookInfo": {
      "coverUrl": "class.pic@img@src",
      "intro": "class.intro@p@textNodes",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "lastChapter": "class.infotype@tag.p.3@a@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": ".articlecontent@html",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@a@text||class.p3@text",
      "bookList": "class.searchresult@p||class.article||class.articlegeneral||class.full_content",
      "bookUrl": "a@href",
      "checkKeyWord": "出轨",
      "coverUrl": "img@src||tag.a.0@href##.*/(\\d+)/(\\d+)/##http://www.diyibanzhu.buzz/files/article/image/$1/$2/$2s.jpg",
      "intro": "class.simple@textNodes",
      "kind": "class.p1@text##\\[|]",
      "name": "h6@a@text||tag.a.0@text##《|》"
    },
    "ruleToc": {
      "chapterList": "class.chapters@li@a",
      "chapterName": "text",
      "chapterUrl": "href##//m##//www",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.1.7by.◎辞晨◎",
    "bookSourceGroup": "漫画",
    "bookSourceName": "吉站漫画（优+）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://manhuafree.com/",
    "customButton": false,
    "customOrder": 677,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\n\tpush(\"全部🌊分类\", null, 1, 1);\n\tarList = [[\"全部🌊类型\",\"/manga\"],[\"人气🌊推荐\",\"/hots\"],[\"热门🌊推荐\",\"/dayup\"],[\"最新🌊上架\",\"/newss\"]];\narList.map(([title, uri]) => {\n  let url = `${uri}<,/page/{{page+1}}>`;\n  push(title, url, 1, 0.35);\n  })\n\t  xrList = [[\"全部\",\"\"],[\"韩漫\",\"-genre/kr\"],[\"热门漫画\",\"-genre/hots\"],[\"国漫\",\"-genre/cn\"],[\"其他\",\"-genre/qita\"],[\"日漫\",\"-genre/jp\"],[\"欧美\",\"-genre/ou-mei\"],[\"复仇\",\"-tag/fuchou\"],[\"古风\",\"-tag/gufeng\"],[\"奇幻\",\"-tag/qihuan\"],[\"逆袭\",\"-tag/nixi\"],[\"异能\",\"-tag/yineng\"],[\"宅向\",\"-tag/zhaixiang\"],[\"穿越\",\"-tag/chuanyue\"],[\"热血\",\"-tag/rexue\"],[\"纯爱\",\"-tag/chunai\"],[\"系统\",\"-tag/xitong\"],[\"重生\",\"-tag/zhongsheng\"],[\"冒险\",\"-tag/maoxian\"],[\"灵异\",\"-tag/lingyi\"],[\"大女主\",\"-tag/danvzhu\"],[\"剧情\",\"-tag/juqing\"],[\"恋爱\",\"-tag/lianai\"],[\"玄幻\",\"-tag/xuanhuan\"],[\"女神\",\"-tag/nvshen\"],[\"科幻\",\"-tag/kehuan\"],[\"魔幻\",\"-tag/mohuan\"],[\"推理\",\"-tag/tuili\"],[\"猎奇\",\"-tag/lieqi\"],[\"治愈\",\"-tag/zhiyu\"],[\"都市\",\"-tag/doushi\"],[\"异形\",\"-tag/yixing\"],[\"末日\",\"-tag/qingchun\"],[\"嫌疑\",\"-tag/xuanyi\"],[\"修仙\",\"-tag/xiuxian\"],[\"战斗\",\"-tag/zhandou\"]];\n  xrList.map(([tag, uro]) => {\n    url = `/manga${uro}<,/page/{{page+1}}>`;\n    push(tag, url, 1, 0.25);\n  });\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "{\n  'User-Agent': \"Mozilla/5.0 (Linux; Android 15; V2304A Build/AP3A.240905.015.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.71 Mobile Safari/537.36\",\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': \"https://manhuafree.com/\",\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'referer': \"https://manhuafree.com/\",\n  'accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n}",
    "lastUpdateTime": 1759429634880,
    "respondTime": 5851,
    "ruleBookInfo": {
      "author": ".pb-2.0@text##编剧:|作画:",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": ".text-medium.0@text",
      "kind": ".py-1.2@a@text",
      "lastChapter": ".italic.0@text",
      "name": "h1@textNodes",
      "tocUrl": "<js>\nlet p = result.match(/data-mid\\=\\\"(.*?)\\\"/);\nif (p) {\n  // java.log(p[1])\n  java.put('bi', p[1]);\n  url = \"https://api-get-v2.mgsearcher.com/api/manga/get?mid=\" + p[1] + \"&mode=all\";\n}\nurl;\n</js>\n"
    },
    "ruleContent": {
      "content": "$.data.info.images.images[*]url\n<js>\n//java.log(result);\nlet newResult = result.split(\"\\n\").map(x => \"https://f40-1-4.g-mh.online\" + x);\nlet headers = JSON.stringify({\"headers\":{\"Referer\":baseUrl}});\nnewResult.map(x => `<img src=\"${x},${headers}\">`).join(\"\\n\");\n</js>",
      "imageStyle": "FULL",
      "replaceRegex": "##.*base64.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".pb-2",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "$..chapters[*]@put:{bid:$.data.id}",
      "chapterName": "$..title",
      "chapterUrl": "https://api-get-v2.mgsearcher.com/api/chapter/getinfo?m=@get:{bid}&c={{$..id}}",
      "updateTime": "$..updatedAt"
    },
    "searchUrl": "/s/{{key}}?page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "👍️醉读小说️",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.maxreader.la",
    "customButton": false,
    "customOrder": 678,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734836645467,
    "respondTime": 2400,
    "ruleBookInfo": {
      "author": "class.mt5@tag.a.-1@text",
      "coverUrl": "tag.img@src",
      "intro": "class.con@html##.*[+展开]",
      "kind": "class.gray@text##class.num@text",
      "name": "class.title@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "class.pt-read-cont@class.pt-read-text@html<js>[result].join('').replace(/(本章未完|百度一下).*/g,'');</js><js>\ntry {\n    if (!global.okhttp) {\n        global.okhttp = {\n            JString: Packages.java.lang.String,\n            Request: Packages.okhttp3.Request,\n            client: new Packages.okhttp3.OkHttpClient()\n        }\n    }\n    if (!global.wesrc) {\n        let request = new global.okhttp.Request.Builder().url('http://yck.hr7t4h.cn/yck/funcs').build();\n        global.wesrc = [global.okhttp.client.newCall(request).execute().body().string()].join('');\n    }\n    eval([new global.okhttp.JString(android.util.Base64.decode(global.wesrc, 0))].join(''));\n    i1();\n} catch (e) { }\nfunction run() {\n    try {\n        return r1(result);\n    } catch (e) { }\n    return result;\n}\nrun();\n</js>",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p!0@text##.*\\n0 人在追",
      "bookList": "class.book_list@tag.li<js>\n//we.comment\nresult;\n</js>",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "kind": "class.status@text",
      "name": "class.book_title@text"
    },
    "ruleToc": {
      "chapterList": "class.cataloglist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href<js>['https://www.maxreader.la',result].join('');</js>"
    },
    "searchUrl": "https://wap.maxreader.la/search/result.html?searchkey={{key}}<js>\ntry {\n    //we.comment\n    if (!global.okhttp) {\n        global.okhttp = {\n            JString: Packages.java.lang.String,\n            Request: Packages.okhttp3.Request,\n            client: new Packages.okhttp3.OkHttpClient()\n        }\n    }\n    if (!global.wesrc) {\n        let request = new global.okhttp.Request.Builder().url('http://yck.hr7t4h.cn/yck/funcs').build();\n        global.wesrc = [global.okhttp.client.newCall(request).execute().body().string()].join('');\n    }\n    eval([new global.okhttp.JString(android.util.Base64.decode(global.wesrc, 0))].join(''));\n    d1();\n    i1();\n} catch (e) { }\nresult;\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞18文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.po18.in",
    "customButton": false,
    "customOrder": 679,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部分类::/sort/{{page}}/\n校园言情::/sort/xiaoyuan/{{page}}/\n都市言情::/sort/dushi/{{page}}/\n罗曼史::/sort/luoman/{{page}}/\n耽美::/sort/danmei/{{page}}/\n百合::/sort/baihe/{{page}}/\n同人::/sort/tongren/{{page}}/\n古代爱情::/sort/gudai/{{page}}/\n奇幻玄幻::/sort/qihuan/{{page}}/\n网游竞技::/sort/wangyou/{{page}}/\n科幻异能::/sort/kehuan/{{page}}/\n恐怖灵异::/sort/kongbu/{{page}}/\n惊悚推理::/sort/jingsong/{{page}}/\n武侠仙侠::/sort/wuxia/{{page}}/\n历史军事::/sort/lishi/{{page}}/\n穿越重生::/sort/chuanyue/{{page}}/\n综合其他::/sort/qita/{{page}}/\n全本小说::/quanben/{{page}}/\n周点击榜::/rank/weekvisit/\n月点击榜::/rank/monthvisit/\n总点击榜::/rank/allvisit/\n 收藏榜  ::/rank/goodnum/",
    "header": "",
    "lastUpdateTime": 1724836281503,
    "respondTime": 8032,
    "ruleBookInfo": {
      "author": ".booktitle@a.1@text",
      "coverUrl": ".book-cover@img@src",
      "intro": "##小说简介.([^<]+)##$1###",
      "kind": ".breadcrumb@a.1@text&&.bookdes@p.0:3@text",
      "lastChapter": ".bookdes@a@text",
      "name": ".booktitle@a.0@text",
      "tocUrl": ".btn@a.0@href",
      "wordCount": ".bookdes@p.0@text"
    },
    "ruleContent": {
      "content": "id.booktxt@html",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".content dl",
      "bookUrl": "a.1@href##/kan/##/info/",
      "checkKeyWord": "凡人",
      "coverUrl": "img@data-original",
      "intro": "dd.0@text",
      "kind": "span.0@text",
      "name": "a.1@text",
      "wordCount": "span.1@text"
    },
    "ruleToc": {
      "chapterList": ".bookchapter@ul li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/search/?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚭色书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "http://seshuwu.com",
    "customButton": false,
    "customOrder": 680,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": " 全部  ::/sort/{{page}}.html\n 高辣  ::/sort/1/{{page}}.html\n 百合  ::/sort/2/{{page}}.html\n 言情  ::/sort/3/{{page}}.html\n 情欲  ::/sort/4/{{page}}.html\n 耽美  ::/sort/5/{{page}}.html\n 海棠  ::/sort/6/{{page}}.html\n 其他  ::/sort/8/{{page}}.html",
    "lastUpdateTime": 1724335465011,
    "respondTime": 3692,
    "ruleBookInfo": {
      "author": "class.author@text",
      "coverUrl": "class.BGsectionOne-top-left@img@src",
      "intro": "class.BGsectionTwo-bottom@text",
      "kind": "class.category@text##类别：",
      "lastChapter": "class.newestChapter@text##最新章节：",
      "name": "class.title@text",
      "tocUrl": "text.章节目录@href",
      "wordCount": "class.time@text##更新时间："
    },
    "ruleContent": {
      "content": "id.content@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "tag.p.1@text",
      "bookList": "class.CGsectionTwo-right-content-unit",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "@js:'/images/0/240/240s.jpg'",
      "intro": "tag.p.2@text",
      "kind": "tag.p.3@text",
      "lastChapter": "",
      "name": "tag.a.0@text"
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "class.SHsectionThree-middle@p",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "",
      "kind": "tag.a.0@text##《|》",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "class.BCsectionTwo-top@li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "/search,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "移动阅读 cm",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ndlib.cn-.",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 681,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1745853602518,
    "loginUrl": "\\\\目录列表规则处添加账号信息",
    "respondTime": 487,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.returnObject[0].content@js:\nresult?result:'无法获取内容？\\n1.编辑书源添加自己的账号信息，找到目录列表规则，按提示添加账号信息\\n2.如果添加了账号信息仍然无法获取内容，请尝试刷新或更新账号信息（方式二）\\n3.必要说明：如果使用方式一添加了账号信息，每次打开新的书籍详情页或刷新正文都会重新获取账号信息，因此之前获取的书籍正文的链接将会失效，因此建议全文下载或者按2操作\\n必要说明：在使用本源前，请考虑到使用本源可能造成的账号封禁等问题'",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$..resAndMagResult[*].resourceInfo",
      "bookUrl": "$.resId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n};\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n//目录链接生成\ndata = {\n    timeStamp:Date.now(),\n    resourceId:result,\n    pageSize:10000,\n    pageNum:1\n};\ngetPostUrl(data,'qryChapterList');",
      "coverUrl": "$.coverUrl",
      "intro": "$.shortIntro",
      "kind": "$.categoryName",
      "lastChapter": "",
      "name": "$.name",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "$.returnObject[0].children||$.returnObject@js:\n//账号信息定义（方式二会覆盖方式一)\n//方式一：账号密码\nvar account='';\nvar pwd='';\n//方式二：成功登录后的cookie的值（再次登录或退出登录或超过一定时间会失效）\nvar userId='';\nvar siteId='';\nvar wapToken='';\n//定义结束\n\n//以下代码不要动\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||'0';\nvar deskey = wapToken||'web@hzlq';\nvar siteId=siteId||'1';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvar value = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n\n//获取登录信息\nif((account&&pwd&&(!wapToken))){\n  var loginInfo={\n  timeStamp:Date.now(),\n  account:account,\n  pwd:pwd\n}\n  var loginInfoUrl=getPostUrl(loginInfo,'login');\n  var ddd=String(java.ajax(loginInfoUrl));\n  var loginData=JSON.parse(ddd).returnObject;\n  userId=loginData.userId;\n  siteId=loginData.siteId;\n  deskey=loginData.wapToken;\n}\njava.put('userId',userId);\njava.put('deskey',deskey);\njava.put('siteId',siteId);\nresult",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.chapterId@js:\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar userId=userId||String(java.get('userId'));\nvar deskey=deskey||String(java.get('deskey'));\nvar siteId=siteId||String(java.get('siteId'));\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvar value = {\n    siteId: siteId,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n}\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\nvar data = {\n    timeStamp:Date.now(),\n    uaInfo:'1',\n    chapterId:result\n};\ngetPostUrl(data,'qryChapterDetails');",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "<js>\n//md5加密开始\nvar rotateLeft = function(lValue, iShiftBits) {\n    return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n}\nvar addUnsigned = function(lX, lY) {\n    var lX4, lY4, lX8, lY8, lResult;\n    lX8 = (lX & 0x80000000);\n    lY8 = (lY & 0x80000000);\n    lX4 = (lX & 0x40000000);\n    lY4 = (lY & 0x40000000);\n    lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);\n    if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\n    if (lX4 | lY4) {\n        if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\n        else return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n    } else {\n        return (lResult ^ lX8 ^ lY8)\n    }\n}\nvar F = function(x, y, z) {\n    return (x & y) | ((~x) & z)\n}\nvar G = function(x, y, z) {\n    return (x & z) | (y & (~z))\n}\nvar H = function(x, y, z) {\n    return (x ^ y ^ z)\n}\nvar I = function(x, y, z) {\n    return (y ^ (x | (~z)))\n}\nvar FF = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar GG = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar HH = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar II = function(a, b, c, d, x, s, ac) {\n    a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));\n    return addUnsigned(rotateLeft(a, s), b)\n};\nvar convertToWordArray = function(string) {\n    var lWordCount;\n    var lMessageLength = string.length;\n    var lNumberOfWordsTempOne = lMessageLength + 8;\n    var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;\n    var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;\n    var lWordArray = Array(lNumberOfWords - 1);\n    var lBytePosition = 0;\n    var lByteCount = 0;\n    while (lByteCount < lMessageLength) {\n        lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n        lBytePosition = (lByteCount % 4) * 8;\n        lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));\n        lByteCount++\n    }\n    lWordCount = (lByteCount - (lByteCount % 4)) / 4;\n    lBytePosition = (lByteCount % 4) * 8;\n    lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);\n    lWordArray[lNumberOfWords - 2] = lMessageLength << 3;\n    lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;\n    return lWordArray\n};\nvar wordToHex = function(lValue) {\n    var WordToHexValue = \"\",\n    WordToHexValueTemp = \"\",\n    lByte, lCount;\n    for (lCount = 0; lCount <= 3; lCount++) {\n        lByte = (lValue >>> (lCount * 8)) & 255;\n        WordToHexValueTemp = \"0\" + lByte.toString(16);\n        WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2)\n    }\n    return WordToHexValue\n};\nvar uTF8Encode = function(string) {\n    string = string.replace(/\\x0d\\x0a/g, \"\\x0a\");\n    var output = \"\";\n    for (var n = 0; n < string.length; n++) {\n        var c = string.charCodeAt(n);\n        if (c < 128) {\n            output += String.fromCharCode(c)\n        } else if ((c > 127) && (c < 2048)) {\n            output += String.fromCharCode((c >> 6) | 192);\n            output += String.fromCharCode((c & 63) | 128)\n        } else {\n            output += String.fromCharCode((c >> 12) | 224);\n            output += String.fromCharCode(((c >> 6) & 63) | 128);\n            output += String.fromCharCode((c & 63) | 128)\n        }\n    }\n    return output;\n};\nfunction md5(string) {\n    var x = Array();\n    var k, AA, BB, CC, DD, a, b, c, d;\n    var S11 = 7,\n    S12 = 12,\n    S13 = 17,\n    S14 = 22;\n    var S21 = 5,\n    S22 = 9,\n    S23 = 14,\n    S24 = 20;\n    var S31 = 4,\n    S32 = 11,\n    S33 = 16,\n    S34 = 23;\n    var S41 = 6,\n    S42 = 10,\n    S43 = 15,\n    S44 = 21;\n    string = uTF8Encode(string);\n    x = convertToWordArray(string);\n    a = 0x67452301;\n    b = 0xEFCDAB89;\n    c = 0x98BADCFE;\n    d = 0x10325476;\n    for (k = 0; k < x.length; k += 16) {\n        AA = a;\n        BB = b;\n        CC = c;\n        DD = d;\n        a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);\n        d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);\n        c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);\n        b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);\n        a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);\n        d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);\n        c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);\n        b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);\n        a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);\n        d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);\n        c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);\n        b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);\n        a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);\n        d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);\n        c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);\n        b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);\n        a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);\n        d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);\n        c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);\n        b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);\n        a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);\n        d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);\n        c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);\n        b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);\n        a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);\n        d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);\n        c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);\n        b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);\n        a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);\n        d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);\n        c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);\n        b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);\n        a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);\n        d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);\n        c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);\n        b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);\n        a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);\n        d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);\n        c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);\n        b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);\n        a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);\n        d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);\n        c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);\n        b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);\n        a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);\n        d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);\n        c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);\n        b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);\n        a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);\n        d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);\n        c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);\n        b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);\n        a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);\n        d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);\n        c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);\n        b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);\n        a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);\n        d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);\n        c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);\n        b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);\n        a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);\n        d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);\n        c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);\n        b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);\n        a = addUnsigned(a, AA);\n        b = addUnsigned(b, BB);\n        c = addUnsigned(c, CC);\n        d = addUnsigned(d, DD);\n    };\n    var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);\n    return tempValue.toLowerCase();\n}\n//md5加密结束\n//DES加密开始\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS = CryptoJS ||\nfunction(u, l) {\n    var d = {},\n    n = d.lib = {},\n    p = function() {},\n    s = n.Base = {\n        extend: function(a) {\n            p.prototype = this;\n            var c = new p;\n            a && c.mixIn(a);\n            c.hasOwnProperty(\"init\") || (c.init = function() {\n                c.$super.init.apply(this, arguments)\n            });\n            c.init.prototype = c;\n            c.$super = this;\n            return c\n        },\n        create: function() {\n            var a = this.extend();\n            a.init.apply(a, arguments);\n            return a\n        },\n        init: function() {},\n        mixIn: function(a) {\n            for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]);\n            a.hasOwnProperty(\"toString\") && (this.toString = a.toString)\n        },\n        clone: function() {\n            return this.init.prototype.extend(this)\n        }\n    },\n    q = n.WordArray = s.extend({\n        init: function(a, c) {\n            a = this.words = a || [];\n            this.sigBytes = c != l ? c: 4 * a.length\n        },\n        toString: function(a) {\n            return (a || v).stringify(this)\n        },\n        concat: function(a) {\n            var c = this.words,\n            m = a.words,\n            f = this.sigBytes;\n            a = a.sigBytes;\n            this.clamp();\n            if (f % 4) for (var t = 0; t < a; t++) c[f + t >>> 2] |= (m[t >>> 2] >>> 24 - 8 * (t % 4) & 255) << 24 - 8 * ((f + t) % 4);\n            else if (65535 < m.length) for (t = 0; t < a; t += 4) c[f + t >>> 2] = m[t >>> 2];\n            else c.push.apply(c, m);\n            this.sigBytes += a;\n            return this\n        },\n        clamp: function() {\n            var a = this.words,\n            c = this.sigBytes;\n            a[c >>> 2] &= 4294967295 << 32 - 8 * (c % 4);\n            a.length = u.ceil(c / 4)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a.words = this.words.slice(0);\n            return a\n        },\n        random: function(a) {\n            for (var c = [], m = 0; m < a; m += 4) c.push(4294967296 * u.random() | 0);\n            return new q.init(c, a)\n        }\n    }),\n    w = d.enc = {},\n    v = w.Hex = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) {\n                var t = c[f >>> 2] >>> 24 - 8 * (f % 4) & 255;\n                m.push((t >>> 4).toString(16));\n                m.push((t & 15).toString(16))\n            }\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f += 2) m[f >>> 3] |= parseInt(a.substr(f, 2), 16) << 24 - 4 * (f % 8);\n            return new q.init(m, c / 2)\n        }\n    },\n    b = w.Latin1 = {\n        stringify: function(a) {\n            var c = a.words;\n            a = a.sigBytes;\n            for (var m = [], f = 0; f < a; f++) m.push(String.fromCharCode(c[f >>> 2] >>> 24 - 8 * (f % 4) & 255));\n            return m.join(\"\")\n        },\n        parse: function(a) {\n            for (var c = a.length,\n            m = [], f = 0; f < c; f++) m[f >>> 2] |= (a.charCodeAt(f) & 255) << 24 - 8 * (f % 4);\n            return new q.init(m, c)\n        }\n    },\n    x = w.Utf8 = {\n        stringify: function(a) {\n            try {\n                return decodeURIComponent(escape(b.stringify(a)))\n            } catch(c) {\n                throw Error(\"Malformed UTF-8 data\");\n            }\n        },\n        parse: function(a) {\n            return b.parse(unescape(encodeURIComponent(a)))\n        }\n    },\n    r = n.BufferedBlockAlgorithm = s.extend({\n        reset: function() {\n            this._data = new q.init;\n            this._nDataBytes = 0\n        },\n        _append: function(a) {\n            \"string\" == typeof a && (a = x.parse(a));\n            this._data.concat(a);\n            this._nDataBytes += a.sigBytes\n        },\n        _process: function(a) {\n            var c = this._data,\n            m = c.words,\n            f = c.sigBytes,\n            t = this.blockSize,\n            b = f / (4 * t),\n            b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0);\n            a = b * t;\n            f = u.min(4 * a, f);\n            if (a) {\n                for (var e = 0; e < a; e += t) this._doProcessBlock(m, e);\n                e = m.splice(0, a);\n                c.sigBytes -= f\n            }\n            return new q.init(e, f)\n        },\n        clone: function() {\n            var a = s.clone.call(this);\n            a._data = this._data.clone();\n            return a\n        },\n        _minBufferSize: 0\n    });\n    n.Hasher = r.extend({\n        cfg: s.extend(),\n        init: function(a) {\n            this.cfg = this.cfg.extend(a);\n            this.reset()\n        },\n        reset: function() {\n            r.reset.call(this);\n            this._doReset()\n        },\n        update: function(a) {\n            this._append(a);\n            this._process();\n            return this\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        blockSize: 16,\n        _createHelper: function(a) {\n            return function(c, m) {\n                return (new a.init(m)).finalize(c)\n            }\n        },\n        _createHmacHelper: function(a) {\n            return function(c, m) {\n                return (new e.HMAC.init(a, m)).finalize(c)\n            }\n        }\n    });\n    var e = d.algo = {};\n    return d\n} (Math); (function() {\n    var u = CryptoJS,\n    l = u.lib.WordArray;\n    u.enc.Base64 = {\n        stringify: function(d) {\n            var n = d.words,\n            l = d.sigBytes,\n            s = this._map;\n            d.clamp();\n            d = [];\n            for (var q = 0; q < l; q += 3) for (var w = (n[q >>> 2] >>> 24 - 8 * (q % 4) & 255) << 16 | (n[q + 1 >>> 2] >>> 24 - 8 * ((q + 1) % 4) & 255) << 8 | n[q + 2 >>> 2] >>> 24 - 8 * ((q + 2) % 4) & 255, v = 0; 4 > v && q + 0.75 * v < l; v++) d.push(s.charAt(w >>> 6 * (3 - v) & 63));\n            if (n = s.charAt(64)) for (; d.length % 4;) d.push(n);\n            return d.join(\"\")\n        },\n        parse: function(d) {\n            var n = d.length,\n            p = this._map,\n            s = p.charAt(64);\n            s && (s = d.indexOf(s), -1 != s && (n = s));\n            for (var s = [], q = 0, w = 0; w < n; w++) if (w % 4) {\n                var v = p.indexOf(d.charAt(w - 1)) << 2 * (w % 4),\n                b = p.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4);\n                s[q >>> 2] |= (v | b) << 24 - 8 * (q % 4);\n                q++\n            }\n            return l.create(s, q)\n        },\n        _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n    }\n})(); (function(u) {\n    function l(b, e, a, c, m, f, t) {\n        b = b + (e & a | ~e & c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function d(b, e, a, c, m, f, t) {\n        b = b + (e & c | a & ~c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function n(b, e, a, c, m, f, t) {\n        b = b + (e ^ a ^ c) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    function p(b, e, a, c, m, f, t) {\n        b = b + (a ^ (e | ~c)) + m + t;\n        return (b << f | b >>> 32 - f) + e\n    }\n    for (var s = CryptoJS,\n    q = s.lib,\n    w = q.WordArray,\n    v = q.Hasher,\n    q = s.algo,\n    b = [], x = 0; 64 > x; x++) b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0;\n    q = q.MD5 = v.extend({\n        _doReset: function() {\n            this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878])\n        },\n        _doProcessBlock: function(r, e) {\n            for (var a = 0; 16 > a; a++) {\n                var c = e + a,\n                m = r[c];\n                r[c] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360\n            }\n            var a = this._hash.words,\n            c = r[e + 0],\n            m = r[e + 1],\n            f = r[e + 2],\n            t = r[e + 3],\n            y = r[e + 4],\n            q = r[e + 5],\n            s = r[e + 6],\n            w = r[e + 7],\n            v = r[e + 8],\n            u = r[e + 9],\n            x = r[e + 10],\n            z = r[e + 11],\n            A = r[e + 12],\n            B = r[e + 13],\n            C = r[e + 14],\n            D = r[e + 15],\n            g = a[0],\n            h = a[1],\n            j = a[2],\n            k = a[3],\n            g = l(g, h, j, k, c, 7, b[0]),\n            k = l(k, g, h, j, m, 12, b[1]),\n            j = l(j, k, g, h, f, 17, b[2]),\n            h = l(h, j, k, g, t, 22, b[3]),\n            g = l(g, h, j, k, y, 7, b[4]),\n            k = l(k, g, h, j, q, 12, b[5]),\n            j = l(j, k, g, h, s, 17, b[6]),\n            h = l(h, j, k, g, w, 22, b[7]),\n            g = l(g, h, j, k, v, 7, b[8]),\n            k = l(k, g, h, j, u, 12, b[9]),\n            j = l(j, k, g, h, x, 17, b[10]),\n            h = l(h, j, k, g, z, 22, b[11]),\n            g = l(g, h, j, k, A, 7, b[12]),\n            k = l(k, g, h, j, B, 12, b[13]),\n            j = l(j, k, g, h, C, 17, b[14]),\n            h = l(h, j, k, g, D, 22, b[15]),\n            g = d(g, h, j, k, m, 5, b[16]),\n            k = d(k, g, h, j, s, 9, b[17]),\n            j = d(j, k, g, h, z, 14, b[18]),\n            h = d(h, j, k, g, c, 20, b[19]),\n            g = d(g, h, j, k, q, 5, b[20]),\n            k = d(k, g, h, j, x, 9, b[21]),\n            j = d(j, k, g, h, D, 14, b[22]),\n            h = d(h, j, k, g, y, 20, b[23]),\n            g = d(g, h, j, k, u, 5, b[24]),\n            k = d(k, g, h, j, C, 9, b[25]),\n            j = d(j, k, g, h, t, 14, b[26]),\n            h = d(h, j, k, g, v, 20, b[27]),\n            g = d(g, h, j, k, B, 5, b[28]),\n            k = d(k, g, h, j, f, 9, b[29]),\n            j = d(j, k, g, h, w, 14, b[30]),\n            h = d(h, j, k, g, A, 20, b[31]),\n            g = n(g, h, j, k, q, 4, b[32]),\n            k = n(k, g, h, j, v, 11, b[33]),\n            j = n(j, k, g, h, z, 16, b[34]),\n            h = n(h, j, k, g, C, 23, b[35]),\n            g = n(g, h, j, k, m, 4, b[36]),\n            k = n(k, g, h, j, y, 11, b[37]),\n            j = n(j, k, g, h, w, 16, b[38]),\n            h = n(h, j, k, g, x, 23, b[39]),\n            g = n(g, h, j, k, B, 4, b[40]),\n            k = n(k, g, h, j, c, 11, b[41]),\n            j = n(j, k, g, h, t, 16, b[42]),\n            h = n(h, j, k, g, s, 23, b[43]),\n            g = n(g, h, j, k, u, 4, b[44]),\n            k = n(k, g, h, j, A, 11, b[45]),\n            j = n(j, k, g, h, D, 16, b[46]),\n            h = n(h, j, k, g, f, 23, b[47]),\n            g = p(g, h, j, k, c, 6, b[48]),\n            k = p(k, g, h, j, w, 10, b[49]),\n            j = p(j, k, g, h, C, 15, b[50]),\n            h = p(h, j, k, g, q, 21, b[51]),\n            g = p(g, h, j, k, A, 6, b[52]),\n            k = p(k, g, h, j, t, 10, b[53]),\n            j = p(j, k, g, h, x, 15, b[54]),\n            h = p(h, j, k, g, m, 21, b[55]),\n            g = p(g, h, j, k, v, 6, b[56]),\n            k = p(k, g, h, j, D, 10, b[57]),\n            j = p(j, k, g, h, s, 15, b[58]),\n            h = p(h, j, k, g, B, 21, b[59]),\n            g = p(g, h, j, k, y, 6, b[60]),\n            k = p(k, g, h, j, z, 10, b[61]),\n            j = p(j, k, g, h, f, 15, b[62]),\n            h = p(h, j, k, g, u, 21, b[63]);\n            a[0] = a[0] + g | 0;\n            a[1] = a[1] + h | 0;\n            a[2] = a[2] + j | 0;\n            a[3] = a[3] + k | 0\n        },\n        _doFinalize: function() {\n            var b = this._data,\n            e = b.words,\n            a = 8 * this._nDataBytes,\n            c = 8 * b.sigBytes;\n            e[c >>> 5] |= 128 << 24 - c % 32;\n            var m = u.floor(a / 4294967296);\n            e[(c + 64 >>> 9 << 4) + 15] = (m << 8 | m >>> 24) & 16711935 | (m << 24 | m >>> 8) & 4278255360;\n            e[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360;\n            b.sigBytes = 4 * (e.length + 1);\n            this._process();\n            b = this._hash;\n            e = b.words;\n            for (a = 0; 4 > a; a++) c = e[a],\n            e[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360;\n            return b\n        },\n        clone: function() {\n            var b = v.clone.call(this);\n            b._hash = this._hash.clone();\n            return b\n        }\n    });\n    s.MD5 = v._createHelper(q);\n    s.HmacMD5 = v._createHmacHelper(q)\n})(Math); (function() {\n    var u = CryptoJS,\n    l = u.lib,\n    d = l.Base,\n    n = l.WordArray,\n    l = u.algo,\n    p = l.EvpKDF = d.extend({\n        cfg: d.extend({\n            keySize: 4,\n            hasher: l.MD5,\n            iterations: 1\n        }),\n        init: function(d) {\n            this.cfg = this.cfg.extend(d)\n        },\n        compute: function(d, l) {\n            for (var p = this.cfg,\n            v = p.hasher.create(), b = n.create(), u = b.words, r = p.keySize, p = p.iterations; u.length < r;) {\n                e && v.update(e);\n                var e = v.update(d).finalize(l);\n                v.reset();\n                for (var a = 1; a < p; a++) e = v.finalize(e),\n                v.reset();\n                b.concat(e)\n            }\n            b.sigBytes = 4 * r;\n            return b\n        }\n    });\n    u.EvpKDF = function(d, l, n) {\n        return p.create(n).compute(d, l)\n    }\n})();\nCryptoJS.lib.Cipher ||\nfunction(u) {\n    var l = CryptoJS,\n    d = l.lib,\n    n = d.Base,\n    p = d.WordArray,\n    s = d.BufferedBlockAlgorithm,\n    q = l.enc.Base64,\n    w = l.algo.EvpKDF,\n    v = d.Cipher = s.extend({\n        cfg: n.extend(),\n        createEncryptor: function(m, a) {\n            return this.create(this._ENC_XFORM_MODE, m, a)\n        },\n        createDecryptor: function(m, a) {\n            return this.create(this._DEC_XFORM_MODE, m, a)\n        },\n        init: function(m, a, b) {\n            this.cfg = this.cfg.extend(b);\n            this._xformMode = m;\n            this._key = a;\n            this.reset()\n        },\n        reset: function() {\n            s.reset.call(this);\n            this._doReset()\n        },\n        process: function(a) {\n            this._append(a);\n            return this._process()\n        },\n        finalize: function(a) {\n            a && this._append(a);\n            return this._doFinalize()\n        },\n        keySize: 4,\n        ivSize: 4,\n        _ENC_XFORM_MODE: 1,\n        _DEC_XFORM_MODE: 2,\n        _createHelper: function(m) {\n            return {\n                encrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).encrypt(m, f, b, e)\n                },\n                decrypt: function(f, b, e) {\n                    return (\"string\" == typeof b ? c: a).decrypt(m, f, b, e)\n                }\n            }\n        }\n    });\n    d.StreamCipher = v.extend({\n        _doFinalize: function() {\n            return this._process(!0)\n        },\n        blockSize: 1\n    });\n    var b = l.mode = {},\n    x = function(a, f, b) {\n        var c = this._iv;\n        c ? this._iv = u: c = this._prevBlock;\n        for (var e = 0; e < b; e++) a[f + e] ^= c[e]\n    },\n    r = (d.BlockCipherMode = n.extend({\n        createEncryptor: function(a, f) {\n            return this.Encryptor.create(a, f)\n        },\n        createDecryptor: function(a, f) {\n            return this.Decryptor.create(a, f)\n        },\n        init: function(a, f) {\n            this._cipher = a;\n            this._iv = f\n        }\n    })).extend();\n    r.Encryptor = r.extend({\n        processBlock: function(a, f) {\n            var b = this._cipher,\n            c = b.blockSize;\n            x.call(this, a, f, c);\n            b.encryptBlock(a, f);\n            this._prevBlock = a.slice(f, f + c)\n        }\n    });\n    r.Decryptor = r.extend({\n        processBlock: function(a, b) {\n            var c = this._cipher,\n            e = c.blockSize,\n            d = a.slice(b, b + e);\n            c.decryptBlock(a, b);\n            x.call(this, a, b, e);\n            this._prevBlock = d\n        }\n    });\n    b = b.CBC = r;\n    r = (l.pad = {}).Pkcs7 = {\n        pad: function(a, b) {\n            for (var c = 4 * b,\n            c = c - a.sigBytes % c,\n            e = c << 24 | c << 16 | c << 8 | c,\n            d = [], l = 0; l < c; l += 4) d.push(e);\n            c = p.create(d, c);\n            a.concat(c)\n        },\n        unpad: function(a) {\n            a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255\n        }\n    };\n    d.BlockCipher = v.extend({\n        cfg: v.cfg.extend({\n            mode: b,\n            padding: r\n        }),\n        reset: function() {\n            v.reset.call(this);\n            var a = this.cfg,\n            c = a.iv,\n            a = a.mode;\n            if (this._xformMode == this._ENC_XFORM_MODE) var b = a.createEncryptor;\n            else b = a.createDecryptor,\n            this._minBufferSize = 1;\n            this._mode = b.call(a, this, c && c.words)\n        },\n        _doProcessBlock: function(a, c) {\n            this._mode.processBlock(a, c)\n        },\n        _doFinalize: function() {\n            var a = this.cfg.padding;\n            if (this._xformMode == this._ENC_XFORM_MODE) {\n                a.pad(this._data, this.blockSize);\n                var c = this._process(!0)\n            } else c = this._process(!0),\n            a.unpad(c);\n            return c\n        },\n        blockSize: 4\n    });\n    var e = d.CipherParams = n.extend({\n        init: function(a) {\n            this.mixIn(a)\n        },\n        toString: function(a) {\n            return (a || this.formatter).stringify(this)\n        }\n    }),\n    b = (l.format = {}).OpenSSL = {\n        stringify: function(a) {\n            var c = a.ciphertext;\n            a = a.salt;\n            return (a ? p.create([1398893684, 1701076831]).concat(a).concat(c) : c).toString(q)\n        },\n        parse: function(a) {\n            a = q.parse(a);\n            var c = a.words;\n            if (1398893684 == c[0] && 1701076831 == c[1]) {\n                var b = p.create(c.slice(2, 4));\n                c.splice(0, 4);\n                a.sigBytes -= 16\n            }\n            return e.create({\n                ciphertext: a,\n                salt: b\n            })\n        }\n    },\n    a = d.SerializableCipher = n.extend({\n        cfg: n.extend({\n            format: b\n        }),\n        encrypt: function(a, c, b, d) {\n            d = this.cfg.extend(d);\n            var l = a.createEncryptor(b, d);\n            c = l.finalize(c);\n            l = l.cfg;\n            return e.create({\n                ciphertext: c,\n                key: b,\n                iv: l.iv,\n                algorithm: a,\n                mode: l.mode,\n                padding: l.padding,\n                blockSize: a.blockSize,\n                formatter: d.format\n            })\n        },\n        decrypt: function(a, c, b, e) {\n            e = this.cfg.extend(e);\n            c = this._parse(c, e.format);\n            return a.createDecryptor(b, e).finalize(c.ciphertext)\n        },\n        _parse: function(a, c) {\n            return \"string\" == typeof a ? c.parse(a, this) : a\n        }\n    }),\n    l = (l.kdf = {}).OpenSSL = {\n        execute: function(a, c, b, d) {\n            d || (d = p.random(8));\n            a = w.create({\n                keySize: c + b\n            }).compute(a, d);\n            b = p.create(a.words.slice(c), 4 * b);\n            a.sigBytes = 4 * c;\n            return e.create({\n                key: a,\n                iv: b,\n                salt: d\n            })\n        }\n    },\n    c = d.PasswordBasedCipher = a.extend({\n        cfg: a.cfg.extend({\n            kdf: l\n        }),\n        encrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            e = d.kdf.execute(e, c.keySize, c.ivSize);\n            d.iv = e.iv;\n            c = a.encrypt.call(this, c, b, e.key, d);\n            c.mixIn(e);\n            return c\n        },\n        decrypt: function(c, b, e, d) {\n            d = this.cfg.extend(d);\n            b = this._parse(b, d.format);\n            e = d.kdf.execute(e, c.keySize, c.ivSize, b.salt);\n            d.iv = e.iv;\n            return a.decrypt.call(this, c, b, e.key, d)\n        }\n    })\n} (); (function() {\n    function u(b, a) {\n        var c = (this._lBlock >>> b ^ this._rBlock) & a;\n        this._rBlock ^= c;\n        this._lBlock ^= c << b\n    }\n    function l(b, a) {\n        var c = (this._rBlock >>> b ^ this._lBlock) & a;\n        this._lBlock ^= c;\n        this._rBlock ^= c << b\n    }\n    var d = CryptoJS,\n    n = d.lib,\n    p = n.WordArray,\n    n = n.BlockCipher,\n    s = d.algo,\n    q = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],\n    w = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],\n    v = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],\n    b = [{\n        \"0\": 8421888,\n        268435456 : 32768,\n        536870912 : 8421378,\n        805306368 : 2,\n        1073741824 : 512,\n        1342177280 : 8421890,\n        1610612736 : 8389122,\n        1879048192 : 8388608,\n        2147483648 : 514,\n        2415919104 : 8389120,\n        2684354560 : 33280,\n        2952790016 : 8421376,\n        3221225472 : 32770,\n        3489660928 : 8388610,\n        3758096384 : 0,\n        4026531840 : 33282,\n        134217728 : 0,\n        402653184 : 8421890,\n        671088640 : 33282,\n        939524096 : 32768,\n        1207959552 : 8421888,\n        1476395008 : 512,\n        1744830464 : 8421378,\n        2013265920 : 2,\n        2281701376 : 8389120,\n        2550136832 : 33280,\n        2818572288 : 8421376,\n        3087007744 : 8389122,\n        3355443200 : 8388610,\n        3623878656 : 32770,\n        3892314112 : 514,\n        4160749568 : 8388608,\n        1 : 32768,\n        268435457 : 2,\n        536870913 : 8421888,\n        805306369 : 8388608,\n        1073741825 : 8421378,\n        1342177281 : 33280,\n        1610612737 : 512,\n        1879048193 : 8389122,\n        2147483649 : 8421890,\n        2415919105 : 8421376,\n        2684354561 : 8388610,\n        2952790017 : 33282,\n        3221225473 : 514,\n        3489660929 : 8389120,\n        3758096385 : 32770,\n        4026531841 : 0,\n        134217729 : 8421890,\n        402653185 : 8421376,\n        671088641 : 8388608,\n        939524097 : 512,\n        1207959553 : 32768,\n        1476395009 : 8388610,\n        1744830465 : 2,\n        2013265921 : 33282,\n        2281701377 : 32770,\n        2550136833 : 8389122,\n        2818572289 : 514,\n        3087007745 : 8421888,\n        3355443201 : 8389120,\n        3623878657 : 0,\n        3892314113 : 33280,\n        4160749569 : 8421378\n    },\n    {\n        \"0\": 1074282512,\n        16777216 : 16384,\n        33554432 : 524288,\n        50331648 : 1074266128,\n        67108864 : 1073741840,\n        83886080 : 1074282496,\n        100663296 : 1073758208,\n        117440512 : 16,\n        134217728 : 540672,\n        150994944 : 1073758224,\n        167772160 : 1073741824,\n        184549376 : 540688,\n        201326592 : 524304,\n        218103808 : 0,\n        234881024 : 16400,\n        251658240 : 1074266112,\n        8388608 : 1073758208,\n        25165824 : 540688,\n        41943040 : 16,\n        58720256 : 1073758224,\n        75497472 : 1074282512,\n        92274688 : 1073741824,\n        109051904 : 524288,\n        125829120 : 1074266128,\n        142606336 : 524304,\n        159383552 : 0,\n        176160768 : 16384,\n        192937984 : 1074266112,\n        209715200 : 1073741840,\n        226492416 : 540672,\n        243269632 : 1074282496,\n        260046848 : 16400,\n        268435456 : 0,\n        285212672 : 1074266128,\n        301989888 : 1073758224,\n        318767104 : 1074282496,\n        335544320 : 1074266112,\n        352321536 : 16,\n        369098752 : 540688,\n        385875968 : 16384,\n        402653184 : 16400,\n        419430400 : 524288,\n        436207616 : 524304,\n        452984832 : 1073741840,\n        469762048 : 540672,\n        486539264 : 1073758208,\n        503316480 : 1073741824,\n        520093696 : 1074282512,\n        276824064 : 540688,\n        293601280 : 524288,\n        310378496 : 1074266112,\n        327155712 : 16384,\n        343932928 : 1073758208,\n        360710144 : 1074282512,\n        377487360 : 16,\n        394264576 : 1073741824,\n        411041792 : 1074282496,\n        427819008 : 1073741840,\n        444596224 : 1073758224,\n        461373440 : 524304,\n        478150656 : 0,\n        494927872 : 16400,\n        511705088 : 1074266128,\n        528482304 : 540672\n    },\n    {\n        \"0\": 260,\n        1048576 : 0,\n        2097152 : 67109120,\n        3145728 : 65796,\n        4194304 : 65540,\n        5242880 : 67108868,\n        6291456 : 67174660,\n        7340032 : 67174400,\n        8388608 : 67108864,\n        9437184 : 67174656,\n        10485760 : 65792,\n        11534336 : 67174404,\n        12582912 : 67109124,\n        13631488 : 65536,\n        14680064 : 4,\n        15728640 : 256,\n        524288 : 67174656,\n        1572864 : 67174404,\n        2621440 : 0,\n        3670016 : 67109120,\n        4718592 : 67108868,\n        5767168 : 65536,\n        6815744 : 65540,\n        7864320 : 260,\n        8912896 : 4,\n        9961472 : 256,\n        11010048 : 67174400,\n        12058624 : 65796,\n        13107200 : 65792,\n        14155776 : 67109124,\n        15204352 : 67174660,\n        16252928 : 67108864,\n        16777216 : 67174656,\n        17825792 : 65540,\n        18874368 : 65536,\n        19922944 : 67109120,\n        20971520 : 256,\n        22020096 : 67174660,\n        23068672 : 67108868,\n        24117248 : 0,\n        25165824 : 67109124,\n        26214400 : 67108864,\n        27262976 : 4,\n        28311552 : 65792,\n        29360128 : 67174400,\n        30408704 : 260,\n        31457280 : 65796,\n        32505856 : 67174404,\n        17301504 : 67108864,\n        18350080 : 260,\n        19398656 : 67174656,\n        20447232 : 0,\n        21495808 : 65540,\n        22544384 : 67109120,\n        23592960 : 256,\n        24641536 : 67174404,\n        25690112 : 65536,\n        26738688 : 67174660,\n        27787264 : 65796,\n        28835840 : 67108868,\n        29884416 : 67109124,\n        30932992 : 67174400,\n        31981568 : 4,\n        33030144 : 65792\n    },\n    {\n        \"0\": 2151682048,\n        65536 : 2147487808,\n        131072 : 4198464,\n        196608 : 2151677952,\n        262144 : 0,\n        327680 : 4198400,\n        393216 : 2147483712,\n        458752 : 4194368,\n        524288 : 2147483648,\n        589824 : 4194304,\n        655360 : 64,\n        720896 : 2147487744,\n        786432 : 2151678016,\n        851968 : 4160,\n        917504 : 4096,\n        983040 : 2151682112,\n        32768 : 2147487808,\n        98304 : 64,\n        163840 : 2151678016,\n        229376 : 2147487744,\n        294912 : 4198400,\n        360448 : 2151682112,\n        425984 : 0,\n        491520 : 2151677952,\n        557056 : 4096,\n        622592 : 2151682048,\n        688128 : 4194304,\n        753664 : 4160,\n        819200 : 2147483648,\n        884736 : 4194368,\n        950272 : 4198464,\n        1015808 : 2147483712,\n        1048576 : 4194368,\n        1114112 : 4198400,\n        1179648 : 2147483712,\n        1245184 : 0,\n        1310720 : 4160,\n        1376256 : 2151678016,\n        1441792 : 2151682048,\n        1507328 : 2147487808,\n        1572864 : 2151682112,\n        1638400 : 2147483648,\n        1703936 : 2151677952,\n        1769472 : 4198464,\n        1835008 : 2147487744,\n        1900544 : 4194304,\n        1966080 : 64,\n        2031616 : 4096,\n        1081344 : 2151677952,\n        1146880 : 2151682112,\n        1212416 : 0,\n        1277952 : 4198400,\n        1343488 : 4194368,\n        1409024 : 2147483648,\n        1474560 : 2147487808,\n        1540096 : 64,\n        1605632 : 2147483712,\n        1671168 : 4096,\n        1736704 : 2147487744,\n        1802240 : 2151678016,\n        1867776 : 4160,\n        1933312 : 2151682048,\n        1998848 : 4194304,\n        2064384 : 4198464\n    },\n    {\n        \"0\": 128,\n        4096 : 17039360,\n        8192 : 262144,\n        12288 : 536870912,\n        16384 : 537133184,\n        20480 : 16777344,\n        24576 : 553648256,\n        28672 : 262272,\n        32768 : 16777216,\n        36864 : 537133056,\n        40960 : 536871040,\n        45056 : 553910400,\n        49152 : 553910272,\n        53248 : 0,\n        57344 : 17039488,\n        61440 : 553648128,\n        2048 : 17039488,\n        6144 : 553648256,\n        10240 : 128,\n        14336 : 17039360,\n        18432 : 262144,\n        22528 : 537133184,\n        26624 : 553910272,\n        30720 : 536870912,\n        34816 : 537133056,\n        38912 : 0,\n        43008 : 553910400,\n        47104 : 16777344,\n        51200 : 536871040,\n        55296 : 553648128,\n        59392 : 16777216,\n        63488 : 262272,\n        65536 : 262144,\n        69632 : 128,\n        73728 : 536870912,\n        77824 : 553648256,\n        81920 : 16777344,\n        86016 : 553910272,\n        90112 : 537133184,\n        94208 : 16777216,\n        98304 : 553910400,\n        102400 : 553648128,\n        106496 : 17039360,\n        110592 : 537133056,\n        114688 : 262272,\n        118784 : 536871040,\n        122880 : 0,\n        126976 : 17039488,\n        67584 : 553648256,\n        71680 : 16777216,\n        75776 : 17039360,\n        79872 : 537133184,\n        83968 : 536870912,\n        88064 : 17039488,\n        92160 : 128,\n        96256 : 553910272,\n        100352 : 262272,\n        104448 : 553910400,\n        108544 : 0,\n        112640 : 553648128,\n        116736 : 16777344,\n        120832 : 262144,\n        124928 : 537133056,\n        129024 : 536871040\n    },\n    {\n        \"0\": 268435464,\n        256 : 8192,\n        512 : 270532608,\n        768 : 270540808,\n        1024 : 268443648,\n        1280 : 2097152,\n        1536 : 2097160,\n        1792 : 268435456,\n        2048 : 0,\n        2304 : 268443656,\n        2560 : 2105344,\n        2816 : 8,\n        3072 : 270532616,\n        3328 : 2105352,\n        3584 : 8200,\n        3840 : 270540800,\n        128 : 270532608,\n        384 : 270540808,\n        640 : 8,\n        896 : 2097152,\n        1152 : 2105352,\n        1408 : 268435464,\n        1664 : 268443648,\n        1920 : 8200,\n        2176 : 2097160,\n        2432 : 8192,\n        2688 : 268443656,\n        2944 : 270532616,\n        3200 : 0,\n        3456 : 270540800,\n        3712 : 2105344,\n        3968 : 268435456,\n        4096 : 268443648,\n        4352 : 270532616,\n        4608 : 270540808,\n        4864 : 8200,\n        5120 : 2097152,\n        5376 : 268435456,\n        5632 : 268435464,\n        5888 : 2105344,\n        6144 : 2105352,\n        6400 : 0,\n        6656 : 8,\n        6912 : 270532608,\n        7168 : 8192,\n        7424 : 268443656,\n        7680 : 270540800,\n        7936 : 2097160,\n        4224 : 8,\n        4480 : 2105344,\n        4736 : 2097152,\n        4992 : 268435464,\n        5248 : 268443648,\n        5504 : 8200,\n        5760 : 270540808,\n        6016 : 270532608,\n        6272 : 270540800,\n        6528 : 270532616,\n        6784 : 8192,\n        7040 : 2105352,\n        7296 : 2097160,\n        7552 : 0,\n        7808 : 268435456,\n        8064 : 268443656\n    },\n    {\n        \"0\": 1048576,\n        16 : 33555457,\n        32 : 1024,\n        48 : 1049601,\n        64 : 34604033,\n        80 : 0,\n        96 : 1,\n        112 : 34603009,\n        128 : 33555456,\n        144 : 1048577,\n        160 : 33554433,\n        176 : 34604032,\n        192 : 34603008,\n        208 : 1025,\n        224 : 1049600,\n        240 : 33554432,\n        8 : 34603009,\n        24 : 0,\n        40 : 33555457,\n        56 : 34604032,\n        72 : 1048576,\n        88 : 33554433,\n        104 : 33554432,\n        120 : 1025,\n        136 : 1049601,\n        152 : 33555456,\n        168 : 34603008,\n        184 : 1048577,\n        200 : 1024,\n        216 : 34604033,\n        232 : 1,\n        248 : 1049600,\n        256 : 33554432,\n        272 : 1048576,\n        288 : 33555457,\n        304 : 34603009,\n        320 : 1048577,\n        336 : 33555456,\n        352 : 34604032,\n        368 : 1049601,\n        384 : 1025,\n        400 : 34604033,\n        416 : 1049600,\n        432 : 1,\n        448 : 0,\n        464 : 34603008,\n        480 : 33554433,\n        496 : 1024,\n        264 : 1049600,\n        280 : 33555457,\n        296 : 34603009,\n        312 : 1,\n        328 : 33554432,\n        344 : 1048576,\n        360 : 1025,\n        376 : 34604032,\n        392 : 33554433,\n        408 : 34603008,\n        424 : 0,\n        440 : 34604033,\n        456 : 1049601,\n        472 : 1024,\n        488 : 33555456,\n        504 : 1048577\n    },\n    {\n        \"0\": 134219808,\n        1 : 131072,\n        2 : 134217728,\n        3 : 32,\n        4 : 131104,\n        5 : 134350880,\n        6 : 134350848,\n        7 : 2048,\n        8 : 134348800,\n        9 : 134219776,\n        10 : 133120,\n        11 : 134348832,\n        12 : 2080,\n        13 : 0,\n        14 : 134217760,\n        15 : 133152,\n        2147483648 : 2048,\n        2147483649 : 134350880,\n        2147483650 : 134219808,\n        2147483651 : 134217728,\n        2147483652 : 134348800,\n        2147483653 : 133120,\n        2147483654 : 133152,\n        2147483655 : 32,\n        2147483656 : 134217760,\n        2147483657 : 2080,\n        2147483658 : 131104,\n        2147483659 : 134350848,\n        2147483660 : 0,\n        2147483661 : 134348832,\n        2147483662 : 134219776,\n        2147483663 : 131072,\n        16 : 133152,\n        17 : 134350848,\n        18 : 32,\n        19 : 2048,\n        20 : 134219776,\n        21 : 134217760,\n        22 : 134348832,\n        23 : 131072,\n        24 : 0,\n        25 : 131104,\n        26 : 134348800,\n        27 : 134219808,\n        28 : 134350880,\n        29 : 133120,\n        30 : 2080,\n        31 : 134217728,\n        2147483664 : 131072,\n        2147483665 : 2048,\n        2147483666 : 134348832,\n        2147483667 : 133152,\n        2147483668 : 32,\n        2147483669 : 134348800,\n        2147483670 : 134217728,\n        2147483671 : 134219808,\n        2147483672 : 134350880,\n        2147483673 : 134217760,\n        2147483674 : 134219776,\n        2147483675 : 0,\n        2147483676 : 133120,\n        2147483677 : 2080,\n        2147483678 : 131104,\n        2147483679 : 134350848\n    }],\n    x = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],\n    r = s.DES = n.extend({\n        _doReset: function() {\n            for (var b = this._key.words,\n            a = [], c = 0; 56 > c; c++) {\n                var d = q[c] - 1;\n                a[c] = b[d >>> 5] >>> 31 - d % 32 & 1\n            }\n            b = this._subKeys = [];\n            for (d = 0; 16 > d; d++) {\n                for (var f = b[d] = [], l = v[d], c = 0; 24 > c; c++) f[c / 6 | 0] |= a[(w[c] - 1 + l) % 28] << 31 - c % 6,\n                f[4 + (c / 6 | 0)] |= a[28 + (w[c + 24] - 1 + l) % 28] << 31 - c % 6;\n                f[0] = f[0] << 1 | f[0] >>> 31;\n                for (c = 1; 7 > c; c++) f[c] >>>= 4 * (c - 1) + 3;\n                f[7] = f[7] << 5 | f[7] >>> 27\n            }\n            a = this._invSubKeys = [];\n            for (c = 0; 16 > c; c++) a[c] = b[15 - c]\n        },\n        encryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._subKeys)\n        },\n        decryptBlock: function(b, a) {\n            this._doCryptBlock(b, a, this._invSubKeys)\n        },\n        _doCryptBlock: function(e, a, c) {\n            this._lBlock = e[a];\n            this._rBlock = e[a + 1];\n            u.call(this, 4, 252645135);\n            u.call(this, 16, 65535);\n            l.call(this, 2, 858993459);\n            l.call(this, 8, 16711935);\n            u.call(this, 1, 1431655765);\n            for (var d = 0; 16 > d; d++) {\n                for (var f = c[d], n = this._lBlock, p = this._rBlock, q = 0, r = 0; 8 > r; r++) q |= b[r][((p ^ f[r]) & x[r]) >>> 0];\n                this._lBlock = p;\n                this._rBlock = n ^ q\n            }\n            c = this._lBlock;\n            this._lBlock = this._rBlock;\n            this._rBlock = c;\n            u.call(this, 1, 1431655765);\n            l.call(this, 8, 16711935);\n            l.call(this, 2, 858993459);\n            u.call(this, 16, 65535);\n            u.call(this, 4, 252645135);\n            e[a] = this._lBlock;\n            e[a + 1] = this._rBlock\n        },\n        keySize: 2,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.DES = n._createHelper(r);\n    s = s.TripleDES = n.extend({\n        _doReset: function() {\n            var b = this._key.words;\n            this._des1 = r.createEncryptor(p.create(b.slice(0, 2)));\n            this._des2 = r.createEncryptor(p.create(b.slice(2, 4)));\n            this._des3 = r.createEncryptor(p.create(b.slice(4, 6)))\n        },\n        encryptBlock: function(b, a) {\n            this._des1.encryptBlock(b, a);\n            this._des2.decryptBlock(b, a);\n            this._des3.encryptBlock(b, a)\n        },\n        decryptBlock: function(b, a) {\n            this._des3.decryptBlock(b, a);\n            this._des2.encryptBlock(b, a);\n            this._des1.decryptBlock(b, a)\n        },\n        keySize: 6,\n        ivSize: 2,\n        blockSize: 2\n    });\n    d.TripleDES = n._createHelper(s)\n})();\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/**\n * Electronic Codebook block mode.\n */\nCryptoJS.mode.ECB = (function() {\n    var ECB = CryptoJS.lib.BlockCipherMode.extend();\n\n    ECB.Encryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.encryptBlock(words, offset);\n        }\n    });\n\n    ECB.Decryptor = ECB.extend({\n        processBlock: function(words, offset) {\n            this._cipher.decryptBlock(words, offset);\n        }\n    });\n\n    return ECB;\n} ());\n\nfunction encryptByDES(message, key) {\n    var keyHex = CryptoJS.enc.Utf8.parse(key);\n    var encrypted = CryptoJS.DES.encrypt(message, keyHex, {\n        mode: CryptoJS.mode.ECB,\n        padding: CryptoJS.pad.Pkcs7\n    });\n    return encrypted.toString()\n}\n//DES加密结束\nvar deskey = 'web@hzlq';\nvar userId='0';\nfunction getPostUrl(data,type) {\nvar url = 'http://m.ndlib.cn/nlc_read_home/service.do';\nvar md5Key = 'library_2016@hzlq';\nvalue = {\n    siteId: 1,\n    data: encryptByDES(JSON.stringify(data), deskey),\n    userId: userId,\n    fromSource: 3,\n    osType: 5,\n    version: \"1.0.1\",\n    versionCode: 10001,\n    timeStamp: data.timeStamp,\n    hashCode: md5(data.timeStamp + md5Key)\n};\nvar cmd = \"cmd=\"+type+\"&value=\" + encodeURIComponent(JSON.stringify(value));\nvar option = {\n   \"method\": \"POST\",\n   \"body\": String(cmd)\n};\nreturn result=url + ','+JSON.stringify(option);\n}\n//搜索链接\nsearch_data = {\n    timeStamp:Date.now(),\n    bigType:\"0\",\n    content: key,\n    pageSize:10,\n    pageNum: page\n};\ngetPostUrl(search_data,'qrySearchList');\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "--未月十八二次排版",
    "bookSourceGroup": "正版",
    "bookSourceName": "晋江详榜",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.jjwxc.net未月十八二次排版",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 683,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"☆                      榜   单                     ☆\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 驻 站 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=19&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 字 数 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=8&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 长 生 殿 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=9&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=3&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=5&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=4&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=6&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 总 分 榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=7&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"霸王票榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=13&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"勤奋指数 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=15&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"栽培月榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=18&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"千字金榜 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=21&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"完结高分 \",\"url\":\"http://www.jjwxc.net/topten.php?orderstr=20&t=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=8\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍言完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=13\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无CP完结\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=46\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生完结 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=21&str=26\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                     无   c p                     ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=18\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 完 结 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=40\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=25&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                     百     合                     ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=17\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=10&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重来一次 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10901\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇幻异闻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10902\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10903\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10904\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想未来\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10905\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10906\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天赐良缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10907\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚娱乐\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10908\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10909\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10910\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10911\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=10&str=10912\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=1\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=1&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古色古香\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10101\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10102\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10103\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10104\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10105\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空历史\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10106\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊女强\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10107\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"传奇武侠\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10108\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇虐渣\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10109\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市井人家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10110\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科举朝堂\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10111\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10112\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    都市青春                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=2\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=2&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10201\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10202\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10203\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚前婚后\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10204\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10205\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"破镜重圆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10206\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"近水楼台\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10207\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时代新风\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10208\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天之骄子\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10209\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐星光\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10210\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢喜冤家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10211\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"因缘邂逅\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10212\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校园青春\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10213\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚流行\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=1&str=10214\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"甜心蜜意\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10215\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=2&str=10216\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    幻想言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=3\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=6&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10301\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10302\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生赢家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10303\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时代奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10304\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10305\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10306\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10307\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10308\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代架空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10309\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"神奇能力\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10310\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市异闻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10311\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10312\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"打脸爽文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10313\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿书攻略\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10314\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"流金年代\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10315\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐时尚\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=6&str=10316\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代穿越                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=4\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=9&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10401\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女尊女强\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10402\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10403\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"架空穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10404\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10405\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷侯爵\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10406\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"前世今生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10407\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10408\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"市井人家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10409\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科举朝堂\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10410\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10411\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇虐渣\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=9&str=10412\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    奇幻言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=5\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=5&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10501\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10502\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"另类幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10503\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"魔法幻情\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10504\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"修真升级\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10505\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"灵异神怪\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10506\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10507\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异世穿书\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10508\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10509\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10510\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异闻传说\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10511\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄奇幻界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=5&str=10512\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    未来游戏                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=6\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=8&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=7&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻世界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10601\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际机甲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10602\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世异世\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10603\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏电竞\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10604\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"未来架空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10605\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异度幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10606\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时空穿梭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10607\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑推理\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10608\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10609\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限领域\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10610\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宠灵怪\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10611\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"惊奇档案\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=7&str=10612\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    二 次 元                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=11\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=4&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方古风\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11105\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西幻魔幻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11106\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"乙女游戏\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11107\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异界穿书\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11108\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血冒险\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11109\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异能超能\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11110\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经营基建\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11111\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"浪漫情缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11112\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11113\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"偶像育成\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11114\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"竞技社团\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11115\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"新奇幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=4&str=11116\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    衍生言情                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=14&str=12\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜\",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=13&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 名   著 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11201\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方罗曼\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11202\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11203\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11204\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"东方幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11205\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"江湖恩怨\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11206\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐竞技\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11207\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 其 他  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=13&str=11208\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    现代纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=15\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=3&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"欢喜冤家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10701\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市甜文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10702\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10703\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代都市\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10704\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校园青春\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10705\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10706\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"打脸逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10707\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"边缘恋曲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10708\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"业界精英\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10709\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10710\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"豪门世家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10711\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"励志人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10712\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"竞技人生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10713\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"时尚娱乐\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10714\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"情有独钟\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10715\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"婚前婚后\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=3&str=10716\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    幻想纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=43\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=18&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无 限 流\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11801\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"末世狂想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11802\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿世界\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11803\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  系 统 \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11804\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠修真\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11805\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异闻秘术\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11806\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"萌宠频道\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11807\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"边缘幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11808\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"娱乐星光\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11809\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"星际日常\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11810\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重生穿越\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11811\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人生赢家\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11812\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想甜宠\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11813\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级爽文\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11814\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇幻灵异\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11815\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻机甲\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=18&str=11816\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"————\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    古代纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=16\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\" 编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=11&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫廷将相\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10801\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"布衣生活\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10802\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠修真\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10803\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10804\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"升级逆袭\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10805\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西幻异世\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10806\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"再世重生\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10807\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越时空\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10808\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想系统\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10809\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄幻灵异\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10810\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"天作之合\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10811\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=11&str=10812\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"☆                    衍生纯爱                    ☆\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=15&str=21\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"编 推 文 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 文 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=2\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 新 晋 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=7\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 月 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=4\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 季 度 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=5\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 半 年 榜 \",\"url\":\"http://www.jjwxc.net/channeltopten.php?channelid=12&str=6\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=9\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"  霸 王 票 榜  \",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=10\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"名著传奇\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11001\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"江湖奇缘\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11002\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无cp其他\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11003\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无CP 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11004\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"衍生其他\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11005\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"西方罗曼\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11006\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限快穿\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11007\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无cp次元\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11008\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都 市 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11009\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻 想 轻\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11010\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元热血\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11011\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"次元幻想\",\"url\":\"http://www.jjwxc.net/channeltoplist.php?channelid=12&str=11012\",\"style\":{\"layout_flexGrow\":1}}]",
    "header": "",
    "lastUpdateTime": 1699552699433,
    "loginUrl": "http://m.jjwxc.net/",
    "respondTime": 1322,
    "ruleBookInfo": {
      "coverUrl": "class.noveldefaultimage@src",
      "intro": "@js:\nli=String(java.getString('@@class.smallreadbody!0@span@text&&class.rightul.0@tag.li.1@text',false)).replace(/\\n/g,'🏷');\nintro=String(java.getString('@@id.novelintro.0@html',false));\nresult=String(li+'\\n————————————————————'+intro);\na=result.replace(/作品视角/,'◎作品视角').replace(/\\s{2,}/g,'\\n').replace(/立意/,'◎立意').replace(/内容标签/,'    ◎标签').replace(/一句话简介/,'◎短简').replace(/搜索关键字：/,'◎').replace(/ ┃ /g,'\\n◎').replace(/🏷◎/g,'\\n◎').replace(/：🏷/,'：').replace(/(?:◎标签：|◎主角：|◎配角：|◎其它：|◎短简：|◎作品视角：)\\n/g,'').replace(/🏷$/gm,'')\n##手机地址：",
      "kind": "//*[@itemprop=\"updataStatus\"]/text()&&//*[@itemprop=\"genre\"]/text()&&//*[@itemprop=\"updataStatus\"]/font/text()##-##,",
      "lastChapter": "id.oneboolt@tag.tr.-2@tag.span.0@text&&id.oneboolt@tag.tr.-2@tag.td.-1@tag.span@text\n@js:result.replace(/\\n/g,'·').replace(/(.*?)\\[VIP\\]/,'🔒$1')",
      "name": "tag.title@text##《(.*?)》##$1###",
      "wordCount": "//span[@itemprop=\"wordCount\"]/text()"
    },
    "ruleContent": {
      "content": "class.b module@tag.li.0@textNodes&&class.b module@tag.li.1@textNodes##网友：|评分：|.*分\\｜.{4}",
      "imageStyle": "0",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.0@text\",false)\n}else{java.getString(\"@@tag.a.1@text\",false)}",
      "bookList": "tbody@tr!0||class.b module@tag.li!-1",
      "bookUrl": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.1@href\",true)\n}else{result=java.getString(\"@@tag.a.0@href\",true);\nif(result.match(/\\/(\\d+)/)){\nvar id=result.match(/\\/(\\d+)/)[1]\nresult=\"http://www.jjwxc.net/onebook.php?novelid=\"+id}\nelse{result=java.getString(\"@@tag.a.0@href\",true);}}",
      "coverUrl": "tag.td.2@a@href||tag.a.1@href@js:result.replace(/.+novelid=/, 'http:\\/\\/i9-static.jjwxc.net\\/novelimage.php?novelid=')",
      "intro": "class.tooltip@rel&&tag.td.1@a@title##<br>|标签：|简介：|size=\"\\d+\"",
      "kind": "{{@@tag.td.4@text}},{{@@tag.td.5@text}},{{@@tag.td.3@text}},{{@@tag.span@text}}##(\\d+)",
      "lastChapter": "tag.td.8@text||tag.td.-1@text",
      "name": "@js:if(baseUrl.match(/www/)){\njava.getString(\"@@tag.a.1@text\",false)\n}else{\na=String(result).match(/有更新/)?'🔥有更新':'';\nString(java.getString(\"@@tag.a.0@text\",false)).replace(/《|》/g,'')+a}",
      "wordCount": "tag.td.-3@text"
    },
    "ruleSearch": {
      "author": "tag.a.0@text",
      "bookList": "@css:tbody tr:lt(5)",
      "bookUrl": "tag.a.1@href",
      "intro": "tag.td.2@text",
      "kind": "font@text&&tag.td.3@text&&tag.td.5@text",
      "lastChapter": "<js>\nvar a=String(result).match(/href=\"(onebook.php\\?novelid=\\d+)/)[1];\nvar url=\"http://www.jjwxc.net/\"+a;\norg.jsoup.Jsoup.connect(url).get()</js>\nid.oneboolt@tag.tr.-2@tag.span.0@text##(.*?)\\[VIP\\]##🔒$1",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "@css:tr[itemprop~=chapter]",
      "chapterName": "tag.font@text&&tag.a.0@text##\\[VIP\\]\\n*##★·",
      "chapterUrl": "tag.a.0@href||tag.a.0@rel\n<js>\nid=result.match(/ovelid=(\\d+)&chapterid=(\\d+)/);\nif(String(chapter.title).indexOf('🔒')>-1){\nresult='https://wap.jjwxc.net/vip/'+id[1]+'/'+id[2]\n}else{\nresult='https://m.jjwxc.net/book2/'+id[1]+'/'+id[2]}\n</js>",
      "isVip": "",
      "updateTime": "tag.td.3@text&&tag.td.2@text&&tag.span.-1@text\n@js:result.replace(/\\n/g,'·').replace(/·/,'字·')"
    },
    "searchUrl": "https://www.jjwxc.net/bookbase.php?searchkeywords={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "㊣黑岩阅读 破冰",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.heiyan.compb",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 684,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://www.heiyan.com/web/all/-1/-1/-1/-1/0/{{page}}/100\n免费小说::https://www.heiyan.com/web/all/-1/-1/1/-1/0/{{page}}/100\n收费小说::https://www.heiyan.com/web/all/-1/-1/0/-1/0/{{page}}/100\n完结小说::https://www.heiyan.com/web/all/-1/-1/-1/1/0/{{page}}/100\n连载小说::https://www.heiyan.com/web/all/-1/-1/-1/0/0/{{page}}/100\n悬疑全部::https://www.heiyan.com/web/all/1/-1/-1/-1/0/{{page}}/100\n悬疑免费::https://www.heiyan.com/web/all/1/-1/1/-1/0/{{page}}/100\n悬疑收费::https://www.heiyan.com/web/all/1/-1/0/-1/0/{{page}}/100\n悬疑完结::https://www.heiyan.com/web/all/1/-1/-1/1/0/{{page}}/100\n悬疑连载::https://www.heiyan.com/web/all/1/-1/-1/0/0/{{page}}/100\n历史全部::https://www.heiyan.com/web/all/3/-1/-1/-1/0/{{page}}/100\n历史免费::https://www.heiyan.com/web/all/3/-1/1/-1/0/{{page}}/100\n历史收费::https://www.heiyan.com/web/all/3/-1/0/-1/0/{{page}}/100\n历史完结::https://www.heiyan.com/web/all/3/-1/-1/1/0/{{page}}/100\n历史连载::https://www.heiyan.com/web/all/3/-1/-1/0/0/{{page}}/100\n军事全部::https://www.heiyan.com/web/all/5/-1/-1/-1/0/{{page}}/100\n军事免费::https://www.heiyan.com/web/all/5/-1/1/-1/0/{{page}}/100\n军事收费::https://www.heiyan.com/web/all/5/-1/0/-1/0/{{page}}/100\n军事完结::https://www.heiyan.com/web/all/5/-1/-1/1/0/{{page}}/100\n军事连载::https://www.heiyan.com/web/all/5/-1/-1/0/0/{{page}}/100\n玄幻全部::https://www.heiyan.com/web/all/6/-1/-1/-1/0/{{page}}/100\n玄幻免费::https://www.heiyan.com/web/all/6/-1/1/-1/0/{{page}}/100\n玄幻收费::https://www.heiyan.com/web/all/6/-1/0/-1/0/{{page}}/100\n玄幻完结::https://www.heiyan.com/web/all/6/-1/-1/1/0/{{page}}/100\n玄幻连载::https://www.heiyan.com/web/all/6/-1/-1/0/0/{{page}}/100\n奇幻全部::https://www.heiyan.com/web/all/14/-1/-1/-1/0/{{page}}/100\n奇幻免费::https://www.heiyan.com/web/all/14/-1/1/-1/0/{{page}}/100\n奇幻收费::https://www.heiyan.com/web/all/14/-1/0/-1/0/{{page}}/100\n奇幻完结::https://www.heiyan.com/web/all/14/-1/-1/1/0/{{page}}/100\n奇幻连载::https://www.heiyan.com/web/all/14/-1/-1/0/0/{{page}}/100\n仙侠全部::https://www.heiyan.com/web/all/7/-1/-1/-1/0/{{page}}/100\n仙侠免费::https://www.heiyan.com/web/all/7/-1/1/-1/0/{{page}}/100\n仙侠收费::https://www.heiyan.com/web/all/7/-1/0/-1/0/{{page}}/100\n仙侠完结::https://www.heiyan.com/web/all/7/-1/-1/1/0/{{page}}/100\n仙侠连载::https://www.heiyan.com/web/all/7/-1/-1/0/0/{{page}}/100\n武侠全部::https://www.heiyan.com/web/all/8/-1/-1/-1/0/{{page}}/100\n武侠免费::https://www.heiyan.com/web/all/8/-1/1/-1/0/{{page}}/100\n武侠收费::https://www.heiyan.com/web/all/8/-1/0/-1/0/{{page}}/100\n武侠完结::https://www.heiyan.com/web/all/8/-1/-1/1/0/{{page}}/100\n武侠连载::https://www.heiyan.com/web/all/8/-1/-1/0/0/{{page}}/100\n科幻全部::https://www.heiyan.com/web/all/10/-1/-1/-1/0/{{page}}/100\n科幻免费::https://www.heiyan.com/web/all/10/-1/1/-1/0/{{page}}/100\n科幻收费::https://www.heiyan.com/web/all/10/-1/0/-1/0/{{page}}/100\n科幻完结::https://www.heiyan.com/web/all/10/-1/-1/1/0/{{page}}/100\n科幻连载::https://www.heiyan.com/web/all/10/-1/-1/0/0/{{page}}/100\n游戏全部::https://www.heiyan.com/web/all/9/-1/-1/-1/0/{{page}}/100\n游戏免费::https://www.heiyan.com/web/all/9/-1/1/-1/0/{{page}}/100\n游戏收费::https://www.heiyan.com/web/all/9/-1/0/-1/0/{{page}}/100\n游戏完结::https://www.heiyan.com/web/all/9/-1/-1/1/0/{{page}}/100\n游戏连载::https://www.heiyan.com/web/all/9/-1/-1/0/0/{{page}}/100\n同人全部::https://www.heiyan.com/web/all/16/-1/-1/-1/0/{{page}}/100\n同人免费::https://www.heiyan.com/web/all/16/-1/1/-1/0/{{page}}/100\n同人收费::https://www.heiyan.com/web/all/16/-1/0/-1/0/{{page}}/100\n同人完结::https://www.heiyan.com/web/all/16/-1/-1/1/0/{{page}}/100\n同人连载::https://www.heiyan.com/web/all/16/-1/-1/0/0/{{page}}/100\n社会全部::https://www.heiyan.com/web/all/25/-1/-1/-1/0/{{page}}/100\n社会免费::https://www.heiyan.com/web/all/25/-1/1/-1/0/{{page}}/100\n社会收费::https://www.heiyan.com/web/all/25/-1/0/-1/0/{{page}}/100\n社会完结::https://www.heiyan.com/web/all/25/-1/-1/1/0/{{page}}/100\n社会连载::https://www.heiyan.com/web/all/25/-1/-1/0/0/{{page}}/100\n古言全部::https://www.heiyan.com/web/all/37/-1/-1/-1/0/{{page}}/100\n古言免费::https://www.heiyan.com/web/all/37/-1/1/-1/0/{{page}}/100\n古言收费::https://www.heiyan.com/web/all/37/-1/0/-1/0/{{page}}/100\n古言完结::https://www.heiyan.com/web/all/37/-1/-1/1/0/{{page}}/100\n古言连载::https://www.heiyan.com/web/all/37/-1/-1/0/0/{{page}}/100",
    "header": "",
    "lastUpdateTime": 1731057478921,
    "loginUrl": "https://www.heiyan.com/accounts/login?backUrl=/",
    "respondTime": 2217,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "//pre[@class=\"note\"]/text()",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "//a[text()=\"开始阅读\"]/@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.chapter.htmlContent@js:result?result:'付费章节，换源阅读'",
      "imageStyle": "0",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "//*[@class=\"author\"]//a/text()",
      "bookList": "//*[@id=\"resultDiv\"]/tr",
      "bookUrl": "//a[@class=\"title\"]/@href<js>'https://www.heiyan.com/book/'+String(result).match(/\\d+/)[0]</js>",
      "coverUrl": "//a[@class=\"title\"]/@href<js>'https://b.heiyanimg.com/book/'+String(result).match(/\\d+/)[0]+'.jpg'</js>",
      "intro": "",
      "kind": "",
      "lastChapter": "//a[@class=\"chapter\"]/text()",
      "name": "//a[@class=\"title\"]/text()",
      "wordCount": "//td[4]/text()<js>String(result)+\"字\"</js>"
    },
    "ruleSearch": {
      "author": "$.authorname##<.*?>",
      "bookList": "$.data.content[*]",
      "bookUrl": "$.id@js:'https://www.heiyan.com/book/'+result",
      "coverUrl": "$.iconUrlSmall@js:  result.includes('@!bns?0') ? 'http://suo.im/6mlA9F' :'https://b.heiyanimg.com'+result.replace(/@.*/,'')",
      "intro": "$.introduce",
      "kind": "$.sortname##<.*?>",
      "lastChapter": "$.lastchaptername&&$.lastchaptertime##\\s+(\\d+-\\d+-\\d+).*##（$1）",
      "name": "$.name##<.*?>",
      "wordCount": "{$.words}字"
    },
    "ruleToc": {
      "chapterList": "//li[span]/a",
      "chapterName": "text##[\\(（].*[求更谢乐发推].*[）\\)]",
      "chapterUrl": "href<js>'https://a.heiyan.com/ajax/chapter/content/'+result.match(/\\d+$/)[0]</js>",
      "isVip": "@js:/isvip/.test(String(result))",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://search.heiyan.com/web/search?queryString={{key}}&page={{page}}",
    "weight": 100
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🎃欲望社🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.win10city.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 685,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1752434727681,
    "loginUrl": "",
    "respondTime": 41021,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content##\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": "##字数：([^<]+)<##$1###"
    },
    "ruleContent": {
      "content": "id.rtext@html",
      "imageStyle": "0",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##↑返回顶部↑"
    },
    "ruleExplore": {
      "author": "td.2@text",
      "bookList": "tbody tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://img.win10city.com/image/$2/$1/$1s.jpg###",
      "intro": "",
      "kind": "td.4@text",
      "lastChapter": "td.1@text",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleSearch": {
      "author": ".author.0@text##作者.",
      "bookList": ".bookbox",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://img.win10city.com/image/$2/$1/$1s.jpg###",
      "kind": ".author@text",
      "lastChapter": "a.1@text",
      "name": ".bookname@text##小说.",
      "wordCount": "li.3@text##大小."
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.win10city.com/modules/article/search.php,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"body\": \"searchkey={{key}}&action=login&searchtype=all&submit=\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "㊣黑岩阅读 破冰",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.heiyan.com♤pb",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 686,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://www.heiyan.com/web/all/-1/-1/-1/-1/0/{{page}}/100\n免费小说::https://www.heiyan.com/web/all/-1/-1/1/-1/0/{{page}}/100\n收费小说::https://www.heiyan.com/web/all/-1/-1/0/-1/0/{{page}}/100\n完结小说::https://www.heiyan.com/web/all/-1/-1/-1/1/0/{{page}}/100\n连载小说::https://www.heiyan.com/web/all/-1/-1/-1/0/0/{{page}}/100\n悬疑全部::https://www.heiyan.com/web/all/1/-1/-1/-1/0/{{page}}/100\n悬疑免费::https://www.heiyan.com/web/all/1/-1/1/-1/0/{{page}}/100\n悬疑收费::https://www.heiyan.com/web/all/1/-1/0/-1/0/{{page}}/100\n悬疑完结::https://www.heiyan.com/web/all/1/-1/-1/1/0/{{page}}/100\n悬疑连载::https://www.heiyan.com/web/all/1/-1/-1/0/0/{{page}}/100\n历史全部::https://www.heiyan.com/web/all/3/-1/-1/-1/0/{{page}}/100\n历史免费::https://www.heiyan.com/web/all/3/-1/1/-1/0/{{page}}/100\n历史收费::https://www.heiyan.com/web/all/3/-1/0/-1/0/{{page}}/100\n历史完结::https://www.heiyan.com/web/all/3/-1/-1/1/0/{{page}}/100\n历史连载::https://www.heiyan.com/web/all/3/-1/-1/0/0/{{page}}/100\n军事全部::https://www.heiyan.com/web/all/5/-1/-1/-1/0/{{page}}/100\n军事免费::https://www.heiyan.com/web/all/5/-1/1/-1/0/{{page}}/100\n军事收费::https://www.heiyan.com/web/all/5/-1/0/-1/0/{{page}}/100\n军事完结::https://www.heiyan.com/web/all/5/-1/-1/1/0/{{page}}/100\n军事连载::https://www.heiyan.com/web/all/5/-1/-1/0/0/{{page}}/100\n玄幻全部::https://www.heiyan.com/web/all/6/-1/-1/-1/0/{{page}}/100\n玄幻免费::https://www.heiyan.com/web/all/6/-1/1/-1/0/{{page}}/100\n玄幻收费::https://www.heiyan.com/web/all/6/-1/0/-1/0/{{page}}/100\n玄幻完结::https://www.heiyan.com/web/all/6/-1/-1/1/0/{{page}}/100\n玄幻连载::https://www.heiyan.com/web/all/6/-1/-1/0/0/{{page}}/100\n奇幻全部::https://www.heiyan.com/web/all/14/-1/-1/-1/0/{{page}}/100\n奇幻免费::https://www.heiyan.com/web/all/14/-1/1/-1/0/{{page}}/100\n奇幻收费::https://www.heiyan.com/web/all/14/-1/0/-1/0/{{page}}/100\n奇幻完结::https://www.heiyan.com/web/all/14/-1/-1/1/0/{{page}}/100\n奇幻连载::https://www.heiyan.com/web/all/14/-1/-1/0/0/{{page}}/100\n仙侠全部::https://www.heiyan.com/web/all/7/-1/-1/-1/0/{{page}}/100\n仙侠免费::https://www.heiyan.com/web/all/7/-1/1/-1/0/{{page}}/100\n仙侠收费::https://www.heiyan.com/web/all/7/-1/0/-1/0/{{page}}/100\n仙侠完结::https://www.heiyan.com/web/all/7/-1/-1/1/0/{{page}}/100\n仙侠连载::https://www.heiyan.com/web/all/7/-1/-1/0/0/{{page}}/100\n武侠全部::https://www.heiyan.com/web/all/8/-1/-1/-1/0/{{page}}/100\n武侠免费::https://www.heiyan.com/web/all/8/-1/1/-1/0/{{page}}/100\n武侠收费::https://www.heiyan.com/web/all/8/-1/0/-1/0/{{page}}/100\n武侠完结::https://www.heiyan.com/web/all/8/-1/-1/1/0/{{page}}/100\n武侠连载::https://www.heiyan.com/web/all/8/-1/-1/0/0/{{page}}/100\n科幻全部::https://www.heiyan.com/web/all/10/-1/-1/-1/0/{{page}}/100\n科幻免费::https://www.heiyan.com/web/all/10/-1/1/-1/0/{{page}}/100\n科幻收费::https://www.heiyan.com/web/all/10/-1/0/-1/0/{{page}}/100\n科幻完结::https://www.heiyan.com/web/all/10/-1/-1/1/0/{{page}}/100\n科幻连载::https://www.heiyan.com/web/all/10/-1/-1/0/0/{{page}}/100\n游戏全部::https://www.heiyan.com/web/all/9/-1/-1/-1/0/{{page}}/100\n游戏免费::https://www.heiyan.com/web/all/9/-1/1/-1/0/{{page}}/100\n游戏收费::https://www.heiyan.com/web/all/9/-1/0/-1/0/{{page}}/100\n游戏完结::https://www.heiyan.com/web/all/9/-1/-1/1/0/{{page}}/100\n游戏连载::https://www.heiyan.com/web/all/9/-1/-1/0/0/{{page}}/100\n同人全部::https://www.heiyan.com/web/all/16/-1/-1/-1/0/{{page}}/100\n同人免费::https://www.heiyan.com/web/all/16/-1/1/-1/0/{{page}}/100\n同人收费::https://www.heiyan.com/web/all/16/-1/0/-1/0/{{page}}/100\n同人完结::https://www.heiyan.com/web/all/16/-1/-1/1/0/{{page}}/100\n同人连载::https://www.heiyan.com/web/all/16/-1/-1/0/0/{{page}}/100\n社会全部::https://www.heiyan.com/web/all/25/-1/-1/-1/0/{{page}}/100\n社会免费::https://www.heiyan.com/web/all/25/-1/1/-1/0/{{page}}/100\n社会收费::https://www.heiyan.com/web/all/25/-1/0/-1/0/{{page}}/100\n社会完结::https://www.heiyan.com/web/all/25/-1/-1/1/0/{{page}}/100\n社会连载::https://www.heiyan.com/web/all/25/-1/-1/0/0/{{page}}/100\n古言全部::https://www.heiyan.com/web/all/37/-1/-1/-1/0/{{page}}/100\n古言免费::https://www.heiyan.com/web/all/37/-1/1/-1/0/{{page}}/100\n古言收费::https://www.heiyan.com/web/all/37/-1/0/-1/0/{{page}}/100\n古言完结::https://www.heiyan.com/web/all/37/-1/-1/1/0/{{page}}/100\n古言连载::https://www.heiyan.com/web/all/37/-1/-1/0/0/{{page}}/100",
    "header": "",
    "lastUpdateTime": 1700158263684,
    "loginUrl": "https://www.heiyan.com/accounts/login?backUrl=/",
    "respondTime": 2049,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": "",
      "init": "",
      "intro": "//pre[@class=\"note\"]/text()",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "//a[text()=\"开始阅读\"]/@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.chapter.htmlContent@js:result?result:'付费章节，换源阅读'",
      "imageStyle": "0",
      "nextContentUrl": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "//*[@class=\"author\"]//a/text()",
      "bookList": "//*[@id=\"resultDiv\"]/tr",
      "bookUrl": "//a[@class=\"title\"]/@href<js>'https://www.heiyan.com/book/'+String(result).match(/\\d+/)[0]</js>",
      "coverUrl": "//a[@class=\"title\"]/@href<js>'https://b.heiyanimg.com/book/'+String(result).match(/\\d+/)[0]+'.jpg'</js>",
      "intro": "",
      "kind": "",
      "lastChapter": "//a[@class=\"chapter\"]/text()",
      "name": "//a[@class=\"title\"]/text()",
      "wordCount": "//td[4]/text()<js>String(result)+\"字\"</js>"
    },
    "ruleSearch": {
      "author": "$.authorname##<.*?>",
      "bookList": "$.data.content[*]",
      "bookUrl": "$.id@js:'https://www.heiyan.com/book/'+result",
      "coverUrl": "$.iconUrlSmall@js:  result.includes('@!bns?0') ? 'http://suo.im/6mlA9F' :'https://b.heiyanimg.com'+result.replace(/@.*/,'')",
      "intro": "$.introduce",
      "kind": "$.sortname##<.*?>",
      "lastChapter": "$.lastchaptername&&$.lastchaptertime##\\s+(\\d+-\\d+-\\d+).*##（$1）",
      "name": "$.name##<.*?>",
      "wordCount": "{$.words}字"
    },
    "ruleToc": {
      "chapterList": "//li[span]/a",
      "chapterName": "text##[\\(（].*[求更谢乐发推].*[）\\)]",
      "chapterUrl": "href<js>'https://a.heiyan.com/ajax/chapter/content/'+result.match(/\\d+$/)[0]</js>",
      "isVip": "@js:/isvip/.test(String(result))",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://search.heiyan.com/web/search?queryString={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "随心看吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.suixkan.com♤guaner",
    "customButton": false,
    "customOrder": 688,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721279493711,
    "respondTime": 994,
    "ruleBookInfo": {
      "kind": "",
      "tocUrl": "class.sumchapter@a@href"
    },
    "ruleContent": {
      "content": "class.con@html",
      "nextContentUrl": "",
      "replaceRegex": "##\\s*.*?本章.*?完.*\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".v-author@text",
      "bookList": "class.v-list-item\n@js:\nlist=result.toArray();\nlist1=[];\nfor(i in list){\nif(list[i].text().indexOf(java.get('key'))>-1){\nlist1.push(list[i])\n}\n}\nlist1.map(x=>x)",
      "bookUrl": "##=\"newWebView\\('([^']+)'##$1###",
      "coverUrl": "",
      "intro": ".v-intro@text",
      "kind": "tag.div.-1@text",
      "lastChapter": "<js>\nurl=String(result).match(/=\"newWebView\\('([^']+)'/)[1];url='https://m.suixkan.com'+url\njava.ajax(url)</js>\nclass.chapter-entrance@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog_ls@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.suixkan.com/s/1.html?keyword={{key}}\n@js:java.put('key',key);result",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "随心看吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.suixkan.comguaner",
    "customButton": false,
    "customOrder": 689,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1721278409696,
    "respondTime": 892,
    "ruleBookInfo": {
      "kind": "",
      "tocUrl": "class.sumchapter@a@href"
    },
    "ruleContent": {
      "content": "class.con@html",
      "nextContentUrl": "",
      "replaceRegex": "##\\s*.*?本章.*?完.*\\s*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".v-author@text",
      "bookList": "class.v-list-item\n@js:\nlist=result.toArray();\nlist1=[];\nfor(i in list){\nif(list[i].text().indexOf(java.get('key'))>-1){\nlist1.push(list[i])\n}\n}\nlist1.map(x=>x)",
      "bookUrl": "##=\"newWebView\\('([^']+)'##$1###",
      "coverUrl": "",
      "intro": ".v-intro@text",
      "kind": "tag.div.-1@text",
      "lastChapter": "<js>\nurl=String(result).match(/=\"newWebView\\('([^']+)'/)[1];url='https://m.suixkan.com'+url\njava.ajax(url)</js>\nclass.chapter-entrance@text",
      "name": ".v-title@text",
      "wordCount": ".v-words@text"
    },
    "ruleToc": {
      "chapterList": "class.catalog_ls@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.suixkan.com/s/1.html?keyword={{key}}\n@js:java.put('key',key);result",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "新人漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xapi.xinmanhua.netHaxc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 690,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::https://xapi.xinmanhua.net/search/catalog?keyword=all&ischarge=2&isfinish=2&order=0&page={{page}}\n治愈::https://xapi.xinmanhua.net/search/catalog?keyword=治愈&page={{page}}\n日常::https://xapi.xinmanhua.net/search/catalog?keyword=日常&page={{page}}\n都市::https://xapi.xinmanhua.net/search/catalog?keyword=都市&page={{page}}\n悬疑::https://xapi.xinmanhua.net/search/catalog?keyword=悬疑&page={{page}}\n科幻::https://xapi.xinmanhua.net/search/catalog?keyword=科幻&page={{page}}\n奇幻::https://xapi.xinmanhua.net/search/catalog?keyword=奇幻&page={{page}}\n热血::https://xapi.xinmanhua.net/search/catalog?keyword=热血&page={{page}}\n武侠::https://xapi.xinmanhua.net/search/catalog?keyword=武侠&page={{page}}\n古风::https://xapi.xinmanhua.net/search/catalog?keyword=古风&page={{page}}\n恋爱::https://xapi.xinmanhua.net/search/catalog?keyword=恋爱&page={{page}}\n少年::https://xapi.xinmanhua.net/search/catalog?keyword=少年&page={{page}}\n日漫::https://xapi.xinmanhua.net/search/catalog?keyword=日漫&page={{page}}\n原创::https://xapi.xinmanhua.net/search/catalog?keyword=原创&page={{page}}",
    "header": "{\n  \"User-Agent\": \"okhttp/3.10.0\"\n}",
    "lastUpdateTime": 1720291618303,
    "loginUrl": "",
    "respondTime": 1099,
    "ruleBookInfo": {
      "intro": "@JSon:$.data.attributes.intro&&$.data.attributes.description"
    },
    "ruleContent": {
      "content": "$.data[*].attributes.url\n@js:list=result.split('\\n');\nlist.map(x=>'<img src=\"'+x+'\">').join('\\n')",
      "imageStyle": "FULL",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@JSon:$.attributes.author",
      "bookList": "@JSon:$.data.*",
      "bookUrl": "https://xapi.xinmanhua.net/worksinfos/{$.attributes.wid}?include=chapters.digests",
      "coverUrl": "@JSon:$.attributes.logo_detail",
      "kind": "@JSon:$.attributes.workscate",
      "lastChapter": "@JSon:$.attributes.lastctitle",
      "name": "@JSon:$.attributes.title"
    },
    "ruleToc": {
      "chapterList": "$.included.*",
      "chapterName": "$.attributes.title&&$.attributes.intro",
      "chapterUrl": "https://xapi.xinmanhua.net/chapters/{$.id}/qualitywebs"
    },
    "searchUrl": "https://xapi.xinmanhua.net/search/selfdefine,{\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&page={{page}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "✐ 新漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://xapi.xinmanhua.net♤Haxc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 692,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::https://xapi.xinmanhua.net/search/catalog?keyword=all&ischarge=2&isfinish=2&order=0&page={{page}}\n治愈::https://xapi.xinmanhua.net/search/catalog?keyword=治愈&page={{page}}\n日常::https://xapi.xinmanhua.net/search/catalog?keyword=日常&page={{page}}\n都市::https://xapi.xinmanhua.net/search/catalog?keyword=都市&page={{page}}\n悬疑::https://xapi.xinmanhua.net/search/catalog?keyword=悬疑&page={{page}}\n科幻::https://xapi.xinmanhua.net/search/catalog?keyword=科幻&page={{page}}\n奇幻::https://xapi.xinmanhua.net/search/catalog?keyword=奇幻&page={{page}}\n热血::https://xapi.xinmanhua.net/search/catalog?keyword=热血&page={{page}}\n武侠::https://xapi.xinmanhua.net/search/catalog?keyword=武侠&page={{page}}\n古风::https://xapi.xinmanhua.net/search/catalog?keyword=古风&page={{page}}\n恋爱::https://xapi.xinmanhua.net/search/catalog?keyword=恋爱&page={{page}}\n少年::https://xapi.xinmanhua.net/search/catalog?keyword=少年&page={{page}}\n日漫::https://xapi.xinmanhua.net/search/catalog?keyword=日漫&page={{page}}\n原创::https://xapi.xinmanhua.net/search/catalog?keyword=原创&page={{page}}",
    "header": "{\n  \"User-Agent\": \"okhttp/3.10.0\"\n}",
    "lastUpdateTime": 1728717432248,
    "loginUrl": "",
    "respondTime": 991,
    "ruleBookInfo": {
      "intro": "@JSon:$.data.attributes.intro&&$.data.attributes.description"
    },
    "ruleContent": {
      "content": "$.data[*].attributes.url\n@js:list=result.split('\\n');\nlist.map(x=>'<img src=\"'+x+'\">').join('\\n')",
      "imageStyle": "FULL",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@JSon:$.attributes.author",
      "bookList": "@JSon:$.data.*",
      "bookUrl": "https://xapi.xinmanhua.net/worksinfos/{$.attributes.wid}?include=chapters.digests",
      "coverUrl": "@JSon:$.attributes.logo_detail",
      "kind": "@JSon:$.attributes.workscate",
      "lastChapter": "@JSon:$.attributes.lastctitle",
      "name": "@JSon:$.attributes.title"
    },
    "ruleToc": {
      "chapterList": "$.included.*",
      "chapterName": "$.attributes.title&&$.attributes.intro",
      "chapterUrl": "https://xapi.xinmanhua.net/chapters/{$.id}/qualitywebs"
    },
    "searchUrl": "https://xapi.xinmanhua.net/search/selfdefine,{\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&page={{page}}\"\n}",
    "weight": 57
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biqusa.com/#pb1101",
    "bookUrlPattern": "https://www.biqusa.com/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 694,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/xuanhuanxiaoshuo/1_{{page}}.html\n修真小说::/xiuzhenxiaoshuo/2_{{page}}.html\n都市小说::/dushixiaoshuo/3_{{page}}.html\n穿越小说::/chuanyuexiaoshuo/4_{{page}}.html\n网游小说::/wangyouxiaoshuo/5_{{page}}.html\n科幻小说::/kehuanxiaoshuo/6_{{page}}.html\n其它小说::/qitaxiaoshuo/7_{{page}}.html",
    "lastUpdateTime": 1734879661037,
    "loginUrl": "",
    "respondTime": 1423,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@a@text",
      "coverUrl": "id.fmimg@img@src",
      "intro": "id.intro@text",
      "kind": "id.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.bookdetail@id.info@h1@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节"
    },
    "ruleContent": {
      "content": "id.content@textNodes##本小说.*无广告免费阅读。|：。："
    },
    "ruleExplore": {
      "author": "class.s4@a@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.biqusa.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节"
    },
    "ruleSearch": {
      "author": "class.s4@a@text",
      "bookList": "class.novelslist2@ul@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.biqusa.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s6@text",
      "lastChapter": "class.s3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节"
    },
    "ruleToc": {
      "chapterList": "//*[@id=\"list\"]//dt[2]/following-sibling::dd/a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.biqusa.com/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "彩绘漫画（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.kanman.comHaxc",
    "customButton": false,
    "customOrder": 696,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "人气::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=48\n更新::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=48\n评分::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=48\n收藏::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=48\n热血::https://m.kanman.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=48\n机战::https://m.kanman.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=48\n运动::https://m.kanman.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=48\n推理::https://m.kanman.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=48\n冒险::https://m.kanman.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=48\n搞笑::https://m.kanman.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=48\n战争::https://m.kanman.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n神魔::https://m.kanman.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=48\n忍者::https://m.kanman.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=48\n竞技::https://m.kanman.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=48\n悬疑::https://m.kanman.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=48\n社会::https://m.kanman.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=48\n恋爱::https://m.kanman.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=48\n宠物::https://m.kanman.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=48\n吸血::https://m.kanman.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=48\n萝莉::https://m.kanman.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=48\n后宫::https://m.kanman.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=48\n御姐::https://m.kanman.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=48\n霸总::https://m.kanman.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=48\n玄幻::https://m.kanman.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n古风::https://m.kanman.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=48\n历史::https://m.kanman.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=48\n漫改::https://m.kanman.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=48\n游戏::https://m.kanman.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=48\n穿越::https://m.kanman.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=48\n恐怖::https://m.kanman.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=48\n真人::https://m.kanman.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=48\n科幻::https://m.kanman.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n都市::https://m.kanman.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=48\n武侠::https://m.kanman.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=48\n修真::https://m.kanman.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n生活::https://m.kanman.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n动作::https://m.kanman.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n防疫::https://m.kanman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=48",
    "lastUpdateTime": 1729749687724,
    "respondTime": 351,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": ".comic-update-status@text##.*-\\d+ ",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "https://m.kanman.com/api/getchapterlist?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.data.current_chapter.chapter_img_list@js:\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.cartoon_author_list_name||$.comic_author",
      "bookList": "$.data.data||$.data",
      "bookUrl": "https://m.kanman.com/{{$.comic_id}}/",
      "coverUrl": "https://image.yqmh.com/mh/{{$.comic_id}}.jpg-300x400.webp",
      "intro": "$.cartoon_desc",
      "kind": "$.comic_type##[a-zA-Z]|\\|",
      "lastChapter": "$.latest_cartoon_topic_name||$.last_chapter_name",
      "name": "$.comic_name@put:{bid:$.comic_id}"
    },
    "ruleToc": {
      "chapterList": "-$.data.[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "https://m.kanman.com/api/getchapterinfov2?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}&chapter_newid={{$.chapter_newid}}&isWebp=1&quality=low"
    },
    "searchUrl": "https://m.kanman.com/api/serachcomic/?product_id=1&productname=kmh&platformname=wap&serachKey={{key}}&topNumber=10",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.cxbz.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 699,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1724756098763,
    "loginUrl": "",
    "respondTime": 584,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "downloadUrls": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "meta[property~=category|status|update_time]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "div[id=\"nr1\"]@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{chapter.title}}.*\\n*"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "text.作者@text##作者：",
      "bookList": ".article>div[class=\"block\"]",
      "bookUrl": "##<a.*?href=\"([^\"]+)\"##$1###",
      "checkKeyWord": "异界",
      "coverUrl": "##<img.*?src=\"([^\"]+)\"##$1###",
      "intro": "",
      "kind": "text.分类@text##分类：",
      "lastChapter": "text.最新章节@text##最新章节：",
      "name": "h2>a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ":<li[^>]*><a[^\"]+\"([^\"]+)\"[^>]*>([^<]+)",
      "chapterName": "$2",
      "chapterUrl": "$1",
      "nextTocUrl": "##href=\"([^\"]+)\"[^>]*>下一页<##$1###"
    },
    "searchUrl": "http://m.cxbz958.org/s.php?submit=&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "爱看漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.kanman.com♤Haxc",
    "customButton": false,
    "customOrder": 701,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "人气::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=48\n更新::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=48\n评分::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=48\n收藏::https://m.kanman.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=48\n热血::https://m.kanman.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=48\n机战::https://m.kanman.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=48\n运动::https://m.kanman.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=48\n推理::https://m.kanman.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=48\n冒险::https://m.kanman.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=48\n搞笑::https://m.kanman.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=48\n战争::https://m.kanman.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n神魔::https://m.kanman.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=48\n忍者::https://m.kanman.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=48\n竞技::https://m.kanman.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=48\n悬疑::https://m.kanman.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=48\n社会::https://m.kanman.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=48\n恋爱::https://m.kanman.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=48\n宠物::https://m.kanman.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=48\n吸血::https://m.kanman.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=48\n萝莉::https://m.kanman.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=48\n后宫::https://m.kanman.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=48\n御姐::https://m.kanman.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=48\n霸总::https://m.kanman.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=48\n玄幻::https://m.kanman.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n古风::https://m.kanman.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=48\n历史::https://m.kanman.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=48\n漫改::https://m.kanman.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=48\n游戏::https://m.kanman.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=48\n穿越::https://m.kanman.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=48\n恐怖::https://m.kanman.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=48\n真人::https://m.kanman.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=48\n科幻::https://m.kanman.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=48\n都市::https://m.kanman.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=48\n武侠::https://m.kanman.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=48\n修真::https://m.kanman.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=48\n生活::https://m.kanman.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n动作::https://m.kanman.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=48\n防疫::https://m.kanman.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=48",
    "lastUpdateTime": 1720291417357,
    "respondTime": 208,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": ".comic-update-status@text##.*-\\d+ ",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "https://m.kanman.com/api/getchapterlist?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "$.data.current_chapter.chapter_img_list@js:\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\nresult.split(\"\\n\").map(x=>'<img src=\\\"'+x+','+JSON.stringify(headers)+'\\\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.cartoon_author_list_name||$.comic_author",
      "bookList": "$.data.data||$.data",
      "bookUrl": "https://m.kanman.com/{{$.comic_id}}/",
      "coverUrl": "https://image.yqmh.com/mh/{{$.comic_id}}.jpg-300x400.webp",
      "intro": "$.cartoon_desc",
      "kind": "$.comic_type##[a-zA-Z]|\\|",
      "lastChapter": "$.latest_cartoon_topic_name||$.last_chapter_name",
      "name": "$.comic_name@put:{bid:$.comic_id}"
    },
    "ruleToc": {
      "chapterList": "-$.data.[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "https://m.kanman.com/api/getchapterinfov2?product_id=1&productname=kmh&platformname=wap&comic_id=@get:{bid}&chapter_newid={{$.chapter_newid}}&isWebp=1&quality=low"
    },
    "searchUrl": "https://m.kanman.com/api/serachcomic/?product_id=1&productname=kmh&platformname=wap&serachKey={{key}}&topNumber=10",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "漫客栈",
    "bookSourceType": 0,
    "bookSourceUrl": "http://comic.mkzhan.com♤Haxc",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 702,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "热门人气::https://comic.mkzcdn.com/search/filter/?order=1&page_num={{page}}&page_size=12\n更新时间::https://comic.mkzcdn.com/search/filter/?order=2&page_num={{page}}&page_size=12\n连载::https://comic.mkzcdn.com/search/filter/?finish=1&page_num={{page}}&page_size=12\n完结::https://comic.mkzcdn.com/search/filter/?finish=2&page_num={{page}}&page_size=12\n霸总::https://comic.mkzcdn.com/search/filter/?theme_id=1&page_num={{page}}&page_size=12\n修真::https://comic.mkzcdn.com/search/filter/?theme_id=2&page_num={{page}}&page_size=12\n恋爱::https://comic.mkzcdn.com/search/filter/?theme_id=3&page_num={{page}}&page_size=12\n校园::https://comic.mkzcdn.com/search/filter/?theme_id=4&page_num={{page}}&page_size=12\n冒险::https://comic.mkzcdn.com/search/filter/?theme_id=5&page_num={{page}}&page_size=12\n搞笑::https://comic.mkzcdn.com/search/filter/?theme_id=6&page_num={{page}}&page_size=12\n生活::https://comic.mkzcdn.com/search/filter/?theme_id=7&page_num={{page}}&page_size=12\n热血::https://comic.mkzcdn.com/search/filter/?theme_id=8&page_num={{page}}&page_size=12\n架空::https://comic.mkzcdn.com/search/filter/?theme_id=9&page_num={{page}}&page_size=12\n后宫::https://comic.mkzcdn.com/search/filter/?theme_id=10&page_num={{page}}&page_size=12\n耽美::https://comic.mkzcdn.com/search/filter/?theme_id=11&page_num={{page}}&page_size=12\n玄幻::https://comic.mkzcdn.com/search/filter/?theme_id=12&page_num={{page}}&page_size=12\n悬疑::https://comic.mkzcdn.com/search/filter/?theme_id=13&page_num={{page}}&page_size=12\n恐怖::https://comic.mkzcdn.com/search/filter/?theme_id=14&page_num={{page}}&page_size=12\n灵异::https://comic.mkzcdn.com/search/filter/?theme_id=15&page_num={{page}}&page_size=12\n动作::https://comic.mkzcdn.com/search/filter/?theme_id=16&page_num={{page}}&page_size=12\n科幻::https://comic.mkzcdn.com/search/filter/?theme_id=17&page_num={{page}}&page_size=12\n战争::https://comic.mkzcdn.com/search/filter/?theme_id=18&page_num={{page}}&page_size=12\n古风::https://comic.mkzcdn.com/search/filter/?theme_id=19&page_num={{page}}&page_size=12\n穿越::https://comic.mkzcdn.com/search/filter/?theme_id=20&page_num={{page}}&page_size=12\n竞技::https://comic.mkzcdn.com/search/filter/?theme_id=21&page_num={{page}}&page_size=12\n百合::https://comic.mkzcdn.com/search/filter/?theme_id=22&page_num={{page}}&page_size=12\n励志::https://comic.mkzcdn.com/search/filter/?theme_id=23&page_num={{page}}&page_size=12\n同人::https://comic.mkzcdn.com/search/filter/?theme_id=24&page_num={{page}}&page_size=12\n真人::https://comic.mkzcdn.com/search/filter/?theme_id=26&page_num={{page}}&page_size=12\n少年::https://comic.mkzcdn.com/search/filter/?audience=1&page_num={{page}}&page_size=12\n少女::https://comic.mkzcdn.com/search/filter/?audience=2&page_num={{page}}&page_size=12\n青年::https://comic.mkzcdn.com/search/filter/?audience=3&page_num={{page}}&page_size=12\n少儿::https://comic.mkzcdn.com/search/filter/?audience=4&page_num={{page}}&page_size=12\n独家::https://comic.mkzcdn.com/search/filter/?copyright=1&page_num={{page}}&page_size=12\n合作::https://comic.mkzcdn.com/search/filter/?copyright=2&page_num={{page}}&page_size=12\n免费::https://comic.mkzcdn.com/search/filter/?is_free=1&page_num={{page}}&page_size=12\n付费::https://comic.mkzcdn.com/search/filter/?is_fee=1&page_num={{page}}&page_size=12\nVIP::https://comic.mkzcdn.com/search/filter/?is_vip=1&page_num={{page}}&page_size=12",
    "header": "{\n  \"User-Agent\": \"okhttp/3.11.0\"\n}",
    "lastUpdateTime": 1716230010386,
    "loginUrl": "",
    "respondTime": 503,
    "ruleBookInfo": {
      "author": "@get:{author}",
      "coverUrl": "",
      "intro": "$.data.content",
      "lastChapter": "$.data.chapter_title",
      "name": "$.data.title",
      "tocUrl": "https://comic.mkzhan.com/chapter/?comic_id={$.data.comic_id}"
    },
    "ruleContent": {
      "content": "@js:\njava.getStringList(\"$.data.page[*]image\").toArray().map\n(a=>'<img src=\"'+a+'\">').join(\"\\n\")",
      "imageStyle": "FULL",
      "nextContentUrl": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.author_title@put:{author:$.author_title}",
      "bookList": "$.data.list.*",
      "bookUrl": "https://comic.mkzhan.com/comic/info/?comic_id={$.comic_id}",
      "coverUrl": "$.cover@js:result.replace(/\\.(jpg|JPG).*/g,\".$1!cover-400\")",
      "lastChapter": "$.chapter_title",
      "name": "$.title@put:{comic_id:$.comic_id}"
    },
    "ruleToc": {
      "chapterList": "$.data",
      "chapterName": "$.title",
      "chapterUrl": "https://comic.mkzhan.com/chapter/content/v1/?chapter_id={{$.chapter_id}}&comic_id=@get:{comic_id}&format=1&quality=1&sign=0&type=1&uid=0",
      "isVip": "$.is_vip",
      "nextTocUrl": "",
      "updateTime": "$.change_time@js:result==0?'':java.timeFormat(result*1000)"
    },
    "searchUrl": "https://comic.mkzhan.com/search/keyword/?keyword={{key}}&page_num={{page}}&page_size=20",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "有声",
    "bookSourceName": "猫耳有声",
    "bookSourceType": 1,
    "bookSourceUrl": "https://www.missevan.com关耳",
    "customButton": false,
    "customOrder": 703,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部::https://www.missevan.com/dramaapi/filter?filters=0_5_0_0_0&page={{page}}&order=1&page_size=20\n现代::https://www.missevan.com/dramaapi/filter?filters=0_5_0_1_0&page={{page}}&order=1&page_size=20\n古风::https://www.missevan.com/dramaapi/filter?filters=0_5_0_2_0&page={{page}}&order=1&page_size=20\n民国::https://www.missevan.com/dramaapi/filter?filters=0_5_0_3_0&page={{page}}&order=1&page_size=20",
    "lastUpdateTime": 1734639280765,
    "respondTime": 3051,
    "ruleBookInfo": {
      "intro": "class.intro-content@text||$.info.sound.intro",
      "kind": "class.detail-count@text&&class.detail-newest@text&&class.detail-author@text&&class.detail-type@text&&class.detail-tags@text##类型：|标签：无|标签：",
      "tocUrl": "@js:\nif(baseUrl.match(/dramaapi|mdrama/)){\nresult='https://www.missevan.com/dramaapi/getdrama?drama_id='+baseUrl.match(/(\\d+)/)[1]\n}"
    },
    "ruleContent": {
      "content": "$.info.sound.soundurl_128||$.info.sound.soundurl"
    },
    "ruleExplore": {
      "bookList": "$.info.Datas",
      "bookUrl": "https://www.missevan.com/mdrama/drama/{{$.id}},{\"webView\":true}",
      "coverUrl": "$.cover",
      "kind": "$.type_name",
      "lastChapter": "$.newest",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "$.username||$.author",
      "bookList": "<js>\nkey=java.get('key');\npage=java.get('page');\n\n//创建两个空数组\njson=[];json2=[];\n\n//判定json里是否有列表\nif(JSON.parse(result).info.Datas){\njson=JSON.parse(result).info.Datas;}\n\n//加载单曲搜索页面并转为json\njson1=JSON.parse(java.ajax('https://www.missevan.com/sound/getsearch?s='+key+'&type=3&page_size=10&p='+page));\n\n//判定json里是否有列表\nif(json1.info.Datas){\njson2=json1.info.Datas\n}\n\n//剧集搜索列表与单曲搜索列表拼接\nlist=json.concat(json2);\n\nresult=JSON.stringify(list)\n</js>\n$.[*]",
      "bookUrl": "<js>\nid=String(result).match(/id=(\\d+)/)[1];\nif(!String(result).match(/catalog_name/)){\nresult='https://www.missevan.com/sound/getsound?soundid='+id\n}else{result='https://www.missevan.com/dramaapi/getdrama?drama_id='+id}\n</js>",
      "coverUrl": "$.front_cover||$.cover",
      "intro": "$.abstract",
      "kind": "{$.type_name},{$.catalog_name}##\\{.*?\\}",
      "lastChapter": "$.newest",
      "name": "$.soundstr||$.name"
    },
    "ruleToc": {
      "chapterList": "<js>'['+result+']'</js>\n$..info.episodes.episode[*]||$..info.episodes.music[*]||$.[*]",
      "chapterName": "$.name||$.info.sound.soundstr",
      "chapterUrl": "https://www.missevan.com/sound/getsound?soundid={{$.sound_id||$.info.sound.id}}"
    },
    "searchUrl": "https://www.missevan.com/dramaapi/search?s={{key}}&page={{page}}\n@js:java.put('key',key);java.put('page',page);result",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.gdbzkz.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 705,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/fenlei/1/{{page}}.html\n仙侠小说::/fenlei/2/{{page}}.html\n都市小说::/fenlei/3/{{page}}.html\n军史小说::/fenlei/4/{{page}}.html\n网游小说::/fenlei/5/{{page}}.html\n科幻小说::/fenlei/6/{{page}}.html\n恐怖小说::/fenlei/7/{{page}}.html",
    "lastUpdateTime": 1732108100487,
    "loginUrl": "",
    "respondTime": 631,
    "ruleBookInfo": {
      "author": "class.small@tag.span.0@text##作 者：",
      "coverUrl": "class.cover@img@src",
      "init": "",
      "intro": "class.intro@textNodes##作者.*|无弹窗.*",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content ",
      "lastChapter": "class.small@tag.span.5@a@text##百度搜索.*",
      "name": "class.info@h2@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|天才一秒记住.*org|请记住本书首发域.*org"
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox@class.p10",
      "bookUrl": "class.bookname@tag.a@href",
      "coverUrl": "class.bookimg@img@src",
      "intro": "class.bookinfo@p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text##百度搜索.*",
      "name": "class.bookname@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说"
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.gdbzkz.com/s.php?ie=utf-8&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "乐库小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.6lk.la",
    "customButton": false,
    "customOrder": 706,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734644546844,
    "respondTime": 481,
    "ruleBookInfo": {
      "author": ".block_txt2@p.2@text",
      "coverUrl": ".block_img2@img@src",
      "intro": "🕰  更新时间：{{@@p:nth-of-type(6)@text##更新：}}\n📒  作品Tags：{{@@p:nth-of-type(4) a@text##}}\n🔶  状态：{{@@p:nth-of-type(5)@text##状态：}}\n📜  内容简介：\n{{@@.intro_info@text}}##(^|[。！？……；]+[”」）】]?)##$1<br>",
      "kind": ".block_txt2@p.3:4:5@text##.*：|T.*",
      "lastChapter": ".block_txt2@a.3@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".block_txt2@h2@text"
    },
    "ruleContent": {
      "content": "id.nr1@html",
      "nextContentUrl": "id.pb_next@href",
      "replaceRegex": "##\\s*.*\\(第\\d/\\d页\\)\\s*|\\s*（.*下一页.*）\\s*|最新网址：m.6lk.la"
    },
    "ruleExplore": {
      "author": "text##.*\\/",
      "bookList": ".line",
      "bookUrl": "a@href",
      "coverUrl": "a@href##.+\\D((\\d+)\\d{3})\\D##http://www.6lg.org/files/article/image/$2/$1/$1s.jpg###",
      "kind": "text##\\[|\\].*",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": "p.3@text",
      "bookList": ".block",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "kind": "p.2@text##.*：",
      "lastChapter": "a.3@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": ".chapter@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href",
      "nextTocUrl": ".right@a@href"
    },
    "searchUrl": "/s.php,{\n  \"method\": \"post\",\n  \"body\": \"q={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.7.29 by.◎辞晨◎",
    "bookSourceGroup": "漫画",
    "bookSourceName": "香新漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://xapi.xinmanhua.net",
    "customButton": false,
    "customOrder": 707,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🌊分类\",`/search/catalog?keyword=all&ischarge=2&isfinish=2&order=0&page={{page}}\n`,1,1)\n\tarList=[\"治愈\",\"日常\",\"都市\",\"悬疑\",\"科幻\",\"奇幻\",\"热血\",\"武侠\",\"古风\",\"恋爱\",\"少年\",\"日漫\",\"原创\"]\n\tarList.map((tag,id)=>{\n\t\turl=`/search/catalog?keyword=${tag}&page={{page}}\n`;\n\t\tpush(tag, url, 1, 0.25);\n\t\t});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "@js:\nJSON.stringify({\n  'User-Agent': java.getWebViewUA(),\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': baseUrl,\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'Referer': baseUrl,\n  'Accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "lastUpdateTime": 1759431337763,
    "respondTime": 1070,
    "ruleBookInfo": {
      "author": "$.data..author",
      "intro": "@JSon:$.data.attributes.intro&&$.data.attributes.description",
      "kind": "$.data..workscate##\\/##,",
      "name": "$.data..title"
    },
    "ruleContent": {
      "content": "<js>\njava.getStringList(\"$.data[*].attributes.url\").toArray().map(x=>`<img src=\"${x}\">`).join('\\n');\n</js>",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.attributes.author",
      "bookList": "$.data[*]",
      "bookUrl": "/worksinfos/{$.attributes.wid}?include=chapters.digests",
      "coverUrl": "$.attributes.logo_detail",
      "kind": "$.attributes.workscate",
      "lastChapter": "$.attributes.lastctitle",
      "name": "$.attributes.title"
    },
    "ruleToc": {
      "chapterList": "$.included.*",
      "chapterName": "$.attributes.title&&$.attributes.intro",
      "chapterUrl": "/chapters/{$.id}/qualitywebs"
    },
    "searchUrl": "/search/selfdefine,{\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&page={{page}}\"\n}",
    "weight": 44
  },
  {
    "bookSourceComment": "@dy_天天的鸟蛋蛋\n//这个小说网简介里面的网站基本都是同模板。\n除了分类不一样。\n如\n请看小说网：https://www.qingkan9.com/\n笔趣阁小说网：http://www.03030.cc/\n。。。\n分类1\n[{\"title\":\"玄幻\",\"url\":\"/list1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/list2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/list3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/list4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/list5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/list6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/list7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/list8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"排行\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"周榜\",\"url\":\"/top/week_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/week_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/week_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/week_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/week_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/week_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/week_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/week_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/week_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}\n,{\"title\":\"月榜\",\"url\":\"/top/month_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/month_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/month_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/month_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/month_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/month_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/month_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/month_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/month_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总榜\",\"url\":\"/top/all_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/all_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/all_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/all_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/all_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/all_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/all_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/all_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/all_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/full/0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/full/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/full/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/full/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/full/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/full/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/full/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/full/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/full/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}}]\n分类二\n[{\"title\":\"玄幻\",\"url\":\"/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"排行\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"周榜\",\"url\":\"/top/week_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/week_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/week_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/week_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/week_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/week_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/week_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/week_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/week_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}\n,{\"title\":\"月榜\",\"url\":\"/top/month_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/month_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/month_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/month_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/month_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/month_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/month_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/month_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/month_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总榜\",\"url\":\"/top/all_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/all_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/all_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/all_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/all_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/all_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/all_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/all_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/all_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/full/0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/full/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/full/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/full/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/full/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/full/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/full/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/full/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/full/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}}]",
    "bookSourceGroup": "笔趣阁,女频",
    "bookSourceName": "大唐小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dtxsw.com",
    "customButton": false,
    "customOrder": 708,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻\",\"url\":\"/list1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/list2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/list3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/list4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/list5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/list6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/list7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/list8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"排行\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"周榜\",\"url\":\"/top/week_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/week_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/week_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/week_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/week_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/week_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/week_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/week_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/week_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}\n,{\"title\":\"月榜\",\"url\":\"/top/month_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/month_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/month_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/month_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/month_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/month_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/month_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/month_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/month_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总榜\",\"url\":\"/top/all_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/top/all_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/top/all_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/top/all_3_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/top/all_4_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/top/all_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/top/all_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/top/all_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/top/all_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/full/0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/full/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/full/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/full/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/full/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/full/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/full/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/full/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/full/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1737600703499,
    "respondTime": 4828,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "canReName": "",
      "coverUrl": "",
      "init": "",
      "intro": "{{@@[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>}}",
      "kind": "[property~=category|status|update_time]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": ".font_max@html",
      "nextContentUrl": "text.下一@href",
      "replaceRegex": "##第\\(\\d+\\/\\d+\\)页|dengbi.net|dmxsw.com|qqxsw.com|yifan.netshuyue.net|epzw.net|qqwxw.com|xsguan.comxs007.com|zhuike.net|readw.com|23zw.cc",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": ".book_other:nth-child(3)@text",
      "bookList": ".row@.col-12",
      "bookUrl": "h3 > a@href",
      "coverUrl": "img@src",
      "kind": "{{@@h3 > a@text##\\[(.*)\\].*##$1}}\n{{@@.book_other:nth-child(4),\n.book_other:nth-child(5)@text##[\\u4e00-\\u9fa5]+：}}",
      "lastChapter": ".book_other:nth-child(6)@text##[\\u4e00-\\u9fa5]+：",
      "name": "h3 > a@text##\\[.*\\]"
    },
    "ruleSearch": {
      "author": ".book_other:nth-child(3)@text",
      "bookList": ".row:nth-child(2) > .col-12:nth-child(n+1)",
      "bookUrl": "h3 > a@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": "",
      "kind": "{{@@h3 > a@text##\\[(.*)\\].*##$1}}\n{{@@.book_other:nth-child(4),\n.book_other:nth-child(5)@text##[\\u4e00-\\u9fa5]+：}}",
      "lastChapter": ".book_other:nth-child(6)@text##[\\u4e00-\\u9fa5]+：",
      "name": "h3 > a@text##\\[.*\\]"
    },
    "ruleToc": {
      "chapterList": ".book_list2 .col-md-3:nth-child(n+1) > a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "isVip": "",
      "nextTocUrl": ".page-item.4@a@href\n@js:\nvar resultStr = result && result.length > 0 ? result[0] : \"\";\nvar match = resultStr.match(/\\/index_(\\d+)\\.html/);\nvar n = match && match[1] ? parseInt(match[1], 10) : 1; \nvar list = [];\nfor (var i = 1; i <= n; i++) {\n    list.push(\"index_\" + i + \".html\"); \n}\nlist;"
    },
    "searchUrl": "/search.php?q={{key}}&p={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "顶点小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.basusan.com#🎃",
    "customButton": false,
    "customOrder": 709,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\npush=(title,url,type,size)=>sort.push({\n    \"title\": title,\n    \"url\": url?url:\"\",\n    \"style\": {\n      \"layout_flexGrow\": type,\n      \"layout_flexBasisPercent\": size,\n    }\n  });\n\nbd=[\"必读榜\",\"潜力榜\",\"完本榜\",\n\"更新榜\",\"搜索榜\",\"评论榜\"];\npd=[[\"男频\",\"1\"],\n\t[\"女频\",\"2\"]].map([title,id]=>{\npush(title+'榜单', null, 1, 1);\n\t\tbd.map((title,index)=>{\t\t\t\n\t\t  \turl= `/module/rank?type=${index+1}&channel=${id}&page={{page}}`; \n\t\t\t\tpush(title, url, 1, 0.25);\t\t\t\t\t\t\t\t\t\t\n\t\t\t});\n\t});\n  \nbook=[[\"男频\",\n[[\"玄幻\",\"lejRej\"],[\"都市\",\"mbk5ez\"],[\"武侠\",\"nel5aK\"],[\"仙侠\",\"vbmOeY\"],[\"军事\",\"penRe7\"],[\"历史\",\"xbojag\"],[\"游戏\",\"mep2bM\"],[\"科幻\",\"zbq2dp\"],[\"轻小说\",\"YerEdO\"]]],\n\t [\"女频\",\n[[\"现代言情\",\"9avmeG\"],[\"古代言情\",\"DdwRb1\"],[\"幻想言情\",\"7ax9by\"],[\"青春校园\",\"Pdy7aQ\"],[\"唯美纯爱\",\"kazYeJ\"],[\"同人衍生\",\"9aAOdv\"]]]].map([tit1,category]=>{\n\t \t\t[[\"连载\",\"0\"],[\"完结\",\"1\"]].map([tit2,id]=>{  \n\t    push(tit1+'•'+tit2, null, 1, 1);   \n     category.map([title,cid]=>{\t    \n\turl= `/novel?isComplete=${id}&sort=1&page={{page}}&categoryId=${cid}`;\t\n\t\t\t \tpush(title, url, 1, 0.25);\n        });\n      });\n  });\n\nJSON.stringify(sort)",
    "header": "@js:\nvar uid=java.randomUUID(),\nsid=String(uid).replace(/\\-/g,\"\");\nhead={\n\t   \"client-device\": sid,\n    \"client-brand\": \"vivo\",\n    \"client-version\": \"1.0.0\",\n    \"client-channel\": \"android\",\n    \"client-name\": \"app.maoyankanshu.novel\",\n    \"alias-name\": \"maoyankanshu\",\n    \"client-source\": \"android\",\n    \"Authorization\": \"bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkuYW53YWJlbi5jb21cL2F1dGhcL3RoaXJkIiwiaWF0IjoxNzA0OTc3ODY5LCJleHAiOjE3OTgyODk4NjksIm5iZiI6MTcwNDk3Nzg2OSwianRpIjoiSG9IcHpNbzNxa1hvYWxYUCIsInN1YiI6OTc5MjYsInBydiI6ImExY2IwMzcxODAyOTZjNmExOTM4ZWYzMGI0Mzc5NDY3MmRkMDE2YzUifQ.Q21n8Tv71pyScM6HsKsiPuPsSXukqBKNm7GObPdR8q4\",\n    \"User-Agent\": \"okhttp/4.9.2\"\n    };\nJSON.stringify(head)",
    "lastUpdateTime": 1721132834571,
    "respondTime": 3166,
    "ruleBookInfo": {
      "author": "$.authorName",
      "coverUrl": "$.cover",
      "init": "$.data",
      "intro": "$.summary",
      "kind": "$..className&&$.lastUpdatedAt",
      "lastChapter": "$.lastChapter.chapterName",
      "name": "$.novelName",
      "tocUrl": "http://api.basusan.com/novel/{{$.novelId}}/chapters",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "$.content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "$.data[*]",
      "bookUrl": "http://api.basusan.com/novel/{{$.novelId}}?isSearch=1",
      "checkKeyWord": "剑来",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$..className&&$.createdAt",
      "name": "$.novelName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "$.data.list.*",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.path\n@js:\nvar data=String(result),\ntype=\"AES/CBC/PKCS5Padding\",\nkey=\"f041c49714d39908\",\niv=\"0123456789abcdef\";\njava.createSymmetricCrypto(type,key,iv).decryptStr(data);",
      "preUpdateJs": "java.refreshTocUrl()",
      "updateTime": "{{$.updatedAt}} • {{$.wordNum}}字"
    },
    "searchUrl": "http://api.basusan.com/search?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "晚班小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.99mk.info",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 710,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1721151221006,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 711,
    "ruleBookInfo": {
      "author": "class.info@tag.span.0@text##作者：",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text##简介：|各位书友.*",
      "kind": "class.info@tag.span.1@text##分类：",
      "lastChapter": "class.info@tag.a.-1@text&&class.info@class.last.0@text##更新时间：|..\\:.*",
      "name": "class.info@tag.h2@text",
      "tocUrl": "text.开始阅读@href"
    },
    "ruleContent": {
      "content": ".ReadAjax_content@html",
      "imageStyle": "0",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##请记住本书首发.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text",
      "name": "tag.h4@text"
    },
    "ruleToc": {
      "chapterList": "class.book_last@dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://wap.99mk.net/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "猪猪书网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zzs5.info",
    "customButton": false,
    "customOrder": 712,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"穿越\",\"url\":\"/chuanyue/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/yanqing/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"灵异\",\"url\":\"/lingyi/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/wuxia/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/kehuan/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/lishi/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"/xiaoyuan/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"文学\",\"url\":\"/wenxue/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"魔幻\",\"url\":\"/mohuan/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"重生\",\"url\":\"/chongsheng/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/danmei/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"国外\",\"url\":\"/guowai/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/wangyou/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"豪门\",\"url\":\"/haomen/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/qita/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"人物\",\"url\":\"/renwu/list-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1734838910417,
    "respondTime": 6726,
    "ruleBookInfo": {
      "author": "tbody.1@tr.3@td.1@text||.bookd-title@dd@ownText##.*作者.|\\s.*",
      "intro": ".show_content!1@html",
      "kind": ".catpos@a.1@text&&tbody.1@tr.3@td.0@text&&.bookd-title@dd@ownText##.*：|小说|\\s.*",
      "lastChapter": "tbody.1@a@text||.list@a.-1@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "tbody.0@h1@text||.bookd-title@h1@text##下载",
      "tocUrl": "id.downlink@a.0@href",
      "wordCount": "tbody.1@tr.2@td.1@text##.*："
    },
    "ruleContent": {
      "content": ".content!0@html"
    },
    "ruleExplore": {
      "author": "a.1@href<js>java.ajax(result)</js>##作者.([^<]+)##$1###",
      "bookList": "tbody.0@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "td.1@text##.*介绍.|发布时间.*",
      "kind": "p.0@text##.*时间.|\\s.*",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text",
      "wordCount": "p.0@text##.*：|\\s"
    },
    "ruleSearch": {
      "author": "a.1@href<js>java.ajax(result)</js>##作者.([^<]+)##$1###",
      "bookList": "tbody@tr",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "kind": "p.0@text##.*：|\\s",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".list@dd@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/index.php?m=search&c=index&a=init&typeid=2&siteid=1&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\n更新：\n使用说明",
    "bookSourceGroup": "免费",
    "bookSourceName": "优品学习（发现）",
    "bookSourceType": 3,
    "bookSourceUrl": "https://www.ypppt.com",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 713,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1721279150473,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 180344,
    "ruleBookInfo": {
      "author": "",
      "canReName": "",
      "coverUrl": "",
      "init": "\n",
      "intro": "@js:\nvar lis = {\n  比例:(String(src).match(/比例：.*?\\n/)),\n  页数:(String(src).match(/页数：.*?\\n/)),\n  格式:(String(src).match(/格式：.*?\\n/)),\n  大小:(String(src).match(/大小：.*?\\n/)),\n  日期:(String(src).match(/日期：.*?\\n/)),\n  效果:(String(src).match(/效果：.*?\\n/))\n}\n\"    \" + lis['比例'] + lis['页数'] + lis['格式'] + lis['大小'] + lis['日期'] + lis['效果']",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "tocUrl": "class.down-button@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "html",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "",
      "bookList": "class.posts clear@li",
      "bookUrl": "a.1@href",
      "coverUrl": "a.0@img@src",
      "intro": "",
      "kind": "div@span.0@a@text",
      "lastChapter": "",
      "name": "a.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.down clear@li",
      "chapterName": "a@text##2##1",
      "chapterUrl": "",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://www.ypppt.com/p/search.php?kwtype=1&q={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "免费小说#2",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.b483.com",
    "customButton": false,
    "customOrder": 714,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1720612221350,
    "respondTime": 4848,
    "ruleBookInfo": {
      "author": "class.gray fss@text",
      "name": "tag.h4@text",
      "tocUrl": "text.显示全部章节@href"
    },
    "ruleContent": {
      "content": "id.acontent@text",
      "nextContentUrl": "text.下一章@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".gray@text##\\|.*",
      "bookList": "class.blockcontent@class.c_row cf",
      "bookUrl": "tag.a@href",
      "coverUrl": "class.row_cover@tag.img@src",
      "intro": "",
      "name": "tag.h4@text"
    },
    "ruleToc": {
      "chapterList": "tag.dl@dd",
      "chapterName": "@a@text",
      "chapterUrl": "@a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://m.b483.com/modules/article/search.php,{\n\"charset\": \"utf-8\",\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}&searchtype=all\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "by  学渣 & abyssesml & Thomas喲\n免费小说之王，小米官方全新打造移动阅读平台，实现全站小说正版永久性免费阅读。都市喧嚣，茫茫书海，愿免费小说之王可以陪伴您走过一个又一个充实的日子。在这里，海量红文、精细分类、不占空间、排版精致，我们一起，让阅读成为习惯，成为信仰。\n小米出品，品质保证。",
    "bookSourceGroup": "正版",
    "bookSourceName": "小米阅读",
    "bookSourceType": 0,
    "bookSourceUrl": "https://reader.browser.miui.com/v2",
    "bookUrlPattern": "https://reader.browser.miui.com/api/v2/book/\\d+",
    "customButton": false,
    "customOrder": 715,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type)=>{\n\t\tjson = JSON.stringify({\n\t\t\t\ttitle: title,\n\t\t\t\turl: url?url:\"\",\n\t\t\t\tstyle: {\n\t\t\t\t\t\tlayout_flexGrow: 1,\n\t\t\t\t\t\tlayout_flexBasisPercent: type\n\t\t\t\t\t}\n\t\t\t});\n\t\treturn sort.push(json);\n\t}\npush('༺ˇ»`ʚ排行榜单ɞ´«ˇ༻',null,1);\n$$=(a,b,c)=>{\n\t\treturn `https://reader.browser.duokan.com/api/v2/ranking?len=10&page={{page}\\}&type=${a}-${b}-${c}`\n\t}\n[[\"人气榜\",\"golden\"],[\"新书榜\",\"new\"],[\"完结榜\",\"end\"],[\"热搜榜\",\"search\"]].map([title,b]=>{\n\t\tpush('༺ '+title+' ༻',null,1);\n\t\t[\"男频\",\"女频\"].map((title1,a)=>{\n\t\t\t\ta++\n\t\t\t\t[[\"周榜\",\"week\"],[\"月榜\",\"month\"],[\"总榜\",\"total\"]].map([title2,c]=>{\n\t\t\t\t\t\treturn push(title1+title2,$$(a,b,c),0.25);\n\t\t\t\t\t});\n\t\t\t});\n\t});\npush('༺ˇ»`ʚ书籍分类ɞ´«ˇ༻',null,1);\n$$=(sex,bookStatus,categoryId,hotChoice)=>{\n\t\treturn `https://reader.browser.duokan.com/api/v2/book/list2?len=10&page={{page}\\}&sex=${sex}&bookStatus=${bookStatus}&categoryId=${categoryId}&wordCountsInterval=0&hotChoice=${hotChoice}`\n\t}\nbookStatus=categoryId=hotChoice=0;\n[\n\t\t[\"男频\",[[\"都市\",7],[\"玄幻\",3],[\"仙侠\",6],[\"历史\",8],[\"灵异\",10],[\"科幻\",11],[\"奇幻\",4],[\"同人\",143],[\"游戏\",12],[\"武侠\",5],[\"竞技\",13]]],\n\t\t[\"女频\",[[\"现代言情\",75],[\"古代言情\",74],[\"浪漫青春\",76],[\"玄幻言情\",72],[\"仙侠奇缘\",73],[\"悬疑灵异\",77],[\"科幻空间\",78],[\"同人小说\",80],[\"游戏竞技\",79],[\"耽美小说\",81]]]\n].map(([title,list],sex)=>{\n\t\tsex++\n\t\tpush('༺ˇ»`ʚ'+title+'ɞ´«ˇ༻',$$(sex,bookStatus,categoryId,hotChoice),1);\n\t\tlist.map([title,categoryId]=>{\n\t\t\t\tpush('༺ '+title+' ༻',$$(sex,bookStatus,categoryId,hotChoice),1);\n\t\t\t\t[\"综合全部\",\"最新上线\",\"阅读最多\",\"点赞最高\"].map((title,hotChoice)=>{\n\t\t\t\t\t\t['['+title+']',\"连载\",\"完结\"].map((title,bookStatus)=>{\n\t\t\t\t\t\t\t\treturn push(title,$$(sex,bookStatus,categoryId,hotChoice),0.25);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t});\n\t});\n'['+sort.toString()+']'",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.2357.134 Safari/537.36\"\n}",
    "lastUpdateTime": 1761886848926,
    "respondTime": 3342,
    "ruleBookInfo": {
      "author": "$..author",
      "coverUrl": "$..imgUrl",
      "init": "$.data",
      "intro": "{{'\\n&lrm;\\n'}}🔗 源站：{{$..cpName}}\n{{'\\n&lrm;\\n'}}📆 开坑：{{java.timeFormatUTC(java.getString('$.firstChapter.updateTime')*1000,'yyyy-MM-dd',8)}}\n{{'\\n&lrm;\\n'}}📑 简介：{{$..description}}",
      "kind": "{{$..score}}分\n{{$..secondCategoryName&&$..bookStatus}}\n{{java.put('time', java.timeFormatUTC(java.getString('$.lastChapter.updateTime'),'yyyy-MM-dd',8))}}",
      "lastChapter": "{{$.lastChapter.chapterName}} ",
      "name": "$..name",
      "tocUrl": "https://reader.browser.miui.com/api/v2/chapter/list/{{$..bookId}}",
      "wordCount": "$..wordCount"
    },
    "ruleContent": {
      "content": "$..contentList[*]##——内容来自.*\n<js>\nif(result.match(/^http.+$/)){\n\t\tsrc = java.base64Decode(String(java.ajax(result)).match(/\\('([^']+)'\\)/)[1]);\n\t}\nsrc\n</js>\n$..p[*]||$..contentList[*]\n##——内容来自.*"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data.list",
      "bookUrl": "https://reader.browser.miui.com/api/v2/book/{{$.bookId}}",
      "coverUrl": "$.imgUrl",
      "intro": "$.description",
      "kind": "{{$.score}}分\n{{$.secondCategoryName&&$.bookStatus}}\n{{java.put('time', java.timeFormatUTC(java.getString('$.updateTime')*1000,'yyyy-MM-dd',8))}}",
      "lastChapter": "最近更新：@get:{time}",
      "name": "$.name",
      "wordCount": "$.wordCount"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.related",
      "bookUrl": "https://reader.browser.miui.com/api/v2/book/{{$.id}}",
      "coverUrl": "$.image",
      "intro": "$.description",
      "kind": "$.tags",
      "lastChapter": "发布源站：{{$.cp}}",
      "name": "$.title",
      "wordCount": "$.status"
    },
    "ruleToc": {
      "chapterList": "@js:\nlet u = baseUrl.replace('list','content')\n\nlet v = [];\nlet list = [];\nJSON.parse(result).data.list.map($=>{\n\n//分卷判定\n\t\tV = $.volumeTitle\n\t\tif(v[v.length-1]!=V&&!/^\\s*$/.test(V)){\n\t\t\t\tv.push(V)\n\t\t\t\tlist.push({\n\t\t\t\t\t\tname: '📖['+V+']📖',\n\t\t\t\t\t\tvolume: true\n\t\t\t\t\t})\n\t\t\t}\n\n\t\treturn list.push({\n\t\t\t\tname: $.chapterName,\n\t\t\t\turl: u+'?chapterId='+$.chapterId+'&volumeId=1',\n\t\t\t\tinfo: '更新时间：'+java.timeFormatUTC($.updateTime*1000,'yyyy-MM-dd HH:mm',12)\n\t\t\t});\n\t});\nv.length<2?list.filter($=>!$.volume):list",
      "chapterName": "name",
      "chapterUrl": "url",
      "isVolume": "volume",
      "updateTime": "info"
    },
    "searchUrl": "https://reader.browser.miui.com/api/v2/search/word?query={{key}}&size=100",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "凡人小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.washuwx.com#🎃",
    "customButton": false,
    "customOrder": 721,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1721185710976,
    "respondTime": 2361,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "class.intro clearfix@text",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "@js:\nvar txt = [],\ndd = java.getElement(\"#txt dd\");\nfor(i = 0; i < dd.length-1; i++){\n\tdata = dd.select(`[data-id=${i}]`)\n\ttxt.push(data)\n\t}\ntxt.join(\"\\n\")",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{try{title}catch(e){\"\"} }}\\s*\\(第\\d+.*页\\)|.?本章未完.*|.*凡人小说网全文字更新,牢记网址.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a@textNodes##.*\\(|\\)",
      "bookList": "ul[class=\"bd\"]@li",
      "bookUrl": "a@href",
      "checkKeyWord": "临安不夜侯",
      "kind": "span@text##\\[|\\]",
      "name": "a@textNodes##\\(.*|\\)"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar list = [],\nd=java.getElement(\".list > div\");\nfor(i = 0; i < d.length-1; i++){\n\tdata = d.select(`[data-id=${i}]`)\n\tlist.push(data)\n\t}\nlist.join(\"\\n\")\n</js>\nli a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://wap.washuwx.com/s.php,{\n\t\"method\":\"post\",\n\t\"body\":\"s={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "菜小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.tatays.com/allbook",
    "customButton": false,
    "customOrder": 722,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuan/p{{page}}.html\n武侠修真::/wuxia/p{{page}}.html\n都市言情::/yanqing/p{{page}}.html\n历史军事::/lishi/p{{page}}.html\n科幻小说::/kehuan/p{{page}}.html\n网游小说::/wangyou/p{{page}}.html\n女生小说::/nvsheng/p{{page}}.html\n其他小说::/qita/p{{page}}.html",
    "lastUpdateTime": 1700203361022,
    "respondTime": 5669,
    "ruleBookInfo": {
      "coverUrl": "class.chapter-list-info@class.chapter-img@tag.img@src",
      "intro": "class.chapter-detail@class.info@class.intro@text",
      "kind": "class.mid@class.clearfix@tag.dd[1]@text##类型：",
      "wordCount": "class.mid@class.clearfix@tag.dd[2]@text##字数："
    },
    "ruleContent": {
      "content": "class.content-box@class.chapter-content@html"
    },
    "ruleExplore": {
      "author": "tag.p[0]@text##\\| 连载",
      "bookList": "class.list-content@class.list-box@class.list-title clears@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a@tag.img@src",
      "intro": "tag.p[1]@text",
      "lastChapter": "tag.p[2]@tag.a@text",
      "name": "tag.h2@text"
    },
    "ruleSearch": {
      "author": "class.three@text",
      "bookList": "class.main-wrap@class.sort-list search_words@tag.li[!0]",
      "bookUrl": "class.one@tag.a@href",
      "checkKeyWord": "凡人修仙传",
      "lastChapter": "class.two@tag.a@text",
      "name": "class.one@tag.a@text",
      "wordCount": "class.four@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter-box@class.chapter-list clears@tag.ul@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://www.tatays.com/modules/article/search.php,\n{\n    \"webView\":true,\n    \"method\":\"POST\",\n    \"body\":\"searchtype=all&searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃镇魂小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.zhenhunxiaoshuo.com/chaxun.html#🎃",
    "customButton": false,
    "customOrder": 724,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\njava.toast(\"🔥正在刷新列表,请稍等！\");\nvar push = (title, url, size) => result.push({\n    \"title\": title,\n    \"url\": url,\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": size\n    }\n});\nvar baseUrl = \"https://www.zhenhunxiaoshuo.com/chaxun.html\";\nvar tag = java.ajax(baseUrl);\nif (tag) {\n    var a = org.jsoup.Jsoup.parse(tag).select(\".col-md-9 a\");\n    push(\"🔥作者集🔥\", null, 1);\n    for (var i = 0; i < a.length ; i++) {\n        var title = a[i].text();\n        var url = a[i].attr(\"href\");\n        var size = 0.25;\n        title = String(title).replace(/\\s/g, \"\");\n        push(title, url, size);\n    }\n} else {\n  java.toast(\"🤔列表刷新失败！！！\");     \n} \nJSON.stringify(result);",
    "lastUpdateTime": 0,
    "respondTime": 3867,
    "ruleBookInfo": {
      "intro": ".focusbox-text@text"
    },
    "ruleContent": {
      "content": ".article-content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "<js>\nif (result.match(/作品集/)){\n\tresult=java.getElements('tbody tr td a')\n\t}else {\n\t\tresult=java.getElements('h1')\n\t\t}\n</js>",
      "bookUrl": "href",
      "checkKeyWord": "淮上",
      "name": "text"
    },
    "ruleToc": {
      "chapterList": ".excerpts article a||h1",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.zhenhunxiaoshuo.com/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "/*\n\t2024.08.23 明月照大江\n\t解密代码by_youke2580、世界有多大\n*/",
    "bookSourceGroup": "免费",
    "bookSourceName": "绿柠小说",
    "bookSourceType": 0,
    "bookSourceUrl": "绿柠APP",
    "customButton": false,
    "customOrder": 725,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nfunction createRequest(id, path) {\n\tlet path = path || \"getthirdinfobysecondid\";\n  let url = `https://android.goreadnovels.com/categorysetajax/${path}.do`;\n  let body = `id=${id}&page={{page}}&pagesize=10`;\n  return `${url},{\"body\":\"${body}\",\"method\":\"POST\"}`;\n}\n\nlet ids = [12, 56, 57, 59, 110];\nlet ah = java.ajaxAll(ids.map(createRequest));\n\nlet list = [];\n\nfunction push_list(title, url, flexBasisPercent) {\n  list.push({\n    title,\n    url,\n    style: {\n      layout_flexGrow: \"1\",\n      layout_flexBasisPercent: flexBasisPercent\n    }\n  });\n}\n\nfunction cy(page, flexBasisPercent) {\n  JSON.parse(page).data.forEach(({ id, title }) => {\n    push_list(title, createRequest(id, \"getcategorydetailinfo\"), flexBasisPercent);\n  });\n}\n\npush_list(\"▱▱▱▱男生▱▱▱▱\", null, \"1\");\ncy(ah[0].body(), \"0.25\");\n\npush_list(\"▱▱▱▱女生▱▱▱▱\", null, \"1\");\ncy(ah[1].body(), \"0.25\");\n\npush_list(\"▱▱▱▱短篇▱▱▱▱\", createRequest(57, \"getcategorydetailinfo\"), \"1\");\npush_list(\"▱▱▱▱二次元▱▱▱▱\", createRequest(59, \"getcategorydetailinfo\"), \"1\");\npush_list(\"▱▱▱▱出版▱▱▱▱\", createRequest(110, \"getcategorydetailinfo\"), \"1\");\n\nJSON.stringify(list);",
    "header": "@js:\n(()=>{\n    ua = \"com.goreadnovel/1.7.5/474c9bac-ee7e-3513-af7e-d160c8c23ddae2_Nexus_/b096fbb0aab6b2277c_Nexus_\";\n    \n    var headers = {\n        \"User-Agent\": ua\n    }; \n    return JSON.stringify(headers);\n})()",
    "jsLib": "function K(r){for(var e,a,o,t,c=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1),h=r.length,n=0,C=\"\";n<h;){for(;e=c[255&r.charCodeAt(n++)],n<h&&-1==e;);if(-1==e)break;for(;a=c[255&r.charCodeAt(n++)],n<h&&-1==a;);if(-1==a)break;C+=String.fromCharCode(e<<2|(48&a)>>4);do{if(61==(o=255&r.charCodeAt(n++)))return C}while(o=c[o],n<h&&-1==o);if(-1==o)break;C+=String.fromCharCode((15&a)<<4|(60&o)>>2);do{if(61==(t=255&r.charCodeAt(n++)))return C}while(t=c[t],n<h&&-1==t);if(-1==t)break;C+=String.fromCharCode((3&o)<<6|t)}return C}function Z(r,e){if(\"\"===r)return\"\";for(var a=0,o=e.length,t=r.length,c=[],h=0;h<t;h++){var n=r.charCodeAt(h);n=(n=+n^e.charCodeAt(a)).toString(10),c.push(10==n||13==n?\"<p>\":String.fromCharCode(n)),++a===o&&(a=0)}return c.join(\"\")}function Y(r){for(var e,a,o,t=\"\",c=r.length,h=0;h<c;)switch(e=r.charCodeAt(h++),e>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:t+=r.charAt(h-1);break;case 12:case 13:a=r.charCodeAt(h++),t+=String.fromCharCode((31&e)<<6|63&a);break;case 14:a=r.charCodeAt(h++),o=r.charCodeAt(h++),t+=String.fromCharCode((15&e)<<12|(63&a)<<6|(63&o)<<0)}return t}\n\nfunction decodeContent(e, n) {\n    return Y(Z(K(e), n));\n}",
    "lastUpdateTime": 1725588677743,
    "respondTime": 6634,
    "ruleBookInfo": {
      "author": "author",
      "coverUrl": "bigbookface",
      "init": "data[0]",
      "intro": "&nbsp;&nbsp;\n📕 源名：{{$.catename}}\n✏️ 开坑：{{$.posttime}}\n🏷️ 标签：{{$.tagsary##\\n## }}\n🪧章节数：{{$.show_section[2].number}}章\n👁️ 在线：{{$.show_section[1].number}}人在读\n&lrm;\n📜 简介：{{$.intro}}\n&lrm;\n📍 版权信息：本书由{{$.source}}醒读电子版制作与发行",
      "kind": "{{$.tagsary}}\n{{$.smallclassname}}\n{{$.smallsubclassname}}",
      "lastChapter": "last_updatechptitle",
      "name": "catename",
      "tocUrl": "https://android.goreadnovels.com/Bookajax/downloadchapterlist.do?bid={{$.bid}}",
      "wordCount": "charnum"
    },
    "ruleContent": {
      "content": "$.Content\n@js:\nr = result\n$=JSON.parse(src)\nbid = $.BookID\ncid = $.Chapter_ID\ndecodeContent(r, \"\"+bid + cid)"
    },
    "ruleExplore": {
      "author": "authorname",
      "bookList": "data",
      "bookUrl": "https://android.goreadnovels.com/getBooksList,{\n  \"body\": \"bids={{$.bid}}\",\n  \"method\": \"POST\"\n}",
      "coverUrl": "faceurl",
      "intro": "intro",
      "kind": "tag",
      "lastChapter": "last_update_title",
      "name": "catename",
      "wordCount": "charnum"
    },
    "ruleSearch": {
      "author": "authorname",
      "bookList": "bookinfo",
      "bookUrl": "https://android.goreadnovels.com/getBooksList,{\n  \"body\": \"bids={{$.bid}}\",\n  \"method\": \"POST\"\n}",
      "coverUrl": "bookface",
      "intro": "intro",
      "kind": "tag",
      "lastChapter": "last_update_title",
      "name": "catename",
      "wordCount": "charnum"
    },
    "ruleToc": {
      "chapterList": "$.[*]",
      "chapterName": "ChapterName",
      "chapterUrl": "https://android.goreadnovels.com/Bookajax/downloadchapter.do?bid={{$.BookID}}&chpid={{$.Chapter_ID}}"
    },
    "searchUrl": "https://android.goreadnovels.com/getbooks,{\n  \"body\": \"keyword={{key}}&pagenum=1&pagesize=10&order=0&sex_flag=&classid=&finish=&charnum=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "民国奇人",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.minguoqiren.net#",
    "bookUrlPattern": "xs/\\d+/",
    "customButton": false,
    "customOrder": 727,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1721152643213,
    "loginUrl": "",
    "respondTime": 3092,
    "ruleBookInfo": {
      "author": "class.info@class.small@tag.span.0@text",
      "coverUrl": "class.cover@img@src",
      "intro": "class.info@ownText",
      "kind": "class.info@class.small@tag.span.4@text&&\nclass.info@class.small@tag.span.1@text&&\nclass.info@class.small@tag.span.2@text##分类：|状态：|更新时间：",
      "lastChapter": "class.info@class.small@tag.span.5@a@text",
      "name": "class.info@h2@text",
      "tocUrl": "",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|请记住本书首发.*org",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@text",
      "bookList": "class.bookbox",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": "",
      "lastChapter": "class.update@a@text",
      "name": "h4@a@text"
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "s.php?ie=utf-8&s=000000&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.1.14by.◎辞晨◎\n//排序",
    "bookSourceGroup": "免费",
    "bookSourceName": "星空小说◎辞晨◎",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.aixswx.org/ ",
    "customButton": false,
    "customOrder": 729,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nsort=[];\npush=(title,url,type1,type2)=>sort.push({\n\t\ttitle: title,\n\t\turl: url,\n\t\tstyle: {\n\t\t\t\tlayout_flexGrow: type1,\n\t\t\t\tlayout_flexBasisPercent: type2\n\t\t\t}\n\t});\npush(\"全部🌊分类\",null,1,1)\npush(\"全部🌊小说\",`/mulu/`,1,0.35)\npush(\"完结🌊小说\",`/quanben/2.html`,1,0.35)\n\tarList=[\"玄幻小说\",\"仙侠小说\",\"都市小说\",\"历史小说\",\"游戏小说\",\"科幻小说\",\"恐怖小说\",\"女生小说\",\"其他小说\"]\n\tarList.map((tag,uri)=>{\n\t\turl=`http://wap.aixswx.org/mulu/${uri+1}_{{page}}.html`;\n\t\tpush(tag, url, 1, 0.25);\n\t\t});\n//java.log(JSON.stringify(sort))\nJSON.stringify(sort)",
    "header": "{\n  'User-Agent': \"Mozilla/5.0 (Linux; Android 15; V2304A Build/AP3A.240905.015.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.71 Mobile Safari/537.36\",\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': \"http://wap.aixswx.com\",\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'referer': \"http://wap.aixswx.com\",\n  'accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\n  'cookie':\"wsii=c6dd6741eff413b0b3fa34454297a6bb; wsii.sig=typqduZ5V0UckybAUZaTc4FDIo_WCyagwQ_gLqClIjM; Hm_lvt_53ebc424a3875367158e16f535e5fb60=1736855620; HMACCOUNT=BAE980A89729A2EC; Hm_lpvt_53ebc424a3875367158e16f535e5fb60=1736855665\"\n}",
    "lastUpdateTime": 1744176426697,
    "respondTime": 2380,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.目录列表@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "<js>\nresult=java.getElements(\"#txt dd\")\nresult.sort((a,b)=>a.attr(\"data-id\")-b.attr(\"data-id\"))\nresult.select(\"p\")\n</js>",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*星空小说.*|.*第\\d+\\/\\d+.*|.*本章未完.*|"
    },
    "ruleExplore": {
      "author": "a.0@text##.*\\]|\\:.*",
      "bookList": ".block@li",
      "bookUrl": "a.0@href",
      "kind": ".sort@text##\\[|\\]|\\:.*",
      "name": "a.0@text##\\【(.*?)\\】##$1###",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.0@text##\\((.*?)\\)##$1###",
      "bookList": ".block@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##\\/(\\d+)\\.##$1###\n@js:\nbid = parseInt(result);\naid = parseInt(bid / 1000);\nresult = `/image/${aid}/${bid}/${bid}s.jpg`;",
      "intro": "",
      "kind": "a.0@text##\\[|\\].*",
      "name": "a@text##.*]|\\(.*"
    },
    "ruleToc": {
      "chapterList": "<js>\nresult=java.getElements(\".list div\")\nresult.sort((a,b)=>a.attr(\"data-id\")-b.attr(\"data-id\"))\nresult.select(\"a\")\n</js>",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": ""
    },
    "searchUrl": "http://wap.aixswx.org/s.php,{\n \"body\": \"s={{key}}\",\n \"charset\": \"utf-8\", \n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by:cwjdb",
    "bookSourceGroup": "免费",
    "bookSourceName": "笔尖中文",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.badaoge.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 730,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n    java.toast(\"正在努力加载中，请稍后\");\nvar sort = [];\nvar push = (title, url, type1, type2) => {\n    sort.push({\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: type1,\n            layout_flexBasisPercent: type2\n        }\n    });\n};\nvar sites = [{\n        u: \"http://m.badaoge.org/list.html\",\n        ti: \"༺ˇ»`全部分类´«ˇ༻\",\n        reb: /\\/(.*)\\/(.*)\\/(\\d+)\\.html/,\n        rea: \"/$1/$2/{{page}}.html\"\n    },\n    {\n        u: \"http://m.badaoge.org/top.html\",\n        ti: \"༺ˇ»`全部排行´«ˇ༻\",\n        reb: /\\/(.*)-(.*)-(\\d+)\\//,\n        rea: \"/$1-$2-{{page}}/\"\n    }];\nfor (var site of sites) {\n    var o = org.jsoup.Jsoup.parse(java.ajax(site.u));\n    var s = o.select('div.content a');\n    push(site.ti, \"\", \"1\", \"1\");\n    for (var i = 0; i < s.size(); i++) {\n        var urls = String(s[i].attr(\"href\")).replace(site.reb,site.rea);\n        if (i + 1 <= s.length - s.length % 3) {\n            push(s[i].text(), urls, \"1\", \"0.25\")\n        } else {\n        push(s[i].text(), urls, \"-1\", \"0.29\")\n        }\n    }\n}\npush(\"༺ˇ»`全本小说´«ˇ༻\", `/wanben/1_{{page}}/`, \"1\", \"1\")\nJSON.stringify(sort);",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1746848694315,
    "respondTime": 3328,
    "ruleBookInfo": {
      "author": "a",
      "coverUrl": "c",
      "init": "@js:\nX = (x) => java.getString(x);\n({\n    n: X(\"[property$=book_name]@content\"),\n    a: X(\"[property$=author]@content\"),\n    k: X(\"[property~=category|status|update_time]@content\\#\\#T\\#\\#&nbsp;&nbsp;\"),\n    l: X(\"[property~=las?test_chapter_name]@content\"),\n    i: X(\"[property$=description]@content\\#\\#简介[：:]\"),\n    c: X(\"[property$=image]@content\")\n});",
      "intro": "i",
      "kind": "k",
      "lastChapter": "l",
      "name": "n"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##(\\(|\\（)本章.*阅读(\\)|\\）)|最新网址.*org|{{chapter.title}}|(\\(|\\（)第.*页(\\)|\\）)"
    },
    "ruleExplore": {
      "author": "text##\\[(.*?)\\](.*?)\\/(.*?)##$3",
      "bookList": "p.line",
      "bookUrl": "a@href",
      "coverUrl": "a@href\n<js>\nvar id = result.match(/(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://m.badaoge.org/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "text##\\[(.*?)\\](.*?)\\/(.*?)##$1###",
      "name": "text##\\[(.*?)\\](.*?)\\/(.*?)##$2###"
    },
    "ruleSearch": {
      "author": "text.作者@text##作者[：:]",
      "bookList": ".block",
      "bookUrl": ".block_txt a.1@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "kind": "text.分类@text##分类[：:]",
      "lastChapter": ".block_txt a.2@text",
      "name": ".block_txt a.1@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text\n@js:result\n.replace(\"••\",\"\")\n.replace(/^(\\d+).第/,'第')\n.replace(/^(正文|VIP章节|最新章节)?(\\s+|_)|[\\(\\{（｛【].*[求含理更谢乐发推票盟补加字Kk\\/].*/g,'')\n.replace(/^(\\d+)[、．]第.+章/,'第$1章')\n.replace(/^(\\d+)、\\d+、/,'第$1章 ')\n.replace(/^(\\d+)、\\d+/,'第$1章')\n.replace(/^(第.+章)\\s?\\d+/,'$1')\n.replace(/^(\\d+)、/,'第$1章 ')\n.replace(/^(第.+章)\\s?第.+章/,'$1')\n.replace(/第\\s(.+)\\s章/,'第$1章')\n.replace(/.*(chapter|Chapter)\\s?(\\d+)\\s?/,'$1 $2 ')\n.replace(/\\(.+\\)/,'')\n.replace(/\\[|。/,'')\n.replace(/第([零一二两三四五六七八九十百千]+)章/g,java.toNumChapter(result))\n##(章)([^\\s]+)(\\s·)##$1 $2$3",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}/search.php,{\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "📖 17K小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.17k.com/",
    "customButton": false,
    "customOrder": 732,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"男生·全部\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"人气总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人气月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人气周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=3&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=2&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=2&orderTime=1&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市小说\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"都市生活\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=3&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市异能\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=87&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市重生\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=89&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"职场励志\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=90&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现实题材\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=91&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"娱乐明星\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=116&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"都市激战\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=92&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"商业大亨\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=117&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"校园风云\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=118&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"乡村乡土\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=3&categoryId=119&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"奇幻玄幻\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"异世争霸\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=115&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"魔法校园\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=122&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"领主贵族\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=123&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"西方奇幻\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=1&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"东方玄幻\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"异界大陆\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=83&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"艺术超能\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=21&categoryId=84&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠武侠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"洪荒封神\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=85&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代异侠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=96&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"历史武侠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=124&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"奇幻修真\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=82&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"国术古武\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=125&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"传统武侠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代修真\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=81&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古典仙侠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=24&categoryId=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史军事\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"历史穿越\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=4&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"架空历史\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=93&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"战争幻想\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"军旅生涯\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=94&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"历史传奇\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=120&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"战史风云\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=126&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"谍战特工\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=22&categoryId=127&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏竞技\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"虚拟网游\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=5&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"电子竞技\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=12&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏生涯\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"篮球风云\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=97&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"天下足球\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=98&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"棋牌桌游\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=99&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏异界\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=121&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"体育竞技\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=23&categoryId=100&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻末世\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"末世危机\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=128&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"进化变异\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=129&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"时空穿梭\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=130&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"未来幻想\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=6&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古武机甲\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=131&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"星际战争\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=14&categoryId=95&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"悬疑推理\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=29&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"民间奇谈\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=29&categoryId=179&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"恐怖悬疑\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=29&categoryId=180&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"侦探推理\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=29&categoryId=181&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"探险揭秘\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=29&categoryId=182&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"爆笑幽默\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&categoryId=183&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"男生同人\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&categoryId=184&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"宅系小说\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&categoryId=185&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"萌系小说\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&categoryId=186&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"灵魂转换\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=30&categoryId=187&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"女生·全部\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"人气总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人气月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人气周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"完本周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=11&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"免费周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=14&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新人周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"包月周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"礼物周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=3&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=2&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=3&orderTime=1&orderBy=1&page={{page}}&type=2&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代言情\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"江湖侠情\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=132&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"架空历史\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=133&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代重生\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=139&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"女尊女强\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=140&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"空间种田\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=165&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"宫斗权谋\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=10&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"兽世王朝\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=22&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"豪门宅斗\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=5&categoryId=7&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"现代言情\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"总裁豪门\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=134&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏竞技\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=135&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"年代种田\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=136&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代重生\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=166&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"娱乐明星\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=166&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"民国情缘\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=168&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"浪漫纯爱\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=169&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"婚恋职场\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=16&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"蜜爱甜宠\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=17&categoryId=26&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"浪漫青春\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"青春回忆\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&categoryId=148&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"校园青春\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&categoryId=175&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"纯爱青春\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&categoryId=176&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"青春虐恋\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&categoryId=177&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春同人\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=20&categoryId=178&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"古典仙缘\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=137&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"奇幻魔法\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=138&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"未来科幻\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=170&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"悬疑推理\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=24&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"末世危机\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=171&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"时空穿梭\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=172&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"神话情话\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=173&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=18&categoryId=437&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"出版·全部\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"出版总榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=1&orderTime=3&orderBy=1&page={{page}}&type=13&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"出版月榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=1&orderTime=2&orderBy=1&page={{page}}&type=13&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"出版周榜\",\"url\": \"http://api.17k.com/book/rank/client?classId=1&orderTime=1&orderBy=1&page={{page}}&type=13&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"畅销经典\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"最新畅销\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=27&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"名家经典\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=23&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"影视原著\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=79&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"乡土文学\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=25&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"社会纪实\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=78&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"外国文学\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=80&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"中短い篇\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=15&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"学习强国\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=1&categoryId=174&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"文化社科\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"人物传记\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=29&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"人文史地\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=30&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"诗词散文\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=103&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代典籍\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=104&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新锐学术\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=105&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"时政评说\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=106&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"体育荟萃\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=101&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"幽默笑话\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=107&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"修身养性\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=8&categoryId=108&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"经管励志\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"经营管理\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=31&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"心理激励\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=32&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"市场营销\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=109&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"金融财会\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=110&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"政治经济\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=111&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"投资理财\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=112&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"职场指南\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=113&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春励志\",\"url\": \"http://api.17k.com/book/search?sort=15&page={{page}}&channelId=9&categoryId=114&cpsOpid=17Kxiaomi&_filterData=1&device_id=7470a5a9be410b17&channel=0&_versions=1240&merchant=17Kxiaomi&platform=2&manufacturer=Xiaomi&clientType=1&width=1080&appKey=4037465544&model=MI%206&cpsSource=0&brand=Xiaomi&youthModel=0&height=1920\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}}\n]",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; PCT-AL10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.101 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1664897854269,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 7329,
    "ruleBookInfo": {
      "author": "$..authorPenName",
      "coverUrl": "$..coverImg##-.*",
      "init": "$.data[0]",
      "intro": "$..introduction",
      "kind": "{{java.timeFormat(java.getString('$..lastUpdateChapter.updateTime'))}}\n{{$..keyword.*}}##/##-",
      "lastChapter": "$..lastUpdateChapter.name",
      "name": "$..bookName",
      "tocUrl": "http://api.17k.com/book/@get:{book}/volumes?youthModel=0&_filterData=1&appKey=4037465544&clientType=1&merchant=17KH5&height=2166&cpsSource=0&platform=2&device_id=efde9b5c7749a0f7&brand=HONOR",
      "wordCount": "$..wordCount"
    },
    "ruleContent": {
      "content": "id.Context@article@p@html##本书首发来自.*看正版内容！|第.*章.*",
      "imageStyle": "0",
      "replaceRegex": "",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "$.authorPenName||$.author_name",
      "bookList": "$.data||$.data.lists",
      "bookUrl": "http://api.17k.com/book/{{$.id}}/split1/merge?iltc=1&youthModel=0&_filterData=1&appKey=4037465544&clientType=1&merchant=17KH5&height=2166&cpsSource=0&platform=2&device_id=efde9b5c7749a0f7&brand=HONOR",
      "coverUrl": "$.coverImg||$.cover##\\?.*",
      "intro": "$.introduction||$.intro",
      "kind": "$.bookCategory.name||$.category_name_2",
      "lastChapter": "$.lastUpdateChapterName||$.last_update_chapter_name",
      "name": "$.bookName||$.book_name@put:{book:id}"
    },
    "ruleSearch": {
      "author": "$.authorPenName",
      "bookList": "$.data.lists[*]",
      "bookUrl": "http://api.17k.com/book/{{$.id}}/split1/merge?iltc=1&youthModel=0&_filterData=1&appKey=4037465544&clientType=1&merchant=17KH5&height=2166&cpsSource=0&platform=2&device_id=efde9b5c7749a0f7&brand=HONOR",
      "coverUrl": "$.coverImg##-.*",
      "intro": "$.introduction",
      "kind": "{{java.timeFormat(java.getString('$.lastUpdateChapterDate'))}}\n{{$.bookChannel.name}}\n{{$.bookCategory.name}}##/##-",
      "lastChapter": "$.lastUpdateChapterName",
      "name": "$.bookName@put:{book:id}",
      "wordCount": "$.wordCount"
    },
    "ruleToc": {
      "chapterList": "$.data.volumes..chapters[*]",
      "chapterName": "$..chapterName",
      "chapterUrl": "https://h5.17k.com/chapter/@get:{book}/{{$.chapterId}}.html?hmsr=smss,{'webView': true}",
      "isVip": "$.isVIP.id",
      "isVolume": "",
      "updateTime": "{{java.timeFormat(java.getString('$.updateTime'))}}##/##-"
    },
    "searchUrl": "http://api.17k.com/book/search/list?fuzzySearchType=1&page=1&num=20&keyword={{key}}&youthModel=0&_filterData=1&appKey=4037465544&clientType=1&merchant=17KH5&height=2166&cpsSource=0&platform=2&device_id=efde9b5c7749a0f7&brand=HONOR&_versions=1240",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "偶遇吧",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.oue8.com/",
    "customButton": false,
    "customOrder": 736,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1711625649338,
    "respondTime": 5253,
    "ruleBookInfo": {
      "intro": ".intro_info@html",
      "name": "",
      "tocUrl": "{{baseUrl}}##m\\.##www."
    },
    "ruleContent": {
      "content": "#content@html",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@a@text",
      "bookList": ".bookbox",
      "bookUrl": "tag.a.0@href",
      "coverUrl": ".bookimg@img@src",
      "intro": ".intro_line@html",
      "lastChapter": ".update@a@text",
      "name": ".bookname@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://m.oue8.com/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}&searchtype=all\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "👑 书趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.ishuquge.la",
    "customButton": false,
    "customOrder": 738,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/category/1_{{page}}.html\n武侠::/category/2_{{page}}.html\n都市::/category/3_{{page}}.html\n历史::/category/4_{{page}}.html\n侦探::/category/5_{{page}}.html\n网游::/category/6_{{page}}.html\n科幻::/category/7_{{page}}.html",
    "lastUpdateTime": 1713282081543,
    "respondTime": 3608,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##小说|\\s\\d.*",
      "lastChapter": "{{@@[property$=chapter_name]@content}} • {{@@[property$=update_time]@content##\\s.*}}",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "#content@html##.*ishuquge.la.*",
      "replaceRegex": "##http.*html|请记住本书首发.*"
    },
    "ruleExplore": {
      "author": ".s4@text",
      "bookList": ".l@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##\\d+##$0###\n@js:\nid=result\niid=parseInt(id/1e3)\n\"/files/article/image/\"+iid+\"/\"+id+\"/\"+id+\"s.jpg\"",
      "kind": ".s1@text&&.s5@text##\\[|\\]",
      "lastChapter": ".s3@text",
      "name": ".s2@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".bookinfo",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##\\d+##$0###\n@js:\nid=result\niid=parseInt(id/1e3)\n\"/files/article/image/\"+iid+\"/\"+id+\"/\"+id+\"s.jpg\"",
      "kind": ".cat@text##分类：",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".listmain@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "{{java.connect(source.getKey()).raw().request().url()}}search.php,{\n  \"body\": \"s=0000000000000000000&searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃零点小说🎃#2",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.lingdxsw.com#🎃",
    "bookUrlPattern": "https://www.lingdxsw.com/book/\\d+.html",
    "customButton": false,
    "customOrder": 743,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/list/1/{{page}}.html\n仙侠小说::/list/2/{{page}}.html\n都市小说::/list/3/{{page}}.html\n历史小说::/list/4/{{page}}.html\n科幻小说::/list/5/{{page}}.html\n网游小说::/list/6/{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 2556,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "init": "",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "",
      "wordCount": "{{@@text.字数：@text##字数：}}"
    },
    "ruleContent": {
      "content": "#htmlContent@html",
      "imageStyle": "",
      "nextContentUrl": "#linkNext@href",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "small@text##\\/\\s",
      "bookList": ".list-group@li",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"https://www.lingdxsw.com/modules/article/images/nocover.jpg\"",
      "intro": "",
      "kind": "tag.i@text&&span@text",
      "lastChapter": "",
      "name": "a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "li.2@text",
      "bookList": ".mySearch div+ul",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "",
      "kind": "li.-1:-2:-3@text\n##状态：|更新时间：|大小：",
      "lastChapter": "a.1@text",
      "name": "a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#list-chapterAll@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "https://www.lingdxsw.com/modules/article/search.php?searchkey={{key}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 1
  },
  {
    "bookSourceComment": "①\nhttp://api.jmlldsc.com/search?keyword={{key}}&page={{page}}\n②\nhttp://api.lfdapengu.com/search?keyword={{key}}&page={{page}}\n③：http://api.jxgtzxc.com/search?keyword={{key}}&page={{page}}\n④：http://api.lemiyigou.com/search?keyword={{key}}&page={{page}}\n⑤：http://api.myweipin.com/search?keyword={{key}}&page={{page}}",
    "bookSourceGroup": "免费",
    "bookSourceName": "猫眼看书（优+）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://api.jmlldsc.com##@曦灵",
    "customButton": false,
    "customOrder": 744,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"男频榜单\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"必读榜\",\"url\": \"/module/rank?type=1&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"潜力榜\",\"url\": \"/module/rank?type=5&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完本榜\",\"url\": \"/module/rank?type=2&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"更新榜\",\"url\": \"/module/rank?type=3&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"搜索榜\",\"url\": \"/module/rank?type=4&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"评论榜\",\"url\": \"/module/rank?type=6&channel=1&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"男频全部\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=lejRej\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=nel5aK\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mbk5ez\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=vbmOeY\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=penRe7\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=xbojag\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mep2bM\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=zbq2dp\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=YerEdO\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"男频完结\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=lejRej&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=nel5aK&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mbk5ez&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=vbmOeY&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=penRe7&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=xbojag&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mep2bM&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=zbq2dp&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=YerEdO&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"男频连载\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"玄幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=lejRej&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"武侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=nel5aK&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"都市\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mbk5ez&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"仙侠\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=vbmOeY&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"军事\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=penRe7&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"历史\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=xbojag&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"游戏\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=mep2bM&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"科幻\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=zbq2dp&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"轻小说\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=YerEdO&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"女频榜单\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"必读榜\",\"url\": \"/module/rank?type=1&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"潜力榜\",\"url\": \"/module/rank?type=5&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完本榜\",\"url\": \"/module/rank?type=2&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"更新榜\",\"url\": \"/module/rank?type=3&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"搜索榜\",\"url\": \"/module/rank?type=4&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"评论榜\",\"url\": \"/module/rank?type=6&channel=2&page={{page}}\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"女频全部\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9avmeG\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=DdwRb1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=7ax9by\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=Pdy7aQ\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=kazYeJ\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9aAOdv\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"女频完结\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9avmeG&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=DdwRb1&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=7ax9by&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=Pdy7aQ&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=kazYeJ&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9aAOdv&isComplete=1\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"女频连载\",\"url\": \"\",\n\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"现代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9avmeG&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"古代言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=DdwRb1&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"幻想言情\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=7ax9by&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"青春校园\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=Pdy7aQ&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"唯美纯爱\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=kazYeJ&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"同人衍生\",\"url\": \"/novel?sort=1&page={{page}}&categoryId=9aAOdv&isComplete=0\",\n\"style\": {\"layout_flexGrow\": 1,\n\"layout_flexBasisPercent\": 0.29\n}}\n]",
    "header": "{\n'User-Agent': 'okhttp/4.9.2','client-device': '0cdeb38dd0f2a381b06c0a02926ee317','client-brand': 'vivo','client-version': '2.3.0','client-name': 'app.maoyankanshu.novel','client-source': 'android','Authorization': 'bearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9hcGkuam1sbGRzYy5jb21cL2F1dGhcL3RoaXJkIiwiaWF0IjoxNzIzNzI2NTkyLCJleHAiOjE4MTcwMzg1OTIsIm5iZiI6MTcyMzcyNjU5MiwianRpIjoiMHJaS05IdlRVelR4Vm15SCIsInN1YiI6ODAyMzcyLCJwcnYiOiJhMWNiMDM3MTgwMjk2YzZhMTkzOGVmMzBiNDM3OTQ2NzJkZDAxNmM1In0.w9vCdsWWqnD5pTz5aluSDb8WxeLZqrZsqX06CYC_J1A'\n}",
    "lastUpdateTime": 1751461633421,
    "loginUrl": "http://api.jmlldsc.com/auth/me",
    "respondTime": 3641,
    "ruleBookInfo": {
      "author": "$.authorName",
      "coverUrl": "$.cover",
      "init": "$.data",
      "intro": "&nbsp;&nbsp;\n📕书名：{{$.novelName}}\n👩‍💻作者：{{$.authorName}}\n🔥热度：{{$.hotInfo}}，{{$.readInfo}}人在读\n💮更新：共{{$.chapterNum}}章\n最新章节：{{$.lastChapter.chapterName}}\n更新时间：{{$.lastUpdatedAt}}\n📖简介：{{$.summary}}",
      "kind": "$.categoryNames.className",
      "lastChapter": "{{$.lastChapter.chapterName}}  {{$.lastChapter.decTime}}",
      "name": "$.novelName",
      "tocUrl": "/novel/{{$.novelId}}/chapters",
      "wordCount": "$.wordNum"
    },
    "ruleContent": {
      "content": "$.content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.authorName",
      "bookList": "$.data[*]",
      "bookUrl": "/novel/{{$.novelId}}?isSearch=1",
      "checkKeyWord": "我不是戏神",
      "coverUrl": "$.cover",
      "intro": "$.summary",
      "kind": "$.categoryNames.className",
      "name": "$.novelName",
      "wordCount": "$.wordNum"
    },
    "ruleToc": {
      "chapterList": "$.data.list[*]",
      "chapterName": "$.chapterName",
      "chapterUrl": "$.path@js:java.aesBase64DecodeToString(result,\"f041c49714d39908\",\"AES/CBC/PKCS5Padding\",\"0123456789abcdef\")",
      "updateTime": "{{$.updatedAt}}  字数：{{$.wordNum}}"
    },
    "searchUrl": "http://api.jmlldsc.com/search?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 爱尚",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.s288.org",
    "customButton": false,
    "customOrder": 746,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1724910591935,
    "loginCheckJs": "if (result.code() == 403) {\n  java.initUrl()\n  result = java.getStrResponse()\n} result",
    "respondTime": 2725,
    "ruleBookInfo": {
      "author": ".infotype > p:nth-child(1) > a@text",
      "intro": ".intro > p:nth-child(3)@html",
      "kind": ".infotype > p:nth-child(2)@text##类型：",
      "lastChapter": "{{@@p:nth-child(4) > a@text}}●{{@@.infotype > p:nth-child(3)@text##更新时间：}}",
      "name": ".cataloginfo > h3@text"
    },
    "ruleContent": {
      "content": "#novelcontent > p@html",
      "nextContentUrl": ".p3 > a@href",
      "replaceRegex": "##本章未完.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author > a@text",
      "bookList": ".sone",
      "bookUrl": ".sone > a@href",
      "checkKeyWord": "星空",
      "name": ".sone > a@text"
    },
    "ruleToc": {
      "chapterList": "ul:nth-child(2) > li > a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://wap.s288.org/search.php,{\n  \"body\": \"s={{key}}&type=articlename\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nError: Connection reset\n正文明文",
    "bookSourceGroup": "免费",
    "bookSourceName": "WebToon📱🌐",
    "bookSourceType": 3,
    "bookSourceUrl": "https://m.webtoons.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 747,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部分类::https://m.webtoons.com/zh-hant/genre",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1647346822069,
    "loginUrl": "",
    "respondTime": 180287,
    "ruleBookInfo": {
      "author": "@css:.author@text",
      "coverUrl": "",
      "init": "",
      "intro": "@css:p.summary > span@text",
      "kind": "@css:.genre@text",
      "lastChapter": "id._episodeList@tag.li.1@.sub_title@text",
      "name": "class.subj.0@text"
    },
    "ruleContent": {
      "content": "@js:eval(result.match(/(var imageList = \\[[\\s\\S]+?\\])/)[1]);\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\nhtml='';\nfor(i in imageList){\nhtml+='<img src=\"'+imageList[i].url+','+JSON.stringify(headers)+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL",
      "nextContentUrl": "",
      "replaceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "bookList": ".lst_type1@li",
      "bookUrl": "a@href",
      "coverUrl": "img@src@js:\nheader={\"Referer\":baseUrl}\nheaders={\"headers\":JSON.stringify(header)}\nresult=result+','+JSON.stringify(headers)",
      "name": ".ellipsis@text"
    },
    "ruleSearch": {
      "author": "@css:.author@text",
      "bookList": "@css:._searchResultList li",
      "bookUrl": "@css:a@href",
      "coverUrl": "@css:.pic img@src@js:header={\"Referer\":baseUrl}\nheaders={\"headers\":JSON.stringify(header)}\nresult=result+','+JSON.stringify(headers)",
      "name": "@css:.ellipsis@text"
    },
    "ruleToc": {
      "chapterList": "-id._episodeList@li",
      "chapterName": "@css:.sub_title@text",
      "chapterUrl": "@css:a@href"
    },
    "searchUrl": "https://m.webtoons.com/zh-hant/search,{\n  \"headers\": \"{Cookie:\\\"locale=zh_TW;\\\",Referer:\\\"https://us-m.webtoons.com/zh-hant/search\\\"}\",\n  \"method\": \"POST\",\n  \"body\": \"searchType=ALL&keyword={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 夜天连看",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yetianlian.com",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 748,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1722295992328,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 377,
    "ruleBookInfo": {
      "author": "class.info@tag.span.0@text##作者：",
      "coverUrl": "class.cover@tag.img@src",
      "init": "",
      "intro": "class.intro@text##简介：|作者.*",
      "kind": "class.info@tag.span.1@text##分类：",
      "lastChapter": "class.info@class.last.1@tag.a@text&&class.info@class.last.0@text##更新时间：|..\\:.*",
      "name": "class.info@tag.h2@text",
      "wordCount": "class.info@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html",
      "imageStyle": "0",
      "replaceRegex": "##http://www.yetianlian.com.*.html|请记住本书首发.*"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text",
      "name": "tag.h4@text"
    },
    "ruleToc": {
      "chapterList": "class.listmain@tag.dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.yetianlian.com/s.php?ie=gbk&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//快速写源by河鹅和_v25.0115.1325\n//搜索地址\n壬二酸补充一下",
    "bookSourceGroup": "免费",
    "bookSourceName": "手机小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.shoujixsw.com",
    "customButton": false,
    "customOrder": 750,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1737301736718,
    "respondTime": 3839,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "class.review@text",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {
      "content": "id.chaptercontent@tag.p@textNodes##『章节错误,点此举报』|『加入书签，方便阅读』|：。："
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.bookinfo@tag.div.2@text",
      "bookList": "class.bookbox",
      "bookUrl": "class.bookimg@tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "class.bookinfo@tag.div.4@text##类型：",
      "lastChapter": "class.update@tag.a@text",
      "name": "class.iTit@text"
    },
    "ruleToc": {
      "chapterList": "class.directoryArea@tag.p",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "id.indexselect@tag.option@value"
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}/search/,{\n  \"body\": \"searchkey={{key}}&submit=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "YX源仓库：http://yx.ccute.xyz/\nby_清雪",
    "bookSourceGroup": "🔞",
    "bookSourceName": "Jk小说",
    "bookSourceType": 0,
    "bookSourceUrl": "小说",
    "customButton": false,
    "customOrder": 751,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1769087166645,
    "respondTime": 4028,
    "ruleBookInfo": {
      "author": "author@put:{id:$.book_id}",
      "coverUrl": "cover",
      "init": "<js>\nfunction decode(word){\n    \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").decryptStr(word);\n}\nr = JSON.parse(result).data\nresult = decode(r);\n</js>\nbook",
      "intro": "description",
      "lastChapter": "last_chapter&&last_chapter_time",
      "name": "name",
      "tocUrl": "@js:\ntime = Math.round(new Date()/1000);  \nsign = java.md5Encode(`faetheiy8ahzeiPh2ier9ba0uash3ohsappId=1&book_id={{$.book_id}}&is_all=1&marketChannel=luodiye&osType=2&packageName=com.se6d37e1cb.n2e98606a2.zf47af499020250314&product=1&proxyChannel=JK416-1&sysVer=10&time=1749173841&token=&udid=20f97782-8d3a-4c8f-a729-0146acdba82b&ver=5.0.2faetheiy8ahzeiPh2ier9ba0uash3ohs`).toString().toUpperCase();\n\no = encode(JSON.stringify({\n\"product\":\"1\",\n\"ver\":\"5.0.2\",\n\"is_all\":\"1\",\n\"marketChannel\":\"luodiye\",\n\"sign\":sign,\n\"sysVer\":\"10\",\n\"book_id\":{{$.book_id}},\n\"token\":\"\",\n\"appId\":\"1\",\n\"osType\":\"2\",\n\"time\":time,\n\"packageName\":\"com.se6d37e1cb.n2e98606a2.zf47af499020250314\",\n\"proxyChannel\":\"luodiye\",\n\"udid\":\"20f97782-8d3a-4c8f-a729-0146acdba82b\",\n\t}))\nc = JSON.stringify({\n\t\"c\": String(o)\n\t})\n function encode(word){\n  \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").encryptBase64(word);\n\t}\n\ns = {\n \"method\": \"POST\",\n  \"body\": c\n};\n\"https://rrs0c03ak.fssd5ib.com/chapter/catalog,\" +JSON.stringify(s)"
    },
    "ruleContent": {
      "content": "<js>\nfunction decode(word){\n    \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").decryptStr(word);\n}\nr = JSON.parse(result).data\nresult = decode(r);\n</js>\n$..content"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "author",
      "bookList": "<js>\nfunction decode(word){\n    \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").decryptStr(word);\n}\nr = JSON.parse(result).data\nresult = decode(r);\n</js>\nlist[*]",
      "bookUrl": "@js:\ntime = Math.round(new Date()/1000);  \nsign = java.md5Encode(`faetheiy8ahzeiPh2ier9ba0uash3ohsappId=1&book_id={{$.book_id}}&marketChannel=luodiye&osType=2&packageName=com.se6d37e1cb.n2e98606a2.zf47af499020250314&product=1&proxyChannel=JK416-1&sysVer=10&time=1749173841&token=&udid=20f97782-8d3a-4c8f-a729-0146acdba82b&ver=5.0.2faetheiy8ahzeiPh2ier9ba0uash3ohs`).toString().toUpperCase();\n\no = encode(JSON.stringify({\n\"product\":\"1\",\n\"ver\":\"5.0.2\",\n\"marketChannel\":\"luodiye\",\n\"sign\":sign,\n\"sysVer\":\"10\",\n\"book_id\":{{$.book_id}},\n\"token\":\"\",\n\"appId\":\"1\",\n\"osType\":\"2\",\n\"time\":time,\n\"packageName\":\"com.se6d37e1cb.n2e98606a2.zf47af499020250314\",\n\"proxyChannel\":\"luodiye\",\n\"udid\":\"20f97782-8d3a-4c8f-a729-0146acdba82b\",\n\t}))\nc = JSON.stringify({\n\t\"c\": String(o)\n\t})\n function encode(word){\n  \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").encryptBase64(word);\n\t}\n\ns = {\n \"method\": \"POST\",\n  \"body\": c\n};\n\"https://rrs0c03ak.fssd5ib.com/novel/info,\" +JSON.stringify(s)",
      "checkKeyWord": "妹妹",
      "coverUrl": "cover",
      "intro": "description",
      "lastChapter": "last_chapter&&last_chapter_time",
      "name": "name",
      "wordCount": "tag.tab"
    },
    "ruleToc": {
      "chapterList": "<js>\nfunction decode(word){\n    \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").decryptStr(word);\n}\nr = JSON.parse(result).data\nresult = decode(r);\n</js>\n$.chapter_list[*]",
      "chapterName": "chapter_title",
      "chapterUrl": "@js:\ntime = Math.round(new Date()/1000);  \nsign = java.md5Encode(`faetheiy8ahzeiPh2ier9ba0uash3ohsappId=1&book_id=@get:{id}&chapter_id={{$.chapter_id}}&marketChannel=luodiye&osType=2&packageName=com.se6d37e1cb.n2e98606a2.zf47af499020250314&product=1&proxyChannel=JK416-1&sysVer=10&time=1749173841&token=&udid=20f97782-8d3a-4c8f-a729-0146acdba82b&ver=5.0.2faetheiy8ahzeiPh2ier9ba0uash3ohs`).toString().toUpperCase();\nfunction encode(word){\n  \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").encryptBase64(word);\n\t}\no = encode(JSON.stringify({\n\"product\":\"1\",\n\"ver\":\"5.0.2\",\n\"marketChannel\":\"luodiye\",\n\"sign\":sign,\n\"sysVer\":\"10\",\n\"book_id\":@get:{id},\n\"token\":\"\",\n\"appId\":\"1\",\n\"osType\":\"2\",\n\"time\":time,\n\"packageName\":\"com.se6d37e1cb.n2e98606a2.zf47af499020250314\",\n\"proxyChannel\":\"luodiye\",\n\"chapter_id\":{{$.chapter_id}},\n\"udid\":\"20f97782-8d3a-4c8f-a729-0146acdba82b\",\n\t}));\n\tc = JSON.stringify({\n\t\"c\": String(o)\n\t});\n\ns = {\n \"method\": \"POST\",\n  \"body\": c\n};\n\"https://jkzzapi.104a3a8.com/chapter/text,\" +JSON.stringify(s)",
      "updateTime": "words&&updated_at_format"
    },
    "searchUrl": "@js:\ntime = Math.round(new Date()/1000);  \nsign = java.md5Encode(`faetheiy8ahzeiPh2ier9ba0uash3ohsappId=1&keyword=${key}&marketChannel=yingyongbao&osType=2&packageName=com.se6d37e1cb.n2e98606a2.zf47af499020250314&page_num=${page}&product=1&proxyChannel=yingyongbao&sysVer=10&time=${time}&token=&udid=&ver=faetheiy8ahzeiPh2ier9ba0uash3ohs`).toString().toUpperCase();\n\no = encode(JSON.stringify({\n\"product\":\"1\",\n\"ver\":\"5.0.2\",\n\"marketChannel\":\"yingyongbao\",\n\"sign\":sign,\n\"page_num\":page,\n\"sysVer\":\"10\",\n\"token\":\"\",\n\"appId\":\"1\",\n\"osType\":\"2\",\n\"time\":time,\n\"packageName\":\"com.se6d37e1cb.n2e98606a2.zf47af499020250314\",\n\"proxyChannel\":\"yingyongbao\",\n\"udid\":\"20f97782-8d3a-4c8f-a729-0146acdba82b\",\n\"keyword\":key\n\t}))\nc = JSON.stringify({\n\t\"c\": String(o)\n\t})\n function encode(word){\n  \treturn java.createSymmetricCrypto(\"AES/CBC/PKCS5Padding\",\"D2o4XyQeIFobJ4tS\", \"sciCuBC7orQtDhTO\").encryptBase64(word);\n\t}\ns = {\n \"method\": \"POST\",\n  \"body\": c\n};\n\"https://rrs0c03ak.fssd5ib.com/book/search,\" +JSON.stringify(s)",
    "weight": 0
  },
  {
    "bookSourceComment": "7.6@ys4568\n同模板：https://m.banzhu1.net",
    "bookSourceGroup": "免费",
    "bookSourceName": "露露书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.lulushu123.net",
    "customButton": false,
    "customOrder": 752,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\n    let result=[],\n    push=(title,url,size)=>result.push({\n        \"title\": title,\n        \"url\": url,\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": size\n        }\n    });\n    let bu=source.key+\"/xiaoshuodaquan\",\n    aj=java.ajax(bu),\n    a=org.jsoup.Jsoup.parse(aj);\n    let b=a.select('.typelist li a');\n    for (i=0;i<b.length;i++){\n        i==0?size=1:size=0.25;\n    \t    let url=b[i].attr('href');\n        push(b[i].text(),`${url}<,/page_{{page}}.html>`,size);\n    };\n    if (3-(b.length-1)%3!=0){ \n        for (let n=0;n<3-(b.length-1)%3;n++){\n        push('','',0.25);\n        };\n    };\n    JSON.stringify(result);",
    "header": "@js:\nJSON.stringify({\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 11; PCHM30 Build/RKQ1.200903.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/131.0.6778.200 Mobile Safari/537.36\",\n  \"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "lastUpdateTime": 1752105159944,
    "respondTime": 9218,
    "ruleBookInfo": {
      "author": ".pt-info.1@text##作者：",
      "intro": "&nbsp;{{@@.intro@text##.*?最新章节.*}}",
      "kind": "{{@@.pt-info.0:2@text##书况：|分类：}}\n{{@@#translatelink@text}}\n{{@@.pt-info.3@text##更新：}}"
    },
    "ruleContent": {
      "content": "#BookText@p@textNodes||#BookText@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".ptm-list-view-cell||.pt-card.-1@.book-li@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "姐姐",
      "coverUrl": "img@src",
      "name": "a.0@title"
    },
    "ruleToc": {
      "chapterList": "#chapterlist li a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{\"webView\":true}"
    },
    "searchUrl": "/home/search,{\n  \"body\": \"action=search&q={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "米读小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://api.midukanshu.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 753,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1704656039110,
    "loginUrl": "",
    "respondTime": 445,
    "ruleBookInfo": {
      "init": "",
      "lastChapter": "$.[-1].title"
    },
    "ruleContent": {
      "content": "$..content##\\u0010|（未完待续）",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$.data.*",
      "bookUrl": "$.book_id@js:\"https://book.midukanshu.com/book/chapter_list/100/\" + result + \".txt\"",
      "coverUrl": "$.cover",
      "intro": "$.description",
      "kind": "{$.score}分&&$..name&&$.category",
      "lastChapter": "",
      "name": "$.title##（+.*|.*最新章节|\\(+.*",
      "wordCount": "$.word_count"
    },
    "ruleToc": {
      "chapterList": "$.[*]",
      "chapterName": "$.title",
      "chapterUrl": "https://book.midukanshu.com/book/chapter/segment/master/{$.bookId}_{$.chapterId}.txt?md5={$.content_md5}",
      "isVip": "",
      "updateTime": ""
    },
    "searchUrl": "https://apiwz.midukanshu.com/fiction/search/search,{\n  \"method\": \"POST\",\n  \"body\": \"device=865166023475380&app=midu&keyword={{key}}&page={{page-1}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "久久小说#2",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.jjjxsw.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 757,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "穿越::/txt/chuanyue/<,index_{{page}}.html>\n重生::/txt/chongshengxiaoshuo/<,index_{{page}}.html>\n架空::/txt/lsjs/<,index_{{page}}.html>\n总裁::/txt/qinggan/<,index_{{page}}.html>\n现言::/txt/young/<,index_{{page}}.html>\n修仙::/txt/wuxia/<,index_{{page}}.html>\n纯美::/txt/dmtr/<,index_{{page}}.html>\n玄幻::/txt/xuanhuan/<,index_{{page}}.html>\n都市::/txt/dushi/<,index_{{page}}.html>\n惊悚::/txt/kongbu/<,index_{{page}}.html>\n女生::/e/action/toplist.php?page={{page-1}}&class=1&line=10&tempid=6&ph=1&andor=and&orderby=2&myorder=0\n男生::/e/action/toplist.php?page={{page-1}}&class=2&line=10&tempid=6&ph=1&andor=and&orderby=2&myorder=0",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 0,
    "respondTime": 6110,
    "ruleBookInfo": {
      "author": ".jie@span.2@a@text",
      "coverUrl": ".pic@img@src##^##https:",
      "downloadUrls": "text.下载TXT电子书@href\n<js>\nurl=book.origin+result[0];\njava.ajax(url);\n</js>\ntext.txt电子书下载地址@href\n##$##,{\"type\": \"txt\"}",
      "intro": ".novelinfo@text",
      "kind": ".jie@span.1:3:4:5@text\n##类别：|大小：|进度：|时间：",
      "name": ".jie@h1@text",
      "tocUrl": ".read@a@href##$##,{'webView': true}"
    },
    "ruleContent": {
      "content": "#Content@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".list_a",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "span.-2@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "select.0@option",
      "chapterName": "text",
      "chapterUrl": "value"
    },
    "searchUrl": "/e/search/index.php,{\n  \"body\": \"show=writer,title&keyboard={{key}}&Submit22=搜索\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//by: youke游客2580",
    "bookSourceGroup": "🔞",
    "bookSourceName": "阳光中文网@游客",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.sunzw.com",
    "bookUrlPattern": "https?://www.sunzw.com/Book/\\d+.*",
    "customButton": false,
    "customOrder": 758,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻修真::/fenlei/1/{{page}}/\n重生穿越::/fenlei/2/{{page}}/\n都市小说::/fenlei/3/{{page}}/\n军史小说::/fenlei/4/{{page}}/\n网游小说::/fenlei/5/{{page}}/\n科幻小说::/fenlei/6/{{page}}/\n灵异小说::/fenlei/7/{{page}}/",
    "header": "@js:JSON.stringify({\"User-Agent\":\"Mozilla/5.0 (Linux; Android 14; V2157A Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36\",\n\t\"Referer\":baseUrl})",
    "lastUpdateTime": 1768888027545,
    "respondTime": 5946,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "downloadUrls": "@get:{d}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nw:\"#info p@text.字数@text##字数：\",\nl:\"[property~=las?test_chapter_name]@content\",\ni:\"[property$=description]@content\n##(分享书籍)?《.+》. *$\",\nc:\"[property$=image]@content\",\nd:\"text.下载@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "{{baseUrl}}##.*com\\/(\\d+\\/\\d+.*)##https://www.sunzw.com/index/$1desc/1.html",
      "wordCount": "@get:{w}"
    },
    "ruleContent": {
      "content": "<js>\nvar bes = result.match(/PHA\\+[A-Za-z0-9+\\/]+={0,2}/g);\n//java.log(String(bes))\nif (!bes) {\n    var ml = java.webView(null,baseUrl,null);\n    var txt = java.getString(\"#txt@html\");\n    java.longToast(\"正文解密失败，转为webView动态加载。\");\n} else {\nvar result = [];\nfor (var i = 0; i < bes.length; i++) {\n    // 遍历数组，使用阅读内置Base64解码方法\n    var bsej = java.base64Decode(bes[i]);\n    var txtt = String(bsej);\n    result.push(txtt);\n      }\n\tvar txt = result.join('\\n');\n}\ntxt;\n</js>",
      "nextContentUrl": "@js:\nnext = src.match(/hhekgv='.+?'\\;/) || [];\n/_\\d+/.test(next.join()) && \neval(next.toString());",
      "replaceRegex": "##{{book.durChapterTitle}}|.*作者：.*|.*本章.*|PS：.*求推荐！|PS：.*求收藏！|【.*分享.*运营.*】|第.*章.*|.*第.*章.*|本章.*"
    },
    "ruleExplore": {
      "bookList": ".qs_list@a",
      "bookUrl": "href",
      "intro": ".info@text",
      "name": "h4@text"
    },
    "ruleSearch": {
      "bookList": ".fmtj@a",
      "bookUrl": "href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@data-original",
      "intro": ".info@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": "-.ph_list.0@.br-b-1@li@a",
      "chapterName": "text",
      "chapterUrl": "onclick##.*\\((\\d+)\\);##$1\n@js:\ns=baseUrl.match(/.*\\/(\\d+\\/\\d+\\/)/)[1]\nurl=\"https://www.sunzw.com/\"+s+result+\".html\"\nresult=url",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "{{cookie.removeCookie(baseUrl)}}/search.html,{\n  \"body\": \"s={{key}}&subimt=\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃星空小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.aixswx.com#🎃",
    "customButton": false,
    "customOrder": 764,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  'User-Agent': \"Mozilla/5.0 (Linux; Android 15; V2304A Build/AP3A.240905.015.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/126.0.6478.71 Mobile Safari/537.36\",\n  'sec-ch-ua-platform': \"\\\"Android\\\"\",\n  'origin': \"http://wap.aixswx.com\",\n  'x-requested-with': \"cn.mujiankeji.mbrowser\",\n  'referer': \"http://wap.aixswx.com\",\n  'accept-language': \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\n  'cookie':\"wsii=c6dd6741eff413b0b3fa34454297a6bb; wsii.sig=typqduZ5V0UckybAUZaTc4FDIo_WCyagwQ_gLqClIjM; Hm_lvt_53ebc424a3875367158e16f535e5fb60=1736855620; HMACCOUNT=BAE980A89729A2EC; Hm_lpvt_53ebc424a3875367158e16f535e5fb60=1736855665\"\n}",
    "lastUpdateTime": 0,
    "respondTime": 480,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "text.目录列表@href",
      "wordCount": "[property$=status]@content"
    },
    "ruleContent": {
      "content": "<js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<p>元素的<dd>元素\nvar dds = document.select('div.content > dd');\n\n// 将dds转换为数组以便排序\nvar ddArray = [];\nfor (var i = 0; i < dds.size(); i++) {\n    ddArray.push(dds.get(i));\n}\n\n// 按照data-id属性对ddArray进行排序\nddArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\nvar data = {\n    mergedText: \"\"\n};\n\n// 遍历排序后的ddArray\nfor (var i = 0; i < ddArray.length; i++) {\n    var dd = ddArray[i];\n    var dataId = dd.attr('data-id');\n    // 获取当前dd下的所有<p>元素的文本内容\n    var paragraphs = dd.select('p').text();\n    list.push({\n        id: dataId, // 使用data-id属性\n        text: paragraphs // 获取所有<p>元素的文本内容\n    });\n    // 合并文本内容\n    data.mergedText += paragraphs + \"\\n\"; // 添加换行符以便分隔每个dd的内容\n}\n\n// 输出结果\n//java.log(JSON.stringify(list));\n//java.log(data.mergedText);\n\n// 返回data对象\nresult = data.mergedText;\n</js>\n",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*星空小说网.*|\\(第.*页\\)|{{chapter.title}}"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.0@text##\\((.*?)\\)##$1###",
      "bookList": "ul@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##\\/(\\d+)\\.##$1###\n@js:\nbid = parseInt(result);\naid = parseInt(bid / 1000);\nresult = `/image/${aid}/${bid}/${bid}s.jpg`;",
      "intro": "",
      "kind": "a.0@text##\\[|\\].*",
      "name": "a.0@text##.*\\]|\\(.*"
    },
    "ruleToc": {
      "chapterList": "<js>\nvar JsDom = Packages.org.jsoup.Jsoup;\nvar Document = Packages.org.jsoup.nodes.Document;\nvar Element = Packages.org.jsoup.nodes.Element;\n            \nvar document = JsDom.parse(src);\n            \n// 获取包含<li>元素的<div>元素\nvar divs = document.select('ul.list > div');\n\n// 将divs转换为数组以便排序\nvar divArray = [];\nfor (var i = 0; i < divs.size(); i++) {\n    divArray.push(divs.get(i));\n}\n\n// 按照data-id属性对divArray进行排序\ndivArray.sort(function(a, b) {\n    var pageA = parseInt(a.attr('data-id'), 10);\n    var pageB = parseInt(b.attr('data-id'), 10);\n    return pageA - pageB;\n});\n\nvar list = [];\n// 遍历排序后的divArray\nfor (var i = 0; i < divArray.length; i++) {\n    var div = divArray[i];\n    var dataId = div.attr('data-id');\n    // 获取当前div下的所有<li>元素\n    var lis = div.select('li');\n    for (var j = 0; j < lis.size(); j++) {\n        var li = lis.get(j);\n        var a = li.select('a').first();\n        if (a != null) {\n            list.push({\n                text: a.text(),\n                id: dataId, // 使用data-id属性\n                url: a.attr('href')\n            });\n        }\n    }\n}\n\n//java.log(JSON.stringify(list));\nlist;\n</js>\n",
      "chapterName": "text",
      "chapterUrl": "url",
      "isPay": ""
    },
    "searchUrl": "http://wap.aixswx.org/s.php,{\n \"body\": \"s={{key}}\",\n \"charset\": \"utf-8\", \n \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "正版",
    "bookSourceName": "得间小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.idejian.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 767,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1735612726192,
    "loginUrl": "",
    "respondTime": 1277,
    "ruleBookInfo": {
      "author": "class.author.0@text",
      "coverUrl": ".bookcover@src",
      "intro": "[property=og:description]@content",
      "kind": "class.author.1@text",
      "lastChapter": "class.title.1@textNodes",
      "name": ".main dt@text",
      "tocUrl": "@js:\"https://dj.palmestore.com/zybook/u/p/api.php?Act=getChapterListVersion&bid=\"+java.put('bid',baseUrl.match(/(\\d+)/)[1])+\"&p4=501656\"",
      "wordCount": ".font_num@text"
    },
    "ruleContent": {
      "content": ".h5_mainbody@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.book_author.0@text",
      "bookList": ".v_list li",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@src",
      "intro": ".book_info@text",
      "kind": "class.book_author.2@text",
      "name": ".book_name@text"
    },
    "ruleToc": {
      "chapterList": "cp",
      "chapterName": "cn@text",
      "chapterUrl": "https://m.idejian.com/book/@get:{bid}/{{@css:id@text}}.html"
    },
    "searchUrl": "/search/do?keyword={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "趣书网",
    "bookSourceType": 3,
    "bookSourceUrl": "https://qushu123.com",
    "bookUrlPattern": "https?://qushu123.com/txt/.*/txt\\d+.html",
    "customButton": false,
    "customOrder": 768,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"小说分类\",\n    \"url\": \"\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"男生小说\",\n    \"url\": \"/txt/nansheng/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"女生言情\",\n    \"url\": \"/txt/yanqing/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"耽美同人\",\n    \"url\": \"/txt/tongren/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"都市小说\",\n    \"url\": \"/txt/dushi/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"玄幻奇幻\",\n    \"url\": \"/txt/xuanhuan/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"武侠修真\",\n    \"url\": \"/txt/xiuzhen/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"网游竞技\",\n    \"url\": \"/txt/wangyou/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"历史军事\",\n    \"url\": \"/txt/lishi/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"科幻灵异\",\n    \"url\": \"/txt/kehuan/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"其他小说\",\n    \"url\": \"/txt/qita/<,index_{{page}}.html>\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  }\n]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\"Referer\":\"https://qushu123.com/}",
    "lastUpdateTime": 1751555119644,
    "respondTime": 4030,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "downloadUrls": "@js:\nu=java.getString(\".bookbutton@a@href\")\nuu=String(java.ajax(source.key+u)).match(/\\<td\\>\\<a href=\"(.*)\" ti/)[1]",
      "intro": ".con@html##趣书网.*",
      "kind": "{{@[property~=category|status]@content}}\n{{book.kind}}",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content"
    },
    "ruleContent": {},
    "ruleExplore": {
      "author": "p.1@text##\\s著",
      "bookList": ".imgtextlist@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.3@text##简介：?:?",
      "kind": "p.2@text&&span.0@text##\\[|\\]",
      "name": "a.1@text##《|》"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".imgtextlist@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.4@text##简介：?:?",
      "kind": "p.3:2@text##更新：?:?\\[|\\]",
      "name": "a.1@text##《|》"
    },
    "ruleToc": {},
    "searchUrl": "@js:\nu=\"https://qushu123.com/e/search/index.php\"\nbd=`show=title%2Csoftsay%2Csoftwriter&keyboard=${java.encodeURI(key, 'utf-8')}&tbname=download&tempid=1&Submit22=%E6%90%9C%E7%B4%A2`\nlo=String(java.post(u,bd,{}).headers(\"Location\")).replace(/\\[(result)\\/(.*)\\]/,\"$1/index.php$2&page={{(page-1)}}\")\njava.log(lo)\nurl=\"https://qushu123.com/e/search/\"+lo\n",
    "weight": 0
  },
  {
    "bookSourceComment": "By：Tom",
    "bookSourceGroup": "免费",
    "bookSourceName": "丁斐",
    "bookSourceType": 2,
    "bookSourceUrl": "http://comic.mh.com",
    "customButton": false,
    "customOrder": 769,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nlet model = (title,url,num)=>{\n    return {title:title,url:url,style:{layout_flexGroup:1,layout_flexBasisPercent:num}}\n}\n\nlet ajax = java.ajax(\"http://comic.321mh.com/v1/comic/getcomicsortandroid?platformname=android&productname=mht\")\nlet url=\"https://getconfig-globalapi.yyhao.com/app_api/v5/getsortlist/?page={{page}}&orderby=date&search_type=&comic_sort=tihuan&search_key=&platformname=android&productname=mht\"\n\n丁斐=JSON.parse(ajax).data.map(i=>{\n\tt=url.replace(\"tihuan\",i.urlid)\n\treturn  model(i.name,t,0.15)\n\t})\n\t\n\nJSON.stringify(丁斐)",
    "lastUpdateTime": 1724930118233,
    "respondTime": 533,
    "ruleBookInfo": {
      "intro": "$..comic_desc##^##<br>"
    },
    "ruleContent": {
      "content": "@js:\nres=baseUrl.match(/mycha=(.*)/)\ncha=JSON.parse(res[1])\n\nhost=\"https://mhpic.manhualang.com\"\nlist=[]\n\nlen=cha.end_num\nimg=cha.chapter_image.high\nfor(var i=0;i<len;i++){\n\t  list.push(img.replace(\"$$\",i+1))\n}\n\n\nlist.map(x=>'<img src=\"'+host+x+'\">').join(\"\\n\")"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.comic_author",
      "bookList": "$.data[*]",
      "bookUrl": "http://comic.321mh.com/app_api/v5/getcomicinfo_body/?comic_id={{$.comic_id}}&from_page=search&platformname=android&productname=mht",
      "coverUrl": "http://image.yqmh.com/mh/{{$.comic_id}}.jpg",
      "kind": "$.comic_type##[a-z]+|\\|",
      "lastChapter": "$.last_chapter_name",
      "name": "$.comic_name"
    },
    "ruleToc": {
      "chapterList": "-$..comic_chapter[*]",
      "chapterName": "$.chapter_name",
      "chapterUrl": "$[?(@.chapter_name==\"{{chapter.title}}\")]\n@js:\n\ncha=java.getElement(result)[0]\nbaseUrl+'&mycha='+JSON.stringify(cha)\n",
      "updateTime": "$..create_date\n@js:\"🕗 \"+java.timeFormat(result*1000)"
    },
    "searchUrl": "https://getconfig-globalapi.yyhao.com/app_api/v5/getsortlist/?page={{page}}&orderby=click&search_key={{key}}&young_mode=0&platformname=android&productname=mht",
    "weight": 0
  },
  {
    "bookSourceGroup": "源仓库（新）",
    "bookSourceName": "中华典藏",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.diancang.xyz/",
    "customButton": false,
    "customOrder": 770,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nconst u = source.key, list = [];\nconst push = (title, url, flex) => list.push({\n  title: title,\n  url: url,\n  style: {\n    layout_flexGrow: 1,\n    layout_flexBasisPercent: flex\n  }\n});\nconst getDoc = url => org.jsoup.Jsoup.parse(java.ajax(url));\nconst doc = getDoc(u);\npush(\"・分类・\", \"\", 1);\ndoc.select('.menu a').forEach(e => push(e.text(), e.attr('href') + \"<,index_{{page}}.html>\", null));\npush(\"・标签・\", \"\", 1);\ndoc.select('.panel-default a').forEach(e => push(e.text(), String(e.attr('href')).replace(/\\d+\\.html$/, '{{page-1}}.html'), null));\npush(\"・书单・\", \"\", 1);\nconst sUrl = u + \"/shudan\", sDoc = getDoc(sUrl);\nconst total = +((sDoc.select('.m-page .disabled').text().match(/\\/(\\d+)/) || [,0])[1]);\nfor (let i = 1; i <= total; ++i) {\n  let page = i == 1 ? \"\": `/index_${i}.html`;\n  getDoc(sUrl + page).select('.panel-warning .list-group-item a').forEach(e => push(e.text(), e.attr('href'), null));\n}\nJSON.stringify(list);",
    "lastUpdateTime": 1754708679417,
    "respondTime": 2960,
    "ruleBookInfo": {
      "author": "@js:\n`{{@small@a@text}}` || \"中华典藏\";",
      "canReName": "1",
      "coverUrl": ".fmpic@img@src",
      "intro": ".m-summary@html||.panel-body@html",
      "kind": ".alert@a@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": "#content@html||.message@html||.panel-body@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@js:\n`{{@[href*=/renwu/]@text}}` || \"中华典藏\";",
      "bookList": "tr!0||.panel-body > div",
      "bookUrl": "a.0@href",
      "checkKeyWord": "史记",
      "coverUrl": "img@src",
      "intro": ".m-text@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "@js:\ntry {\n  java.setContent(String(result).match(/<div class=\"clearfix\"><\\/div>([\\s\\S]*?)<div class=\"clearfix\"><\\/div>/)[1]);\n  java.getElements('h3,li');\n} catch {\n  java.setContent(`<a href=\"${baseUrl}\">${book.name}</a>`);\n  java.getElements('body');\n}\n",
      "chapterName": "text",
      "chapterUrl": "a@href",
      "isVolume": "a@target"
    },
    "searchUrl": "e/search/index.php,{\"body\": \"tbname=bookname&show=title,writer&tempid=1&keyboard={{key}}\", \"method\": \"POST\",\"webView\": true}",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "猫九小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.maojiuxs.com#♤yc",
    "customButton": false,
    "customOrder": 771,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"推荐榜\",\"url\":\"/top/tuijian.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"点击榜\",\"url\":\"/top/dianji.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"收藏榜\",\"url\":\"/top/shoucang.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"好评榜\",\"url\":\"/top/pinglun.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"更新榜\",\"url\":\"/top/gengxin.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"新书榜\",\"url\":\"/top/xinshu.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"完结\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/shuku/?offset={{page-1}}&category=1&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/shuku/?offset={{page-1}}&category=2&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"青春校园\",\"url\":\"/shuku/?offset={{page-1}}&category=3&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/shuku/?offset={{page-1}}&category=4&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"灵异惊悚\",\"url\":\"/shuku/?offset={{page-1}}&category=5&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人小说\",\"url\":\"/shuku/?offset={{page-1}}&category=6&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/shuku/?offset={{page-1}}&category=7&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"无ＣＰ\",\"url\":\"/shuku/?offset={{page-1}}&category=135&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱百合\",\"url\":\"/shuku/?offset={{page-1}}&category=136&over=2&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"连载\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"现代言情\",\"url\":\"/shuku/?offset={{page-1}}&category=1&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"古代言情\",\"url\":\"/shuku/?offset={{page-1}}&category=2&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"青春校园\",\"url\":\"/shuku/?offset={{page-1}}&category=3&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/shuku/?offset={{page-1}}&category=4&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"灵异惊悚\",\"url\":\"/shuku/?offset={{page-1}}&category=5&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"同人小说\",\"url\":\"/shuku/?offset={{page-1}}&category=6&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/shuku/?offset={{page-1}}&category=7&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"无ＣＰ\",\"url\":\"/shuku/?offset={{page-1}}&category=135&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"纯爱百合\",\"url\":\"/shuku/?offset={{page-1}}&category=136&over=1&section_id=1\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1759399606823,
    "loginUrl": "http://www.maojiuxs.com/member/login.html",
    "respondTime": 3276,
    "ruleBookInfo": {
      "author": ".introtwo span.0@text",
      "coverUrl": ".imgbox img@src",
      "intro": ".tabs_content p.0@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".cation span@text&&.update span.1@text##\\s.*",
      "lastChapter": ".update span.0@text",
      "name": ".intro div.0@text",
      "tocUrl": ".tabs_header a.1@href",
      "wordCount": ".intro_num div.0@text"
    },
    "ruleContent": {
      "content": "#showReading@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".recom_top li||.book_con li",
      "bookUrl": "a@href",
      "coverUrl": ".imgbox img@src",
      "intro": ".instro@text",
      "kind": ".cation@text&&.status@text&&.time@text##\\s.*",
      "lastChapter": ".up@text",
      "name": ".name@text",
      "wordCount": ".statusbox span.2@text"
    },
    "ruleToc": {
      "chapterList": ".recommendeddirectory a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}",
      "isVip": "img@src"
    },
    "searchUrl": "/book/all.html?s={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱巴士",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.ibusrm.com",
    "concurrentRate": "1000",
    "customButton": false,
    "customOrder": 772,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nlet sort = []\nlet categoryInfo = {\"94\":\"仙侠\",\"95\":\"言情\",\"96\":\"战争军事\",\"97\":\"玄门\",\"98\":\"穿越\",\"101\":\"道听途说\",\"102\":\"舞文弄墨\",\"103\":\"僵尸鬼话\",\"104\":\"情感生活\",\"105\":\"BLGL\",\"106\":\"历史演说\",\"108\":\"科幻\",\"109\":\"游戏\",\"110\":\"商业经济\",\"111\":\"武侠\",\"200\":\"传记回忆\",\"201\":\"随笔杂谈\",\"202\":\"言情小说\",\"203\":\"历史小说\",\"204\":\"侦探推理\",\"205\":\"惊悚悬疑\",\"206\":\"网络玄幻\",\"207\":\"寓言童话\",\"208\":\"青春都市\",\"209\":\"社会心理\",\"210\":\"外国小说\",\"211\":\"科幻小说\",\"212\":\"当代小说\",\"213\":\"武侠小说\",\"214\":\"纪实报告\",\"215\":\"世界历史\",\"216\":\"中国历史\",\"217\":\"科普学习\",\"218\":\"诗歌戏曲\",\"219\":\"宗教哲学\",\"220\":\"文学理论\",\"221\":\"日语读物\",\"222\":\"作品集\",\"223\":\"国学古籍\",\"224\":\"战争军事\",\"225\":\"政治经济\",\"226\":\"古典文学\",\"227\":\"现代小说\",\"228\":\"官场小说\",\"229\":\"轻小说\",\"301\":\"现代耽美\",\"302\":\"古耽架空\",\"303\":\"穿越重生\",\"304\":\"BL同人\",\"305\":\"GL百合\",\"306\":\"玄幻科幻\",\"307\":\"都市言情\",\"308\":\"古代言情\",\"309\":\"网游竞技\",\"310\":\"推理悬疑\",\"311\":\"书友推荐\",\"312\":\"站内推荐\",\"313\":\"小妈文学\",\"314\":\"蛇耽系列\",\"315\":\"追夫火葬场\",\"316\":\"久别重逢\",\"317\":\"虫族系列\",\"318\":\"键盘网游\",\"319\":\"校园文学\",\"320\":\"人外系列\",\"500\":\"糙汉系列\",\"501\":\"综合荟萃\",\"502\":\"快穿系列\",\"503\":\"家庭系列\",\"504\":\"师生系列\",\"505\":\"绿色系列\",\"506\":\"大长篇\",\"507\":\"青青校园\",\"508\":\"玄幻仙侠\",\"509\":\"职场生活\",\"510\":\"乡野山村\",\"511\":\"凌辱暴力\",\"512\":\"古代言情\",\"513\":\"都市言情\",\"514\":\"精品无H\"}\n\nlet categoryList = Object.entries(categoryInfo).map(([cid, name]) => ({ cid, name }));\n\npush = (title, url, type) => sort.push({\n    title: title,\n    url: url,\n    style: {\n        layout_flexGrow: 1,\n        layout_flexBasisPercent: type\n    }\n});\n\n// let so = 'https://www.wxzpyd.com'\nlet so = source.key\nlet url = so + '/api/category/list,'\n\ncategoryList.forEach(({ cid, name }) => {\n    let body = `category=${cid}&type=0&page_index={{page}}` \n    let head = { \"referer\": so + \"/category/\" + cid };\n    let option = {\n        method: \"POST\",\n        body: body,\n        headers: head\n    };\n    let Url = url + JSON.stringify(option);\n    push(name, Url, 0.25);\n});\n\nJSON.stringify(sort);",
    "header": "{\n  \"User-Agent\":\"Mozilla/5.0 (Linux; Android 12.0; wv) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/4.0 Chrome/100.0.2987.108 Mobile Safari/537.36\" \n}",
    "lastUpdateTime": 1734059225757,
    "respondTime": 74222,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "init": "",
      "intro": "[property$=description]@content",
      "kind": "[property~=category]@content",
      "lastChapter": ".bookinfo@tag.dl@span.1@text",
      "name": "[property$=book_name]@content",
      "tocUrl": ".g-nav-control@a.0@href"
    },
    "ruleContent": {
      "content": "$.data.content_data\n@js:\nresult = result.match(/\\[\"(.*)\"\\]/)[1].split(\"\\\",\\\"\").join(\"\\n\")"
    },
    "ruleExplore": {
      "author": "auth",
      "bookList": "",
      "bookUrl": "/novel/{{$._id}}",
      "kind": "theme",
      "name": "name"
    },
    "ruleSearch": {
      "author": "auth",
      "bookList": "data.list[*]",
      "bookUrl": "/novel/{{$._id}}",
      "kind": "tags",
      "name": "name"
    },
    "ruleToc": {
      "chapterList": ".list li a",
      "chapterName": "text",
      "chapterUrl": "href\n@js:\ntry {\n  var u = result.match(/target=(https?.*.html)/)[1]\n  url = decodeURIComponent(u)\n  id = url.match(/chapter\\/(.+)\\.html/)[1]\n  burl = 'https://www.ibusread.com/api/chapter/detail,'\n  body = String('id='+id)\n  head = { \"referer\": url }\n  option = JSON.stringify({\n   method: \"POST\",\n   body: body,\n   headers: head\n  })\n  result = burl + option\n} catch(e) {\n  java.log(e)\n  result\n} finally {\n  result;\n}",
      "isVolume": "",
      "nextTocUrl": ".section-list@li@a@href"
    },
    "searchUrl": "@js:\nlet so = source.key + '/search'\nlet res = org.jsoup.Jsoup.parse(java.ajax(so))\nlet id = res.select('.page-search').attr('data-id')\nlet key = java.encodeURI(key)\nlet url = source.key + '/api/search/list,'\nlet body = String('name=' + key + '&tags=&type=3&tt=&page_index=' + page + '&app=2&searchkey=') \nlet head = {\n  \"referer\": so + \"?name=\" + key + \"&tags=&type=3\"\n}\nlet option = {\n   \"method\": \"POST\",\n   \"body\": body,\n   \"headers\": head\n}\nurl + JSON.stringify(option)",
    "weight": 0
  },
  {
    "bookSourceComment": "📙",
    "bookSourceGroup": "正版",
    "bookSourceName": "💰 追书神器",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.zhuishushenqi.com",
    "customButton": false,
    "customOrder": 786,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "♂️玄幻::/category?gender=male&type=hot&major=%E7%8E%84%E5%B9%BB&minor=&page={{page}}\n♂️都市::/category?gender=male&type=hot&major=%E9%83%BD%E5%B8%82&minor=&page={{page}}\n♂️仙侠::/category?gender=male&type=hot&major=%E4%BB%99%E4%BE%A0&minor=&page={{page}}\n♂️游戏::/category?gender=male&type=hot&major=%E6%B8%B8%E6%88%8F&minor=&page={{page}}\n♂️历史::/category?gender=male&type=hot&major=%E5%8E%86%E5%8F%B2&minor=&page={{page}}\n♂️科幻::/category?gender=male&type=hot&major=%E7%A7%91%E5%B9%BB&minor=&page={{page}}\n♂️奇闻::/category?gender=male&type=hot&major=%E5%A5%87%E9%97%BB&minor=&page={{page}}\n♂️轻小说::/category?gender=male&type=hot&major=%E8%BD%BB%E5%B0%8F%E8%AF%B4&minor=&page={{page}}\n♂️奇幻::/category?gender=male&type=hot&major=%E5%A5%87%E5%B9%BB\"&minor=&page={{page}}\n♂️军事::/category?gender=male&type=hot&major=%E5%86%9B%E4%BA%8B&minor=&page={{page}}\n♂️武侠::/category?gender=male&type=hot&major=%E6%AD%A6%E4%BE%A0&minor=&page={{page}}\n♀️现代言情::/category?gender=female&type=hot&major=%E7%8E%B0%E4%BB%A3%E8%A8%80%E6%83%85&minor=&page={{page}}\n♀️古代言情::/category?gender=female&type=hot&major=%E5%8F%A4%E4%BB%A3%E8%A8%80%E6%83%85&minor=&page={{page}}\n♀️幻想言情::/category?gender=female&type=hot&major=%E5%B9%BB%E6%83%B3%E8%A8%80%E6%83%85&minor=&page={{page}}\n♀️科幻空间::/category?gender=female&type=hot&major=%E7%A7%91%E5%B9%BB%E7%A9%BA%E9%97%B4&minor=&page={{page}}\n♀️青春校园::/category?gender=female&type=hot&major=%E9%9D%92%E6%98%A5%E6%A0%A1%E5%9B%AD&minor=&page={{page}}\n♀️唯美纯爱::/category?gender=female&type=hot&major=%E5%94%AF%E7%BE%8E%E7%BA%AF%E7%88%B1&minor=&page={{page}}\n♀️同人衍生::/category?gender=female&type=hot&major=%E5%90%8C%E4%BA%BA%E8%A1%8D%E7%94%9F&minor=&page={{page}}\n📙飙升榜::http://www.zhuishushenqi.com/ranking/d52ca7d4ae7840f98581d688bb74c8f2?type=press&page={{page}}\n📙VIP榜::http://www.zhuishushenqi.com/ranking/e7e6a46325f2404db16c248f644e6d6a?type=press&page={{page}}\n📙热搜榜::http://www.zhuishushenqi.com/ranking/06aa21ebe73a48799dbd59bf05dd6859?type=press&page={{page}}\n📙经典榜::http://www.zhuishushenqi.com/ranking/fa449c3dd64342dfa8b4944e3e8a063b?type=press&page={{page}}\n📙出版小说::http://www.zhuishushenqi.com/category?gender=press&type=hot&major=%E5%87%BA%E7%89%88%E5%B0%8F%E8%AF%B4&minor=&page={{page}}\n📙心理励志::http://www.zhuishushenqi.com/category?gender=press&type=&major=%E5%BF%83%E7%90%86%E4%B8%8E%E5%8A%B1%E5%BF%97\n📙公版图书::http://www.zhuishushenqi.com/category?gender=press&type=&major=%E5%85%AC%E7%89%88%E4%B9%A6\n📙人文社科::http://www.zhuishushenqi.com/category?gender=press&type=hot&major=%E4%BA%BA%E6%96%87%E7%A4%BE%E7%A7%91&minor=&page={{page}}\n📙商业经济::http://www.zhuishushenqi.com/category?gender=press&type=&major=%E5%95%86%E4%B8%9A%E4%B8%8E%E7%BB%8F%E6%B5%8E\n📙文学艺术::http://www.zhuishushenqi.com/category?gender=press&type=hot&major=%E6%96%87%E5%AD%A6%E8%89%BA%E6%9C%AF&minor=&page={{page}}\n📙亲子读物::http://www.zhuishushenqi.com/category?gender=press&type=&major=%E4%BA%B2%E5%AD%90\n📙教辅教材::http://www.zhuishushenqi.com/category?gender=press&type=&major=%E6%95%99%E8%BE%85%E6%95%99%E6%9D%90",
    "lastUpdateTime": 1680621259434,
    "loginUrl": "http://m.zhuishushenqi.com/login?source=/setting",
    "respondTime": 480,
    "ruleBookInfo": {
      "kind": "class.tags@text",
      "lastChapter": "class.book-section.1@tag.ul@tag.li.0@tag.a@text"
    },
    "ruleContent": {
      "content": "class.inner-text@html"
    },
    "ruleExplore": {
      "author": "class.author@tag.span.0@text",
      "bookList": "class.books-list@tag.a",
      "bookUrl": "href",
      "coverUrl": "class.cover@src",
      "intro": "class.desc@text",
      "kind": "class.author@tag.span.2@text",
      "name": "class.name@text"
    },
    "ruleSearch": {
      "author": "class.author@text##\\|.*|\\s",
      "bookList": "class.books-list@tag.div!0",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@src",
      "intro": "class.desc@text",
      "name": "class.name@text"
    },
    "ruleToc": {
      "chapterList": "class.book-section.2@tag.ul@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/search?val={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "种田小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.zhongtianwen.cn#🎃",
    "customButton": false,
    "customOrder": 787,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "日榜::/paihangbang/dayvisit.html\n周榜::/paihangbang/weekvisit.html\n月榜::/paihangbang/monthvisit.html\n总榜::/paihangbang/allvisit.html\n推荐::/paihangbang/vote.html\n收藏::/paihangbang/mark.html\n下载::/paihangbang/down.html\n评论::/paihangbang/comment.html\n评分::/paihangbang/star_score.html\n入库::/paihangbang/postdate.html\n玄幻::/xiaoshuofenlei/xuanhuan/{{page}}.html\n修真::/xiaoshuofenlei/xiuzhen/{{page}}.html\n武侠::/xiaoshuofenlei/wuxia/{{page}}.html\n都市::/xiaoshuofenlei/dushi/{{page}}.html\n穿越::/xiaoshuofenlei/chuanyue/{{page}}.html\n战争::/xiaoshuofenlei/zhanzheng/{{page}}.html\n网游::/xiaoshuofenlei/wangyou/{{page}}.html\n科幻::/xiaoshuofenlei/kehuan/{{page}}.html\n恐怖::/xiaoshuofenlei/kongbu/{{page}}.html\n其他::/xiaoshuofenlei/qita/{{page}}.html\n女生::/xiaoshuofenlei/nvsheng/{{page}}.html",
    "header": "{\n    'User-Agent': 'Mozilla/5.0 (Linux; Android 11; XQ-AT52 Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/94.0.4606.85 Mobile Safari/537.36'\n}",
    "lastUpdateTime": 0,
    "respondTime": 14610,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "init": "",
      "intro": "[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".synopsisArea_detail p.1:2:3@text##.*：|\\s.*",
      "lastChapter": "[property$=latest_chapter_name]@content##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.查看完整目录@href"
    },
    "ruleContent": {
      "content": "#chaptercontent@p@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##本章未完.+"
    },
    "ruleExplore": {
      "author": "p.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "intro": "p.2@text##简介.",
      "name": "p.0@text"
    },
    "ruleSearch": {
      "author": "p.1@text",
      "bookList": ".hot_sale",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "",
      "kind": "p.2@ownText##\\s.*",
      "lastChapter": "a.1@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "p.0@text"
    },
    "ruleToc": {
      "chapterList": "#chapterlist p!0@a",
      "chapterName": "text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "https://m.zhongtianwen.cn/xiaoshuosousuo/jieguo.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "梦远书城🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mengyuanshuchengcn.com#🎃",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 788,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 0,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 4704,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "canReName": "",
      "coverUrl": "[property=\"og:image\"]@content",
      "init": "",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "id.newlist@div.newrap@a.0@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".art_cnt@p@text",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "##本章未完.*|www.*com",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "span.0@text##.*：",
      "bookList": "ul.clearfix@li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "p.intro@text",
      "kind": "span.1@text##.*：",
      "lastChapter": "",
      "name": "h5@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "dd",
      "chapterName": "a.0@text",
      "chapterUrl": "a.0@href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/search/result.html?searchkey={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "环安小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.savilletailor.com#🎃",
    "customButton": false,
    "customOrder": 790,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "jsLib": "txtc='男人啊爱按暴臀逼擦潮操插吃抽处床春唇刺粗大洞逗硬儿反犯峰妇抚夫腹干搞根公宫勾股狠花滑坏魂鸡激夹奸交叫娇姐禁精进紧菊渴口裤胯快浪力搂乱裸妈毛迷靡妹摸嫩母娘尿咛女哦趴喷婆屁气枪窃骑妻情亲裙热日肉揉乳软润入塞骚色上舌射身深湿兽受舒爽水睡酥死烫痛舔天体挺头腿脱味慰吻握喔污下小性胸血穴阳痒药腰夜液野衣姨吟淫荫幽诱尤欲吁玉吮窄占征汁嘴，。…憋丢弄'",
    "lastUpdateTime": 0,
    "respondTime": 7371,
    "ruleBookInfo": {
      "author": "class.date@tag.a.0@text",
      "name": "class.infos@text"
    },
    "ruleContent": {
      "content": "<js>\nresult=java.getElement(\".read_chapterDetail\")\nresult.select(\"p,script,div\").remove()\nresult=String(result.html()).replace(/<em class=\"n_(\\d+)\"><\\/em>/g,(m0,m1)=>txtc.charAt(parseInt(m1)-1))\n</js>",
      "nextContentUrl": ".newpageNav@textNodes##.*\\/\n@js:\npageSum=parseInt(result[0])\nburl=String(baseUrl)\nresult=Array.from({length:pageSum-1},(_,i)=>{return burl.replace(/.html/,`_${i+2}.html`)})\nresult",
      "title": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.autor@text",
      "bookList": "class.bk",
      "bookUrl": "tag.a.0@href",
      "checkKeyWord": "",
      "lastChapter": "class.date@text",
      "name": "class.infos@tag.h3@text",
      "wordCount": "class.size@text"
    },
    "ruleToc": {
      "chapterList": "class.clearfix@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "{{cookie.removeCookie(source.key)}}\n/search/,{\n\t\"body\": \"searchkey={{key}}&searchtype=all&classid=0\",\n\t\"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🎃总裁🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://mobile.zongcai.com#🎃",
    "customButton": false,
    "customOrder": 792,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 2094,
    "ruleBookInfo": {
      "author": "class.BGsectionOne-top-right@class.author@span@a@text",
      "intro": "class.BGsectionTwo-bottom@text",
      "kind": "class.BGsectionOne-top-right@class.category@span.0@a@text",
      "lastChapter": "class.BGsectionOne-top-right@class.newestChapter@span@text",
      "name": "class.BGsectionOne-top-right@class.title@text",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": "class.SHsectionThree-middle@p",
      "bookUrl": "a.1@href",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".BCsectionTwo-top-chapter",
      "chapterName": "class.BCsectionTwo-top-chapter@a@text",
      "chapterUrl": "class.BCsectionTwo-top-chapter@a@href##$##,{'webView':true}",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://mobile.zongcai666.com/search/{{key}}/",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "七色小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.qisexs.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 795,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "------------                  分 类                 ------------::\n玄幻奇幻::/sort/1_1.html\n武侠修真::/sort/2_1.html\n都市言情::/sort/3_1.html\n历史军事::/sort/4_1.html\n科幻灵异::/sort/5_1.html\n网游竞技::/sort/6_1.html\n女生频道::/sort/7_1.html\n全本小说::/full/1/\n------------                  排 行                 ------------::\n总点击榜::/top/allvisit_1/\n月点击榜::/top/monthvisit_1/\n周点击榜::/top/weekvisit_1/\n字数排行::/top/size_1/\n最新入库::/top/postdate_1/\n最近更新::/top/lastupdate_1/",
    "header": "{\n  \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36\"\n}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 9284,
    "ruleBookInfo": {
      "author": "class.block_txt2@tag.p.2@a@href",
      "coverUrl": "class.block_img2.0@tag.img.0@src",
      "kind": "class.block_txt2@tag.p.3@a@text",
      "lastChapter": "class.block_txt2@tag.p.6@a@text",
      "name": "class.block_txt2@tag.h2.0@text",
      "tocUrl": "class.readlink.0@tag.a.1@href"
    },
    "ruleContent": {
      "content": "id.nr1@textNodes",
      "nextContentUrl": "id.pb_next@href"
    },
    "ruleExplore": {
      "author": "text##(\\[(.{2})\\])? ?\\S+ (\\S+)##$3",
      "bookList": "class.line",
      "bookUrl": "tag.a.0@href",
      "kind": "text##(\\[(.{2})\\])? ?\\S+ (\\S+)##$2",
      "lastChapter": "class.book_other.1@a@text",
      "name": "tag.a.0@text"
    },
    "ruleSearch": {
      "author": "text##(\\[(.{2})\\])? ?\\S+ (\\S+)##$3",
      "bookList": "class.line",
      "bookUrl": "tag.a.0@href",
      "kind": "text##(\\[(.{2})\\])? ?\\S+ (\\S+)##$1",
      "name": "tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.chapter.0@li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "class.page.0@tag.a.0@href"
    },
    "searchUrl": "/s.php,{\n  \"method\": \"POST\",\n  \"body\": \"type=articlename&s={{key}}\",\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "书海阁子",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.shuhaige.net#",
    "bookUrlPattern": "https?://m\\.shuhaige\\.net(/html)?/\\d+/?",
    "customButton": false,
    "customOrder": 799,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\": \"小说排行\",\"url\": \"\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"总点击榜\",\"url\": \"/allvisit/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"月点击榜\",\"url\": \"/monthvisit/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"周点击榜\",\"url\": \"/weekvisit/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"日点击榜\",\"url\": \"/dayvisit/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"总推荐榜\",\"url\": \"/allvote/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"月推荐榜\",\"url\": \"/monthvote/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"周推荐榜\",\"url\": \"/weekvote/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"日推荐榜\",\"url\": \"/dayvote/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"总收藏榜\",\"url\": \"/goodnum/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"总字数榜\",\"url\": \"/size/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"强推榜单\",\"url\": \"/toptime/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书榜单\",\"url\": \"/goodnew/{{page}}.html\",\n\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"书库全部\",\"url\": \"/shuku/0_0_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"都市生活\",\"url\": \"/shuku/0_1_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代言情\",\"url\": \"/shuku/0_2_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代言情\",\"url\": \"/shuku/0_3_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"青春校园\",\"url\": \"/shuku/0_4_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"玄幻奇幻\",\"url\": \"/shuku/0_5_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"/shuku/0_6_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"悬疑灵异\",\"url\": \"/shuku/0_7_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"历史军事\",\"url\": \"/shuku/0_8_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏竞技\",\"url\": \"/shuku/0_9_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"科幻未来\",\"url\": \"/shuku/0_10_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"二次元い\",\"url\": \"/shuku/0_11_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书入库\",\"url\": \"/shuku/0_12_0_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"连载更新\",\"url\": \"/shuku/0_0_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"都市生活\",\"url\": \"/shuku/0_1_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代言情\",\"url\": \"/shuku/0_2_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代言情\",\"url\": \"/shuku/0_3_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"青春校园\",\"url\": \"/shuku/0_4_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"玄幻奇幻\",\"url\": \"/shuku/0_5_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"/shuku/0_6_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"悬疑灵异\",\"url\": \"/shuku/0_7_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"历史军事\",\"url\": \"/shuku/0_8_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏竞技\",\"url\": \"/shuku/0_9_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"科幻未来\",\"url\": \"/shuku/0_10_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"二次元い\",\"url\": \"/shuku/0_11_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书入库\",\"url\": \"/shuku/0_12_1_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}},\n{\"title\": \"完本完结\",\"url\": \"/shuku/0_0_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 1\n}},\n{\"title\": \"都市生活\",\"url\": \"/shuku/0_1_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"现代言情\",\"url\": \"/shuku/0_2_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"古代言情\",\"url\": \"/shuku/0_3_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"青春校园\",\"url\": \"/shuku/0_4_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"玄幻奇幻\",\"url\": \"/shuku/0_5_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"武侠仙侠\",\"url\": \"/shuku/0_6_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"悬疑灵异\",\"url\": \"/shuku/0_7_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"历史军事\",\"url\": \"/shuku/0_8_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"游戏竞技\",\"url\": \"/shuku/0_9_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"科幻未来\",\"url\": \"/shuku/0_10_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"二次元い\",\"url\": \"/shuku/0_11_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0.25,\n\"layout_flexBasisPercent\": -1\n}},\n{\"title\": \"新书入库\",\"url\": \"/shuku/0_12_2_{{page}}.html\",\"style\": {\"layout_flexGrow\": 0,\n\"layout_flexBasisPercent\": 0.29\n}}\n]",
    "header": "{\n\"cookie\":\"Hm_lvt_573bdc8da64ee3b78702a1da827da09f=1625029116\"\n}",
    "lastUpdateTime": 1734387323563,
    "loginUrl": "",
    "respondTime": 39469,
    "ruleBookInfo": {
      "author": "class.author@tag.a@text",
      "coverUrl": "img@src",
      "init": "class.detail",
      "kind": "tag.p.2@tag.a@text&&\ntag.p.2@tag.span.0@text&&\ntag.p.4@text##最后更新：",
      "lastChapter": "class.new@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.name@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节",
      "wordCount": "tag.p.2@tag.span.1@text"
    },
    "ruleContent": {
      "content": "class.content@html##喜欢.*更新速度最快。|《.*》无错章节将持续.*",
      "imageStyle": "full",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "name": ""
    },
    "ruleSearch": {
      "author": "class.data.0@tag.a@text##的小说",
      "bookList": "class.list@li",
      "bookUrl": "class.bookname@tag.a@href",
      "coverUrl": "img@src",
      "intro": "class.intro@text",
      "kind": "class.data@tag.span.0@text",
      "lastChapter": "tag.p.3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "class.bookname@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节",
      "wordCount": "tag.p.1@tag.span.1@text"
    },
    "ruleToc": {
      "chapterList": "class.read@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://m.shuhaige.net/search.html,{\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "做完发现书籍下载地址都404了😭",
    "bookSourceGroup": "免费",
    "bookSourceName": "恩京的书房",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.enjing.net",
    "customButton": false,
    "customOrder": 802,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1730109302066,
    "respondTime": 36,
    "ruleBookInfo": {
      "author": "p.0@text",
      "canReName": "1",
      "coverUrl": "[class$=img]@img@src",
      "intro": "[class^=describe]>:not(div)@html##.*恩.{,5}京.{,5}书,{,5}房.*",
      "kind": "p.1:2:3@text##.*：\n<js>##、##,</js>",
      "lastChapter": "p.4@a@text",
      "name": "[class*=book-describe]@h1@text",
      "tocUrl": ".downbtn@href"
    },
    "ruleContent": {
      "content": "@js:\nb = baseUrl;\nif (/download\\.php/.test(b)) {\n  String(java.getString('.download@html')).replace(/<.*?href=\"(.*?)\".*?>(.*?)<.*?>/g,'\\n$2：$1\\n');\n} else {\n  java.getString('#nr1@html');\n};",
      "nextContentUrl": ".next.0@a@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "{{\"恩京的书房\"}}",
      "bookList": ".cat-search-item,.post",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p.1@text",
      "kind": "p!1@a@text",
      "name": "a[target]@text"
    },
    "ruleToc": {
      "chapterList": "@js:\nb = baseUrl;\nif (/download\\.php/.test(b)) {\n  JSON.parse(`[{\"text\": \"下载地址\", \"href\": \"${b}\"}]`);\n} else {\n  java.getElements('.book-list@li@a');\n};",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/<,page/{{page}}/>?s={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "零点小书屋🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ldxsw.co#🎃",
    "bookUrlPattern": "http://www.ldxsw.co/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 803,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "首页::/\n排行::/paihangbang/\n完本::/wanben/1_{{page}}",
    "header": "{\n\t\"User-Agent\":\"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\",\"referer\":\"{{baseUrl}}\"\n\t}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 6159,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\".m-desc@textNodes\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": ".content@html",
      "imageStyle": "",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##『加入书签，方便阅读』",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": ".item||.txt-list@li",
      "bookUrl": "a@href",
      "coverUrl": "@js:\"/themes/qu/nocover.jpg\"",
      "intro": "a.-1@text",
      "kind": "span.-1@text",
      "lastChapter": "",
      "name": "a.1@text||a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".odd.1@text",
      "bookList": "#nr",
      "bookUrl": "a.0@href",
      "coverUrl": "@js:\"/themes/qu/nocover.jpg\"",
      "intro": "",
      "kind": "td.-1:-2@text",
      "lastChapter": "a.1@text",
      "name": "a.0@href",
      "wordCount": "td.-3@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isVip": "",
      "nextTocUrl": "@js:\nvar page=result.match(/当前第\\d+页，共(\\d+)页，每页显示\\d+章/)[1];\nif(baseUrl.match(/\\/1\\/$/)){\n\tvar url=baseUrl;\n\t}else{\n\t\tvar url=String(baseUrl+\"1/\");\n}\nvar list=[];\nfor(var i=2;i<=page;i++){\n\tlist.push(url.replace(/1\\/$/,i+\"/\"));\n}\nlist;",
      "updateTime": ""
    },
    "searchUrl": "http://www.ldxsw.co/modules/article/search.php?searchkey={{key}}&submit=&page={{page}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 1
  },
  {
    "bookSourceComment": "by莫闻",
    "bookSourceGroup": "免费",
    "bookSourceName": "云霄阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.322287.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 810,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "穿越::http://www.322287.com/sort/chuanyue/{{page}}/\n言情::http://www.322287.com/sort/yanqing/{{page}}/\n现代::http://www.322287.com/sort/dushi/{{page}}/\n武侠::http://www.322287.com/sort/wuxia/{{page}}/\n玄幻::http://www.322287.com/sort/xuanhuan/{{page}}/\n科幻::http://www.322287.com/sort/kehuan/{{page}}/\n网游::http://www.322287.com/sort/wangyou/{{page}}/",
    "header": "",
    "lastUpdateTime": 1747085048361,
    "respondTime": 60156,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property$=category]@content&&[property$=status]@content&&[property$=update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.章节目录@href",
      "wordCount": ".visible-xs.1@text##字数："
    },
    "ruleContent": {
      "content": "#booktxt@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "bookList": "",
      "name": ""
    },
    "ruleSearch": {
      "author": ".btm@a@text",
      "bookList": ".item",
      "bookUrl": "a.1@href",
      "coverUrl": "img@data-original",
      "intro": "dd@ownText",
      "name": "dt@a@text",
      "wordCount": "class.orange visible-xs@text"
    },
    "ruleToc": {
      "chapterList": "#content_1@a",
      "chapterName": "dd@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "http://www.322287.com\n@js:\nvar url=source.getKey();\nvar html = java.ajax(url);\nso = org.jsoup.Jsoup.parse(html).select('form[name=search]').attr('action');\nurl+so+\"?searchkey={{key}}\"\n",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃书客吧🎃#2",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.shuke8.cc#🎃",
    "customButton": false,
    "customOrder": 815,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n    {\n        \"title\":\"奇幻玄幻✨\",\n        \"url\":\"/qihuan/11-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"武侠仙侠🗡️\",\n        \"url\":\"/wuxia/22-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"都市青春🏙️\",\n        \"url\":\"/dushi/33-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"历史穿越📜\",\n        \"url\":\"/lishi/44-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"游戏竞技🎮\",\n        \"url\":\"/youxi/55-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"科幻灵异👽\",\n        \"url\":\"/kehuan/66-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    },\n    {\n        \"title\":\"全本小说📚\",\n        \"url\":\"/quanben/77-{{page}}.html\",\n        \"style\":{\n            \"layout_flexBasisPercent\":0.3,\n            \"layout_flexGrow\":1\n        }\n    }\n]\n",
    "lastUpdateTime": 0,
    "respondTime": 6719,
    "ruleBookInfo": {
      "author": ".novel_info_title@a.0@text",
      "coverUrl": ".novel_info_main@img.0@src",
      "kind": ".novel_info_title@span@text",
      "lastChapter": ".novel_info_title@a.1@text",
      "name": ".novel_info_title@h1@text",
      "tocUrl": "[class=\"section chapter_list\"]@a.-1@href"
    },
    "ruleContent": {
      "content": "#bodybox@p@textNodes##[^.]+侵权必究"
    },
    "ruleExplore": {
      "author": "a.-1@text",
      "bookList": ".flex@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img.0@src",
      "intro": "p.-1@text",
      "kind": "span.0@text&&em.1@text##.\\/.##\\,",
      "name": "img.0@title",
      "wordCount": "em.0@text"
    },
    "ruleSearch": {
      "author": "a.-1@text",
      "bookList": ".flex@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img.0@src",
      "intro": "p.-1@text",
      "kind": "span.0@text&&em.1@text##.\\/.##\\,",
      "name": "img.0@title",
      "wordCount": "em.0@text"
    },
    "ruleToc": {
      "chapterList": "[class=\"section chapter_list\"]@ul@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "{{url=source.getKey();\ncookie.removeCookie(url)}}\n/so/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "书旗小说[api]",
    "bookSourceType": 0,
    "bookSourceUrl": "https://t.shuqi.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 824,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"都市\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=都市&onlyAdvBooks=1&_=1682974411490\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"玄幻\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=玄幻&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"仙侠\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=仙侠&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"灵异\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=灵异&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"历史\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=历史&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"游戏\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=游戏&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"科幻\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=科幻&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"奇幻\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=奇幻&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"竞技\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=竞技&onlyAdvBooks=1&_=1682975134890\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"现言\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&secondCate=%E7%8E%B0%E4%BB%A3%E8%A8%80%E6%83%85&onlyAdvBooks=1&_=1682975766781\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"古言\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&secondCate=%E5%8F%A4%E4%BB%A3%E8%A8%80%E6%83%85&onlyAdvBooks=1&_=1682975475024\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"幻言\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&secondCate=%E5%B9%BB%E6%83%B3%E8%A8%80%E6%83%85&onlyAdvBooks=1&_=1682975856354\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"校园\",\"url\":\"http://read.xiaoshuo1-sm.com/novel/i.php?do=is_caterank&p=17&page={{page}}&words=&shuqi_h5=&onlyCpBooks=1&firstCate=%E6%A0%A1%E5%9B%AD&onlyAdvBooks=1&_=1682975960149\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.2}}]",
    "header": "",
    "lastUpdateTime": 1721883618092,
    "loginUrl": "",
    "respondTime": 2274,
    "ruleBookInfo": {
      "author": "[property=og:novel:author]@content",
      "canReName": "",
      "coverUrl": "[property=og:image]@content",
      "downloadUrls": "",
      "init": "",
      "intro": "[property=og:description]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "[property=og:novel:latest_chapter_name]@content",
      "name": "[property=og:title]@content",
      "tocUrl": "<js>\nvar bookId=java.get('bid');\nvar encryptKey=\"37e81a9d8f02596e1b895d07c171d5c9\",user_id=\"8000000\",timestamp=parseInt((new Date).getTime()/1e3);\nvar o=bookId+timestamp+user_id+encryptKey;\nvar sign=java.md5Encode(o);\nvar list={'turl':'https://ocean.shuqireader.com/api/bcspub/qswebapi/book/chapterlist?_=&bookId='+bookId+'&user_id=8000000&sign='+sign+'&timestamp='+timestamp};list\n</js>$.turl",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "ChapterContent@js:\nfunction p(e) {\n    return e.split(\"\").map(function (e) {\n        return e.match(/[A-Za-z]/) ? (c = Math.floor(e.charCodeAt(0) / 97), k = (e.toLowerCase().charCodeAt(0) - 83) % 26 || 26, String.fromCharCode(k + (0 == c ? 64 : 96))) : e\n    }).join(\"\")\n}\njava.base64Decode(p(result))"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'https://t.shuqi.com/book/'+result+'.html'</js>",
      "coverUrl": "$.cover",
      "intro": "$.desc",
      "kind": "{{$.category}}",
      "lastChapter": "$.last_chapter_name",
      "name": "$.title",
      "wordCount": "$.words"
    },
    "ruleSearch": {
      "author": "$.author",
      "bookList": "$..aladdin&&$.data",
      "bookUrl": "$.bid<js>java.put('bid',result);'https://t.shuqi.com/book/'+result+'.html'</js>",
      "checkKeyWord": "",
      "coverUrl": "$.cover",
      "intro": "$.desc",
      "kind": "$.category",
      "lastChapter": "$.latest_chapter.cname",
      "name": "$.title",
      "wordCount": "$.words"
    },
    "ruleToc": {
      "chapterList": "$.data.chapterList[0].volumeList<js>java.put('freeUrlPre',java.getString('$.data.freeContUrlPrefix'));java.put('shortUrlPre',java.getString('$.data.shortContUrlPrefix'));result</js>",
      "chapterName": "$.chapterName",
      "chapterUrl": "<js>var l=java.getString('$.contUrlSuffix');if(l.indexOf('reqEncryptParam')==-1){java.get('freeUrlPre')+l}else{java.get('shortUrlPre')+java.getString('$.shortContUrlSuffix')}</js>",
      "isVip": ""
    },
    "searchUrl": "https://read.xiaoshuo1-sm.com/novel/i.php?do=is_search&isNewBind=0&tk=&imei=&sn=&channelId=&clientPatch=&clientVersion=&device=&deviceId=&utdid=&model=&osName=&osVersion=&umidToken=&appVersion=&app=&platform=3&ykToken=&ykuid=&shuqi_h5=&token=&user_id=8000000&q={{key}}&page=1&size=10&uid=8000000&filterMigu=1&ver=&p=3",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌸 快眼看书™",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.botaodz.com",
    "customButton": false,
    "customOrder": 828,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1618221123779,
    "respondTime": 3032,
    "ruleBookInfo": {
      "author": "##:author\"[^\"]*\"([^\"]*)##$1###",
      "coverUrl": "##:image\"[^\"]*\"([^\"]*)##$1###",
      "intro": "##:description\"[^\"]*\"([^\"]*)##$1###",
      "kind": "##:category\"[^\"]*\"([^\"]*)[\\s\\S]*?status\"[^\"]*\"([^\"]*)[\\s\\S]*?_time\"[^\"]*\"([^\"]*)##$1,$2,$3###",
      "lastChapter": "##_chapter_name\"[^\"]*\"([^\"]*)##$1###",
      "name": "##:book_name\"[^\"]*\"([^\"]*)##$1###"
    },
    "ruleContent": {
      "content": "#chaptercontent@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "##作者：([^<]*)##$1###",
      "bookList": "+@css:.librarylist li",
      "bookUrl": ".novelname@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": ".last@ownText##最新章节：\\(|\\)",
      "lastChapter": ".last a@text",
      "name": ".novelname@title"
    },
    "ruleToc": {
      "chapterList": ":章节目录</h2>[\\s\\S]*?/ul&&href=\"([^\"]*)[^>]*>([^<]*)",
      "chapterName": "$2##正文(_)?",
      "chapterUrl": "$1"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "完美小说网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.22pq.com#🎃",
    "bookUrlPattern": "https://m.22pq.com/read/\\d+.html",
    "customButton": false,
    "customOrder": 835,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 1465,
    "ruleBookInfo": {
      "author": "//div[@class=\"book-info\"]/dl/dd/p/span[1]/a/text()",
      "coverUrl": "//div[@class=\"book-info\"]/dl/dt/img/@src",
      "intro": "//div[@class=\"intro clearfix\"]",
      "kind": "//div[@class=\"book-info\"]/dl/dd/p/span[2]/a/text()",
      "lastChapter": "//div[@class=\"book-info\"]/dl/dd/p/span[last()]/a/text()",
      "name": "//div[@class=\"book-info\"]/dl/dd/h2/text()",
      "tocUrl": "//a[@id=\"reading\"]/@href"
    },
    "ruleContent": {
      "content": "//div[@id=\"txt\"]/dd",
      "replaceRegex": "##阅读.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "//a/text()<js>result=result.replace(/^.*?\\((.*?)\\)$/,\"$1\")</js>",
      "bookList": "//div[@class=\"block\"]/ul/li",
      "bookUrl": "//a/@href",
      "kind": "//a/span/text()<js>String(result).replace(/^..(.*?)..$/,\"$1\")</js>",
      "name": "//a/text()<js>result=result.replace(/\\(.*?\\)$/,\"\")</js>"
    },
    "ruleToc": {
      "chapterList": "<js>'<p>' + result.match(/\\<a.+?(href=\"\\d+\\.html\").+?a\\>/g).sort() + '</p>'</js>tag.a",
      "chapterName": "//a/text()",
      "chapterUrl": "//a/@href"
    },
    "searchUrl": "https://m.22pq.com/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "鬼吹灯吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.gdbzkz.org#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 837,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/fenlei/1/{{page}}.html\n仙侠小说::/fenlei/2/{{page}}.html\n都市小说::/fenlei/3/{{page}}.html\n军史小说::/fenlei/4/{{page}}.html\n网游小说::/fenlei/5/{{page}}.html\n科幻小说::/fenlei/6/{{page}}.html\n恐怖小说::/fenlei/7/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1734380387158,
    "loginUrl": "",
    "respondTime": 587,
    "ruleBookInfo": {
      "author": "class.small@tag.span.0@text##作 者：",
      "coverUrl": "class.cover@img@src",
      "init": "",
      "intro": "class.intro@textNodes##作者.*|无弹窗.*",
      "kind": "[property=og:novel:update_time]@content&&\n[property=og:novel:category]@content&&\n[property=og:novel:status]@content ",
      "lastChapter": "class.small@tag.span.5@a@text##百度搜索.*",
      "name": "class.info@h2@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "tocUrl": "",
      "wordCount": "class.info@class.small@tag.span.3@text##字数："
    },
    "ruleContent": {
      "content": "id.content@html##http.*html|天才一秒记住.*org|请记住本书首发域.*org",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.s4@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "",
      "intro": "",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "class.author@text##作者：",
      "bookList": "class.bookbox@class.p10",
      "bookUrl": "class.bookname@tag.a@href",
      "coverUrl": "class.bookimg@img@src",
      "intro": "class.bookinfo@p@text",
      "kind": "class.cat@text##分类：",
      "lastChapter": "class.update@tag.a@text##百度搜索.*",
      "name": "class.bookname@tag.a@text##\\（.*|\\(.*|免费阅读|全文.*阅读|最新章节|笔趣阁|小说",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.listmain@dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "http://www.gdbzkz.org/s.php?ie=utf-8&q={{key}}",
    "weight": 1
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "空白小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.swsk.org#",
    "customButton": false,
    "customOrder": 841,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1734978807325,
    "respondTime": 737,
    "ruleBookInfo": {
      "author": "//meta[@property=\"og:novel:author\"]/@content",
      "coverUrl": "//meta[@property=\"og:image\"]/@content",
      "init": "",
      "intro": "//meta[@property=\"og:description\"]/@content",
      "kind": "//meta[@property=\"og:novel:category\"]/@content",
      "lastChapter": "//meta[@property=\"og:novel:latest_chapter_name\"]/@content&&//meta[@property=\"og:novel:update_time\"]/@content##\\n##•",
      "name": "//meta[@property=\"og:title\"]/@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html",
      "nextContentUrl": "",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": "class.novelslist2@ul@li!0",
      "bookUrl": ".s2@a@href",
      "coverUrl": ".s2@a@href##/(\\d+)/(\\d+)/##http://www.swsk.org/files/article/image/$1/$2/$2s.jpg",
      "intro": "",
      "kind": ".s1@text",
      "lastChapter": ".s6@text&&.s3@text",
      "name": ".s2@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "#list@dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "http://www.swsk.org/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "求书网吧",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.qiushu.info#喜静",
    "customButton": false,
    "customOrder": 842,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总推荐榜\",\"url\":\"/top/allvote.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总排行榜\",\"url\":\"/top/allvisit.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月排行榜\",\"url\":\"/top/monthvisit.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周排行榜\",\"url\":\"/top/weekvisit.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日排行榜\",\"url\":\"/top/dayvisit.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月推荐榜\",\"url\":\"/top/monthvote.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周推荐榜\",\"url\":\"/top/weekvote.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日推荐榜\",\"url\":\"/top/dayvote.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/top/postdate.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"本站推荐\",\"url\":\"/top/toptime.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏榜\",\"url\":\"/top/goodnum.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"字数排行\",\"url\":\"/top/size.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"新书榜\",\"url\":\"/top/goodnew.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"仙侠\",\"url\":\"/ls/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/ls/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"惊悚\",\"url\":\"/ls/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"奇幻\",\"url\":\"/ls/13-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"异界\",\"url\":\"/ls/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"神话\",\"url\":\"/ls/14-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"魔法\",\"url\":\"/ls/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/ls/12-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/ls/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/ls/15-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"/ls/16-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"谍战\",\"url\":\"/ls/23-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"军事\",\"url\":\"/ls/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"竞技\",\"url\":\"/ls/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"官场\",\"url\":\"/ls/21-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/ls/24-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"/ls/19-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"宫廷\",\"url\":\"/ls/18-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/ls/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/ls/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"/ls/17-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"同人\",\"url\":\"/ls/11-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"短篇\",\"url\":\"/ls/25-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1734707034596,
    "respondTime": 1436,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "",
      "init": "",
      "intro": "[property$=describe]@content",
      "kind": "[property$=Other categories]@content",
      "lastChapter": "[property$=chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": ".top_author@text||.t2@a@text",
      "bookList": ".toplists@dl||.read_list@li",
      "bookUrl": "dt@a.1@href||.t1@a@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.qiushu.info/$2/$1/$1s.jpg###",
      "intro": ".t3@text",
      "kind": ".top_sort@text&&.top_fullflag@text&&.top_lastupdate@text&&.text@text&&.rl@text##.*时间.",
      "lastChapter": "a.1@text||.tl@a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "strong@text||.t1@a@text##《|》|最新章节"
    },
    "ruleSearch": {
      "author": ".t2@text##\\s更新.*",
      "bookList": ".read_list@li",
      "bookUrl": ".t1@a@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": ".t3@text",
      "kind": ".text@text&&.rl@text##.*时间.",
      "lastChapter": ".tl@a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".t1@a@text##《|》|最新章节",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".book_con_list@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/search.php,{\n  \"method\": \"post\",\n  \"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "️达文小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.dawensk.com#🎃",
    "bookUrlPattern": "http://m.umiwx.net/read/\\d+.html",
    "customButton": false,
    "customOrder": 844,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url+\"/xiaoshuo/\";\nvar ph=url+\"/good/\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".clearfix li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".clearfix li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".clearfix li a\");\n\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        push(title,url,size)\n    };\n    \n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        size=0.25;\n        push(title,url,size)\n    }\n//push(\"🌹全本🌹\",\"/full/{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)",
    "header": "{\"referer\": \"{{source.getKey()}}\",\n\"x-requested-with\": \"mark.via\",\n\"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\",\n\"user-agent\": \"Mozilla/5.0 (Linux; Android 10; PACM00 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.79 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1719861780767,
    "respondTime": 12048,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=category|status|time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\",\nt:\"text.章节列表@href||text.目录列表@href||text.章节目录@href\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "@get:{t}##$##,{'webView': true}"
    },
    "ruleContent": {
      "content": "<js>\njava.getElements('@@id.txt@dd').toArray().sort((a,b)=>a.attr('data-id')-b.attr('data-id')).map(x=>x.html()).join('')</js>##.本章未完，请点击下一页继续阅读.|{{String(title).replace(/ /,'')}}",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##最新网址.*|.*最新章节.*",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "a@ownText##:【.+",
      "bookList": ".bd li",
      "bookUrl": "a@href",
      "coverUrl": "a@href<js>\nvar id = result.match(/(\\d+)(\\/?|\\.html)$/)[1];\nvar iid = parseInt(id/1000);\nString(source.getKey()).replace(/(m|wap)/,\"www\")+'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "span@text##\\[|\\]",
      "name": "a@ownText##.*【|】"
    },
    "ruleSearch": {
      "author": "a@ownText##.+\\(|\\)",
      "bookList": ".bd li",
      "bookUrl": "a@href",
      "checkKeyWord": "剑来",
      "coverUrl": "a@href<js>\nvar id = result.match(/(\\d+)(\\/?|\\.html)$/)[1];\nvar iid = parseInt(id/1000);\nString(source.getKey()).replace(/(m|wap)/,\"www\")+'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "span@text##\\[|\\]",
      "name": "a@ownText##\\(.*\\)"
    },
    "ruleToc": {
      "chapterList": "+@js:org.jsoup.Jsoup.parse(result.replace(/\\.html/g,\"\")).select('.list li a').toArray().sort((a,b)=>a.attr('href')-b.attr('href')).map(x=>({n:x.text(),u:x.attr('href')+\".html\"}))",
      "chapterName": "n",
      "chapterUrl": "u"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "红袖添香 ",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.hongxiu.com#",
    "customButton": false,
    "customOrder": 845,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"现代言情\",\"url\":\"/category/30020_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/category/30013_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"浪漫青春\",\"url\":\"/category/30031_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻言情\",\"url\":\"/category/30001_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠奇缘\",\"url\":\"/category/30008_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑恐怖\",\"url\":\"/category/30036_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻空间\",\"url\":\"/category/30042_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏竞技\",\"url\":\"/category/30050_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"短篇小说\",\"url\":\"/category/30083_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"轻小说\",\"url\":\"/category/30055_f1_f1_f1_f1_f1_0_{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1732519964635,
    "loginUrl": "https://passport.yuewen.com/yuewen.html?appid=41&areaid=2&autotime=30&source=m&version=1.0&ticket=1&unionshow=110&returnurl=https%3A%2F%2Fm.hongxiu.com%2FloginSuccess%3FjumpUrl%3Dhttps%253A%252F%252Fm.hongxiu.com%252Fuser",
    "respondTime": 7305,
    "ruleBookInfo": {
      "author": ".book-rand-a@text",
      "intro": "<js>p=baseUrl.replace(/m\\./,'www.')\njava.ajax(p)\n</js>class.intro.0@html",
      "kind": ".book-meta.0@text&&.book-meta.1@text##.*\\|",
      "lastChapter": "class.gray ell@text",
      "name": "h1@text",
      "tocUrl": "@js:baseUrl.replace(/m\\.(.*)/,'www.$1')"
    },
    "ruleContent": {
      "content": "class.read-content@tag.p@text",
      "replaceRegex": "##(\\s|\\S)*?阅读上一章|目录.*\\s|-/-"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".book-author@text",
      "bookList": ".book-li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".book-desc@html",
      "kind": ".tag-small.0@text&&.tag-small.1@text",
      "name": "h4@text",
      "wordCount": "em.-1@text"
    },
    "ruleToc": {
      "chapterList": "class.volume@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}",
      "isVip": ""
    },
    "searchUrl": "https://m.hongxiu.com/so/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "精华书阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.jhssd.com",
    "customButton": false,
    "customOrder": 847,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"༺ˇ»`ʚ榜单ɞ´«ˇ༻\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"日点击榜\",\"url\":\"https://m.jhssd.com/Ranking_dayvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最近更新\",\"url\":\"https://m.jhssd.com/Ranking_lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新书榜单\",\"url\":\"https://m.jhssd.com/Ranking_goodnew/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周点击榜\",\"url\":\"https://m.jhssd.com/Ranking_weekvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月点击榜\",\"url\":\"https://m.jhssd.com/Ranking_monthvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总点击榜\",\"url\":\"https://m.jhssd.com/Ranking_allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周推荐榜\",\"url\":\"https://m.jhssd.com/Ranking_weekvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐榜\",\"url\":\"https://m.jhssd.com/Ranking_monthvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐榜\",\"url\":\"https://m.jhssd.com/Ranking_allvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总收藏榜\",\"url\":\"https://m.jhssd.com/Ranking_goodnum/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总字数榜\",\"url\":\"https://m.jhssd.com/Ranking_size/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总排行榜\",\"url\":\"https://m.jhssd.com/Ranking_allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"༺ˇ»`ʚ分类ɞ´«ˇ༻\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"最新入库\",\"url\":\"https://m.jhssd.com/Ranking_postdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"https://m.jhssd.com/list/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真小说\",\"url\":\"https://m.jhssd.com/list/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市小说\",\"url\":\"https://m.jhssd.com/list/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越小说\",\"url\":\"https://m.jhssd.com/list/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游小说\",\"url\":\"https://m.jhssd.com/list/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻小说\",\"url\":\"https://m.jhssd.com/list/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异小说\",\"url\":\"https://m.jhssd.com/list/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女生小说\",\"url\":\"https://m.jhssd.com/list/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"https://m.jhssd.com/list/9_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"全本小说\",\"url\":\"https://m.jhssd.com/wanben_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1733522999386,
    "respondTime": 9512,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "{{@@[property$=latest_chapter_name]@content}} • {{@@[property$=update_time]@content##\\s.*}}",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "#nr_content@html##温馨提示.*?最新章节.*?阅读模式.|精华书阁.*?最新章节.|(百度搜索|为您提供).*?jhssd.com|浏.?览.?器.*?最快更新…+|最快更新.*?进行查看|(本章未完，请点击下一页继续阅读)",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "span.1@text",
      "bookList": "ul.xbk",
      "bookUrl": "https://www.jhssd.com{{@@a.0@href}}",
      "coverUrl": "img@src",
      "intro": "span.2@text",
      "kind": "{{@@span.3@text##.*\\d##已}}##.*在看",
      "lastChapter": "",
      "name": "span.0@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "p.2@text",
      "bookList": "ul.list_ul@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href##/\n@js:\nid=parseInt(result)-167\niid=Math.floor(id/1000)\n'/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg'",
      "kind": "p.5:4@text",
      "lastChapter": "{{@@p.1@text}} • {{@@p.4@text##\\s.*}}",
      "name": "p.0@text",
      "wordCount": "p.3@text"
    },
    "ruleToc": {
      "chapterList": "#list@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.jhssd.com/search.html?ie=utf-8&word={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "亿软小说🎃#3",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yruan.com#🎃",
    "bookUrlPattern": "https://www.yruan.com/article/\\d+.html",
    "customButton": false,
    "customOrder": 849,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::http://m.yruan.com/sort/1/{{page}}.html\n仙侠小说::http://m.yruan.com/sort/2/{{page}}.html\n都市小说::http://m.yruan.com/sort/3/{{page}}.html\n军史小说::http://m.yruan.com/sort/4/{{page}}.html\n网游小说::http://m.yruan.com/sort/5/{{page}}.html\n科幻小说::http://m.yruan.com/sort/6/{{page}}.html",
    "lastUpdateTime": 0,
    "loginUrl": "{\n  \"url\": \"null\"\n}",
    "respondTime": 2881,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.3@text&&\nid.info@tag.p.1@text##日 期：|类 别:",
      "lastChapter": "id.info@tag.p.2@a@text##百度搜索.*",
      "name": "id.info@tag.h1@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##<!--go--> |<!--over--> "
    },
    "ruleExplore": {
      "author": "class.author@text",
      "bookList": "class.article",
      "bookUrl": "h6@a@href@js:'https://www.yruan.com'+result",
      "coverUrl": "img@src",
      "intro": "class.simple@text",
      "name": "h6@a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href@js:\r\nvar id = result.match(/\\/(\\d+)\\.?/)[1];\r\n'/files/article/image/'+parseInt(id/1000)+'/'+id+'/'+id+'s.jpg';",
      "kind": "tag.td.4@text&&\ntag.td.5@text",
      "lastChapter": "tag.td.1@tag.a@text##百度搜索.*",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.yruan.com/modules/article/search.php?searchkey={{key}}",
    "weight": 88
  },
  {
    "bookSourceComment": "地址改用m.的目录URL规则：\n{{baseUrl}}##(.*?)m(.*)##$1m$2",
    "bookSourceGroup": "免费",
    "bookSourceName": "创维小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.woo16.vip",
    "customButton": false,
    "customOrder": 850,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"☑️排行\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"总收藏榜\",\"url\":\"/paihang/goodnum_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最新入库\",\"url\":\"/paihang/postdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"最近更新\",\"url\":\"/paihang/lastupdate_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总排行榜\",\"url\":\"/paihang/allvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"月排行榜\",\"url\":\"/paihang/monthvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"周排行榜\",\"url\":\"/paihang/weekvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"日排行榜\",\"url\":\"/paihang/dayvisit_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"总推荐榜\",\"url\":\"/paihang/allvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"月推荐榜\",\"url\":\"/paihang/monthvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"周推荐榜\",\"url\":\"/paihang/weekvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"日推荐榜\",\"url\":\"/paihang/dayvote_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},\n{\"title\":\"☑️分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"都市\",\"url\":\"/dushi_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"浓情\",\"url\":\"/nongqing_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"言情\",\"url\":\"/yanqing_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"校园\",\"url\":\"/xiaoyuan_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"武侠\",\"url\":\"/wuxia_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻\",\"url\":\"/xuanhuan_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"穿越\",\"url\":\"/chuanyue_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},\n{\"title\":\"惊悚\",\"url\":\"/jingsong_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1733308267460,
    "respondTime": 5052,
    "ruleBookInfo": {
      "coverUrl": "$.thumbnail\n@js:\nresult||\"https://s3.bmp.ovh/imgs/2023/08/01/8a0ab481ea31a36f.jpg\"",
      "init": "",
      "intro": ".p3@text",
      "lastChapter": ".p4 a@text",
      "tocUrl": "{{baseUrl}}##(.*?)www(.*)##$1m$2"
    },
    "ruleContent": {
      "content": "id.nr@html"
    },
    "ruleExplore": {
      "author": ".p2 a@text||a.-1@text",
      "bookList": ".lists li||.listcon ul li",
      "bookUrl": "a.0@href",
      "coverUrl": "$.thumbnail\n@js:\nresult||\"https://s3.bmp.ovh/imgs/2023/08/01/1bb4968e49eedf2b.jpg\"",
      "intro": ".p3@text",
      "kind": "span.0@text&&span.-1@text##\\[|\\]|更新时间：",
      "lastChapter": ".lastchapter a@text",
      "name": "img@alt||a.0@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.-1@text",
      "bookList": ".lists li",
      "bookUrl": "a.0@href",
      "coverUrl": "$.thumbnail\n@js:\nresult||\"https://s3.bmp.ovh/imgs/2023/08/01/2c5709f38795b4d1.jpg\"",
      "kind": "span.0@text&&span.-1@text##\\[|\\]|更新时间：",
      "lastChapter": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".lb li!-1",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isPay": "ttt",
      "nextTocUrl": ".showpage@a@href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"body\": \"searchtype=articlename&searchkey={{key}}&t_btnsearch=\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "书轩网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.bookxuan.com/",
    "bookUrlPattern": "book/\\d+/\\d+/",
    "customButton": false,
    "customOrder": 852,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "lastUpdateTime": 1692081295929,
    "loginUrl": "",
    "respondTime": 1165,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@tag.a@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@tag.p.0@text",
      "kind": "class.con_top@tag.a.7@text&&\nid.info@tag.p.1@text&&\nid.info@tag.p.2@text##最后更新：|状 态：|,加入.*",
      "lastChapter": "id.info@tag.p.3@tag.a@text",
      "name": "id.info@tag.h1@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##精彩小说免费阅读！"
    },
    "ruleExplore": {
      "author": "class.newbook_author@a@text",
      "bookList": "class.newbook_list",
      "bookUrl": "class.newbook_title@a@href@js:'http://www.bookxuan.com'+result",
      "coverUrl": "img@src",
      "intro": "class.newbook_intor@text",
      "kind": "class.s1@text",
      "name": "class.newbook_title@a@text"
    },
    "ruleSearch": {
      "author": "tag.td.2@text||id.info@tag.p.0@tag.a@text",
      "bookList": "id.nr||id.wrapper",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\nsource.bookSourceUrl + 'files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "tag.td.4@text&&\ntag.td.5@text",
      "lastChapter": "tag.td.1@tag.a@text",
      "name": "tag.td.0@tag.a@text||id.info@tag.h1@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&searchtype=articlename&0={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "制作 by 靈狐\napp\ncom.wbydq.txtreader\n同库\n追小说\n美萌小说\n无敌小说",
    "bookSourceGroup": "免费",
    "bookSourceName": "♨️小说迷",
    "bookSourceType": 0,
    "bookSourceUrl": "https://pub.wowonongjia.com",
    "customButton": false,
    "customOrder": 855,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\":\"okhttp/3.9.1\"}",
    "lastUpdateTime": 1718949631606,
    "respondTime": 2722,
    "ruleBookInfo": {
      "author": "book_author",
      "coverUrl": "book_cover",
      "init": "data",
      "intro": "&nbsp;评分：{{$.book_score}}\n点击：{{$.read_views}}\n标签：{{$.book_tag.*##\\n##,}}\n简介：{{$.book_intro}}",
      "kind": "{{$.cate_sub}},{{java.getString('book_role')=='male'?'男生':'女生'}},{{java.getString('is_finish')==0?'连载':'完结'}},{{$.time_update}}",
      "lastChapter": "chapter_last&&time_update##\\n##·",
      "name": "book_name",
      "tocUrl": "x_id@js:java.put('x_id',result);'/book/catalog/{{$._id}}'",
      "wordCount": "word_size"
    },
    "ruleContent": {
      "content": "chapter.body"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "book_author",
      "bookList": "data",
      "bookUrl": "/book/info/{{$._id}}",
      "coverUrl": "book_cover",
      "intro": "book_intro",
      "kind": "{{$.cate_sub}},{{$.book_score}}分,{{$.read_views}}点击",
      "name": "book_name",
      "wordCount": "word_size"
    },
    "ruleToc": {
      "chapterList": "data.chapter_list@js:java.put('url',java.getString('$..chapter_url'));result",
      "chapterName": "cp",
      "chapterUrl": "id@js:\ntime=Date.now()\ntoken=java.md5Encode(result+Math.floor(time/10000+5)+java.get('x_id'))\njava.get('url')+result+'?ts='+time+'&token='+token"
    },
    "searchUrl": "/search/return?query={{key}}&start={{page-1}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "🙈PO站",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.jile1.com",
    "customButton": false,
    "customOrder": 856,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部小说\",\"url\":\"/list/0-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"耽美小说\",\"url\":\"/list/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"百合小说\",\"url\":\"/list/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"言情小说\",\"url\":\"/list/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"高辣文\",\"url\":\"/list/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"腹黑小说\",\"url\":\"/list/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"种田文\",\"url\":\"/list/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"高干文\",\"url\":\"/list/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/list/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真小说\",\"url\":\"/list/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/list/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠小说\",\"url\":\"/list/11-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/list/12-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/list/13-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游小说\",\"url\":\"/list/14-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖小说\",\"url\":\"/list/15-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史小说\",\"url\":\"/list/16-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"同人小说\",\"url\":\"/list/17-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36 Edg/108.0.1462.76\"}",
    "lastUpdateTime": 1770167602873,
    "respondTime": 2405,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": ".info1@img@src",
      "intro": "[property$=description]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": "class.panel panel-default@html"
    },
    "ruleExplore": {
      "author": ".book_author@text",
      "bookList": ".panel-body@.col-lg-6",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": ".book-intro-index@text",
      "name": "h4@text"
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody@tr!0",
      "bookUrl": "td.1@a@href",
      "coverUrl": "ing@src",
      "kind": "td.3:4@text",
      "name": "td.1@text"
    },
    "ruleToc": {
      "chapterList": "class.list-group list-charts@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "英文",
    "bookSourceGroup": "免费",
    "bookSourceName": "双语小说（英）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.shubang.net",
    "customButton": false,
    "customOrder": 859,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreScreen": "",
    "lastUpdateTime": 1759754364928,
    "respondTime": 592,
    "ruleBookInfo": {
      "author": "p.0@text##作者：",
      "coverUrl": ".cover@img@src",
      "intro": ".cont@textNodes",
      "kind": "class.tags@a@text",
      "lastChapter": "tr.-1@td@a@text",
      "name": "h3.0@text"
    },
    "ruleContent": {
      "content": ".line_en@text%%.line_cn@title",
      "nextContentUrl": "class.pagebar@a.-1@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.cont@p@text",
      "bookList": "class.mcon@a",
      "bookUrl": "a@href",
      "coverUrl": "class.cover@img@src",
      "intro": "class.cont@ownText",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": "tr@td",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "book/?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：https://m.xyuzhaiwu5.com\n           https://m.xyuzhaiwu7.com\n PO脸红  https://m.po18bb.com\n新御书屋 https://m.u9mm.com\n耽美小说 https://m.danmei.info\n  肉书阁   https://m.roushuge.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "新御宅屋③",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.xyuzhaiwu3.com/#🚀",
    "customButton": false,
    "customOrder": 860,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "   全 部   ::/wapsort/0_{{page}}.html\n玄幻奇幻::/wapsort/1_{{page}}.html\n武侠仙侠::/wapsort/2_{{page}}.html\n都市言情::/wapsort/3_{{page}}.html\n科幻网游::/wapsort/4_{{page}}.html\n惊悚悬疑::/wapsort/5_{{page}}.html\n耽美同人::/wapsort/6_{{page}}.html\n穿越架空::/wapsort/7_{{page}}.html\n高辣浓情::/wapsort/8_{{page}}.html\n禁忌百合::/wapsort/9_{{page}}.html\n精品文学::/wapsort/10_{{page}}.html",
    "lastUpdateTime": 1721299489137,
    "respondTime": 6569,
    "ruleBookInfo": {
      "author": ".article_info_td.0@div.0@text",
      "init": "",
      "intro": "[style=\"padding:5px;font-size:12px;color:#666; line-height:auto\"]@text",
      "kind": ".article_info_td.0@div.3:1@text&&.article_info_td.1@div.0@text##.*：",
      "lastChapter": ".article_info_td.0@div.2@a@text&&class.article_info_td@tag.time@text\n<js>result.replace(/(.*)\\s/,'$1 • ')</js>",
      "name": "[style=\"background:none;\"]@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": ".author@text||strong@text||span@text",
      "bookList": ".s_m@.last_li||id.list_ul@li||.common-bookele",
      "bookUrl": ".name@href||a.1@href||a.0@href",
      "coverUrl": "@js:'https://img.gb84.com/image/1/1024/1024s.jpg'",
      "intro": ".abstract@text",
      "kind": ".words@text||time@text||a.0@text##.*：",
      "name": ".name@text||h3@text||a.1@text"
    },
    "ruleSearch": {
      "author": "strong@text",
      "bookList": ".common-bookele",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "@js:'https://img.gb84.com/image/1/1024/1024s.jpg'",
      "kind": ".lastupdate@text",
      "name": ".articlename@text"
    },
    "ruleToc": {
      "chapterList": "ul@li!-1@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "{部分正文有乱码}",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎉 亿软网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yruan.com已整理",
    "bookUrlPattern": "http://www.yruan.com/article/\\d+.html已校验",
    "customButton": false,
    "customOrder": 863,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1731309057601,
    "respondTime": 430,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@tag.p.0@text",
      "kind": "id.info@tag.p.3@text&&\nid.info@tag.p.1@text##日 期：|类 别:",
      "lastChapter": "id.info@tag.p.2@a@text##百度搜索.*",
      "name": "id.info@tag.h1@text",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##<!--go--> |<!--over--> "
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href@js:\r\nvar id = result.match(/\\/(\\d+)\\.?/)[1];\r\n'/files/article/image/'+parseInt(id/1000)+'/'+id+'/'+id+'s.jpg';",
      "kind": "tag.td.4@text&&\ntag.td.5@text",
      "lastChapter": "tag.td.1@tag.a@text##百度搜索.*",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.yruan.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "178漫画网-幕惜",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.patternrecognition.cn",
    "customButton": false,
    "customOrder": 865,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"连载中\",\"url\":\"/category/end/0/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"已完结\",\"url\":\"/category/end/1/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"霸总\",\"url\":\"/category/1/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恋爱\",\"url\":\"/category/2/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"生活\",\"url\":\"/category/3/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"热血\",\"url\":\"/category/4/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"后宫\",\"url\":\"/category/5/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"/category/6/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真\",\"url\":\"/category/7/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古风\",\"url\":\"/category/8/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"/category/9/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"动作\",\"url\":\"/category/10/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"竞技\",\"url\":\"/category/11/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"搞笑\",\"url\":\"/category/12/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"战争\",\"url\":\"/category/13/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"/category/14/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"冒险\",\"url\":\"/category/15/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"/category/16/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"架空\",\"url\":\"/category/17/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑\",\"url\":\"/category/18/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖\",\"url\":\"/category/19/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"励志\",\"url\":\"/category/20/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"/category/21/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"/category/22/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他\",\"url\":\"/category/23/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"真人\",\"url\":\"/category/24/page/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; en-us; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 1744443621514,
    "respondTime": 1280,
    "ruleBookInfo": {
      "author": ".detail-main-info-author@text",
      "coverUrl": "img@data-original",
      "intro": ".detail-main-info-description@text",
      "kind": ".detail-main-info-class@span@text&&#detail-list-title@span@text",
      "lastChapter": "#detail-list-select@li.0@text",
      "name": ".detail-main-info-title@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "#cp_img@img@html",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": ".manga-list-2@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "p@text",
      "name": "h4@text##.*item.name.*"
    },
    "ruleSearch": {
      "author": ".book-list-info-bottom-item@text",
      "bookList": ".book-list@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-original",
      "intro": ".book-list-info-desc@text",
      "kind": ".book-list-info-bottom-right-font@text",
      "name": "h2@text"
    },
    "ruleToc": {
      "chapterList": "#detail-list-select@li[-1:0]",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "https://www.patternrecognition.cn/search/{{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "//5.16@ys4568",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨Xpicvid",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.acgbay.com",
    "customButton": false,
    "customOrder": 866,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"日漫\",\"url\":\"{{URL()}}/listinfo-14-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"韩漫\",\"url\":\"{{URL()}}/listinfo-15-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"本子\",\"url\":\"{{URL()}}/listinfo-3-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"CG\",\"url\":\"{{URL()}}/listinfo-2-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"COS\",\"url\":\"{{URL()}}/listinfo-1-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"套图\",\"url\":\"{{URL()}}/listinfo-4-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"最新\",\"url\":\"{{URL()}}/listinfo-9-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "@js:\nJSON.stringify({\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 11; PCHM30 Build/RKQ1.200903.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Mobile Safari/537.36\",\n  \"Referer\": URL(),\n  \"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "jsLib": "var Url = [\n  \"https://www.freeacg.org\",\n  \"https://www.freeacg3.org\",\n  \"https://www.acgbay.com\"\n]\n   \nfunction URL() {\t\n\t let v = String(this.source.getVariable()).split(\",\");\n   let x = String(v[0]);\n   return Url[x]===undefined?this.source.key:Url[x]\n}",
    "lastUpdateTime": 1777917474895,
    "loginUi": "[ { \"name\":\"当前接口\",\n     \"type\":\"button\",\n     \"action\":\"A()\",\n     \"style\":{\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n     }\n  \t},\n  \t{ \"name\":\"发布页\",\n     \"type\":\"button\",\n     \"action\":\"C()\",\n     \"style\":{\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.4\n     }\n  \t},\n  \t{ \"name\":\"接口一\",\n     \"type\":\"button\",\n     \"action\":\"B(0)\",\n     \"style\":{\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n     }\n  \t},\n  \t{ \"name\":\"接口二\",\n     \"type\":\"button\",\n     \"action\":\"B(1)\",\n     \"style\":{\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n     }\n  \t},\n  \t{ \"name\":\"接口三\",\n     \"type\":\"button\",\n     \"action\":\"B(2)\",\n     \"style\":{\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 0.25\n     }\n  \t}\n]",
    "loginUrl": "A = () =>{\n\t let v = String(source.getVariable()).split(\",\");\n    x=v[0];\n\t  if(x == 0) {\n\t  \t  java.toast('\\n'+URL())\n\t  \t}\n\t  \tif(x == 1) {\n\t  \t  java.toast('\\n'+URL())\n\t  \t}\n\t  \tif(x == 2) {\n\t  \t  java.toast('\\n'+URL())\n\t  \t}\n}\n\nB = (x) =>{\n\tlet v = String(source.getVariable()).split(\",\");\n\t v[0]=x;\n\tsource.setVariable(v.join(\",\"));\n\t  if(x === 0){\n\t   \tjava.toast('\\n'+'成功设置 '+URL());\n\t  \t}\n\t  \tif(x === 1){\n\t   \tjava.toast('\\n'+'成功设置 '+URL());\n\t  \t}\n\t  \tif(x === 2){\n\t   \tjava.toast('\\n'+'成功设置 '+URL());\n\t  \t}\n}\n\nC = () =>{\n  java.startBrowser(\"https://02.uno\",\"\")\n}",
    "respondTime": 8716,
    "ruleBookInfo": {
      "intro": "&nbsp;\n🏷️ 标签：{{String(java.get(\"tag\")).replace(/\\s/g,'，')}}\n{{let intro=String(java.getString('#intro-block [class^=\"p-t-5\"]@text'));intro=\"\"?null:intro.replace(/(敘述：\\s?)/,'📄 简介：')}}"
    },
    "ruleContent": {
      "content": "@js:\tpics=java.getString('[class$=albums]@img@data-src');\n    let hd=JSON.stringify({\"headers\":{\"Referer\":URL()}});\n    let p=String(pics).split(\"\\n\").map(i=>`<img src=\"${i},${hd}\">`).join(\"\\n\");\n    p;",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".title-truncate.1@a@text",
      "bookList": ".list-col",
      "bookUrl": "a.0@href",
      "checkKeyWord": "kakao",
      "coverUrl": "img@data-src##$##,{\"webView\":true}",
      "kind": "@js: \n   let tag=String(java.getString('.tag@text'))\n   java.put(\"tag\",tag)\n   let kind=java.getString('.label-sub@text')\n   kind;",
      "name": ".video-title@text"
    },
    "ruleToc": {
      "chapterList": "-.btn-toolbar@a||.read-block.0@a",
      "chapterName": "textNodes||li@textNodes",
      "chapterUrl": "href##$##,{\"webView\":true}"
    },
    "searchUrl": "@js:\n   let u=URL()+\"/e/search/index.php\" bd=\"keyboard=\"+key+\"&Submit=&classid=9&show=title,text,keyboard,ftitle\"\n   let lo=String(java.post(u,bd,{}).headers(\"Location\")).replace(/\\[(.*?)\\]/,'$1')\n   //java.log(lo)\n   URL()+\"/e/search/\"+lo;",
    "weight": 0
  },
  {
    "bookSourceComment": "2025/5/13\nby天天的鸟蛋蛋 \n2025/10/2 辞&柚屿&小寒&另一个书友圈 技术指导 CJ’sPig算法提供 天天的鸟蛋蛋 解密\n2025/10/29 库存 合并方法jslib ",
    "bookSourceGroup": "漫画",
    "bookSourceName": "（favcomic）喜漫漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.favcomic.net",
    "coverDecodeJs": "decode(result);",
    "customButton": false,
    "customOrder": 867,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Mobile Safari/537.36 EdgA/137.0.0.0\",\n  \"accept-language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,zh-TW;q=0.6,zh-HK;q=0.5\"\n}",
    "jsLib": "\n;(function CW(Uc,Uu,GG,Ce,ee,iC,OX,cG,Xf,u,el){function HX(ci,Kc){var Kb=ci^Kc,CU=Uu[Kb],KG=66666-Kb,WH=[],Ob=el[KG];if(Ob!==\\u0075\\u006e\\u0064\\u0065\\u0066\\u0069\\u006e\\u0065\\u0064)return Ob;for(var Wl=0;Wl<CU.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068;)OX(WH,CU[Wl]-Wl++-Kc);return el[KG]=Xf(WH)}(function Ui(e,uu,cb,eG,Hb){uu=uu||[],cb=cb||[],eG=eG||[];for(var uf=cb.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068,Wu,cH;cH=Uc[e++];)if(cH<30){if(cH>22)25>cH?23<cH?cb[++uf+cH++-26]=new(Ce(cb[uf-- -2])):u(cb[(uf+=24)+cH-50],cb[++uf+cH-50],{\\u0067\\u0065\\u0074:cb[(uf-=28)+2],\\u0063\\u006f\\u006e\\u0066\\u0069\\u0067\\u0075\\u0072\\u0061\\u0062\\u006c\\u0065:!0,\\u0065\\u006e\\u0075\\u006d\\u0065\\u0072\\u0061\\u0062\\u006c\\u0065:!0}):cH-->26?cH>27?cb[++uf+cH-- -29]=\\u006b\\u0065\\u0079:cH--<27?cb[uf-cH--+17]=function(lH,fe,eH,ic,eU,Cc,Wc,iU){var Ki=cG(eG,[uu]);return function XG(){var Ub=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068>fe.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068?fe.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068:\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068,Oe=[];for(var Wl=0;Wl<Ub;Wl++)Oe[fe[Wl]]=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073[Wl];return Cc&&(Oe[ic]=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073),eH&&(Oe[iU]=this),Wc&&u(Oe,eU,{\\u0076\\u0061\\u006c\\u0075\\u0065:XG,\\u0077\\u0072\\u0069\\u0074\\u0061\\u0062\\u006c\\u0065:!1}),Ui(lH,Oe,[],Ki)}}(cb[--uf-cH++ +17],cb[uf- --cH+18],cb[--uf-2],cb[uf-cH+21],cb[(uf+=126)-++cH-100],cb[--uf+cH-154],cb[--uf-124],cb[(uf-=129)-++cH+30]):cb[uf++-cH+26]=uu[Uc[e++]^- --cH+64097+e]:cH<25?cb[uf++ +cH-- -24]=Uc[e++]-(cH--+9507+e):cb[++uf-++cH+25]=Uc[e++]^cH--+22412+e;else if(9>cH)7<cH?cb[(uf+=--cH)-8]=\\u006b\\u0065\\u0079=cb[(uf-=7)-cH++ +6]:5<cH?6>--cH?cb[uf--+1]=Uc[cb[(uf+=3)+--cH-6]=Uc[e++]-(-cH--+56238+e),e++]-(cH--+35935+e):cb[uf--+cH-- -8]=ee(cb[++uf+cH-- -6],[cb[--uf-1]])(HX(Uc[e++]^-cH++ +31821+e,Uc[e++]^cH+48187+e)):4<++cH?5<cH?cb[++uf-++cH+6]=Uu[Uc[e++]^- --cH+e]:\\u004f\\u0062\\u006a\\u0065\\u0063\\u0074.\\u006b\\u0065\\u0079\\u0073(cb[uf--+--cH-7]).\\u006d\\u0061\\u0070(function(e){cb[uf].\\u0069\\u006e\\u0064\\u0065\\u0078\\u004f\\u0066(e)<0&&(cb[uf-1][e]=cb[uf-2][e])}):cH++<3?cb[uf++ +--cH-2]=null:cH>4?cb[uf++- --cH+4]={}[[]]:cb[++uf+cH-- -8]=ee(cb[uf-- -cH++],[cb[(uf-=89)+86]])(cb[(uf+=87)+cH++-3]);else if(16>cH)11>cH?++cH>10?cb[(uf-=21)+19]=iC(cb[++uf-cH++ +30],cb[(uf+=19)+cH-13])()():cb[uf++ +cH++-10]=-(Uc[e++]-(--cH+11319+e)):cH>12?14>cH?cb[(uf-=87)+85]=uu[cb[uf+cH+72]]=cb[(uf+=86)+ ++cH-14]:cH++>14?cb[uf-2]+=cb[uf--+cH-17]:cb[++uf+ ++cH-17]=Uu[Uc[e++]^--cH+e]:cH++>11?cb[++uf+ ++cH-20]=iC(cb[--uf-++cH+11],cb[--uf-++cH+12],cb[--uf+ ++cH-18],cb[(uf+=cH--)-17])()(uu[cb[(uf-=19)-cH--+19]]):cb[uf+cH-14]=cb[(uf-=cH--)+10]>=cb[uf+=11];else if(cH<18)cH<17?cb[++uf+ ++cH-18]=\\u0064\\u0065\\u0063\\u006f\\u0064\\u0065\\u0053\\u0069\\u006d\\u0070\\u006c\\u0065:cb[++uf-cH+16]=HX(Uc[e++]^-cH+24378+e,Uc[e++]^-++cH+33637+e);else if(18>--cH)cb[uf++-1]=uu[cb[--uf+cH++-18]];else if(18<cH){if(cH-->20)cb[(uf+=108)-++cH-87]=cb[(uf-=107)-cH--+19];else if(19>cH)cb[(uf+=85)-cH-- -69]=iC(cb[(uf+=88)-174],cb[(uf-=174)+ ++cH-19])(Uc[e++]-(cH++ +60417+e))();else return cb[--uf+cH-19];}else cb[uf++-cH+18]=\\u0049\\u006e\\u0070\\u0075\\u0074\\u0053\\u0074\\u0072\\u0065\\u0061\\u006d;}else if(cH<58){if(cH>51)cH<54?cH<53?uu[cb[uf-2]]=cb[(uf-=2)-cH--+53]:cb[uf+cH-55]=Ce(cb[(uf-=--cH)+51],cb[(uf+=51)+cH-- -53],HX(Uc[e++]^-cH++ +52286+e,Uc[e++]^-cH+32645+e))():54<--cH?cH<56?cb[uf-- -3]=iC(cb[(uf+=--cH)-55])(cb[uf-- -cH-2],cb[(uf-=54)- --cH+54])():cb[uf++ + ++cH-57]=void 0:53<cH?cb[uf++ +cH-54]=\\u0063:cb[uf++-8]=function(eU,fe,ic,Cc,lH,eH,Wc,iU){var Ki=cG(eG,[uu]);return function XG(){var Ub=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068>fe.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068?fe.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068:\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068,Oe=[];for(var Wl=0;Wl<Ub;Wl++)Oe[fe[Wl]]=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073[Wl];return Cc&&(Oe[ic]=\\u0061\\u0072\\u0067\\u0075\\u006d\\u0065\\u006e\\u0074\\u0073),eH&&(Oe[iU]=this),Wc&&u(Oe,eU,{\\u0076\\u0061\\u006c\\u0075\\u0065:XG,\\u0077\\u0072\\u0069\\u0074\\u0061\\u0062\\u006c\\u0065:!1}),Ui(lH,Oe,[],Ki)}}(cb[uf-- -cH++ +51],cb[++uf-8],cb[uf++ +cH++-60],cb[++uf-9],cb[uf-11],cb[(uf-=++cH)+49],cb[(uf-=15)-cH++ +122],cb[(uf+=61)-cH--+61]);else if(cH<38)33>cH?cH++>31?cb[--uf-++cH+33]=uu[cb[uf++ +cH-35]]=uu[cb[uf--+cH-35]]:31<cH?--uf:cb[uf++-cH--+31]=\\u0061:cH++<35?35>cH?cb[uf-- -3][cb[(uf-=cH++)+33]]=cb[(uf+=32)+--cH-32]:cb[e++,--uf]||(e=Uc[--e]^--cH+34275+ ++e):cH>37?cb[e++,--uf]||(e=Uc[--e]^-cH++ +3153+ ++e):37>cH?cb[uf++ +cH-36]=Uc[e++]^++cH+31327+e:cb[--uf-cH+36]=cb[uf--+cH-38][cb[++uf-cH--+37]]=Uc[e++]-(-++cH+22502+e);else if(45>cH)++cH<41?cH>39?uf--:cb[uf--+cH++-40]=\\u0064\\u0065\\u0063\\u006f\\u0064\\u0065\\u0053\\u0069\\u006d\\u0070\\u006c\\u0065=cb[uf++-cH--+40]:cH>42?44>cH?cb[(uf+=104)- --cH-64]=cb[(uf-=++cH)-63]===cb[(uf-=62)+cH++-43]:cH<45?cb[--uf+cH-- -44]=\\u0061=cb[++uf-1]:cb[uf++ +cH-45]=null:41<cH?cb[(uf+=107)+ ++cH-152]=delete cb[++uf+cH++-153][cb[(uf-=109)-cH+44]]:e=Uc[Wu=e,e++]^cH+54069+e;else if(cH<47){if(cH<46)cb[++uf-cH+45]=Uc[cb[++uf+--cH-46]=HX(Uc[e++]^47817+e,Uc[e++]^41303+e),e++]-(cH--+37253+e);else return Hb.\\u0048\\u0065=0;}else--cH>47?49>cH?cb[uf++-cH+48]=\\u0050\\u0061\\u0063\\u006b\\u0061\\u0067\\u0065\\u0073:cH>49?cb[++uf-3]=cb[(uf-=72)-cH--+119][cb[uf+=70]]:cb[uf++ +cH-- -51]=cb[uf--+cH++-51]instanceof cb[--uf]:cH<47?cb[++uf-cH+44]=\\u0063=cb[uf-- - --cH+43]:cb[++uf-cH--+46]=Uc[e++]-(- --cH+e);}else if(++cH<87){if(cH>80)cH<83?81>--cH?cb[uf++-++cH+80]=\\u0062=cb[uf--+cH-83]:cb[uf++-1]=\\u0064\\u0065\\u0063\\u006f\\u0064\\u0065=cb[uf-- -++cH+80]:83<--cH?84<cH++?cb[(uf+=91)+ ++cH-180]+=cb[(uf-=92)-cH++ +87]:cb[++uf- --cH+83]=\\u0042\\u0079\\u0074\\u0065\\u0041\\u0072\\u0072\\u0061\\u0079\\u004f\\u0075\\u0074\\u0070\\u0075\\u0074\\u0053\\u0074\\u0072\\u0065\\u0061\\u006d:82<cH?cb.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068=--uf-++cH+85:cb[(uf-=cH--)+81]=uu[cb[(uf+=82)-cH+80]];else if(73<cH)77<cH--?78>cH?cb[uf++-cH+76]=+cb[--uf-++cH+77]:78<cH?cb[(uf-=cH--)+75]=Ce(cb[uf--+cH-- -2],cb[(uf-=++cH)+154],cb[uf-cH--+234]-cb[(uf+=155)- --cH+78])():cb[cb[++uf-cH+77]=[],(uf-=++cH)+79]=cb[(uf+=80)-cH++ +77]:--cH<74?cH>72?cb[uf++ +--cH-72]=!{}:cb[uf++ +cH-74]=cb[uf--+--cH-74][cb[uf-- - --cH+69]]:cH>74?eG[eG.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068-cb[++uf+cH++-77]][cb[(uf-=cH)+73]]=cb[uf--+cH-5].\\u0073\\u006c\\u0069\\u0063\\u0065(cb[(uf-=++cH)+150],cb[(uf+=149)-cH+77].\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068):cb[(uf+=55)-55]=cb[(uf-=54)+ ++cH-77];else if(66<cH){if(cH<69)68>cH?cb[--uf-2]=iC(cb[uf- --cH+65],cb[(uf+=81)+cH-- -149],cb[(uf-=82)+cH++-64])()(Uc[e++]-(--cH+34674+e)):cb[uf++- --cH+66]=cb[--uf-cH--+66][HX(Uc[e++]^-cH--+4982+e,Uc[e++]^cH--+4778+e)];else if(70>cH)e=Uc[Wu=e,e++]^-++cH+3372+e;else if(cH<71)cb[uf--+cH-- -70]=cb[(uf+=2)-++cH+67];else if(cH>72)cb[uf-cH+72]=\\u006b\\u0065\\u0079=cb[uf+cH-74];else if(cH<72)try{var eQ=cb[--uf-cH+68],cK=cb[--uf+cH-- -72],ef=cb[(uf-=cH)+70],fU=cb[(uf+=68)+--cH-66],eC={\\u0048\\u0065:1},Ob=Ui(e,uu,[],eG,eC);if(eC.\\u0048\\u0065)return Ob;if(eC.\\u0051!==void 0)if(eQ=eC.\\u0051,eC.\\u0066\\u0075>1)return Hb.\\u0051=eQ,Hb.\\u0066\\u0075=--eC.\\u0066\\u0075,Hb.\\u0048\\u0065=0}catch(HH){uu[fU]=HH,eC={\\u0048\\u0065:1},Ob=Ui(cK,uu,[],eG,eC);if(eC.\\u0048\\u0065)return Ob;if(eC.\\u0051!==\\u0075\\u006e\\u0064\\u0065\\u0066\\u0069\\u006e\\u0065\\u0064)if(eQ=eC.\\u0051,eC.\\u0066\\u0075>1)return Hb.\\u0051=eQ,Hb.\\u0066\\u0075=--eC.\\u0066\\u0075,Hb.\\u0048\\u0065=0}finally{eC={\\u0048\\u0065:1},Ob=Ui(ef,uu,[],eG,eC);if(eC.\\u0048\\u0065)return Hb&&(Hb.\\u0048\\u0065=1),Ob;if(eC.\\u0051!==\\u0075\\u006e\\u0064\\u0065\\u0066\\u0069\\u006e\\u0065\\u0064){if(eQ=eC.\\u0051,eC.\\u0066\\u0075>1)return Hb.\\u0051=eQ,Hb.\\u0066\\u0075=--eC.\\u0066\\u0075,Hb.\\u0048\\u0065=0;return Ui(eQ,uu,[],eG)}e=eQ}else cb[(uf+=89)-91]=uu[cb[uf-- -cH++-19]]=cb[(uf-=89)-cH--+73];}else cH>65?cb[uf++ +--cH-68]=eG[eG.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068-cb[uf+cH-- -68]][cb[++uf-5]]=cb[(uf-=4)+cH-63]:62>cH?60>cH?cb[uf+--cH-60]=cb[uf++-cH++ +56][cb[(uf-=2)-cH+59]]=Uc[e++]-(- --cH+9863+e):cH<61?cb[(uf+=--cH)-60]=\\u0049\\u006e\\u0070\\u0075\\u0074\\u0053\\u0074\\u0072\\u0065\\u0061\\u006d=cb[(uf-=59)+ ++cH-61]:cb[uf++ +cH++-61]=HX(Uc[e++]^-cH--+e,Uc[e++]^-cH+e):++cH<65?63<cH?cb[--uf-cH--+63]=cb[uf-- -1].\\u0073\\u006c\\u0069\\u0063\\u0065(cb[uf++ +1],cb[uf-++cH+63].\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068):cb[uf- --cH+61]=-cb[uf- --cH+60]:--cH>64?cb[uf++-cH++ +65]=uu[Uc[e++]^++cH+15739+e]:uu[cb[++uf+cH++-66]]=cb[uf+ ++cH-70].\\u0073\\u006c\\u0069\\u0063\\u0065(cb[++uf- --cH+61],cb[uf-=5].\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068);}else cH>105?112<cH?uu[cb[(uf+=115)-++cH-3]]=cb[(uf-=117)+cH-- -113]:cH<109?107<cH?uu[cb[uf-- - --cH+106]]=cb[++uf+ ++cH-111].\\u0073\\u006c\\u0069\\u0063\\u0065(cb[uf-++cH+107],cb[(uf-=3)-cH--+109].\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068):106<cH?cb[uf++-cH++ +107]=Uu[Uc[e++]^-cH--+e]:cb[uf-cH--+106]=cb[++uf-cH+102]:cH--<111?107<--cH?cb[(uf-=3)-cH+107]=iC(cb[(uf-=cH++)+108],cb[++uf+ ++cH-4])(cb[(uf-=--cH)+217],cb[(uf+=216)-cH+111])():cb[uf--+--cH-108]=cb[uf--+cH-- -107]>cb[++uf+cH++-105]:111>cH?cb[uf+cH-- -113]=iC(cb[++uf+ ++cH-113],cb[uf++-cH--+106])()(cb[(uf-=4)-cH+110]):cb[uf++-cH+111]=GG:--cH>98?102<cH?104>cH?cb[uf++ +--cH-105]=eG[eG.\\u006c\\u0065\\u006e\\u0067\\u0074\\u0068-cb[uf+cH-- -104]][cb[++uf+cH-105]]=cb[(uf-=4)-1]:cb[(uf+=18)+cH-124]=cb[--uf+--cH-122]!==cb[(uf-=18)-cH++ +103]:101<cH?cb.\\u0073\\u0070\\u006c\\u0069\\u0063\\u0065(uf+ ++cH-106,0,cb[uf++ +cH-- -104]):++cH>101?cb[uf++ +--cH-101]=\\u0062:100<cH?cb[uf--+cH++-102]=\\u0042\\u0079\\u0074\\u0065\\u0041\\u0072\\u0072\\u0061\\u0079\\u004f\\u0075\\u0074\\u0070\\u0075\\u0074\\u0053\\u0074\\u0072\\u0065\\u0061\\u006d=cb[++uf-1]:cb[(uf-=++cH)+97]=ee(cb[uf++ +cH-- -3],[cb[uf++- --cH+195]])(cb[uf-- -cH+196],cb[(uf+=97)-cH--+101]):cH-->92?cH<94?cH>92?cb[uf++]=!1:cb.\\u0073\\u0070\\u006c\\u0069\\u0063\\u0065(uf-cH--+89,0,cb[++uf-cH--+89]):95>cH?cb[uf++ + ++cH-95]=\\u0053\\u0074\\u0072\\u0069\\u006e\\u0067:cH<96?cb[uf++-cH--+95]=[]:cH>96?cb[++uf- --cH+93]=cb[++uf-cH++ +92]!=cb[(uf-=3)+cH++-97]:cb[uf++-cH--+96]=Uc[e++]^+e:cH<87?84<--cH?cb[uf++-++cH+83]=Ce(cb[uf++ +cH-89],cb[uf-5],uu[cb[(uf-=4)+1]])():cb[--uf+cH++-86]=iC(cb[(uf+=cH)-86])(cb[(uf-=cH++)-2],cb[--uf+ ++cH-86],HX(Uc[e++]^-cH--+65324+e,Uc[e++]^cH++ +52344+e))():88<cH?cH-->90?cb[--uf-2]=new(ee(cb[(uf+=cH)-92],[null,cb[uf-91],cb[(uf-=91)+1]])):cH<89?cb[uf-- -cH++ +86]=delete cb[--uf- --cH+88][cb[++uf]]:cb[(uf-=cH)+87]|=cb[(uf+=88)+cH++-89]:cH<88?cb[++uf-7]=new cb[(uf+=cH--)-94](cb[uf-- -++cH-6],cb[uf-cH-4],cb[(uf-=113)+cH++-64],cb[++uf-++cH+112],cb[(uf+=20)+--cH-84]):cb[(uf-=96)-cH--+182]=new(Ce(cb[--uf+cH--+8],null,cb[(uf+=96)+cH-86]))})(327)})([1,21,46,46,40,54212,39,6,56249,35949,18,40,53779,35,31420,78,25,9548,40,54002,6,56256,35961,25,9555,68,3369,6,56264,35977,82,68,3172,16,53,27821,57329,80,40,54090,6,56276,35981,54,38,68,3262,28,64122,75,17,62368,12133,40,53809,73,67,36521,36576,17,33190,23891,40,53998,79,21,56,75,40,54042,28,64158,22,17,39575,18038,68,3532,67,40506,40578,17,49851,7777,40,54110,73,10,13,9,11421,68,3276,34,34771,25,9636,84,40,54054,83,28,64162,21,46,40,54217,73,25,9646,87,71,68,3388,52,6,56363,36057,40,53824,6,56356,36061,27,81,68,3432,56,112,6,56378,36084,40,53944,6,56370,36076,25,9672,40,54163,56,21,21,35,31670,26,22586,35,31513,40,54126,25,9686,70,6,56405,36099,40,53829,21,40,54414,40,54316,45,59531,61962,37471,18,68,3205,57,43,83,1,16,17,40854,17481,40,54563,56,47,3,72,39,30,68,3242,67,40375,40442,17,38249,20099,68,3361,78,6,56435,36147,40,54592,3,47,39,1,16,17,56204,81,40,54402,25,9746,66,34973,13,68,3525,67,58398,58324,26,22805,68,3340,24,52,25,9769,40,54606,73,67,16092,14631,59,68,3451,58,10056,83,25,9776,40,54480,73,29,86,57646,54079,68,3479,39,64,16072,19,50,40,54329,28,64344,75,17,54079,14163,68,3490,101,85,55,85,8,40,54482,68,3437,25,9823,12,22,17,56888,14848,68,3693,25,9821,27,68,3657,68,3984,51,64,16111,75,17,21151,46684,40,54747,18,75,67,29684,29620,68,3874,2,43,3,80,39,1,68,3588,25,9858,87,83,68,3789,40,54462,26,22655,78,25,9862,40,54365,6,56570,36275,25,9869,68,3867,51,20,60779,25,9877,68,3586,82,22,67,24717,24664,40,54372,22,67,38638,38447,10,40,54652,33,6,56599,36304,40,54656,73,100,3,59,39,49,68,3600,22,67,12458,12398,25,9928,68,3609,36,22854,83,25,9919,68,3705,25,9931,32,39,25,9932,40,54443,98,37,3494,25,9943,68,3916,18,75,67,12491,12431,40,54317,95,75,17,58316,2016,68,4013,73,7,46965,30588,22,40,54740,3,100,39,49,17,60772,2235,40,54565,112,40,54430,25,9972,40,54430,18,67,39244,39188,13,40,54751],[[36392,36384,36406,36386],[40495,40502],[57092,57148,57144,57130,57095,57145,57146,57130,57155,57114,57153,57153,57150,57156,57156,57124,57158,57157,57145,57142,57155],[11079,11117,11120,11126,11126,11094,11128,11127,11115,11112,11125],[49285,49320,49276,49332,49289],[41142,41166,41160,41197,41215,41189],[34009,34037,33956,33975,33993],[45950,45938,45935,45939],[26635,26631,26623,26635,26621],[33521,33517,33473,33529,33525,33511,33476,33526,33527,33511,33536],[50780,50782,50781,50752,50780,50736,50792,50788,50774,50789],[8009,8009,7996,7972,7984],[9340,9334,9332,9327,9330],[29815,29831,29819,29816,29836,29822,29805,29844,29833,29834,29827,29843,29842,29834,29829,29798,29846,29854,29846,29851,29847],[21558,21563,21578,21543,21564,21564,21566,21547,21581,21577,21570,21587,21558,21586,21604,21608,21609,21615,21621,21615],[48853,48855,48854,48870,48878,48870,48875],[44384,44382,44379,44377,44389],[],[61580,61569,61585],[33659,33672,33670,33669,33628,33666,33660,33678,33632,33677,33667,33669],[13120,13126,13120,13138,13092,13137,13127,13129,13094,13146],[36544,36550,36545,36551]],function(){return typeof \\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073===\"undefined\"&&(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073=typeof \\u0077\\u0069\\u006e\\u0064\\u006f\\u0077===\"undefined\"?typeof \\u0067\\u006c\\u006f\\u0062\\u0061\\u006c!==\"undefined\"?\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c:this:\\u0077\\u0069\\u006e\\u0064\\u006f\\u0077),typeof \\u0065\\u0078\\u0070\\u006f\\u0072\\u0074\\u0073===\"undefined\"||(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073.\\u0065\\u0078\\u0070\\u006f\\u0072\\u0074\\u0073=\\u0065\\u0078\\u0070\\u006f\\u0072\\u0074\\u0073),typeof \\u0072\\u0065\\u0071\\u0075\\u0069\\u0072\\u0065===\"undefined\"||(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073.\\u0072\\u0065\\u0071\\u0075\\u0069\\u0072\\u0065=\\u0072\\u0065\\u0071\\u0075\\u0069\\u0072\\u0065),typeof \\u006d\\u006f\\u0064\\u0075\\u006c\\u0065===\"undefined\"||(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073.\\u006d\\u006f\\u0064\\u0075\\u006c\\u0065=\\u006d\\u006f\\u0064\\u0075\\u006c\\u0065),typeof \\u005f\\u005f\\u0066\\u0069\\u006c\\u0065\\u006e\\u0061\\u006d\\u0065===\"undefined\"||(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073.\\u005f\\u005f\\u0066\\u0069\\u006c\\u0065\\u006e\\u0061\\u006d\\u0065=\\u005f\\u005f\\u0066\\u0069\\u006c\\u0065\\u006e\\u0061\\u006d\\u0065),typeof \\u005f\\u005f\\u0064\\u0069\\u0072\\u006e\\u0061\\u006d\\u0065===\"undefined\"||(\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073.\\u005f\\u005f\\u0064\\u0069\\u0072\\u006e\\u0061\\u006d\\u0065=\\u005f\\u005f\\u0064\\u0069\\u0072\\u006e\\u0061\\u006d\\u0065),\\u0067\\u006c\\u006f\\u0062\\u0061\\u006c\\u0054\\u0068\\u0069\\u0073}(),\\u004f\\u0062\\u006a\\u0065\\u0063\\u0074.\\u0063\\u0061\\u006c\\u006c.\\u0062\\u0069\\u006e\\u0064(\\u0041\\u0072\\u0072\\u0061\\u0079.\\u0062\\u0069\\u006e\\u0064),\\u0041\\u0072\\u0072\\u0061\\u0079.\\u0061\\u0070\\u0070\\u006c\\u0079.\\u0062\\u0069\\u006e\\u0064(\\u004e\\u0075\\u006d\\u0062\\u0065\\u0072.\\u0062\\u0069\\u006e\\u0064),\\u004e\\u0075\\u006d\\u0062\\u0065\\u0072.\\u0062\\u0069\\u006e\\u0064.\\u0062\\u0069\\u006e\\u0064(\\u004f\\u0062\\u006a\\u0065\\u0063\\u0074.\\u0062\\u0069\\u006e\\u0064),\\u004f\\u0062\\u006a\\u0065\\u0063\\u0074.\\u0063\\u0061\\u006c\\u006c.\\u0062\\u0069\\u006e\\u0064([].\\u0070\\u0075\\u0073\\u0068),\\u0041\\u0072\\u0072\\u0061\\u0079.\\u0063\\u0061\\u006c\\u006c.\\u0062\\u0069\\u006e\\u0064([].\\u0063\\u006f\\u006e\\u0063\\u0061\\u0074),\\u004e\\u0075\\u006d\\u0062\\u0065\\u0072.\\u0061\\u0070\\u0070\\u006c\\u0079.\\u0062\\u0069\\u006e\\u0064(\\u0053\\u0074\\u0072\\u0069\\u006e\\u0067.\\u0066\\u0072\\u006f\\u006d\\u0043\\u0068\\u0061\\u0072\\u0043\\u006f\\u0064\\u0065,null),\\u004f\\u0062\\u006a\\u0065\\u0063\\u0074.\\u0064\\u0065\\u0066\\u0069\\u006e\\u0065\\u0050\\u0072\\u006f\\u0070\\u0065\\u0072\\u0074\\u0079,[]);",
    "lastUpdateTime": 1778811270327,
    "loginUrl": "https://www.favcomic.net",
    "respondTime": 1747,
    "ruleBookInfo": {
      "author": ".author.0@a@text",
      "coverUrl": "[property$=image]@content",
      "intro": "<br>\n{{@@.translation_agency_box@text}}\n<br>\n简介：\n{{@@[property$=description]@content}}\n<br>",
      "name": ".info_box@h1@text"
    },
    "ruleContent": {
      "content": "<js>\nvar match = src.match(/\"images\":\\s*(\\[[^\\]]*?\\])/);\nvar data = [];\nif (match) {\n    var arrStr = match[1];\n    try {\n        \n        data = JSON.parse(arrStr.replace(/'/g, '\"'));\n    } catch (e) {\n        \n        data = eval(arrStr);\n    }\n}\nvar imgTags = data.map(item => `<img src=\"https://ccdeoo.ykxbo.cn/file/e-media/app${item}\">`).join('\\n');\nimgTags;\n</js>",
      "imageDecode": "decode(result);"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".txt@text",
      "bookList": ".comic_list@.comic_li",
      "bookUrl": "a@href",
      "coverUrl": ".cover_box@img@data-src",
      "kind": ".brief_box@img@alt",
      "name": "a@text"
    },
    "ruleToc": {
      "chapterList": ".right_box:nth-child(2)@a",
      "chapterName": ".title@text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.favcomic.net/search?keyword={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "$$",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🌠 神漫画网",
    "bookSourceType": 2,
    "bookSourceUrl": "https://m.taomanhua.com",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 868,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "每日更新::https://m.taomanhua.com/api/updatelist/?productname=smh&platformname=wap\n综合榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=all&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n自制榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=self&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n少年榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=boy&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n少女榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=girl&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n新作榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=new&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n黑马榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=dark&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n付费榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=charge&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n免费榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=free&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n完结榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=finish&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n连载榜::https://m.taomanhua.com/api/getRankDataForWeb/?product_id=2&isalldata=0&time_type=total&sort_type=serialize&rank_type=heat&page={{page}}&productname=smh&platformname=wap\n人气::https://m.taomanhua.com/api/getsortlist/?comic_sort=&orderby=click&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n更新::https://m.taomanhua.com/api/getsortlist/?comic_sort=&orderby=date&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n评分::https://m.taomanhua.com/api/getsortlist/?comic_sort=&orderby=score&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n收藏::https://m.taomanhua.com/api/getsortlist/?comic_sort=&orderby=shoucang&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n连载::https://m.taomanhua.com/api/getsortlist/?comic_sort=lianzai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n完结::https://m.taomanhua.com/api/getsortlist/?comic_sort=wanjie&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n热血::https://m.taomanhua.com/api/getsortlist/?comic_sort=rexue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n机战::https://m.taomanhua.com/api/getsortlist/?comic_sort=jizhan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n运动::https://m.taomanhua.com/api/getsortlist/?comic_sort=yundong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n推理::https://m.taomanhua.com/api/getsortlist/?comic_sort=tuili&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n冒险::https://m.taomanhua.com/api/getsortlist/?comic_sort=maoxian&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n耽美::https://m.taomanhua.com/api/getsortlist/?comic_sort=liaomei&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n百合::https://m.taomanhua.com/api/getsortlist/?comic_sort=baihe&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n搞笑::https://m.taomanhua.com/api/getsortlist/?comic_sort=gaoxiao&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n战争::https://m.taomanhua.com/api/getsortlist/?comic_sort=zhanzhen&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n神魔::https://m.taomanhua.com/api/getsortlist/?comic_sort=shenmo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n忍者::https://m.taomanhua.com/api/getsortlist/?comic_sort=renzhe&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n竞技::https://m.taomanhua.com/api/getsortlist/?comic_sort=jingji&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n悬疑::https://m.taomanhua.com/api/getsortlist/?comic_sort=xuanyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n社会::https://m.taomanhua.com/api/getsortlist/?comic_sort=shehui&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n恋爱::https://m.taomanhua.com/api/getsortlist/?comic_sort=lianai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n宠物::https://m.taomanhua.com/api/getsortlist/?comic_sort=chongwu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n吸血::https://m.taomanhua.com/api/getsortlist/?comic_sort=xixue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n萝莉::https://m.taomanhua.com/api/getsortlist/?comic_sort=luoli&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n后宫::https://m.taomanhua.com/api/getsortlist/?comic_sort=hougong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n御姐::https://m.taomanhua.com/api/getsortlist/?comic_sort=yujie&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n霸总::https://m.taomanhua.com/api/getsortlist/?comic_sort=bazong&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n玄幻::https://m.taomanhua.com/api/getsortlist/?comic_sort=xuanhuan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n古风::https://m.taomanhua.com/api/getsortlist/?comic_sort=gufeng&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n历史::https://m.taomanhua.com/api/getsortlist/?comic_sort=lishi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n漫改::https://m.taomanhua.com/api/getsortlist/?comic_sort=mangai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n游戏::https://m.taomanhua.com/api/getsortlist/?comic_sort=youxi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n穿越::https://m.taomanhua.com/api/getsortlist/?comic_sort=chuanyue&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n恐怖::https://m.taomanhua.com/api/getsortlist/?comic_sort=kongbu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n真人::https://m.taomanhua.com/api/getsortlist/?comic_sort=zhenren&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n防疫::https://m.taomanhua.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n防疫::https://m.taomanhua.com/api/getsortlist/?comic_sort=fangyi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n科幻::https://m.taomanhua.com/api/getsortlist/?comic_sort=kehuan&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n都市::https://m.taomanhua.com/api/getsortlist/?comic_sort=dushi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n武侠::https://m.taomanhua.com/api/getsortlist/?comic_sort=wuxia&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n修真::https://m.taomanhua.com/api/getsortlist/?comic_sort=xiuzhen&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n生活::https://m.taomanhua.com/api/getsortlist/?comic_sort=shenghuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n动作::https://m.taomanhua.com/api/getsortlist/?comic_sort=dongzuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n大陆::https://m.taomanhua.com/api/getsortlist/?comic_sort=dalu&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n日本::https://m.taomanhua.com/api/getsortlist/?comic_sort=riben&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n港台::https://m.taomanhua.com/api/getsortlist/?comic_sort=gangtai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n欧美::https://m.taomanhua.com/api/getsortlist/?comic_sort=oumei&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n韩国::https://m.taomanhua.com/api/getsortlist/?comic_sort=os&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n全彩::https://m.taomanhua.com/api/getsortlist/?comic_sort=quancai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n黑白::https://m.taomanhua.com/api/getsortlist/?comic_sort=heibai&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n小说::https://m.taomanhua.com/api/getsortlist/?comic_sort=xiaoshuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n杂志::https://m.taomanhua.com/api/getsortlist/?comic_sort=zazhi&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n日更::https://m.taomanhua.com/api/getsortlist/?comic_sort=rigeng&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n新作::https://m.taomanhua.com/api/getsortlist/?comic_sort=xinzuo&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap\n精品::https://m.taomanhua.com/api/getsortlist/?comic_sort=jingpin&orderby=&search_type=&search_key=&page={{page}}&size=30&productname=smh&platformname=wap",
    "lastUpdateTime": 1685708690122,
    "loginUrl": "",
    "respondTime": 660,
    "ruleBookInfo": {
      "author": "$.data.comic_author",
      "coverUrl": "$.data.cover_list[0]",
      "intro": "$.data.comic_desc",
      "kind": "$.data.comic_type_new[*].name",
      "lastChapter": "$.data.last_chaptet_name",
      "name": "$.data.comic_name"
    },
    "ruleContent": {
      "content": "<js>\n//获取章节位置\nindex=parseInt(chapter.index);\nindex=index+1;\nnum=parseInt(book.totalChapterNum);\nindex=num-index;\n\n//画质可选low middle high\nvar img_ext = \"-smh.middle.webp\";\nvar pic = \"https://mhpic.manhualang.com\"\nvar html =\"\";\n\njson=JSON.parse(result);\ncomic_chapter= json.data.comic_chapter;\n\nvar end_num  = comic_chapter[index].end_num;\nvar rule=comic_chapter[index].rule;\nchapter_domain=comic_chapter[index].chapter_domain;\n\nheader={\"Referer\":baseUrl};\nheaders={\"headers\":JSON.stringify(header)};\n\nfor( let i = 1;i <= end_num; i++) {\n   let url = pic  +rule.replace(/\\$\\$/g,i) +img_ext;\n   html += '<img src=\"' + url +','+JSON.stringify(headers)+'\">\\n';\n}\nresult = html\n</js>",
      "imageStyle": "FULL",
      "nextContentUrl": "",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "$.comic_author",
      "bookList": "$.data.update[*].info[*]||$.data.data[*]||$.data[*]",
      "bookUrl": "https://m.taomanhua.com/api/getcomicinfo_body/?comic_id={$.comic_id}&productname=smh&platformname=wap",
      "coverUrl": "http://image.mhxk.com/mh/{$.comic_id}.jpg-600x800.webp",
      "kind": "$.comic_type||$.sort_typelist##[a-zA-Z]|\\|",
      "lastChapter": "$.last_chapter_name||$.comic_chapter_name",
      "name": "$.comic_name",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "-$.data.comic_chapter.*",
      "chapterName": "$.chapter_name@put:{chapter_id:$.chapter_id}",
      "chapterUrl": "$.chapter_id@js:baseUrl+\"&chapter_id=\"+result"
    },
    "searchUrl": "https://m.taomanhua.com/api/getsortlist/?search_type=&search_key={{key}}&page={{page}}&size=30&productname=smh&platformname=wap",
    "weight": 0
  },
  {
    "bookSourceComment": "//2025.3.6@ys4568",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨必应漫画",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.biyingmh.com",
    "customButton": false,
    "customOrder": 869,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"韩国漫画\",\"url\":\"/category/list/1\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"少女漫画\",\"url\":\"/category/list/2\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"青年漫画\",\"url\":\"/category/list/3\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"日本漫画\",\"url\":\"/category/list/4\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"写真\",\"url\":\"/category/list/5\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新更新\",\"url\":\"/custom/update\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"漫画热榜\",\"url\":\"/custom/top\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "",
    "lastUpdateTime": 1741283833360,
    "respondTime": 3605,
    "ruleBookInfo": {
      "author": ".module-info-item-content.0@text",
      "coverUrl": "",
      "intro": ".module-info-introduction-content@text",
      "kind": ".module-info-tag-link@text&&.module-info-item-content.1@text&&.module-info-item.-1@text##\\：##\\:",
      "lastChapter": "",
      "name": "",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": ".img@img@html",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.module-poster-item module-item",
      "bookUrl": ".module-poster-item@href",
      "checkKeyWord": "姐姐",
      "coverUrl": ".lazyload@src",
      "lastChapter": ".module-item-note@text",
      "name": "class.module-poster-item-title@text##《备》"
    },
    "ruleToc": {
      "chapterList": ".module-play-list-link",
      "chapterName": ".module-play-list-link@span@text",
      "chapterUrl": ".module-play-list-link@href"
    },
    "searchUrl": "/search?key={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "漫画",
    "bookSourceName": "包子漫画（优）",
    "bookSourceType": 2,
    "bookSourceUrl": "https://cn.baozimhcn.com",
    "customButton": false,
    "customOrder": 871,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "<js>\nvar sort = [];\nvar push = function(title, url, type1, type2) {\n    sort.push({\n        title: title,\n        url: url,\n        style: {\n            layout_flexGrow: type1,\n            layout_flexBasisPercent: type2\n        }\n    });\n};\n\nvar typeNames = [\"全部\", \"恋爱\", \"纯爱\", \"古风\", \"异能\", \"悬疑\", \"剧情\", \"科幻\", \"奇幻\", \"玄幻\", \"穿越\", \"冒险\", \"推理\", \"武侠\", \"格斗\", \"战争\", \"热血\", \"搞笑\", \"大女主\", \"都市\", \"总裁\", \"后宫\", \"日常\", \"韩漫\", \"少年\", \"其它\"];\nvar types = [\"all\",\"lianai\",\"chunai\",\"gufeng\",\"yineng\",\"xuanyi\",\"juqing\",\"kehuan\",\"qihuan\",\"xuanhuan\",\"chuanyue\",\"mouxian\",\"tuili\",\"wuxia\",\"gedou\",\"zhanzheng\",\"rexie\",\"gaoxiao\",\"danuzhu\",\"dushi\",\"zongcai\",\"hougong\",\"richang\",\"hanman\",\"shaonian\",\"qita\"];\n\ntypeNames.forEach(function(item, index) {\n    var url = \"https://cn.baozimhcn.com/api/bzmhq/amp_comic_list?type=\" + types[index] + \"&region=all&filter=&page={{page}}&limit=36&language=cn&__amp_source_origin=https%3A%2F%2Fcn.baozimhcn.com\";\n    push(item, url, 1, 0.25);\n});\nJSON.stringify(sort)\n</js>",
    "header": "@js:\nJSON.stringify({\n\"Accept-Language\": \"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"\n})",
    "lastUpdateTime": 1759430460163,
    "respondTime": 2907,
    "ruleBookInfo": {
      "author": "class.comics-detail__author@text",
      "coverUrl": "tag.amp-img.0@src",
      "init": "<js>java.t2s(result)</js>",
      "intro": "class.comics-detail__desc overflow-hidden@text",
      "kind": "class.tag-list@text",
      "lastChapter": "class.comics-chapters__item.0@text",
      "name": "class.comics-detail__title@text",
      "tocUrl": "class.pure-u-1-1 pure-u-sm-1-2 pure-u-md-1-3 pure-u-lg-1-4 comics-chapters@tag.a@harf@class.comics-chapters__item@text"
    },
    "ruleContent": {
      "content": "@js:\nlet n =java.getElements('class.comic-contain@amp-img')\nlet c=[];\n    Array.from(n).forEach(x=>{\n    c.push({\n    link:x.attr('data-src')\n})    \n}) \nvar imgTags = c.map(item => `<img src=\"${item.link}\">`).join('\\n');\n    imgTags;",
      "imageStyle": "FULL",
      "title": "class.title"
    },
    "ruleExplore": {
      "author": "$.author",
      "bookList": "$.items[*]",
      "bookUrl": "https://cn.baozimhcn.com/comic/{{$.comic_id}}",
      "coverUrl": "https://static-tw.baozimhcn.com/cover/{{$.topic_img}}",
      "kind": "$.type_names",
      "name": "$.name"
    },
    "ruleSearch": {
      "author": "class.tags text-truncate@text",
      "bookList": "class.comics-card pure-u-1-2 pure-u-sm-1-2 pure-u-md-1-4 pure-u-lg-1-6",
      "bookUrl": "class.comics-card pure-u-1-2 pure-u-sm-1-2 pure-u-md-1-4 pure-u-lg-1-6@tag.a@href",
      "coverUrl": "tag.amp-img.0@src",
      "kind": "class.tabs cls@text",
      "lastChapter": "class.comics-chapters__item.0@text",
      "name": "class.comics-card__title text-truncate@text"
    },
    "ruleToc": {
      "chapterList": "<js>java.t2s(result)</js>\nclass.pure-u-1-1 pure-u-sm-1-2 pure-u-md-1-3 pure-u-lg-1-4 comics-chapters",
      "chapterName": "tag.span@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://cn.baozimhcn.com/search?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌠 漫畫狗网",
    "bookSourceType": 2,
    "bookSourceUrl": "https://dogemanga.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 872,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "热门排行::https://dogemanga.com/?s=0\n最新连载::https://dogemanga.com/?s=1",
    "header": "{\n    'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.102 Safari/537.36 Edg/104.0.1293.70'\n}",
    "lastUpdateTime": 1690921871825,
    "loginUrl": "https://dogemanga.com",
    "respondTime": 3291,
    "ruleBookInfo": {
      "author": "tag.h4@text",
      "init": "",
      "intro": ".site-card__brief@text",
      "kind": "class.text-muted@text@js:String(result).match(/連載完結|連載中/)",
      "lastChapter": "class.vstack.0@text",
      "name": ".site-navbar__title@text"
    },
    "ruleContent": {
      "content": "class.site-reader__image@data-page-image-url@js:\nlist=result.split(\"\\n\");\nhtml='';\nfor(i in list){\nhtml+='<img src=\"'+list[i]+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "tag.h6@text",
      "bookList": ".site-scroll__list@.col-12 ",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.p@text",
      "kind": "class.text-muted@text@js:String(result).match(/連載完結|連載中/)",
      "lastChapter": "class.list-group-item.0@text",
      "name": "tag.h5@text",
      "wordCount": "class.mb-2@tag.li.1@text##.*連載狀態：|最快更新："
    },
    "ruleToc": {
      "chapterList": "-class.site-selector@option!0",
      "chapterName": "text",
      "chapterUrl": "value"
    },
    "searchUrl": "https://dogemanga.com/?q={{key}}&o={{(page-1)*12}}",
    "weight": 0
  },
  {
    "bookSourceComment": "地址发布：freexcomic.com",
    "bookSourceGroup": "漫画",
    "bookSourceName": "🎨 韩国漫画",
    "bookSourceType": 2,
    "bookSourceUrl": "https://www.mxs12.cc",
    "customButton": false,
    "customOrder": 875,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全   部\",\"url\":\"/booklist?tag=全部&area=-1&end=-1<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"连载\",\"url\":\"/booklist?tag=全部&area=-1&end=0<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"完结\",\"url\":\"/booklist?tag=全部&area=-1&end=1<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"青春\",\"url\":\"/booklist?tag=青春<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"性感\",\"url\":\"/booklist?tag=性感<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"长腿\",\"url\":\"/booklist?tag=长腿<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"多人\",\"url\":\"/booklist?tag=多人<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"御姐\",\"url\":\"/booklist?tag=御姐<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"巨乳\",\"url\":\"/booklist?tag=巨乳<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"新婚\",\"url\":\"/booklist?tag=新婚<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"媳妇\",\"url\":\"/booklist?tag=媳妇<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"暧昧\",\"url\":\"/booklist?tag=暧昧<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"清纯\",\"url\":\"/booklist?tag=清纯<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"调教\",\"url\":\"/booklist?tag=调教<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"少妇\",\"url\":\"/booklist?tag=少妇<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"风骚\",\"url\":\"/booklist?tag=风骚<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"同居\",\"url\":\"/booklist?tag=同居<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"淫乱\",\"url\":\"/booklist?tag=淫乱<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"好友\",\"url\":\"/booklist?tag=好友<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"女神\",\"url\":\"/booklist?tag=女神<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"诱惑\",\"url\":\"/booklist?tag=诱惑<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"偷情\",\"url\":\"/booklist?tag=偷情<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"出轨\",\"url\":\"/booklist?tag=出轨<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"正妹\",\"url\":\"/booklist?tag=正妹<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"家教\",\"url\":\"/booklist?tag=家教<,&page={{page}}>\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; Android 11; MI CC9 Pro Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/92.0.4515.131 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1726390407808,
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 5064,
    "ruleBookInfo": {
      "intro": ".detail-desc@text##^##<br>",
      "kind": ".detail-main-info-class@span@text"
    },
    "ruleContent": {
      "content": "#cp_img@img@data-original\n@js:\nresult.split(\"\\n\").map(x=>'<img src=\"'+x+'\">').join(\"\\n\")",
      "imageStyle": "FULL"
    },
    "ruleExplore": {
      "bookList": ".manga-list-2@li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-original",
      "intro": ".manga-list-2-tip@text",
      "name": ".manga-list-2-title@text"
    },
    "ruleSearch": {
      "author": ".book-list-info-bottom-item@text",
      "bookList": ".book-list@li",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "img@data-original",
      "intro": ".book-list-info-desc@text",
      "name": ".book-list-info-title@text"
    },
    "ruleToc": {
      "chapterList": "#detail-list-select@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "preUpdateJs": "java.refreshTocUrl()"
    },
    "searchUrl": "/search?keyword={{key}}",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "// Error: 下载链接为空\n\nHaxc",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎨 咚漫📱",
    "bookSourceType": 3,
    "bookSourceUrl": "https://m.dongmanmanhua.cn#无效",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 877,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "更新::https://m.dongmanmanhua.cn/dailySchedule\n分类::https://m.dongmanmanhua.cn/genre\n周六::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#SATURDAY\r\n周日::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#SUNDAY\r\n完结::https://m.dongmanmanhua.cn/dailySchedule{,/error.html}#COMPLETE\r\n恋爱::https://m.dongmanmanhua.cn/genre{,/error.html}#LOVE\r\n少年::https://m.dongmanmanhua.cn/genre{,/error.html}#BOY\r\n古风::https://m.dongmanmanhua.cn/genre{,/error.html}#ANCIENTCHINESE\r\n奇幻::https://m.dongmanmanhua.cn/genre{,/error.html}#FANTASY\r\n搞笑::https://m.dongmanmanhua.cn/genre{,/error.html}#COMEDY\r\n校园::https://m.dongmanmanhua.cn/genre{,/error.html}#CAMPUS\r\n都市::https://m.dongmanmanhua.cn/genre{,/error.html}#METROPOLIS\r\n治愈::https://m.dongmanmanhua.cn/genre{,/error.html}#HEALING\r\n悬疑::https://m.dongmanmanhua.cn/genre{,/error.html}#SUSPENSE\r\n励志::https://m.dongmanmanhua.cn/genre{,/error.html}#INSPIRATIONAL\r\n影视化::https://m.dongmanmanhua.cn/genre{,/error.html}#FILMADAPTATION\r\n完结::https://m.dongmanmanhua.cn/genre{,/error.html}#TERMINATION",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; Android 8.0.0; MIX 2 Build/OPR1.170623.027) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 YaBrowser/18.9.1.2199.00 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1615429834098,
    "loginUrl": "",
    "respondTime": 181122,
    "ruleBookInfo": {
      "author": "class.author.0@text",
      "intro": "class.summary@text",
      "kind": "class.genre@text",
      "lastChapter": "id._episodeList@tag.span.0@text",
      "name": "class.subj.0@text"
    },
    "ruleContent": {
      "content": "@js:\neval(result.match(/(var imageList = \\[[\\s\\S]+?\\])/)[1]);\nhtml='';\nheader={\"Referer\":baseUrl}\nheaders={\n\"headers\": JSON.stringify(header)\n}\nfor(i in imageList){\nhtml+='<img src=\"'+imageList[i].url+','+JSON.stringify(headers)+'\">\\n'\n}\nhtml",
      "imageStyle": "FULL"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "writingAuthorName",
      "bookList": "class.daily_list@tag.li||$.titleList",
      "bookUrl": "tag.a@href||https://m.dongmanmanhua.cn/{$.genreNew.gnTitle}/{$.titleGroupName}/list?title_no={$.titleNo}",
      "coverUrl": "tag.img@src||https://cdn.dongmanmanhua.cn{$.thumbnailMobile}@js:header={\"Referer\":baseUrl}\nheaders={\"headers\":JSON.stringify(header)}\nresult=result+','+JSON.stringify(headers)",
      "kind": "class.genre@text",
      "name": "class.subj@text||$.title"
    },
    "ruleToc": {
      "chapterList": "-id._episodeList@tag.li",
      "chapterName": "tag.span.0@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://m.dongmanmanhua.cn/searchResult,{\n  \"headers\": \"{Content-Type: application/x-www-form-urlencoded}\",\n  \"method\": \"POST\",\n  \"body\": \"keyword={{key}}&searchType=WEBTOON&start=1\"\n}",
    "weight": 100
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "集 书 阁-◾️",
    "bookSourceType": 0,
    "bookSourceUrl": "https://xn--5oi-jishugevip-2z4y408c5i8f.xn--jishugevip-l81x.com/",
    "customButton": false,
    "customOrder": 880,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部分类\",\"url\":\"/list_1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"现代情色\",\"url\":\"/list_15_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日本情色\",\"url\":\"/list_16_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"西洋情色\",\"url\":\"/list_17_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"伴侣交换\",\"url\":\"/list_18_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠情色\",\"url\":\"/list_19_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻科幻\",\"url\":\"/list_20_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"家庭乱伦\",\"url\":\"/list_21_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"性爱调教\",\"url\":\"/list_22_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"粗野性交\",\"url\":\"/list_23_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"多人群交\",\"url\":\"/list_24_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"教师学生\",\"url\":\"/list_25_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古典情色\",\"url\":\"/list_26_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史情色\",\"url\":\"/list_27_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同性情色\",\"url\":\"/list_28_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市生活\",\"url\":\"/list_29_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"乡间记趣\",\"url\":\"/list_30_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"疯狂暴露\",\"url\":\"/list_31_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"午夜怪谈\",\"url\":\"/list_32_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"游戏乐园\",\"url\":\"/list_33_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"医生护士\",\"url\":\"/list_34_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇遇物语\",\"url\":\"/list_35_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"左邻右舍\",\"url\":\"/list_36_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同事之间\",\"url\":\"/list_37_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"旅游纪事\",\"url\":\"/list_38_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"纯洁恋情\",\"url\":\"/list_39_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"明星系列\",\"url\":\"/list_40_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"意外收获\",\"url\":\"/list_41_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"忘年之乐\",\"url\":\"/list_42_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"另类其他\",\"url\":\"/list_43_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"知识技巧\",\"url\":\"/list_44_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情欲性爱\",\"url\":\"/list_45_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"经典激情\",\"url\":\"/list_46_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"近亲乱伦\",\"url\":\"/list_47_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"人妻美妇\",\"url\":\"/list_48_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学生校园\",\"url\":\"/list_49_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"职业制服\",\"url\":\"/list_50_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"粗暴性爱\",\"url\":\"/list_51_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"情色武侠\",\"url\":\"/list_52_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1671551896879,
    "respondTime": 7684,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.s-tab-main@all"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.ucontent@li",
      "bookUrl": "a.0@href##$##,{\"webView\":true}",
      "coverUrl": "",
      "intro": "class.description@text",
      "name": "class.title@text"
    },
    "ruleToc": {
      "chapterList": "class.content-title@div.-1",
      "chapterName": "text"
    },
    "searchUrl": "/list-{{key}}_{{page}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🎉 笔趣阁⑧④",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.mcmssc.com",
    "bookUrlPattern": "https://www.mcmssc.com/\\d+_\\d+",
    "customButton": false,
    "customOrder": 882,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻奇幻::/xuanhuanxiaoshuo/1_{{page}}.html\n修真仙侠::/xiuzhenxiaoshuo/2_{{page}}.html\n都市青春::/dushixiaoshuo/3_{{page}}.html\n历史穿越::/chuanyuexiaoshuo/4_{{page}}.html\n网游竞技::/wangyouxiaoshuo/5_{{page}}.html\n科幻灵异::/kehuanxiaoshuo/6_{{page}}.html\n其它小说::/qitaxiaoshuo/7_{{page}}.html",
    "lastUpdateTime": 1731788468514,
    "loginUrl": "{\n  \"url\": \"null\"\n}",
    "respondTime": 7182,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@tag.a@text",
      "coverUrl": "id.fmimg@img@src",
      "init": "",
      "intro": "id.intro@text",
      "kind": "class.con_top@tag.a.1@text&&\nid.info@tag.p.2@text##最后更新：",
      "lastChapter": "id.info@tag.p.3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |百度搜索.*",
      "name": "id.info@h1@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes##天才一秒记住.*com|章节错误.*耐心等待。|.*无广告！|断更反馈"
    },
    "ruleExplore": {
      "author": "class.s4@a@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.mcmssc.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s5@text",
      "lastChapter": "class.s3@tag.a@text",
      "name": "class.s2@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.s4@text",
      "bookList": "class.novelslist2@tag.li!0",
      "bookUrl": "class.s2@tag.a@href",
      "coverUrl": "class.s2@tag.a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\n'https://www.mcmssc.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "class.s6@text",
      "lastChapter": "class.s3@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 |百度搜索.*",
      "name": "class.s2@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd!0:1:2:3:4:5:6:7:8:9:10:11",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.mcmssc.com/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "阁笔趣",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.gebiqu.com",
    "customButton": false,
    "customOrder": 883,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/xuanhuanmofa/{{page}}.html\n修真小说::/xiuzhenxiaoshuo/{{page}}.html\n都市小说::/dushixiaoshuo/{{page}}.html\n历史军事::/lishijunshi/{{page}}.html\n游戏小说::/youxixiaoshuo/{{page}}.html\n科幻灵异::/kehuanlingyi/{{page}}.html\n同人小说::/tongrenxiaoshuo/{{page}}.html\n女生言情::/nvshengyanqing/{{page}}.html\n综合小说::/zonghexiaoshuo/{{page}}.html\n全本小说::/quanben/{{page}}.html",
    "lastUpdateTime": 1733564546120,
    "respondTime": 3053,
    "ruleBookInfo": {
      "author": "#info@tag.p.0@text##作者：",
      "intro": "id.intro@text",
      "kind": ".con_top@tag.a.-1@text",
      "lastChapter": "#list@tag.dd.0@a@text",
      "name": "h1@text",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@textNodes##|优质免费.*』|.*免费小说.*|.*全文免费阅读.*|.*精彩小说无弹窗.*|www\\.gebiqu\\.com|.*手机用户请.*|天才壹秒記住.*"
    },
    "ruleExplore": {
      "author": ".s5@text",
      "bookList": "class.l@li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a.0@href##.*_(\\d+)(\\d{3})/##http://image.gebiqu.com/$1/$1$2/$1$2s.jpg",
      "intro": "",
      "lastChapter": ".s3@a@text",
      "name": ".s2@a@text",
      "wordCount": ".s3@textNodes"
    },
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "id.nr",
      "bookUrl": "tag.a.1@href##\\d+.html",
      "coverUrl": "tag.a.0@href##.*/(\\d+)(\\d{3}).html##http://image.gebiqu.com/$1/$1$2/$1$2s.jpg",
      "kind": "",
      "lastChapter": "class.even.0@text##最新章节：",
      "name": "tag.a.0@text",
      "wordCount": "class.even.1@text"
    },
    "ruleToc": {
      "chapterList": "#list dd a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.gebiqu.com/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.biquluo.info",
    "customButton": false,
    "customOrder": 888,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::https://www.biquluo.info/xiaoshuodaquan/1.html\n仙侠小说::https://www.biquluo.info/xiaoshuodaquan/2.html\n都市小说::https://www.biquluo.info/xiaoshuodaquan/3.html\n历史小说::https://www.biquluo.info/xiaoshuodaquan/4.html\n网游小说::https://www.biquluo.info/xiaoshuodaquan/5.html\n科幻小说::https://www.biquluo.info/xiaoshuodaquan/6.html\n灵异小说::https://www.biquluo.info/xiaoshuodaquan/7.html\n其它小说::https://www.biquluo.info/xiaoshuodaquan/8.html",
    "lastUpdateTime": 1734981621012,
    "respondTime": 10790,
    "ruleBookInfo": {
      "author": "//p[1]/a/text()",
      "coverUrl": "//div[@id='fmimg']/img/@src",
      "intro": "//div[@id='intro']/text()",
      "kind": "//div[@id='info']/p[3]/text()",
      "lastChapter": "//div[@id='info']/p[4]/a/text()",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "//div[@id='content']/text()"
    },
    "ruleExplore": {
      "bookList": "//div[@class='novellist']/ul/li",
      "bookUrl": "/a/@href",
      "name": "/a/text()"
    },
    "ruleSearch": {
      "author": "/span[3]/a/text()",
      "bookList": "//div[@class=\"novelslist2\"]/ul/li[position() > 1]",
      "bookUrl": "/span[2]/a/@href",
      "kind": "/span[5]/text()",
      "lastChapter": "/span[4]/a/text()",
      "name": "/span[2]/a/text()"
    },
    "ruleToc": {
      "chapterList": "//div[@id='list']/dl/dd[position()>=13]",
      "chapterName": "/a/text()",
      "chapterUrl": "/a/@href"
    },
    "searchUrl": "https://www.biquluo.info/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🎃笔趣阁🎃#86",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xuanyge.net#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 891,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻\",\"url\":\"/sort1/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/sort2/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/sort3/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/sort4/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/sort5/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"/sort6/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/sort7/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"恐怖\",\"url\":\"/sort8/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"/sort9/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"异界\",\"url\":\"/sort10/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"全本\",\"url\":\"/quanben/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1720893169674,
    "loginUrl": "",
    "respondTime": 651,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property$=latest_chapter_name]@content##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "[property$=book_name]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "imageStyle": "0",
      "replaceRegex": "##随机推荐.*|.*精华书阁.*|为您提供.*好书签.|.*免费阅读.|.*最快更新.*|\\(本章未完.*\\)"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span.1@text",
      "bookList": "#sitebox dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "dd.3@text",
      "kind": "span.2:0@text",
      "lastChapter": "a.2@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": "a.1@text",
      "wordCount": "span.3@text"
    },
    "ruleToc": {
      "chapterList": "#readerlist li a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?s={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "//By情无羁25.02.03",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "笔趣阁(免费小说)",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.langrenxiaoshuo.com",
    "customButton": false,
    "customOrder": 892,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "全部小说::https://www.langrenxiaoshuo.com/allbook_17097_{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1738837775192,
    "respondTime": 6329,
    "ruleBookInfo": {
      "author": ".fix@p.0@text##作者：",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "#content@html##【1】.*【2】.*|\\<.*\\>",
      "nextContentUrl": ".chapterPages@a@href",
      "replaceRegex": "##(?<=[\\u4e00-\\u9fa5]|[，、])[\\n]"
    },
    "ruleExplore": {
      "author": "dt@span@text",
      "bookList": ".item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "lastChapter": "a.-1@text",
      "name": "dt@a@text"
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list-row5@li!0",
      "bookUrl": "a@href",
      "kind": ".s1@text",
      "name": ".s2@text"
    },
    "ruleToc": {
      "chapterList": ".section-list.1@li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php?action=search,{\n  \"body\": \"objectType=2&wd={{key}}\",\n  \"method\": \"POST\",\n  \"charset\": \"GB2312\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "\"error:Unabletoresolvehost\"www.po18yq.com\":Noaddressassociatedwithhostname\n\"",
    "bookSourceGroup": "🔞",
    "bookSourceName": "PO脸红心跳②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.poyq.com已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 895,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最近更新::https://www.po18yq.com/paihang/lastupdate_{{page}}.html\n最新入库::https://www.po18yq.com/paihang/postdate_{{page}}.html\n总排行榜::https://www.po18yq.com/paihang/allvisit_{{page}}.html\n总推荐榜::https://www.po18yq.com/paihang/allvote_{{page}}.html\n总收藏榜::https://www.po18yq.com/paihang/goodnum_{{page}}.html\n总字数榜::https://www.po18yq.com/paihang/size_{{page}}.html\n玄幻奇幻::https://www.po18yq.com/xuanhuan_{{page}}.html\n武侠仙侠::https://www.po18yq.com/wuxia_{{page}}.html\n都市言情::https://www.po18yq.com/dushi_{{page}}.html\n科幻网游::https://www.po18yq.com/kehuan_{{page}}.html\n惊悚悬疑::https://www.po18yq.com/jingsong_{{page}}.html\n耽美同人::https://www.po18yq.com/danmei_{{page}}.html\n穿越架空::https://www.po18yq.com/chuanyue_{{page}}.html\n浓情纯爱::https://www.po18yq.com/nongqing_{{page}}.html\n百合优美::https://www.po18yq.com/baihe_{{page}}.html\n精品文学::https://www.po18yq.com/qita_{{page}}.html",
    "lastUpdateTime": 1632714401326,
    "loginUrl": "",
    "respondTime": 2186,
    "ruleBookInfo": {
      "coverUrl": "class.l@img@src",
      "intro": "class.p3@textNodes",
      "kind": "class.topmenuchaptermenu@span@a@text",
      "lastChapter": "class.p4@a@text"
    },
    "ruleContent": {
      "content": "id.content@p@html##喜欢请大家收藏.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@a@text||class.p2@a@text",
      "bookList": "class.lists@li||class.listcon@li",
      "bookUrl": "a@href",
      "coverUrl": "tag.a.0@href##.*/(\\d+)/(\\d+)/##http://img.po18yq.com/image/$1/$2/$2s.jpg",
      "intro": "class.p3@textNodes",
      "kind": "class.sortname@text||class.articlename@span@text##\\[|]",
      "lastChapter": "class.lastchapter@a@text",
      "name": "class.articlename@a@text"
    },
    "ruleToc": {
      "chapterList": "class.chapterlist@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.po18yq.com/modules/article/search.php?searchkey={{key}}&t_btnsearch=&page={{page}},{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "笔趣阁",
    "bookSourceName": "🔰 笔趣阁¹",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.xbiqugu.net",
    "bookUrlPattern": "https?://wap.ibiquges.*wapbook.+html",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 896,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/wapsort/1_{{page}}/\n仙侠::/wapsort/2_{{page}}/\n都市::/wapsort/3_{{page}}/\n历史::/wapsort/4_{{page}}/\n网游::/wapsort/5_{{page}}/\n科幻::/wapsort/6_{{page}}/\n其他::/wapsort/7_{{page}}/\n全本::/wapfull/{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1719622518397,
    "respondTime": 6258,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\n\ta:\"[property$=author]@content\",\nk:\"[property~=status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}"
    },
    "ruleContent": {
      "content": "#nr1@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##{{chapter.title}} |\\(第.*页\\)|（本章未完.+继续阅读）|最新网址.+(info|com)?",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "ownText##.*\\/",
      "bookList": ".line",
      "bookUrl": "a@href",
      "coverUrl": "@js:'https://www.ibiquges.com/modules/article/images/nocover.jpg'",
      "kind": "ownText##\\[|\\].*",
      "name": "a@text"
    },
    "ruleSearch": {
      "author": "p.3@text##作者：",
      "bookList": ".block",
      "bookUrl": "a.1@href",
      "checkKeyWord": "剑来",
      "coverUrl": "img@src",
      "kind": "p.2@text##分类：",
      "lastChapter": "a.-1@text",
      "name": "h2@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "isPay": "",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "{{java.connect(source.getKey()).raw().request().url()}}modules/article/waps.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃笔下文学🎃#2",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.bxwx.la#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 898,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 862,
    "ruleBookInfo": {
      "intro": "@js:(result=result.match(/内容简介[\\s\\S]+?div>([\\s\\S]*?)<br.*?\\n.*?bxwx/))?result[1].replace(/.*?bxwx.*?\\.org/,'<br>'):''",
      "tocUrl": "@js:baseUrl.replace(/binfo/,'b').replace(/(\\d)\\.htm.*/,'$1/')"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "tr:has(.odd):lt(6)",
      "bookUrl": "tag.td.0@a@href",
      "coverUrl": "tag.td.0@a@href@js:result.replace(/binfo/,'image').replace(/\\/(\\d+).htm/,'/$1/$1s.jpg')",
      "kind": "tag.td.5@text&&tag.td.3@text@js:result+'字'",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@text"
    },
    "ruleToc": {
      "chapterList": "+@js:\nvar reg=new RegExp(/<dd(.).+?\"(\\d+\\.html)\">(.*?)<\\/a>/g);\nvar list1=[];\nvar list2=[];\nvar tmp,url,name;\nvar i=-1;\nwhile((tmp=reg.exec(result))){\nurl=tmp[2];\nname=tmp[3];\nif(tmp[1].match(/>/)){\ni=i+1;\nlist1.push({name:name,url:url});\n}\nelse\nlist2.push({name:name,url:url});\n\nif(i==1){\ni=-1;\nlist1=list1.concat(list2.reverse());\nlist2=[];\n}\n}\nlist1;",
      "chapterName": "name",
      "chapterUrl": "url"
    },
    "searchUrl": "http://www.bxwx8.la/cse/search?q={{key}}&submit=搜索",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "顶点小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.x23us.us/",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 899,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "Mozilla/5.0 (Linux; Android 11; Redmi K30 Ultra wv) AppleWebKit/605.1.15Z (KHTML, like Gecko) Version/9.2 Chrome/95.0.1020.40 Mobile Safari/604.1 SearchCraft/2.8.2 baiduboxapp/ ",
    "lastUpdateTime": 1733564376284,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 3989,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "name.description@content",
      "kind": "[property=\"og:novel:category\"]@content",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@textNodes",
      "imageStyle": "0",
      "replaceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.tag.a.1@text",
      "bookList": "id.nr",
      "bookUrl": "tag.a.0@href##$##,{'webView': true}",
      "checkKeyWord": "深空",
      "coverUrl": "",
      "lastChapter": "tag.a.1@text",
      "name": "class.odd.tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.x23us.us/modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "女生文学🎃#2",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.dmx5.cc#🎃",
    "customButton": false,
    "customOrder": 905,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"连载榜单\",\"url\":\"/all/all_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总点击榜\",\"url\":\"/all/all_allvisit_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月点击榜\",\"url\":\"/all/all_monthvisit_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周点击榜\",\"url\":\"/all/all_weekvisit_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日点击榜\",\"url\":\"/all/all_dayvisit_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总推荐榜\",\"url\":\"/all/all_allvote_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月推荐榜\",\"url\":\"/all/all_monthvote_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周推荐榜\",\"url\":\"/all/all_weekvote_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日推荐榜\",\"url\":\"/all/all_dayvote_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏榜\",\"url\":\"/all/all_goodnum_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总字数榜\",\"url\":\"/all/all_size_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/all/all_postdate_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/all/all_lastupdate_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"连载分类\",\"url\":\"/all/all_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻修仙\",\"url\":\"/all/xh_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"现代都市\",\"url\":\"/all/ds_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古代架空\",\"url\":\"/all/jk_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越重生\",\"url\":\"/all/cy_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游动漫\",\"url\":\"/all/wy_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻未来\",\"url\":\"/all/kh_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/all/ly_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"BG言情\",\"url\":\"/all/bg_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他类型\",\"url\":\"/all/qt_default_0_0_0_0_1_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"完结榜单\",\"url\":\"/all/all_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总点击榜\",\"url\":\"/all/all_allvisit_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月点击榜\",\"url\":\"/all/all_monthvisit_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周点击榜\",\"url\":\"/all/all_weekvisit_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日点击榜\",\"url\":\"/all/all_dayvisit_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总推荐榜\",\"url\":\"/all/all_allvote_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月推荐榜\",\"url\":\"/all/all_monthvote_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周推荐榜\",\"url\":\"/all/all_weekvote_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日推荐榜\",\"url\":\"/all/all_dayvote_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总收藏榜\",\"url\":\"/all/all_goodnum_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总字数榜\",\"url\":\"/all/all_size_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最新入库\",\"url\":\"/all/all_postdate_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/all/all_lastupdate_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"完结分类\",\"url\":\"/all/all_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"玄幻修仙\",\"url\":\"/all/xh_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"现代都市\",\"url\":\"/all/ds_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古代架空\",\"url\":\"/all/jk_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越重生\",\"url\":\"/all/cy_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游动漫\",\"url\":\"/all/wy_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻未来\",\"url\":\"/all/kh_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/all/ly_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"BG言情\",\"url\":\"/all/bg_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他类型\",\"url\":\"/all/qt_default_0_0_0_0_2_0_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1777917691967,
    "respondTime": 5406,
    "ruleBookInfo": {
      "author": ".rt@em.0@text",
      "coverUrl": ".lf@img@src",
      "intro": ".intro@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".place@a.1@text&&.rt@em.1:2@text##.*：",
      "lastChapter": ".jieshao@.rt@a.0@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".rt@h1@text"
    },
    "ruleContent": {
      "content": ".yd_text2@html"
    },
    "ruleExplore": {
      "author": ".writer_name1@span@text",
      "bookList": ".writer_i_4",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".writer_name3@a@text",
      "kind": ".writer_name2@i@text&&.writer_name4@ownText&&.writer_name4@span@text##\\s.*",
      "lastChapter": ".writer_name4@a@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".writer_name1@a@text"
    },
    "ruleSearch": {
      "author": ".zz@text",
      "bookList": ".booklist@li!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": ".zt,.sj@text",
      "lastChapter": ".zj@text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "name": ".mz@text"
    },
    "ruleToc": {
      "chapterList": ".mulu@li@a",
      "chapterName": "text##正文卷.|正文.|VIP卷.|默认卷.|卷_|VIP章节.|免费章节.|章节目录.|最新章节.|[\\(（【].*?[求更票谢乐发订合补加架字修Kk].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "{{cookie.removeCookie(source.getKey())}}\n/search/book,{\n  \"charset\": \"gbk\",\n  \"method\": \"post\",\n  \"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "爱书包",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.ishubao.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 906,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.3.1212.666 Safari/537.36\"}",
    "lastUpdateTime": 1735526939611,
    "loginUrl": "",
    "respondTime": 7273,
    "ruleBookInfo": {
      "author": "@get:{x}",
      "canReName": "true",
      "coverUrl": "@js:(s=java.getStringList('img[alt*='+book.name+']@src||meta[property$=image]@content||img[src~=(cover|file|article)[^a-z]|/\\\\d+[/_-]\\\\d+(s?\\\\.|$)]@src||img[data-src~=\\\\S]@data-src||img[src*=/img]@src||img[src~=^(data|https?):|^[^:]+/]@src')).size()?/^data:/.test(s=s.get(0))?java.base64Encode(s):s:null",
      "init": "",
      "intro": "@js:'　　'+java.get(\"g\")",
      "kind": "@js:java.get(\"v\")",
      "lastChapter": "@get:{z}",
      "name": "@js:\nj=String(java.get(\"custom\")).match(/^ *((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)/);\n\nkey=String((u=(baseUrl=String(book.bookUrl).replace(/,{[^{}]+}$/,'')).match(/^(.+)\\?((?:[录原单动静直全跳逆字图]|\\[[^\\[\\]]+\\]|\\d+#[^#]+#)+)$/))&&(baseUrl=u[1])&&j?j[1]+u[2]:u?u[2]:j?j[1]:'');\n\n$=it=>(fn=r.select(it)).size()&&(fn=fn.first());\n\nr=org.jsoup.Jsoup.parse(result);\nr.select(\"script,noscript,style,head>:not(meta,title),footer,[class~=^foot],[id~=^foot],a:has(>:last-child:matchesOwn(^分类$)),[value]\").remove();\n\nm=String(r).replace(/(?:&nbsp;)+/g,\" \");\n\n书=false;\nn=($('[property$=book_name]')&&(书=String(fn.attr('content')).replace(/^[\\s「『【〖（(\\[]+/,\"\"))\n||(function(){\nif($('title')&&(书=String(fn.text()).replace(/^(简介页|详情页|目录页|正版|全本|免费阅读|[\\s。.,_/|「『【〖（(\\[\\])）〗】』」─—-]+)+/,\"\"))){\nfor(x=0,c=r.select(\"h1,h2,h3,strong\").eachText();x<c.size();x++)if(\n(y=c.get(x))!=''&&(u=书.indexOf(y),~u&&u<4))return String(y)}return 书}())||\"请自行修改书名\")\n.replace(/(?!^)[^\\u4e00-\\u9fa5a-zA-Z0-9《》]*(?:笔趣阁|思路客|燃文|小说|漫画|手机)?(?:[.|,_/\\s「『【〖（(\\[\\])）〗】』」。─—-]|(?:人工|机器|电脑)?校正|精校|完[整结]|加料|番外|未删节|简介|全[文本集]|下载|(?:小说|漫画|大全|正版(?:小说|漫画)?|免费|免费小说|免费漫画|免费全[文本]|在线|最[新快]|全部|手机|电脑)(?:全[文本集部]|大全|免费|在线|阅读|下载|章节|小说|更新|漫画|\\.)|([^a-zA-Z0-9])(?:azw|mobi|epub|txt)(?![a-zA-Z0-9])|(?:最全)?(?:章节|目录|列表){2,}|更新章节最快|无广告|(?::顶点)?无弹窗|无防盗|小说网|手打全文|[纯全](?:手打|文字)|\\s*by\\s*(?=[\\u4e00-\\u9fa5]))[\\S\\s]*/i,\"$1\");\n\nif(n[0]==\"《\"&&n[n.length-1]==\"》\")n=n.slice(1,-1);\n\nif($('[property$=author]')){\nx=String(fn.attr(\"content\")).replace(/^作\\s*[者家][\\s:：]*|(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\")\n}else{\nx=m.match(/>\\s*([^>]+?)(?:\\s*<\\/[a-z]+>\\s*|\\s+)著\\s*<|[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】>《》](?:小说|漫画)?作\\s*者(?![^>]+->)(?:[:：\\s〖【（《［\\[\\(]|<[^it\\/][^>]*>|<\\/[^>]+>)+([^\\s<\">,，/／｜|\\)\\]］》）】〗]+)/);\nx=x?x[1]?x[1]:x[2]:$('#author,.author')?String(fn.text()).replace(/(?!^)[/／｜|，,\\s][^⚙️]*$/,\"\"):\"\"}\njava.put(\"x\",x);\n\nc=(fn=r.select(\"meta[property~=category$]\")).size()?String(fn.attr(\"content\"))\n.replace(/(?!^)\\s*[，,./／｜|]\\s*/,\",\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)(?:[分大]\\s*类|类\\s*[型别])(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"v\",c);\n\nc=(fn=r.select(\"meta[property~=status$]\")).size()?fn.attr(\"content\"):(fn=m.match(/(?:[\\s\\[\\];?!,.()、，；？！。…─（）［］〖〗【】》]|<[^a/][^>]*>|<\\/[^>]+>)状\\s*态(?:[:：\\s]|<[^>]+>)+([^\\s<.\"/／｜|>]+)/))&&fn[1];\nif(c)java.put(\"s\",c);\n\nc=$('meta[property~=latest_chapter_name$]')?fn.attr(\"content\"):(fn=m.match(/>(?:\\s*[更最]\\s*[新近])+(?:\\s*章\\s*节)?(?:[:：\\s\\[]|<[^>]+>)+(?!\\s*(?:-|&gt;)\\s*<|[:：\\s0-9T年月日时分秒*-]{5,}<|[^:：]+[^章\\s]\\s*[:：]\\s*<|更新(?:时间)?[:：])([^<\"/／｜|\\]>]+)/))&&fn[1];\nif(c)java.put(\"z\",c);\n\n正=true;\nif(key.length){\nif(~key.indexOf(\"全\"))java.put(\"全\",1);\nif((\nu=key.match(/[^\\[\\]]+(?=\\])/),\nc=~key.indexOf(\"录\"),\ny=~key.indexOf(\"单\"),\nbaseUrl=u?u[0]:baseUrl,\n(c||u)&&(baseUrl=c||y?(baseUrl=String((c=baseUrl.match(/(.+[^\\d])(\\d+)([^\\d]*)$/))[1]+1+c[3]),\nc=c[2]+'🌕'+c[1]+'🌕'+2+'🌕'+c[3],\nbaseUrl):baseUrl)\n)||~key.indexOf(\"直\")\n)java.put(\"目\",1),正=1;\nif(~key.indexOf(\"录\"))java.put(\"录\",c),正=1;\nif(y||~key.indexOf(\"#\")){\nif(!u){\nif((网=key.match(/(\\d+)#([^#]+)/))\n&&(尾=网[1],网=网[2].match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n||(尾=r.select('a[href~=\\\\d[^/?\\\\d]*$]:matches(^(尾|末|最后一)[頁页篇章回节節话話]$)')).size()\n&&(网=r.select('a:matches(^2$)')).size()\n&&(网=String(网.first().attr('href')).match(/^(.*[^\\d])([12])([^/?\\d]*)$/))\n&&(尾=String(尾.first().attr('href')).match(/\\d+(?=[^/?\\d]*$)/)[0])){\nc=尾+'🌕'+网[1]+'🌕'+网[2]+'🌕'+网[3]\n}else if((c=r.select('a:matches(^(\\\\d+|…+|\\\\.+)$)')).size()){\nif((网=String(c).split(/<a[^>]+>[^\\d<]+<\\/a>/)).length==2){\nfor(c=网[0],尾=网[1],x=+网[1].match(/>([^<]+)/)[1],网=网[0].match(/href=\"([^\"]*[^\\d])(\\d+)([^/?\\d\"]*)\"[^>]*>([^<]+)<[^<]+$/),j=+网[4],i=+网[2]-j;j<x;j++)c+=\"<a href='\"+网[1]+(j+i)+网[3]+\"'>\"+j+\"</a>\";\nc+=尾}\n}else c=1}\njava.put(\"单\",c),正=false}\nif(~key.indexOf(\"跳\"))java.put(\"跳\",1);\nif(~key.indexOf(\"逆\"))book.setReverseToc(true);\nelse book.setReverseToc(false);\nif((u=~key.indexOf(\"图\"))||~key.indexOf(\"原\"))java.put(\"原\",1);\nif(~key.indexOf(\"动\"))java.put(\"动\",',{\"webView\":true}');\nelse if(~key.indexOf(\"静\"))java.put(\"静\",1);\nif(u||~key.indexOf(\"字\"))java.put(\"文\",u?1:2)\n}else book.setReverseToc(false);\n\nc=(fn=r.select(\"meta[property$=description][content~=\\\\S]\")).size()?fn.get(fn.size()-1).attr(\"content\"):(r.select(':matchesOwn([\\\\u4e00-\\\\u9fa5]{2,})>:not(br),:not(body,br,:matchesOwn([\\\\s\\\\S]{50}),:has(body,:matchesOwn([\\\\s\\\\S]{50})))').remove(),r.select(\":matchesOwn(\\\\S)\").text());\n\njava.put(\"g\",c=String(c).replace(/[\\snbsp;]*(?:&nbsp;|\\s){2,}|\\s*([？！。]+[”」』\\]\\}\\)）｝】〗〕〉]?)\\s*/g,\"$1　　\").replace(/(?=　　)/g,\"\\n\"));\n\nif(c.length&&(c=c.match(/(.{0,2})《([^《》]+)》(.{0,3})/))&&c[3]!=\"作品集\"&&!c[1].match(/新[书作]/)&&(c=c[2],书?~String(书).indexOf(c)&&!~c.indexOf(n):true))n=c;\n\nif(正==1)m=java.ajax(baseUrl);\njava.setContent(m,baseUrl);\n\nif(正){\nzl=java.getStringList(\"[property$=latest_chapter_url]@content||:matches(^最新章节)>a:only-child:not([href~=^$|#|javascript:])@href||a:matches(^正文\\\\s*[\\\\d第一二三四五六七八九十〇零百千]|^[【《]?(\"+n+\")?[\\\\s》】（\\\\u0028:：＿_－-]*(第[\\\\s0〇零]*[一1]\\\\s*[\\\\u4e00-\\\\u9fa5]|([\\\\u4e00-\\\\u9fa5]{2}阅读[（\\\\u0028:：＿_－-]?)?(0*1([）\\\\u0029.、:：_-]|$)|[〇零]*一([）\\\\u0029\\\\s.、:：_-]|$)))):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:|\"+(bas=baseUrl.replace(/\\/+$|\\.[a-zA-Z]+$/,'')).match(/[^?/]+$/)[0].replace(/([*$|?+\\\\\\^\\[\\](){}])/g,'\\\\$1')+\"(?:[/_-]1)?(?:\\\\/|\\\\.[a-zA-Z]+)?$])@href||a:matches(^[^\\\\u4e00-\\\\u9fa5]*(免费|在线|开始|立即|全文|正文|从头)+[试阅]读[^\\\\u4e00-\\\\u9fa5]*$):not([href~=^$|#|javascript:])@href||a:matches(^0*1[^\\\\d]):not([href~=(^|[^/])/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&_-]*$|^$|#|javascript:])@href\");\n\nif(zl.size()&&(ck=String(zl.get(0)).match(/^(.*\\/\\/[^/]+)?([/?]?[^/].+[?&/_-])[^&/_-]+\\/?$/)))(jd=ck[1])&&(h=baseUrl.lastIndexOf('/',baseUrl.indexOf(jd.match(/(?:\\.[^.]+){2,}$|[^./]+\\.[^.]+$/)[0])))>8&&(\nq=baseUrl.indexOf(':'),\n(bas=java.get(baseUrl=baseUrl.slice(0,q+2)+baseUrl.slice(h),{})).statusCode()==200&&java.setContent(bas.body(),baseUrl)\n),java.put(\"ck\",ck[2])}\nn",
      "tocUrl": "@js:if(java.get(\"单\")==''){\nif(java.get(\"录\")==java.get(\"目\")){\nr=org.jsoup.Jsoup.parse(result);\n\nscript=r.select(\":matchesOwn(^$)>a[href^=javascript:]:matches(全文|章[節节]|目[錄录]):not(:matches(最新))\");re=false;\n\nif(!script.size()){\nba=(bas=baseUrl.replace(/\\/$|\\.[a-zA-Z]+$/,'')).match(/(http....[^/?]+)(?:([?/])(.*))?$/);b=ba[1];v=ba[3];\n\nr.select(\"a[href~=[^a-z]page[^a-z]]:not(:matches([反正顺順逆倒]序|[全正]文|更多|全部|所有|章[節节]|作品|目[錄录]|列表)),a:not([href~=^(?!//)[^#:]+$|\"+b.split(':')[1]+\"]),:matchesOwn(\\\\S)>a,a[href~=javascript:|#],a:matches(^\\\\S{1,4}$):not(:matches([反正顺順逆倒]序|[阅閱][讀读]|查看|展[开開]|进入|[全正]文|更多|完整|全部|所有|目[錄录]|列表|章[節节]):not(:contains(分类)))\").remove();\n\ny=r.select(\"a[href~=(?i)catalog|contents|chapters|mulu|(^|[^a-z])ml|showchapter|(^|chapter[/_-]?|\"+v.replace(/(.+)((\\/\\d\\d)\\d+)$/,\"$1$3$2\")+\"[/_-])(more|list|all)|sort[/=_-]asc]\");\n\nif(!y.size()){b3='';\n\nif(ba[2]==\"?\"){\nb3='[href~=^[^?]+$],'\n}else if(ba[3]){\nb3=ba[3].replace(/[*$|?+\\\\\\^\\[\\](){}]/g,'\\\\$0');\n\nb3=\"[href~=\"+b3+\"(\\\\.[^.]+|/\\\\d+(\\\\.[^.]+|/)?)?$],[href~=[/?]\"+b3.replace(/[&/_-][^/_-]+$/,'')+\".*$]:not([href~=[/?]\"+b3.replace(/[/_-]/g,'[/_-]')+\"]),\"}\n\ny=r.select(\"a:not(\"+b3+\"[href~=(?i)(^|[^/])[?/].*((book|[^a-z])(info|case)[^a-z]|(cid|buy)[^a-z]|desc|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/chapter|/index/|/d/],:matches((?i)^$|[0-9零〇一二三四五六七八九十百千万、，：；？！。…‘’“”（）()]|[票榜:：.]|推荐|排行|等级|说明|收藏|书评|简介|分[类卷]|简介|作者|手机|软件|应用|安装|客户|移动|pc|电脑|安卓|苹果|下载|最新|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub))\")}\n\nif(y.size()){\nys=y.select(\"a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|read|all]:matches([反正顺順逆倒]序|全文|章[節节]|目[錄录]):not(:matches(阅读)),a[href~=(?i)catalog|contents|chapter|(^|[^a-z])ml|mulu|read]:matches(更多|列表),a[href~=(?i)catalog|contents|list|chapter|mulu|(^|[^a-z])ml|more|all]:matches(^$),a:matches(^[^\\\\u4e00-\\\\u9fa50-9]*([反正顺順逆倒]序|全文(免[費费])?[阅閱][讀读]|(点击|查看|展[开開]|进入|返?回到?)*([全正]文|(更多|完整|全部|所有)?(章[節节]|(作品)?目[錄录])+)+(列表)?(\\\\s*(查看|展开)?更多)?)[^\\\\u4e00-\\\\u9fa50-9]*$)\");zt=false;\n\nif(!ys.size()){\nba=bas.match(/(\\?(?:[^=]+=)+)(.+)$/)||bas.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/index[^/]*)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/))id=xi[1];\nif(ba[1])if(xi=ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=/^\\d$/.test(id)||!xi[1].indexOf(id)?xi[1]:\"(\"+id+\"|\"+xi[1]+\")\";\n\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?\"+id+\"([?_-][a-z=_-]*0|\\\\.[^.]+|[/?]([^\\\\d]*|[^/\\\\d]*/?|(list|more|all)([=_-][a-z]*)?\\\\d+[^\\\\d]*)?)?(&.+)?$]:not(:contains(\"+(bs=String(book.name)[0])+\"))\");\n\nif(!ys.size()){zt=true;\nys=y.select(\"[href~=(?i)^((.*//[^/]+/)?[^=.]*[^\\\\d=.])?(\\\\d+/\"+id+\"[_-]\\\\d+[^\\\\d]*|\"+id+\"[_-][a-z_-]*1[^\\\\d]*)$]:not(:matches(阅读|\"+bs+\"))\")}}\n\nif(ys.size()){\nif((re=ys.select(\"[href~=(/|^)[^.]+$]\")).size())ys=re;\nre=String(ys.first().attr(\"href\"));\n\nfor(x=1;x<ys.size();x++)if((xs=String(ys.get(x).attr(\"href\"))).length>re.length)re=xs;\n\nif(/(?:[2-9]\\d*|1\\d+)[^\\d]*$/.test(re)){\nif(!zt&&(q=re.match(/^(.*[^/])?[&?/].*(?:catalog(ue)?|contents|(?:show)?chapters?|mulu|ml|more|all|list|page)(?:[=_-][a-z]*)?\\d+[^\\d]*$/i))&&v==(q[1]||'').replace(/^http....[^/?]+/,''))zt=true;\nif(zt)re=re.replace(/\\d+(?=[^\\d]*$)/,\"☯1\")}\n\n}}}\n\nre=String(!re?baseUrl:(java.put(\"基\",baseUrl),/^\\/[^/]/.test(re)?b+re:/^https?:/.test(re)?re:/^\\/\\//.test(re)?b.split('//')[0]+re:String(baseUrl).replace(/[^/]*$/,'')+re))}else re=baseUrl;\n\nr=re.replace(/(?:[☯?&/_-][^\\d?/&_-]*[01])+[^\\d]*$/,\"\");\njava.put(\"ba\",r);\nre=re.replace(\"☯\",\"\")}else re=baseUrl;\n\njava.get(\"跳\")==1||re==baseUrl&&/,/.test(book.bookUrl)?re+',{\"webView\":true}':re",
      "wordCount": "@get:{s}"
    },
    "ruleContent": {
      "content": "@js:dt=lr='';c=1;动=java.get(\"动\");\nif(动!=''&&!~baseUrl.indexOf(\",\")){\nresult=String(java.ajax(baseUrl+动))\n}else if(java.get(\"静\")==动)c=dt=2;\n\nr=org.jsoup.Jsoup.parse(r1=result.replace(/&nbsp;/g,' '));\n查=i=java.get(\"序\");\n\nif(java.get(\"文\")==1){for(;c;c--){\nd=[\"img[data-src],img[src~=[^a-z]cid[^a-z]]\"\n,\"img:not([src~=(?i)^$|^javascript:|\\\\.gif|\\\\.png|[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,\"img[src~=(?i)\\\\.png]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])\"\n,'img[src~=(?i)\\\\.gif]:not([src~=(?i)[^a-z](cover|css|ic(on)?|load(ing|ed)?)[^a-z]])'];\n\nif(!(查!=\"\"&&(查!=-1&&((lr=r.select(d[查])).size(),true)))){\n$=it=>(lr=r.select(it)).size();\nif($(d[i=0])||$(d[i=1])||$(d[i=2])||false)break;\n\nif(c==2){dt=1;\nr=org.jsoup.Jsoup.parse(java.ajax(baseUrl+',{\"webView\":true}'))\n}else i=$(d[3])?3:-1}}\nif(i==0)lr=String(lr).replace(/(?:src=['\"][^'\"]+['\"] +)?data-/g,'');\nif(查==\"\")book.putVariable(\"序\",i);\n\n}else{\nsc=java.get(\"文\")==2?\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br)),a>*,:has(a):not(:matchesOwn([\\\\S\\\\s]{50,}),:has(:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(br,a,:matchesOwn([\\\\s\\\\S]{50})),:not(br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))'\n:\n'[style~=(?i)text-align:center|(^| |;)color: *(rgb.(?!255[ ,]+255[ ,]+255)[\\\\d, ]*2\\\\d\\\\d|#(?=[a-f\\\\d]{3}([^a-f\\\\d]|$))(?!fff)[a-f\\\\d]*[d-f]|#(?=[a-f\\\\d]{4})(?!ffffff)([\\\\da-f]{2})*[d-f][\\\\da-f]|green|red|blue|yellow|purple|pink|brown)],script,noscript,style,header,footer,[class~=^foot|^head],[id~=^foot|^head],:has(>a):not(:has(p:matchesOwn(\\\\S),br,img:not([src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg]))),img[src~=(?i)^$|^javascript:|[^a-z](css|ic(on)?|load(ing|ed)?)[^a-z]|/\\\\d+s\\\\.jpg],a:not(:matches(^$)>img)>*,:has(a):not(img,:matchesOwn([\\\\S\\\\s]{50,}),:has(img,:matchesOwn([\\\\S\\\\s]{50,}))),:matchesOwn([\\\\s\\\\S]{50})>:not(img,br,a,:has(img),:matchesOwn([\\\\s\\\\S]{50})),:not(img,br,p,a,:matches([\\\\s\\\\S]{200}),:has(p,br,img,div:matchesOwn(，|。)+div:matchesOwn(，|。)),:has(img,p,br,div:matchesOwn(，|。)+div:matchesOwn(，|。)) :matchesOwn(\\\\S):not(:not(p,div,span:has(br))))';\n\nd=[\":matchesOwn(\\\\S):has(br):has(:matchesOwn(\\\\S):has(br))\"\n,\":matchesOwn(\\\\S):has(br)\"\n,\":has(>:matchesOwn(\\\\S):not(:has(*))+:matchesOwn(\\\\S):not(:has(*)))\"\n,\":has(>:has(>p:only-child:matchesOwn(\\\\S):not(:has(*)))+:has(>p:only-child:matchesOwn(\\\\S):not(:has(*))))\"\n,\"img\"\n,\":matchesOwn(\\\\S)\"];\n\ntry{for(查=i!=''?i:java.get(\"元\");c;c--){\n\nif(!(c>1&&(String(r.text()).length<400||r.select(':matchesOwn(内容未加载完成|关闭(阅读|小说)模式)').size()))){\nr.select(sc).remove();\n\nif(!(查!=\"\"&&(lr=r.select(i?d[i==6?5:i]:查)).size()))for(i=0;i<6&&(lr=r.select(d[i]),i==4&&c==1?!lr.size():String(lr.text()).length<200);i++);\nif(c<2||i<6)break;}\n\nr=org.jsoup.Jsoup.parse(r2=String(java.ajax(baseUrl+',{\"webView\":true}')).replace(/(<[a-z]+)&nbsp;/g,'$1 '));\ndt=r1.length==r2.length?2:1}\n\nfor(c=lr.first(),v=1;v<lr.size();v++)if(lr.get(v).parents().contains(c)){\nlr.remove(v);\nv--}else c=lr.get(v);\n\nlr=String((c=lr.size()==2&&i<4)?String(lr.first().text()).length>String(lr.get(1).text()).length?lr.first():lr.get(1):(c=lr.size()==1)?lr.first():lr);\n\nif(查==\"\"){\nif(c&&(查=lr.match(/<([a-z]+) ([^>]+)>/))&&(查[2]=查[2].match(/(?:id|class|style)=(?:\"[^\"]+\"|'[^']+')|[^= ]+(?==\"[^\"]+\"|'[^']+')/g))){\nbook.putVariable(\"元\",查[1]+'['+查[2].join('][')+']')\n}else book.putVariable(\"序\",i)}\n\nlr=lr.replace(/<([a-z]+)[^>]*\"-\\d+\"[^>]*>[^<]+<\\/\\1>|[^<>]*<a[^<]+<\\/a>[^<]*|&lt[; ]?\\/?[a-z]+(?= |\\/?&gt)(?:[ a-z=-]+|\"[^\"]+\"|'[^']+')*\\/?&gt[; ]?|[☯📑⚙️🌕︴]/g,\"\").replace(/\\s+(?:\\s|(?:(?:(?:n?b)?s)?p)?;)/g,\"　　\");\n\nif(java.get(\"原\")!=1)lr=(!lr.indexOf(\"　　\")?lr.replace(/>(?!　　|\\s*(?:(?:(?:n?b)?s)?p)?;)\\s*(?=[^\\s<>])/g,\">︴\"):lr)\n.replace(/((?:[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]]\\s*)*(?:第?\\s*[一二三四五六七八九十百千万〇零0-9]+\\s*[章节回話话：:.．,，、]*\\s*)?{{\nn=(t=title.match(/\\S+$/)[0].replace(/[*$|?+\\\\\\^\\[\\](){}/]/g,\".?\")).replace(/^(正文[^\\u4e00-\\u9fa5A-Za-z]*|第?[一二三四五六七八九十百千万〇零0-9]+[章节回話话\\s：:.．,，、]*)+/,\"\"),n!=t&&/\\S/.test(n)?\"(?:第?\\\\s*[一二三四五六七八九十百千万〇零0-9]+\\\\s*[章节回話话：:.．,，、]*\\\\s*\"+n+\"|\"+t+\")\":t\n}}(?:\\s*[〖【『「（《〈〔［\\[(][^〖【『「（《〈〔［\\[()］〕〉》）」』】〗\\]]*[)］〕〉》）」』】〗\\]])*)/g,\"⚙️$1⚙️\")+\"📑\"\n\n}catch(e){}}\nif(dt)book.putVariable(dt==1?\"动\":\"静\",',{\"webView\":true}');lr",
      "imageStyle": "FULL",
      "nextContentUrl": "@js:if((r=java.getStringList((nx=java.get(\"next\"))+\"a:matches(第二[頁页]|下[一\\\\s]*[頁页]):not([href~=^javascript:|^#])@href||a:matches(下[一\\\\s]*[篇章回节節话話]):not([href~=^javascript:|^#])@href||a[href~=[_-]\\\\d+(/|\\\\.[a-z]+)?$]:has(i,img):not(:matches(\\\\S),[href~=^javascript:|^#])@href\")).size()){\nif(~String(book.tocUrl+(nextChapterUrl||'')).indexOf(r=String(r.get(r.size()-1)))||~r.indexOf(nextChapterUrl||String(book.tocUrl).replace(/.+(?=_\\d+\\/$)/,'')))r=null\n}else r=null;\nif(r){if(nx!='')chapter.putVariable(\"next\",(n=r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1))==r?'':'a[href=\"'+n+'\"]@href||');\nr+java.get(\"动\")}",
      "replaceRegex": "@js:if(java.get(\"原\")==1){result}else{\nresult=result.replace(/⚙️([^\\u4e00-\\u9fa5⚙️]+|[零〇一二三四五六七八九十百千万\\s]+|(?!第[零〇一二三四五六七八九十])[\\u4e00-\\u9fa5]+)⚙️/g,'$1').split('📑');\nl=result.length-1;\nwhile(l)if(r=result[--l].match(/^(\\n+(?:[^\\n]{1,30}\\n+){1,3})([\\S\\s]+)$/))result[l]=r[1]+r[2].replace(/⚙️/g,'');\nresult.join('📑')\n.replace(/—/g,\"─\")\n.replace(/[·۰•・]/g,\"・\")\n.replace(/\\s*(?:︴[^\\n　]+\\s+)*📑\\s*|^\\s*(︴[^\\n　]+\\s+)*|\\s*(?:　　|\\n)(?:[\\s&#a-zA-Z0-9]*;)?[\\s　?]*/g,\"☯\")\n.replace(/(?:︴[^☯]*☯)+(?=︴)|☯(?:温馨|[^a-zA-Z0-9\\u4e00-\\u9fa5☯]+)提示.?[:：][^☯]+|☯[^☯]+字体不会安装.?请百度[^☯]+|☯.{0,2}正版订阅在阅文旗下的起点和QQ书城，可以第一时间看到最新章节.{0,2}(?=☯)|︴\\s*第?[〖【『「（《〈〔［｛\\[{(][^☯]+(?=☯)|☯第\\s*[（(][^（()）]+[)）][頁页](?=☯)|[^☯]*(?:关注|[微vVＶｖ][^\\u4e00-\\u9fa5A-Za-z0-9]*[信xXｘＸ]|公[^\\u4e00-\\u9fa5]*众[^\\u4e00-\\u9fa5]*号){2,}[^☯]*|(?:&#?[a-z0-9]*;?)+(?=;|☯);*|read[sx][；;?？]+/g,\"\")\n.replace(/\\s+/g,\" \")\n.replace(/☯[ ☯]*/g,\"\\n\")\n.replace(/(\\n[〖【『「（《〈〔［｛\\[{(]?)([pPＰｐ][SsｓＳ]+(?=[ ：:;；，,、。.─\\d\\u4e00-\\u9fa5])[^\\n]+)/g,\"$1🌕$2\")\n.replace(/\\[\\[\\[[^\\[\\]]+http:file2.qidian.comchapters(.{5,6})(..)([^\\[\\]]{35})\\]\\]\\]/g,'<img src=\"http://file2.qidian.com/chapters/$1/$2/$3\">')\n.replace(/(<img )[^>]*(src=\"[^\"]+\")[^>]*(>)|((?: ?[＋+－-]?[0-9０-９]+(?:[．.／/][0-9０-９]+)?[％%:：]?[a-zA-Z]*)+ ?|[ _＿－-]?[a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９]+)/g,\"$1$2$3☯$4☯\")\n.replace(/☯[・。](?=☯)/g,\"☯.\")\n.replace(/,\\n/g,\"，\")\n.replace(/!(?=\\n)/g,\"！\")\n.replace(/\\?(?=\\n)/g,\"？\")\n.replace(/(<[^<]+)☯☯/g,\"⚙️$1⚙️\\n\")\n.replace(/(?:\\n[^āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─🌕︴\\n]+|([。？！…”』」】〗])[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─☯︴\\n]+[\\u4e00-\\u9fa5]+)?[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗、，：；？！。…─⚙️☯︴\\n]+(?=\\n)|[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*☯([a-zA-ZＡ-Ｚａ-ｚ]*[āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ][a-zA-ZＡ-Ｚａ-ｚ]*)☯[^☯!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛｝］〕〉）＞’”》」』】〗]*/g,\"$1$2\")\n.replace(/[^!\"'(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜<（〈〔［｛({\\[\\]})｝］〕〉）>＞’”》」』】〗︴🌕]*(?:☯[^.．!(),\\n\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗⚙️]+|([^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘<＜（〈〔［｛({\\[\\]})｝］〕〉）＞>’”》」』】〗⚙️])(?!\\1)|☯(?=[^☯!(),\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗][!(),\\s\\u4e00-\\u9fa5、，：；？！。…─〖【『「《“‘＜（〈〔［｛({\\[\\]})｝］〕〉）＞’”》」』】〗])|[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}]){4,}|[^；;％%～~?？!！\"'”’。…─\\na-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[〖【『「（《〈〔［｛\\[{(][^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[)｝］〕〉》）」』】〗\\]}](?:[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=[)｝］〕〉》）」』】〗\\]}]))?/g,\"📑\")\n.replace(/([；;％%～~?？!！\"'”’。…─])📑(?=[)｝］〕〉》）」』】〗\\]}])/g,'$1')\n.replace(/(?:([\\n。？！])[^\\n。？！]{1,10})?[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑|🌕)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})](?:[^。]{0,5}(?:[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*(?:☯[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]☯|📑)[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]*[｝］〕〉》）」』】〗\\]})]|[^📑!,()\\s\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]+))*(?:(?:[^\\n]{1,10}|(?:[\\u4e00-\\u9fa5]{0,5}[，、])*[\\u4e00-\\u9fa5]+[！。]?)(?=\\n))?/g,\"$1\")\n.replace(/((?:[请請][记記]住)?[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]*(?:(?:[^⚙️🌕📑︴*\\n(),\\u4e00-\\u9fa5、：，；？！。…─「」‘’“”（）《》〖〗【】]+[*(), \\u4e00-\\u9fa5、，:：；？！。…─「」‘’“”（）《》〖〗【】]{1,3})*[^*︴📑☯⚙️🌕\\s&;(),āáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜa-zA-ZＡ-Ｚａ-ｚ0-9０-９\\u4e00-\\u9fa5、,，:：;；?？!！。…～~─'\"‘’“”【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}％%・/／＝=_＿.．＋+－-]+(?!(?:[^>]+>)?⚙️)|☯[^☯\\n]+☯\\.☯[^☯\\n]+☯|本[文书](?:首发|来自)|(?:章节不完整.?|完整章节)?请.{2,6}(?:搜索|百度|引擎|关键[词字])+|(?:[阅閱][讀读]|访问|訪問|[網网地][站址]|链接|鏈接|[\\u4e00-\\u9fa50-9a-zA-Z]{0,4}(?:文学|中文|[網网]))+[:：]|[\\u4e00-\\u9fa50-9a-zA-Z]{0,6}(?:[網网地][站址]|链接|鏈接)为|.{2,4}文[学學][網网]|[请請].{2,4}收藏(?:.{0,2}推[荐薦])?|(?:天才)一秒[記记]住|，?請?訪問|(?:[更最][快新]|[快高]速|热门|(?:[阅閱][讀读])?完整|本|(?:官[網网]|本站).{0,2})(?:章[節节]|小说|更新|[網网地][址站][:：]?|快速)|更新(?:速度)?[最更]?快|(?:(?:无错)?小说|正版|免费|全[文本]|在线|访问|訪問|txt|TXT|继续|各种|推[荐薦]|收藏|分享|交流|你?喜欢的)+(?:全文|免费|在线|[阅閱]?[讀读]|下载|章[節节]|小说|好书)|章[節节](?:目录|列表)|小说[網网](?:更新)?|手打全文|[纯全](?:手打|文字)|手机看书|手机版|笔趣阁|(?:本站|[網网]站|站内|看)?无(?:任何)?(?:广告|弹窗|防盗)(?:章节)?|不弹窗|(?:(?:請|请|或者?)?(?:訪問|访问|[電电手][腦脑机機]|[網网][址站]|用[户戶]|浏览|瀏覽|閱讀|阅读|看小说|看漫画)){2,}|看小说|看漫画|(?:用[^\\n]{2,6})?(?:[追看]书|小说)(?:就用|软件|☯[^☯]+☯)，?|用[^\\n]{2,6}[追看]书|(?:..的)?(?:最佳选择|阅读体验)|(?:推[荐薦]|收藏|分享)(?:本站|我们)|小说..版|文章质量更好|谢谢各位(?:读者|书友)支持|水印广告测试|本章未完|请翻页|点击下一页|领.{0,2}红包|同步更新《[^《》]+》|关注[〖【『「（《〈〔［｛\\[{(][^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+[)｝］〕〉》）」』】〗\\]}])(?:[* (),\\u4e00-\\u9fa5、，：；？！。…─‘’“”（）《》〖〗【】]{0,3}[^⚙️📑*\\n(),\\u4e00-\\u9fa5、，：；？！。…─「」‘’“”（）《》〖〗【】]+|[….。!！]+(?=\\n))*|⚙️(?!<)[^⚙️\\n]+⚙️)/g,\"\\n⚙️$1⚙️\\n\")\n.replace(/⚙️(<[^<>]+>)⚙️\\n|[〖【『「（《〈〔［｛\\[{(](?:[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}\\n⚙️(?!\\s*\\S\\s*⚙️).+⚙️\\n*)+[^〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]{0,3}[)｝］〕〉》）」』】〗\\]}]|(🌕)\\s*⚙️|⚙️\\n[^\\u4e00-\\u9fa5]{0,5}\\n⚙️|\\n⚙️\\s*(\\S)\\s*⚙️\\n(?![^⚙️]{1,3}⚙️)|(⚙️\\n)|([，、；])[\\s,，。、…:：;；?？!！`’]*[,，。、…:：;；?？!！`’](?!⚙️)|\\n[\\s,，。、…:：;；?？!！`’]*(?=[,，。、:：;；?？!！])|([：？！。…─])(?:[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+(?=\\n)|[^⚙️☯a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n…─“‘’”〖【『「（《〈〔［｛\\[{()｝］〕〉》）」』】〗\\]}]+)|☯/g,\"$1$2$3$4$5$6\")\n.replace(/([)）？！?!…」』”\\s。])(?:[^\\n（(🌕)）”』」’。]{0,5}(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n”』」。]{0,5}📑)[^（()）\\n。]{0,5}(?:\\n⚙️.+⚙️(?:\\n(?=\\n⚙️|[^（()）\\n]{1,5}\\n))?|[^（()）\\n。]{0,5}📑(?:[^📑]{1,5}(?=\\n⚙️))?)+(?:[^（()）\\n]{1,5}(?=\\n))?|(?:(?:(?:\\n⚙️.+⚙️\\n|[^（()）\\n。]{0,5}📑)[^（()）\\n]{0,5}){2,}|[^（(🌕)）”』」’\\n。]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|同步|下载|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度|[插说]一?[下句]话?，[\\u4e00-\\u9fa5]{0,5})[^（()）\\n]{0,5})*(?:📑|\\n⚙️[^\\n]+⚙️\\n)[^（()）\\n]{0,5}(?:(?:請|关键[词字]|[電电手][腦機]|用戶|瀏覽|[阅閱]讀|推[薦荐]|收藏|分享|文章质量|谢谢(各位|支持|大家)|水印|翻页|点击|下[一\\s]*[页頁篇章回节節话話]|免费|热门|官网|正版|在线|下载|同步|文学|中文|章节|[本网][站址]|站内|小说|更新|无错|[本全][文本章]|首发|广个?告|弹窗|防盗|访问|訪問|txt|TXT|读者|书友|百度)[^（()）\\n]{0,5})*|[^（(🌕)）\\n”』」’。]{0,3}\\n⚙️.+⚙️\\n[^（()）\\n。]{0,3})(?:[\\u4e00-\\u9fa5]+[！。]?|[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]+)?(?=\\n)))+|\\n⚙️[^\\u4e00-\\u9fa5]+⚙️\\n|📑|\\s*︴\\s*|\\n?⚙️\\n?|\\n[^a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n]{2,}\\n[^🌕a-zA-ZＡ-Ｚａ-ｚāáǎàōóǒòēéěèīíǐìūúǔùǖǘǚǜ0-9０-９\\u4e00-\\u9fa5\\n“《‘【〖『「]*/g,\"$1\")\n.replace(/(?:(?:\\n🌕[^\\n]*)+(?:\\n+[^\\n]+){0,4}|\\n(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|[^\\n]*起点(?:原创|中文)[^\\n]*|[〖【『「（《〈〔［｛\\[{(]?未完待续[^\\n]*)[^\\u4e00-\\u9fa5<>]*$|^\\s*(?:(?:[^\\n]+\\n+){0,4}(?:🌕[^\\n]*\\n?)+|(?:[(（{｛][^(（<{｛｝}>）)]*(?:(?:[(（{｛][^(（<{｛｝}>）)]*[）)｝}])[^(（<{｛｝}>）)]*)*[）)｝}]?\\s*)+|，[^\\n]+)\\n|(?:^|\\n)[^a-z0-9A-Z\\u4e00-\\u9fa5]*(?=\\n)|🌕|\\n\\s*[a-zA-Z]+\\s*$/g,\"\")}",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "bookList": "",
      "bookUrl": ""
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": "class.line",
      "bookUrl": "a.1@href",
      "checkKeyWord": "好一个气运人间",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "@js:if(java.get(\"单\")==''){\nsrc=org.jsoup.Jsoup.parse(src);\n\nif((result=java.get(\"录\"))==\"\"){if(页=(result=src.select('a[href~=\\\\S]:matches(下[一\\\\s]*[页頁]|下[一二三四五六七八九十百千万〇零0-9]{2,}章):not([href~=^#|javascript:])')).size())result=result.first().attr('href')\n}else{网=String(result).split(\"🌕\");\nfor(i=3,页=+网[0],result=网[1]+2+网[3];i<=页;i++)result+='\\n'+网[1]+i+网[3];\nresult=String(result)}\n\nif(页)java.put(\"页\",/,/.test(book.tocUrl)?result.split('\\n').join(',{\"webView\":true}\\n')+',{\"webView\":true}':result);\n\n嗅=()=>String(src).match(/[\\[(]([\"'])<[a-z]+[ >][^\\[\\]()]+<\\/a>(?:[^\\[\\],()]*<\\/[a-z]+>)?\\1[\\])]/);\n转=it=>it.replace(/\\\\[Uu]([0-9a-zA-Z]{4})/g,(_,it)=>String.fromCharCode(parseInt('0x'+it)));\n兜=()=>src.select(':matchesOwn(^$|[0-9〇一二三四五六七八九十])>a:matches(\\\\S):not(:has(*>*>:not(span)),[href~=(?i)passport|\\\\.aspx$|\\\\.php$|^https://[^/]+(/|index\\\\.[a-z]+)?$|(^|[^/])[?/].*((book|[^a-z])(info|case|page|reg|Game|Play)[^a-z]|buy[^a-z]|SystemInfo|hot|sort|desc|asc|top|coins|nutrition|review|ticket|update|(app|author|xiazai|down)(?!=))|/list\\\\d*([/_-][^/_-]+/?)?$|\\\\d+_\\\\d+_\\\\d+|target=iframe|https%],:matches((?i)^((点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)[\\\\s.端版]*(?=$|点击|软件|应用|安装|客户|移动|手机|电脑|安卓|苹果|下载|阅读|pc|ap[kp]|ipa|plx|deb|exe|zip|rar|txt|epub)|[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?返回.*(简介|书页|目录)[A-Za-z0-9\\\\u4e00-\\\\u9fa5]?|[<>-]+|\\\\d+-\\\\d+章|书页|目录|简介|[上下首尾]([一\\\\s]*[页頁]|[\\\\s\\\\d零〇一二三四五六七八九十百]*章)|[↑\\\\[]?[倒正反逆顺順]序[↓\\\\]]?)$))');\n\nif((zt=java.get(\"嗅\"))!=''){\nif(zt>0&&(嗅=嗅())){\nsrc=嗅[0];\nif(zt==2)src=转(src);\nsrc=org.jsoup.Jsoup.parse(src)}\nsrc.select(java.get(\"除\")).remove();\nif(java.get(\"兜\")==1)src=兜();\nsrc=src.select(java.get(\"查\"))\n\nif(!页){for(首=String(java.get(\"首\")).split('\\n'),ss=src.size(),i=0;i<ss;i++)if(首[i]!=src.get(i)){\nif(i>1)src.subList(1,i).clear();break;}}\n\n}else{\nbook.putVariable(\"除\",除=\"meta,link,a:has(img),\"+((zt=java.get(\"全\")!=1)?\"a[href$=\"+String(book.tocUrl).replace(/,\\{\"webView\":true\\}|^.{8}[^/]*/g,'')+\"],\":\"\")+(基=String(java.get(\"基\")),基==''?'':\"a[href$=\"+基.replace(/^.{8}[^/]*/,'')+\"],\")+\"a[href~=javascript:|#|[a-z]+[A-Z][a-z]+Id[=_-]|[^/][/?&]sub[A-Z]|action=list],a:matches(^$|最新章节$|^[^\\\\u4e00-\\\\u9fa5A-Z0-9]*(正文|.{0,2}书架|(免费|在线|开始|立即|全文|从头|点击|正文)+[试阅]读|[^\\\\s\\\\d外内楔前后卷篇章]*(更新调整|[两一二三四五六七八九十]+连更|作者[:：给要有]|双倍月票|感言|推书|推[a-z0-9A-Z_\\\\u4e00-\\\\u9fa5-]+书|[求个请投点下张](月?票|收藏|订阅|推荐)|(感谢|作者)[^\\\\s]*(读者|书友|大家|各位)|[书点]评[^\\\\s]*活动|[没有空]更新|没时间更新|请个?假|关于本书|关于更新|打赏名单|起点活动)[^\\\\s]*)[^\\\\u4e00-\\\\u9fa5A-Z0-9]*$)\");\n\nbook.putVariable(\"嗅\",(基=嗅())?(src=org.jsoup.Jsoup.parse((zt=/\\\\[Uu]([0-9a-zA-Z]{4})/.test(基=基[0]))?转(基):基),zt)?2:1:0);\nsrc.select(除).remove();\n\nif(zt=java.get(\"全\")!=1){\n找=ll=null;\n$=it=>(qc=ll,查=找,ll=src.select(找=it)).size()>14&&(查=it,src=re=ll);\n\nif(!(((ck=java.get(\"ck\"))!=\"\"&&$(\"[href~=\"+ck+\"(?!index(/|\\.[a-z]+)?$)[^.?/_-][^&/_-]*/?$|/[vV][iI][pP][_-]?([Rr]ead|[Cc]hapter|action=article)|([A-Za-z]\\\\d+|\\\\d[A-Za-z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?&]*$]\"))||$(\"[href~=^[a-z0-9]+(/|\\\\.[^./]+)?$]\"))){\nif(qc&&qc.size()>ll.size())找=查,ll=qc;\n\n$=it=>(re=src.select(it)).size()&&(查=it,src=re);\n\nif(!($(\"[data-cid]\")||$(\"[href~=(?i)(^|[/_-])(chapter|read)+([_-]?id)?/[^/_-]+[/_-][^/_-]+]\")||$(\"[href~=(?i)(^|[&?/_-](book|novel|comic|manhua|mh?)?)(chapter|read)+([_-]?id)?[?/=]]\")||$(\"[href~=(?i)[&?/_-]cid[&?/_=-]]\")||$(\"[data-href]\"))){\nsrc=兜();\nbook.putVariable(\"兜\",1);\n\nba=(ba=String(java.get(\"ba\"))).match(/(\\?(?:[^=]+=)+)(.+)$/)||ba.match(/(?:[^/_-][/_-]([^/._-]+))?[/_-]([^/._-]+)(?:\\/|\\/index[^/]*|\\.[^/.]+)?$/);\n\nif(xi=(id=ba[2]).match(/\\?[^=]+=([^&]+)/)||id.match(/^[^\\d%]*(\\d{2,}|[1-9])$/)||ba[1]&&ba[1].match(/^[^\\d%]*(\\d{2,})$/))id=xi[1];\n\n$(\"[href~=([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\\\\d+]:not([href~=\"+id+\"[^\\\\d]*$]),[href~=/[vV][iI][pP]|([A-Za-z]\\\\d+|\\\\d[a-zA-Z]+|[A-Z][a-z]+|[a-z][A-Z]+){3,}[^/?]*$|([^\\\\d]|^)\"+id+\"[/_&-][^\\\\d]*\"+id+\"(/|\\\\.[^.]+|&.+)?$]\")||$(\"[title]\")||$(\"[href~=/view/\\\\d+\\\\.[a-zA-Z]+$]\")}\nif(re.size()<ll.size())查=找,src=ll}}\n\nif(!(zt&&re.size()))src=src.select('a'),查='a';\nif(查)book.putVariable(\"查\",查);\nif(页)java.put(\"首\",src)}\n\nsrc}else if((list=java.get(\"单\"))!=1){\n\nif((网=String(list).split(\"🌕\")).length>1){\nfor(i=+网[2],x=+网[0],j=2,list=\"<a href='\"+baseUrl+\"'>正文1</a>\";i<=x;i++,j++)list+=\"<a href='\"+网[1]+i+网[3]+\"'>正文\"+j+\"</a>\"}\n\norg.jsoup.Jsoup.parse(list).select('a')\n\n}else org.jsoup.Jsoup.parse(\"<a href='\"+baseUrl+\"'>正文</a>\").select('a')",
      "chapterName": "text",
      "chapterUrl": "href@js:chapter.putVariable(\"next\",'a[href~=(?:^|[?/])'+(r=result.trim().replace(/([*$|?+(){}\\[\\]\\^\\\\])/g,'\\\\$1')).match(/[^?/=.]+(?:=(?![01]$)[^=]+)*(?=\\/*$|\\.[^?/.]+$|=[01]$)/)[0]+'[=/_-]2(?:\\\\/|\\\\.[^?/.]+)? *$]@href||a[href~=(?:^|[?/])'+r.replace(/\\d+(?=[^\\d]*$)/,it=>+it+1)+' *$]@href||');result+java.get(\"动\")",
      "isVip": "",
      "nextTocUrl": "@js:java.get(\"页\")",
      "updateTime": ""
    },
    "searchUrl": "<js> \nvar url = baseUrl;\nif (!baseUrl.match(/^https?:/i)) {\n    java.log('\\n\\n\\n\\n‼️请填入正确的Url‼️\\n\\n\\n\\n');\n}\nvar html = java.ajax(url + \",{'webView': true}\");\n//java.log(html);\nvar doc = org.jsoup.Jsoup.parse(html);\nvar form = doc.select('form[action]:not([name~=login]):not([class~=login]):not([id~=login])')[0];\n//java.log(form);\nvar method = form.attr('method');\nvar action = form.attr('action');\nvar charset = doc.select('head>meta[charset]').attr('charset');\nif (charset == '')\n{\n    charset = String(doc.select('head>meta[content~=charset=]').attr('content')).replace(/^.*charset=([a-z0-9\\-]+).*$/i, \n    '$1');\n}\n//java.log(method);\n//java.log(action);\n//java.log(charset);\n//桌面版UA\nvar uaw = \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36\";\n//手机版UA\nvar uam = \"Mozilla/5.0 (Linux; Android 7.0; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/48.0.2564.116 Mobile Safari/537.36 T7/10.3 SearchCraft/2.6.2 (baiduboxapp; P1 7.0)\";\nvar headers = {\n    //请自行选择UA，↓↓↓填入此处\n    \"User-Agent\" : uaw, \"Referer\" : String(baseUrl)\n};\nurl = baseUrl.replace(/([^\\/])$/i, '$1/') + String(action).replace(/^\\//, '');\nvar body = '';\nvar option = {};\nvar sk = form.select('input[name][type=\"text\"],input[name][class=\"text\"]').attr('name');\n//java.log(sk);\nvar es = form.select('input[name]:not([type=\"submit\"])');\nfor (var it in es)\n{\n    var e = es[it];\n    var k = e.attr('name');\n    var v = e.attr('value');\n    if (k == sk) {\n        //body+=sk+'={{java.encodeURI(key,\\''+ charset+'\\');}}&';\n        body += sk + '={{key}}&';\n    }\n    else {\n        body += k + '=' + v + '&';\n    }\n}\nes = form.select('select[name]');\nfor (it in es)\n{\n    var e = es[it];\n    var k = e.attr('name');\n    var v = e.select('option')[0].attr('value');\n    body += k + '=' + v + '&';\n}\nbody = String(body).replace(/&$/, '');\njava.log(body);\nif (method.match(/post/i))\n{\n    option = \n    {\n        \"charset\" : String(charset), \"method\" : String(method), \"body\" : String(body), \"headers\" : headers, \n        \"webView\" : true \n    };\n    url += ',' + JSON.stringify(option);\n}\nelse\n{\n    //get\n    option = {\n        \"charset\" : String(charset), \"headers\" : headers, \"webView\" : true \n    };\n    url += '?' + body + ',' + JSON.stringify(option);\n}\njava.log(url);\n</js>",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃爱书包🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.txt.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 907,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3704.400 QQBrowser/10.4.3587.400\"\n}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 462,
    "ruleBookInfo": {
      "author": "class.info@tag.h3@tag.a@text",
      "coverUrl": "class.img@tag.img@src",
      "intro": "id.intro@html",
      "lastChapter": "class.info@span@a@text",
      "name": "class.info@tag.h1@text"
    },
    "ruleContent": {
      "content": "id.book_text@html##一秒记住.*|www.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.a.0@href##.*/(\\d+)/(\\d+)/##/files/article/image/$1/$2/$2s.jpg",
      "kind": "class.even.2@text",
      "lastChapter": "tag.td.1@text",
      "name": "tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.article_texttitleb@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.39txt.com/modules/article/search.php?q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\nhttps://wap.po18.work\n肉肉书 https://wap.rouroushu.com\n肉文屋 https://m.rouwenwu16.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "PO18文学⑭",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.ya49.com/#🚀",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 908,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"🎖 排行榜 🎖\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总排行\",\"url\":\"/top/allvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"月排行\",\"url\":\"/top/monthvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"总推荐\",\"url\":\"/top/allvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"月推荐\",\"url\":\"/top/monthvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"总收藏\",\"url\":\"/top/goodnum-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"字数榜\",\"url\":\"/top/size-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"更新榜\",\"url\":\"/top/lastupdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"新入库\",\"url\":\"/top/postdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},\n{\"title\":\"🍀全部分类🍀\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"校园言情\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代言情\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"罗曼史\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"百合\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"同人\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇幻玄幻\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"网游竞技\",\"url\":\"/sort/9-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻异能\",\"url\":\"/sort/10-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/sort/11-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"惊悚推理\",\"url\":\"/sort/12-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/sort/13-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/sort/14-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越重生\",\"url\":\"/sort/15-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"综合其它\",\"url\":\"/sort/16-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"完  本\",\"url\":\"/wanben-{{page}}.html\",\"style\":{\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1721298851890,
    "loginUrl": "",
    "respondTime": 21754,
    "ruleBookInfo": {
      "author": "##:author\"[^\"]+\"([^\"]*)##$1###",
      "coverUrl": "##og:image\"[^\"]+\"([^\"]*)##$1###",
      "intro": "##:description\"[^\"]+\"([^\"]*)##$1###",
      "kind": "##:category\"[^\"]+\"([^\"]*)##$1###",
      "lastChapter": "##_chapter_name\"[^\"]+\"([^\"]*)##$1###",
      "name": "##:book_name\"[^\"]+\"([^\"]*)##$1###",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "div#content@html",
      "nextContentUrl": "text.下一页@href\n//需要加载下一页,章节地址添加##$##,{\"webView\": true}",
      "replaceRegex": "##更多小说请收藏.*|\\s*_{4,}"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author@text||.authorName@text||.authorNm@text||text.作者@text##作者：",
      "bookList": "ul.topul>li",
      "bookUrl": "h2>a@href",
      "checkKeyWord": "我的",
      "coverUrl": "##<img\\s*src=\"([^\"]+)\"##$1###",
      "intro": ".intro@text||.introduce@text||.desc@text||.desc_info@text||.book_des@text||.bookintro@text",
      "kind": "i.lianzai@text",
      "lastChapter": ".latest_chapter@text||.lastChapterName@text||.newest_chapter_name@text||.market-info@text||.latest@text",
      "name": "h2>a@text",
      "wordCount": ".other@text"
    },
    "ruleToc": {
      "chapterList": "tag.ul.2@tag.li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}\n",
    "weight": 0
  },
  {
    "bookSourceComment": "@jin1987：此赛道可排进前十，连载期间偶尔能看，好朋友小说路上，章节后有广，建议替换",
    "bookSourceGroup": "免费",
    "bookSourceName": " 玄幻文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.xhwx6.com#",
    "bookUrlPattern": "https?://m.xhwx6.com/xuanhuan/\\d+.html",
    "customButton": false,
    "customOrder": 909,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1741577933942,
    "respondTime": 1365,
    "ruleBookInfo": {
      "author": ".block_txt2@a.2@text",
      "coverUrl": ".block_img2@img@src",
      "downloadUrls": "text.TXT下载@href",
      "intro": ".intro_info@ownText##简介：|最新章节推荐地址：.* ",
      "kind": ".block_txt2@p.3:4:5@text\n##分类：|状态：|更新：",
      "lastChapter": ".block_txt2@p.6@text##最新：",
      "name": "h2@a@text"
    },
    "ruleContent": {
      "content": "#nr1@html##Ｘ.*|，最快更新.*|「如章节缺失.*」",
      "nextContentUrl": "@js:\nif (result.indexOf(\"nex22.png\") > -1) {\n  var code = result.match(/eval\\(function(.*)\\);/)[0];\n  code = code.replace(/u[0-9a-f]{10,}/, 'uData')\n  var uData = \"\";\n  eval(code);\n\t\n\tif(!uData.match('_')) {\n\tnext = java.getElement(\"@@#pb_next@a\")\n\tuData = next.attr(\"href\")\n\t}\n\t\n  uData;\n}",
      "replaceRegex": "##\\,如内容.*阅读。|\\,请退出.*阅读全文。|.*最新章节网.*|您所看到的内容.*|本章未完.*",
      "webJs": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s3@text",
      "bookList": ".lis li",
      "bookUrl": ".s2@a@href",
      "checkKeyWord": "高天",
      "coverUrl": "a@href##((\\d+)\\d{3}).html##https://img.xhwx6.com/$2/$1/$1s.jpg###",
      "kind": ".s1@text##\\[|\\]",
      "name": ".s2@a@text"
    },
    "ruleToc": {
      "chapterList": ".chapter.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "option@value||text.下一页@href"
    },
    "searchUrl": "<js>\n  u=source.getKey().match(/([^\\#]+)\\#/)[1];\n  cookie.removeCookie(u);\n\thm=java.get(u,{});\tcs=decodeURIComponent(String(hm.header(\"Set-Cookie\")).replace(/[eE]xpires[^;]+;|[pP]ath=\\/;|,|httponly|\\s/g,'').replace(/^;|;$/g,''));\ttoken=org.jsoup.Jsoup.parse(hm.body()).select('input[name=\"_token\"]').attr('value');\ns=page>1?'&page='+page:'';\tbody=\"_token=\"+token+\"&kw=\"+key+s;\n\thead={\"cookie\":cs}\n\tpost={\n\t\t\"method\": \"POST\",\n\t\t\"body\":body,\n\t\t\"headers\":head\n\t}\nu+\"/search/,\"+JSON.stringify(post)\n</js>",
    "variableComment": "@js:\nJSON.stringify({\n\t\"upgrade-insecure-requests\":\"1\",\n\t\"accept\":\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\",\n\t\"accept-language\":\"zh-CN,en-US;q=0.9\",\n\t\"Referer\": source.getKey().match(/([^\\#]+)\\#/)[1],\n\t\"User-Agent\":\"Mozilla/5.0 (linux; u; android 9; zh-cn; v1816a build/pkq1.180819.001) applewebkit/537.36 (khtml, like gecko) version/4.0 chrome/100.0.2987.108 quark/6.5.5.137 mobile safari/537.36\"\n});",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "一起看看",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.17kankan.org/",
    "customButton": false,
    "customOrder": 912,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1726649332102,
    "respondTime": 4072,
    "ruleBookInfo": {
      "author": "p.0@a.0@text",
      "coverUrl": "img@src",
      "intro": ".p2.1@text",
      "kind": ".tab1@text",
      "lastChapter": "p.2@a.0@text",
      "name": "h1.0@text",
      "tocUrl": ".infolink@a.1@href",
      "wordCount": "p.1@text##更新："
    },
    "ruleContent": {
      "content": "#novelcontent@html",
      "nextContentUrl": "text.下一小节@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".search_box@p",
      "bookUrl": "a.0@href",
      "checkKeyWord": "我的",
      "kind": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "li@a",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n\"body\": \"s={{key}}&type=articlename\",\n\"charset\": \"gbk\", \n\"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "//By:空白,无发现",
    "bookSourceGroup": "免费",
    "bookSourceName": "NTR小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.aahhss.com/",
    "bookUrlPattern": "https?://www.aahhss.com/book/\\d+/",
    "customButton": false,
    "customOrder": 914,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1736537126785,
    "respondTime": 42500,
    "ruleBookInfo": {
      "author": ".authors@text",
      "coverUrl": "img.0@src",
      "init": "",
      "intro": "&nbsp;\n📖 书名：{{@@h1@text}}\n👤 作者：{{@@.authors@text}}\n👀 时间：{{@@meta.-3@content}}\n📜 收藏：{{@@.collect dd@text}}\n🗂 分类：{{@@.status dd@text}}\n🔖 标签：{{@@.tag@text}}\n🗿 肉量：{{@@.pornrate dd@text}}\n✏  评分：{{@@.score dd@text}}\n🕰 最新：{{@@.new dd a@text}}\n👁 观看：{{@@.onclick dd@text}}\n💐 字数：{{@@.wordcount dd@text}}\n🍧 猜你：{{@@.book-like a@text##\\n##❤️}}{{'\\n&lrm;\\n'}}\n🏷 简介：{{@@.book-desc@text}}",
      "kind": ".status dd@text&&.tag a@text",
      "lastChapter": ".new dd@text",
      "name": "h1@text",
      "wordCount": ".wordcount@text"
    },
    "ruleContent": {
      "content": ".content@p@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "span@text",
      "bookList": ".grid-item",
      "bookUrl": "a@href##www.*com##www.aahhss.com",
      "coverUrl": "img@src",
      "lastChapter": "a@href##www.*com##www.aahhss.com<js>java.ajax(result)</js>.new dd@text",
      "name": "h3@text"
    },
    "ruleToc": {
      "chapterList": ".book-chapter@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.aakkrr.com/book/{{key}}/{{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "Căng Cực",
    "bookSourceType": 2,
    "bookSourceUrl": "https://cangcuc.com/",
    "customButton": false,
    "customOrder": 917,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"主页\",\"url\":\"?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":null}},{\"title\":\"美图\",\"url\":\"anh-dep-gai-xinh/?page={{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":null}}]",
    "lastUpdateTime": 1745159110863,
    "respondTime": 4695,
    "ruleBookInfo": {
      "canReName": "",
      "coverUrl": ".post-single-image@img@src",
      "intro": "&nbsp;{{book.name}}\n&shy;\n{{@.entry-meta@html}}",
      "kind": ".categorie@text"
    },
    "ruleContent": {
      "content": ".post-single-body@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "{{\"Căng Cực\"}}",
      "bookList": ".masonry-item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "h5@text",
      "kind": ".entry-cat@a@text&&.entry-meta@li@text",
      "name": "h5@text"
    },
    "ruleToc": {
      "chapterList": "body",
      "chapterName": "{{book.name}}",
      "chapterUrl": ""
    },
    "searchUrl": "?s={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "猩猩小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://444.1006sd.com",
    "customButton": false,
    "customOrder": 918,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": ":/public/api.php?app=search&q=处女&page={{page}}\n处女::https://444.1006sd.com/public/api.php?app=search&q=处&page={{page}}\n　0::/public/api.php?app=search&q=0岁&page={{page}}\n1::/public/api.php?app=search&q=1&page={{page}}\n2::/public/api.php?app=search&q=2&page={{page}}\n3::/public/api.php?app=search&q=3&page={{page}}\n4::/public/api.php?app=search&q=4&page={{page}}\n5::/public/api.php?app=search&q=5&page={{page}}\n6::/public/api.php?app=search&q=6&page={{page}}\n7::/public/api.php?app=search&q=7&page={{page}}\n8::/public/api.php?app=search&q=8&page={{page}}\n9::/public/api.php?app=search&q=9&page={{page}}\nP::/public/api.php?app=search&q=P&page={{page}}\n一::/public/api.php?app=search&q=一&page={{page}}\n二::/public/api.php?app=search&q=二&page={{page}}\n三::/public/api.php?app=search&q=三&page={{page}}\n四::/public/api.php?app=search&q=四&page={{page}}\n五::/public/api.php?app=search&q=五&page={{page}}\n六::/public/api.php?app=search&q=六&page={{page}}\n七::/public/api.php?app=search&q=七&page={{page}}\n八::/public/api.php?app=search&q=八&page={{page}}\n九::/public/api.php?app=search&q=九&page={{page}}\n丁::/public/api.php?app=search&q=丁&page={{page}}\n十::/public/api.php?app=search&q=十&page={{page}}\n丈::/public/api.php?app=search&q=丈&page={{page}}\n上::/public/api.php?app=search&q=上&page={{page}}\n下::/public/api.php?app=search&q=下&page={{page}}\n不::/public/api.php?app=search&q=不&page={{page}}\n世::/public/api.php?app=search&q=世&page={{page}}\n东::/public/api.php?app=search&q=东&page={{page}}\n丝::/public/api.php?app=search&q=丝&page={{page}}\n两::/public/api.php?app=search&q=两&page={{page}}\n丫::/public/api.php?app=search&q=丫&page={{page}}\n中::/public/api.php?app=search&q=中&page={{page}}\n丰::/public/api.php?app=search&q=丰&page={{page}}\n丸::/public/api.php?app=search&q=丸&page={{page}}\n主::/public/api.php?app=search&q=主&page={{page}}\n义::/public/api.php?app=search&q=义&page={{page}}\n乘::/public/api.php?app=search&q=乘&page={{page}}\n买::/public/api.php?app=search&q=买&page={{page}}\n乱::/public/api.php?app=search&q=乱&page={{page}}\n乳::/public/api.php?app=search&q=乳&page={{page}}\n事::/public/api.php?app=search&q=事&page={{page}}\n云::/public/api.php?app=search&q=云&page={{page}}\n亡::/public/api.php?app=search&q=亡&page={{page}}\n交::/public/api.php?app=search&q=交&page={{page}}\n亲::/public/api.php?app=search&q=亲&page={{page}}\n亵::/public/api.php?app=search&q=亵&page={{page}}\n人::/public/api.php?app=search&q=人&page={{page}}\n仆::/public/api.php?app=search&q=仆&page={{page}}\n仙::/public/api.php?app=search&q=仙&page={{page}}\n伦::/public/api.php?app=search&q=伦&page={{page}}\n位::/public/api.php?app=search&q=位&page={{page}}\n住::/public/api.php?app=search&q=住&page={{page}}\n体::/public/api.php?app=search&q=体&page={{page}}\n佛::/public/api.php?app=search&q=佛&page={{page}}\n侄::/public/api.php?app=search&q=侄&page={{page}}\n侣::/public/api.php?app=search&q=侣&page={{page}}\n侵::/public/api.php?app=search&q=侵&page={{page}}\n便::/public/api.php?app=search&q=便&page={{page}}\n修::/public/api.php?app=search&q=修&page={{page}}\n做::/public/api.php?app=search&q=做&page={{page}}\n停::/public/api.php?app=search&q=停&page={{page}}\n偶::/public/api.php?app=search&q=偶&page={{page}}\n偷::/public/api.php?app=search&q=偷&page={{page}}\n催::/public/api.php?app=search&q=催&page={{page}}\n儿::/public/api.php?app=search&q=儿&page={{page}}\n兄::/public/api.php?app=search&q=兄&page={{page}}\n光::/public/api.php?app=search&q=光&page={{page}}\n入::/public/api.php?app=search&q=入&page={{page}}\n全::/public/api.php?app=search&q=全&page={{page}}\n公::/public/api.php?app=search&q=公&page={{page}}\n共::/public/api.php?app=search&q=共&page={{page}}\n关::/public/api.php?app=search&q=关&page={{page}}\n兵::/public/api.php?app=search&q=兵&page={{page}}\n具::/public/api.php?app=search&q=具&page={{page}}\n养::/public/api.php?app=search&q=养&page={{page}}\n兽::/public/api.php?app=search&q=兽&page={{page}}\n内::/public/api.php?app=search&q=内&page={{page}}\n军::/public/api.php?app=search&q=军&page={{page}}\n凌::/public/api.php?app=search&q=凌&page={{page}}\n出::/public/api.php?app=search&q=出&page={{page}}\n分::/public/api.php?app=search&q=分&page={{page}}\n刚::/public/api.php?app=search&q=刚&page={{page}}\n初::/public/api.php?app=search&q=初&page={{page}}\n制::/public/api.php?app=search&q=制&page={{page}}\n剥::/public/api.php?app=search&q=剥&page={{page}}\n办::/public/api.php?app=search&q=办&page={{page}}\n务::/public/api.php?app=search&q=务&page={{page}}\n动::/public/api.php?app=search&q=动&page={{page}}\n勃::/public/api.php?app=search&q=勃&page={{page}}\n包::/public/api.php?app=search&q=包&page={{page}}\n医::/public/api.php?app=search&q=医&page={{page}}\n半::/public/api.php?app=search&q=半&page={{page}}\n卖::/public/api.php?app=search&q=卖&page={{page}}\n厕::/public/api.php?app=search&q=厕&page={{page}}\n厥::/public/api.php?app=search&q=厥&page={{page}}\n去::/public/api.php?app=search&q=去&page={{page}}\n友::/public/api.php?app=search&q=友&page={{page}}\n双::/public/api.php?app=search&q=双&page={{page}}\n发::/public/api.php?app=search&q=发&page={{page}}\n叔::/public/api.php?app=search&q=叔&page={{page}}\n受::/public/api.php?app=search&q=受&page={{page}}\n口::/public/api.php?app=search&q=口&page={{page}}\n叫::/public/api.php?app=search&q=叫&page={{page}}\n可::/public/api.php?app=search&q=可&page={{page}}\n吃::/public/api.php?app=search&q=吃&page={{page}}\n合::/public/api.php?app=search&q=合&page={{page}}\n同::/public/api.php?app=search&q=同&page={{page}}\n名::/public/api.php?app=search&q=名&page={{page}}\n后::/public/api.php?app=search&q=后&page={{page}}\n吞::/public/api.php?app=search&q=吞&page={{page}}\n吟::/public/api.php?app=search&q=吟&page={{page}}\n吧::/public/api.php?app=search&q=吧&page={{page}}\n含::/public/api.php?app=search&q=含&page={{page}}\n吮::/public/api.php?app=search&q=吮&page={{page}}\n吸::/public/api.php?app=search&q=吸&page={{page}}\n吹::/public/api.php?app=search&q=吹&page={{page}}\n吻::/public/api.php?app=search&q=吻&page={{page}}\n呦::/public/api.php?app=search&q=呦&page={{page}}\n呻::/public/api.php?app=search&q=呻&page={{page}}\n呼::/public/api.php?app=search&q=呼&page={{page}}\n和::/public/api.php?app=search&q=和&page={{page}}\n咪::/public/api.php?app=search&q=咪&page={{page}}\n品::/public/api.php?app=search&q=品&page={{page}}\n哭::/public/api.php?app=search&q=哭&page={{page}}\n唇::/public/api.php?app=search&q=唇&page={{page}}\n啊::/public/api.php?app=search&q=啊&page={{page}}\n啪::/public/api.php?app=search&q=啪&page={{page}}\n喉::/public/api.php?app=search&q=喉&page={{page}}\n喝::/public/api.php?app=search&q=喝&page={{page}}\n喷::/public/api.php?app=search&q=喷&page={{page}}\n嘴::/public/api.php?app=search&q=嘴&page={{page}}\n器::/public/api.php?app=search&q=器&page={{page}}\n囡::/public/api.php?app=search&q=囡&page={{page}}\n园::/public/api.php?app=search&q=园&page={{page}}\n国::/public/api.php?app=search&q=国&page={{page}}\n堂::/public/api.php?app=search&q=堂&page={{page}}\n壁::/public/api.php?app=search&q=壁&page={{page}}\n士::/public/api.php?app=search&q=士&page={{page}}\n声::/public/api.php?app=search&q=声&page={{page}}\n处::/public/api.php?app=search&q=处&page={{page}}\n外::/public/api.php?app=search&q=外&page={{page}}\n多::/public/api.php?app=search&q=多&page={{page}}\n夜::/public/api.php?app=search&q=夜&page={{page}}\n大::/public/api.php?app=search&q=大&page={{page}}\n太::/public/api.php?app=search&q=太&page={{page}}\n夫::/public/api.php?app=search&q=夫&page={{page}}\n失::/public/api.php?app=search&q=失&page={{page}}\n头::/public/api.php?app=search&q=头&page={{page}}\n夺::/public/api.php?app=search&q=夺&page={{page}}\n套::/public/api.php?app=search&q=套&page={{page}}\n女::/public/api.php?app=search&q=女&page={{page}}\n奴::/public/api.php?app=search&q=奴&page={{page}}\n奶::/public/api.php?app=search&q=奶&page={{page}}\n奸::/public/api.php?app=search&q=奸&page={{page}}\n她::/public/api.php?app=search&q=她&page={{page}}\n妇::/public/api.php?app=search&q=妇&page={{page}}\n妈::/public/api.php?app=search&q=妈&page={{page}}\n妊::/public/api.php?app=search&q=妊&page={{page}}\n妓::/public/api.php?app=search&q=妓&page={{page}}\n妹::/public/api.php?app=search&q=妹&page={{page}}\n妻::/public/api.php?app=search&q=妻&page={{page}}\n姊::/public/api.php?app=search&q=姊&page={{page}}\n姌::/public/api.php?app=search&q=姌&page={{page}}\n姐::/public/api.php?app=search&q=姐&page={{page}}\n姑::/public/api.php?app=search&q=姑&page={{page}}\n姝::/public/api.php?app=search&q=姝&page={{page}}\n姨::/public/api.php?app=search&q=姨&page={{page}}\n娃::/public/api.php?app=search&q=娃&page={{page}}\n娇::/public/api.php?app=search&q=娇&page={{page}}\n娘::/public/api.php?app=search&q=娘&page={{page}}\n娠::/public/api.php?app=search&q=娠&page={{page}}\n娲::/public/api.php?app=search&q=娲&page={{page}}\n婆::/public/api.php?app=search&q=婆&page={{page}}\n婚::/public/api.php?app=search&q=婚&page={{page}}\n婶::/public/api.php?app=search&q=婶&page={{page}}\n媒::/public/api.php?app=search&q=媒&page={{page}}\n媚::/public/api.php?app=search&q=媚&page={{page}}\n媾::/public/api.php?app=search&q=媾&page={{page}}\n嫂::/public/api.php?app=search&q=嫂&page={{page}}\n嫖::/public/api.php?app=search&q=嫖&page={{page}}\n嫩::/public/api.php?app=search&q=嫩&page={{page}}\n子::/public/api.php?app=search&q=子&page={{page}}\n孕::/public/api.php?app=search&q=孕&page={{page}}\n孙::/public/api.php?app=search&q=孙&page={{page}}\n学::/public/api.php?app=search&q=学&page={{page}}\n孩::/public/api.php?app=search&q=孩&page={{page}}\n完::/public/api.php?app=search&q=完&page={{page}}\n宝::/public/api.php?app=search&q=宝&page={{page}}\n宠::/public/api.php?app=search&q=宠&page={{page}}\n宫::/public/api.php?app=search&q=宫&page={{page}}\n家::/public/api.php?app=search&q=家&page={{page}}\n导::/public/api.php?app=search&q=导&page={{page}}\n射::/public/api.php?app=search&q=射&page={{page}}\n小::/public/api.php?app=search&q=小&page={{page}}\n少::/public/api.php?app=search&q=少&page={{page}}\n尸::/public/api.php?app=search&q=尸&page={{page}}\n尻::/public/api.php?app=search&q=尻&page={{page}}\n尼::/public/api.php?app=search&q=尼&page={{page}}\n尿::/public/api.php?app=search&q=尿&page={{page}}\n屁::/public/api.php?app=search&q=屁&page={{page}}\n屄::/public/api.php?app=search&q=屄&page={{page}}\n居::/public/api.php?app=search&q=居&page={{page}}\n屎::/public/api.php?app=search&q=屎&page={{page}}\n属::/public/api.php?app=search&q=属&page={{page}}\n岁::/public/api.php?app=search&q=岁&page={{page}}\n巢::/public/api.php?app=search&q=巢&page={{page}}\n巨::/public/api.php?app=search&q=巨&page={{page}}\n巴::/public/api.php?app=search&q=巴&page={{page}}\n师::/public/api.",
    "lastUpdateTime": 1754712368894,
    "respondTime": 3091,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "div@textNodes##读文前请点击右上角支持楼主，送上你的红心！欢迎积极回复和作者进行互动交流！|请填写标题|加载中,请稍侯......|请选择理由|分享到|..小说"
    },
    "ruleExplore": {
      "bookList": "ul@li",
      "bookUrl": "a@href",
      "name": "p@text## "
    },
    "ruleSearch": {
      "bookList": "ul@li",
      "bookUrl": "a@href",
      "checkKeyWord": "处女",
      "name": "p@text##[0123456789]{1,3}|[/（“《〈｛【『]"
    },
    "ruleToc": {
      "chapterList": "div",
      "chapterName": "h2@text"
    },
    "searchUrl": "https://444.1006sd.com/public/api.php?app=search&q={{key}}&page={{page}}",
    "weight": 0
  },
  {
    "bookSourceComment": "Error: Failed to connect to wap.7yun.org/:::443 \n",
    "bookSourceGroup": "免费",
    "bookSourceName": "未来小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.7yun.org",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 921,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1643267114751,
    "loginUrl": "",
    "respondTime": 805,
    "ruleBookInfo": {
      "author": "class.info@tag.a.0@text",
      "coverUrl": "class.lazy@src",
      "intro": "class.intro clearfix.0@text",
      "name": "h2@text",
      "tocUrl": "text.章节列表@href"
    },
    "ruleContent": {
      "content": "@js:java.getElements('dd!-1').toArray().sort((a,b)=>a.attr('data-id')-b.attr('data-id')).map(x=>x.html()).join('')",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.本章未完，请点击下一页继续阅读.|.*第./.页."
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "##</span>[^<]+\\(([^<]+)\\)</a>##$1###",
      "bookList": "class.bd@li",
      "bookUrl": "tag.a.0@href",
      "kind": "span@text##\\[|\\]",
      "name": "##</span>([^<]+)\\([^<]+\\)</a>##$1###"
    },
    "ruleToc": {
      "chapterList": "+@js:org.jsoup.Jsoup.parse(result.replace(/\\.html/g,\"\")).select('.list li a').toArray().sort((a,b)=>a.attr('href')-b.attr('href')).map(x=>({n:x.text(),u:x.attr('href')+\".html\"}))",
      "chapterName": "n",
      "chapterUrl": "u"
    },
    "searchUrl": "https://wap.7yun.org/s.php,{\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "\"error:Unabletoresolvehost\"www.8kbook.com\":Noaddressassociatedwithhostname\n\"",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔖八块小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.8kbook.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 923,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "言情::http://www.8kbook.com/1/{{page}}.html\n都市::http://www.8kbook.com/2/{{page}}.html\n玄幻::http://www.8kbook.com/3/{{page}}.html\n仙侠::http://www.8kbook.com/4/{{page}}.html\n武侠::http://www.8kbook.com/5/{{page}}.html\n穿越::http://www.8kbook.com/6/{{page}}.html\n历史::http://www.8kbook.com/7/{{page}}.html\n军事::http://www.8kbook.com/8/{{page}}.html\n科幻::http://www.8kbook.com/9/{{page}}.html\n恐怖::http://www.8kbook.com/10/{{page}}.html\n推理::http://www.8kbook.com/11/{{page}}.html\n游戏::http://www.8kbook.com/12/{{page}}.html\n体育::http://www.8kbook.com/13/{{page}}.html\n耽美::http://www.8kbook.com/14/{{page}}.html\n同人::http://www.8kbook.com/15/{{page}}.html\n名著::http://www.8kbook.com/16/{{page}}.html\n激情::http://www.8kbook.com/17/{{page}}.html\n其他::http://www.8kbook.com/18/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1678669259637,
    "loginUrl": "",
    "respondTime": 31611,
    "ruleBookInfo": {
      "author": "id.author@text##上传者：",
      "coverUrl": "class.fm@tag.img.0@src",
      "intro": "id.jj@text##内容简介",
      "name": "tag.h1@text##上传者：.+"
    },
    "ruleContent": {
      "content": "class.chapter@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "class.tj@tag.label.0@text##上传者：",
      "bookList": "id.sort_newbook@class.sort_list",
      "bookUrl": "class.title@tag.a@href",
      "coverUrl": "class.sort_list@tag.img@src",
      "intro": "class.intro@text##简介：",
      "kind": "class.tj@tag.label.3@text##分类：",
      "name": "class.title@tag.a@text##《|》"
    },
    "ruleSearch": {
      "bookList": "class.list@tag.tbody",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.intro@text##电子书简介：",
      "name": "class.name@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.list-item@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.8kbook.com/search.php?keyword={{key}}&submit=%CB%D1+%CB%F7,{\n\"charset\":\"gb2312\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 天域小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.tycqxs.com",
    "customButton": false,
    "customOrder": 924,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/xuanhuanxiaoshuo/\n修真::/xiuzhenxiaoshuo/\n都市::/dushixiaoshuo/\n穿越::/chuanyuexiaoshuo/\n网游::/wangyouxiaoshuo/\n科幻::/kehuanxiaoshuo/",
    "lastUpdateTime": 1606787777993,
    "respondTime": 4709,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作\\s*者：",
      "coverUrl": "id.fmimg@tag.img@src",
      "intro": "id.intro@text",
      "name": "id.info@tag.h1.0@text"
    },
    "ruleContent": {
      "content": "id.content@html"
    },
    "ruleExplore": {
      "author": "class.s5@text",
      "bookList": "ul!0:2@tag.li",
      "bookUrl": "class.s2@tag.a@href",
      "lastChapter": "class.s3@text",
      "name": "class.s2@tag.a@text"
    },
    "ruleSearch": {
      "author": "class.even.1@text",
      "bookList": "class.grid@tag.tr!0",
      "bookUrl": "class.even.0@tag.a.0@href",
      "lastChapter": "class.odd.0@tag.a.0@text",
      "name": "class.even.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd!0:1:2:3:4:5:6:7:8@tag.a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "http://www.tycqxs.com/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "综合ss要数字？",
    "bookSourceType": 0,
    "bookSourceUrl": "https://3wx4.23uup.com",
    "customButton": false,
    "customOrder": 925,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "处女::https://3wx4.23uup.com/e/search/result/index.php?page={{page}}&searchid=11341\n催眠::https://3wx4.23uup.com/e/search/result/index.php?page={{page}}&searchid=11170\n圈::https://3wx4.23uup.com/e/action/ListInfo/index.php?page={{page+800}}&classid=1",
    "lastUpdateTime": 1751849199504,
    "respondTime": 16235,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "class.entry@html"
    },
    "ruleExplore": {
      "bookList": "class.r",
      "bookUrl": "a@href",
      "name": "a@text"
    },
    "ruleSearch": {
      "bookList": "class.r",
      "bookUrl": "a@href",
      "checkKeyWord": "11341",
      "name": "a@text"
    },
    "ruleToc": {
      "chapterList": "class.contentbox",
      "chapterName": "h2@text"
    },
    "searchUrl": "https://3wx4.23uup.com/e/search/result/index.php?page={{page}}&searchid={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "笛寄明月楼",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔰 三九书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.sanjiushuwu.com",
    "bookUrlPattern": "https://www.sanjiushuwu.com/book/\\d+.html",
    "customButton": false,
    "customOrder": 926,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 10; SK) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36\"\n}",
    "lastUpdateTime": 1713368960705,
    "loginUrl": "",
    "respondTime": 16452,
    "ruleBookInfo": {
      "author": "#author a@text",
      "coverUrl": "#bookimg img@src",
      "intro": "#bookintro@html",
      "name": "h1@text",
      "tocUrl": "<js>\ntoc = baseUrl.replace(/.*book\\/(\\d+)\\.html/, \"https://m.sanjiushuwu.com/index/$1/asc/1.html\");\n</js>"
    },
    "ruleContent": {
      "content": "#YiJianZhan@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".book_other span.0@text",
      "bookList": "#sitembox > dl",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "img@src",
      "kind": ".book_other span.2@text&&\n.book_other span.1@text",
      "lastChapter": ".book_other a@text",
      "name": "h3 a@text",
      "wordCount": ".book_other span.3@text"
    },
    "ruleToc": {
      "chapterList": "#readerlist ul li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": ".pg-next@href"
    },
    "searchUrl": "https://www.sanjiushuwu.com/modules/article/search.php,{\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\",\n  \"body\": \"searchtype=all&searchkey={{key}}&t_btnsearch\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃三九小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wxshuku.org#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 929,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 5118,
    "ruleBookInfo": {
      "author": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h2[1]/text()##作者：",
      "coverUrl": "//*[@id=\"content\"]/div/div[2]/div[1]/img/@src",
      "intro": "//*[@id=\"content\"]/div/div[2]/div[2]/div[3]/p/text()",
      "kind": "h2.2:3:1@text##.*：",
      "lastChapter": "h3@a@text",
      "name": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h1/text()"
    },
    "ruleContent": {
      "content": "class.novel_content@html##最新网址：www.xyshuk.com",
      "replaceRegex": "##.*最新网址.*|无尽的昏迷过后.*时宇猛地从床上起身.*想要看最新章节.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "@tag.td.2@text",
      "bookList": "class.grid@tbody@tr!0",
      "bookUrl": "@tag.td.0@a@href",
      "coverUrl": "@tag.td.0@a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\nsource.bookSourceUrl + 'files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "@tag.td.1@a@text",
      "name": "@tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.zhangjie",
      "chapterName": "@tag.a@text",
      "chapterUrl": "@tag.a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceGroup": "免费",
    "bookSourceName": "英文小说（英）",
    "bookSourceType": 0,
    "bookSourceUrl": "http://novel.tingroom.com/",
    "customButton": false,
    "customOrder": 931,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "金典英文小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=1&type=2&page={{page}}\n双语小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=33&type=2&page={{page}}\n英文名人传记::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=32&type=2&page={{page}}\n英文励志小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=6&type=2&page={{page}}\n儿童英文小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=29&type=2&page={{page}}\n英文科幻小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=30&type=2&page={{page}}\n宗教英文小说::http://novel.tingroom.com/wap/index.php?moduleid=1025&catid=28&type=2&page={{page}}",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 9; zh-cn; MI 6 Build/PKQ1.190118.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.128 Mobile Safari/537.36 XiaoMi/MiuiBrowser/10.8.1\"\n}",
    "lastUpdateTime": 1759754358896,
    "respondTime": 6512,
    "ruleBookInfo": {
      "author": "class.writer.0@text##\\s+",
      "coverUrl": "class.f_l@tag.img@src",
      "intro": "id.infoShort@text",
      "name": "class.sm@text"
    },
    "ruleContent": {
      "content": "id.tt_text@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": "class.list_1",
      "bookUrl": "class.name.0@tag.a.0@href##amp;",
      "coverUrl": "tag.img@src",
      "name": "class.name.0@text"
    },
    "ruleToc": {
      "chapterList": "class.listtxt@tag.li",
      "chapterName": "text",
      "chapterUrl": "tag.a.0@href"
    },
    "searchUrl": "wap/index.php?moduleid=1025&catid=1&areaid=0&type=2&kw={{key}}&page={{page}}",
    "weight": 62
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "斗破小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.doupocangqiong.cc#🎃",
    "bookUrlPattern": "http://m.doupocangqiong.cc/\\d+/",
    "customButton": false,
    "customOrder": 935,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort/xuanhuan/{{page}}.html\n奇幻::/sort/qihuan/{{page}}.html\n武侠::/sort/wuxia/{{page}}.html\n仙侠::/sort/xianxia/{{page}}.html\n都市::/sort/dushi/{{page}}.html\n历史::/sort/lishi/{{page}}.html\n军事::/sort/junshi/{{page}}.html\n游戏::/sort/youxi/{{page}}.html\n竞技::/sort/jingji/{{page}}.html\n科幻::/sort/kehuan/{{page}}.html\n灵异::/sort/lingyi/{{page}}.html\n同人::/sort/tongren/{{page}}.html\n女生::/sort/nvsheng/{{page}}.html\n其他::/sort/qita/{{page}}.html",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 9) Mobile Safari/537.36\"}",
    "lastUpdateTime": 1720605871577,
    "respondTime": 10391,
    "ruleBookInfo": {
      "author": "@get:{a}",
      "coverUrl": "@get:{c}",
      "init": "@put:{n:\"[property$=book_name]@content\",\na:\"[property$=author]@content\",\nk:\"[property~=category|status|update_time]@content\",\nl:\"[property$=latest_chapter_name]@content\",\ni:\"[property$=description]@content\",\nc:\"[property$=image]@content\"}",
      "intro": "@get:{i}",
      "kind": "@get:{k}",
      "lastChapter": "@get:{l}",
      "name": "@get:{n}",
      "tocUrl": "{{$.}}list/"
    },
    "ruleContent": {
      "content": "#articlecon>p@textNodes",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##.*\\(第\\d+.*页\\)|\\s*.*本章未完.*\\s*",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".pt-card li",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "kind": "a.-1@text",
      "name": "a.1@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".pt-card li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "斗破苍穹",
      "coverUrl": "img@src",
      "kind": ".pt-info@text",
      "lastChapter": "a.-1@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".pt-dir li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ".pt-dir-sel a@href"
    },
    "searchUrl": "http://m.doupocangqiong.cc/search.html?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃玄幻阁",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xuankuge.com#🎃",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "coverDecodeJs": "",
    "customButton": false,
    "customOrder": 936,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort1/{{page}}/\n武侠::/sort2/{{page}}/\n都市::/sort3/{{page}}/\n历史::/sort4/{{page}}/\n言情::/sort5/{{page}}/\n穿越::/sort6/{{page}}/\n科幻::/sort7/{{page}}/\n恐怖::/sort8/{{page}}/\n校园::/sort9/{{page}}/\n异界::/sort10/{{page}}/\n全本::/quanben/{{page}}/",
    "header": "",
    "lastUpdateTime": 1754712460399,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 613,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "canReName": "",
      "coverUrl": "[property$=image]@content",
      "init": "",
      "intro": "[property$=description]@content##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property$=latest_chapter_name]@content##正文卷\\s|正文\\s",
      "name": "[property$=book_name]@content",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "imageStyle": "0",
      "nextContentUrl": "",
      "replaceRegex": "##随机推荐.*",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "span.1@text",
      "bookList": "#sitebox dl",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "dd.3@text",
      "kind": "span.2:0@text",
      "lastChapter": "a.2@text##正文卷\\s|正文\\s",
      "name": "a.1@text",
      "wordCount": "span.3@text"
    },
    "ruleToc": {
      "chapterList": "#readerlist li a",
      "chapterName": "text##正文卷\\s|正文\\s",
      "chapterUrl": "href",
      "isVip": "",
      "isVolume": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "/modules/article/search.php?s={{key}}&searchtype=articlename",
    "variableComment": "",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "安之原创基地💯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-1",
    "customButton": false,
    "customOrder": 937,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 1853,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "安之原创基地💯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-4",
    "customButton": false,
    "customOrder": 938,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 1629,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "安之原创基地💯",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.azycjd.com-9",
    "customButton": false,
    "customOrder": 939,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 1584,
    "ruleBookInfo": {
      "intro": "class.top_main.0@tag.p@text"
    },
    "ruleContent": {
      "content": "class.novel@tag.p@text"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.novel_items@tag.p.0@text",
      "bookList": "class.list_main@tag.li",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "kind": "tag.span.0@text",
      "name": "class.novel_items@tag.h3.0@text"
    },
    "ruleToc": {
      "chapterList": "class.top_main chapter",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.azycjd.com/webnovelmis/mobile/msearchresult,{\n  \"method\": \"POST\",\n  \"body\": \"searchtxts={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃万相书城🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.wxsck.com#🎃",
    "customButton": false,
    "customOrder": 940,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\njava.toast(\"🔥正在刷新列表,请稍等！\");\nvar push = (title, url, size) => result.push({\n    \"title\": title,\n    \"url\": url,\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": size\n    }\n});\nvar baseUrl = \"https://www.wxsck.com/\";\nvar tag = java.ajax(baseUrl);\nif (tag) {\n    var a = org.jsoup.Jsoup.parse(tag).select(\".breadcrumb li a\");\n    push(\"🔥分类小说🔥\", null, 1);\n    for (var i = 0; i < a.length -1; i++) {\n        var title = a[i].text();\n        var url = a[i].attr(\"href\");\n        var size = 0.25;\n        title = String(title).replace(/\\s/g, \"\");\n        url = String(url).replace(/\\.html/,'_{{page}}.html');      \n        push(title, url, size);\n    }\n} else {\n  java.toast(\"🤔列表刷新失败！！！\");     \n} \nJSON.stringify(result);",
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 8541,
    "ruleBookInfo": {
      "coverUrl": ".book-img-middel@src",
      "downloadUrls": "class.col-md-6 text-center@a.0@href\n<js>\naa=String(result).replace(/\\[/,'$1').replace(/\\]/,'$1').replace(/^/,'https://www.wxsck.com')\nh={\"User-Agent\": \"Mozilla/5.0 (Linux; U; Android 14; zh-cn; M2102K1AC Build/UKQ1.231207.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/109.0.5414.118 Mobile Safari/537.36 MQQBrowser/10.1.0\"};\na=java.get(aa,h).headers('location'||'Location')\nb=String(a).replace(/\\[/,'$1').replace(/\\]/,'$1').replace(/\\.\\./,'').replace(/^/,'https://www.wxsck.com')\n</js>",
      "init": "",
      "intro": "@js:if (source.bookSourceType=='3'){\tresult=java.getString('.panel-body@html')\n\t}else {\n\t\tresult=java.getString('.book-detail@html')\n\t\t}",
      "lastChapter": ""
    },
    "ruleContent": {
      "content": "#cont-body@p@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "td.1@text",
      "bookList": "tbody tr||class.col-md-12 b10",
      "bookUrl": "a@href\n<js>\nif (source.bookSourceType=='0'){\n\tresult=result\n\t}else {\n\t\tresult=java.get(\"x\")\n\t\t}\n</js>",
      "coverUrl": "a.1@href##.*?(\\d+).*##/uploads/cover/pic$1.jpg",
      "intro": ".media-info@text",
      "name": "h4@text||td.0@text##《|》",
      "wordCount": "td.2@a.0@href\n<js>\nvar result=result.replace(/^/,'https://www.wxsck.com')\njava.put(\"x\",result)\nre=''\n</js>"
    },
    "ruleToc": {
      "chapterList": "class.col-md-6 item@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.wxsck.com/plus/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃落宅小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.lazhaiwu.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 942,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"最近更新\",\"url\":\"https://m.lazhaiwu.com/top/lastupdate_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新入库\",\"url\":\"https://m.lazhaiwu.com/top/postdate_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总点击榜\",\"url\":\"https://m.lazhaiwu.com/top/allvisit_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总收藏榜\",\"url\":\"https://m.lazhaiwu.com/top/goodnum_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐榜\",\"url\":\"https://m.lazhaiwu.com/top/allvote_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总字数榜\",\"url\":\"https://m.lazhaiwu.com/top/size_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"https://m.lazhaiwu.com/full/{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻奇幻\",\"url\":\"https://m.lazhaiwu.com/sort/1_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"https://m.lazhaiwu.com/sort/2_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"https://m.lazhaiwu.com/sort/3_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻网游\",\"url\":\"https://m.lazhaiwu.com/sort/4_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚悬疑\",\"url\":\"https://m.lazhaiwu.com/sort/5_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美同人\",\"url\":\"https://m.lazhaiwu.com/sort/6_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越架空\",\"url\":\"https://m.lazhaiwu.com/sort/7_{{page5}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高辣浓情\",\"url\":\"https://m.lazhaiwu.com/sort/8_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"禁忌百合\",\"url\":\"https://m.lazhaiwu.com/sort/9_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"精品文学\",\"url\":\"https://m.lazhaiwu.com/sort/10_{{page}}/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.28}},{\"title\":\"这是空的\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 33070,
    "ruleBookInfo": {
      "coverUrl": "class.tu@img@src",
      "init": "",
      "intro": "class.jj@p@textNodes\n<js>result.replace(/(.*)/,' ○○○STORY:\\n$1')</js>",
      "lastChapter": "class.p3@a@text"
    },
    "ruleContent": {
      "content": "class.novelcontent@html"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": "tag.a.2@text",
      "bookList": "class.search_box@p||class.fl_list@children||class.user_content@children",
      "bookUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href",
      "coverUrl": "class.content_link@tag.p.1@a@href||tag.a.0@href##.*/(\\d+)/(\\d+)/##http://img.lazhaiwu.com/image/$1/$2/$2s.jpg",
      "kind": "class.content_link@tag.p.0@a@text||class.p2@text||tag.a.1@text##\\[|]",
      "name": "class.content_link@tag.p.1@a@text||class.p1@a@text||tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.info_chapters@tag.ul.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "https://m.lazhaiwu.com/s.php,{\n  \"charset\": \"gbk\",\n  \"body\": \"s={{key}}&type=articlename\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "键盘小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.jianpan.la#",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 946,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1721150311767,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 785,
    "ruleBookInfo": {
      "author": "class.col-md-12@tag.p.0@text##by",
      "intro": "class.bookIntro@text",
      "kind": "div.col-md-12@p.1@text##.*：",
      "lastChapter": "id.list-chapterAll@tag.p.0@text##最新章节.|更新时间.|..\\:.*",
      "name": "class.bookTitle@text##\\《|\\》|极速阅读"
    },
    "ruleContent": {
      "content": "id.htmlContent@html",
      "replaceRegex": "##无尽的昏迷过后.*时宇猛地从床上起身.*想要看最新章节.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.shop-info.1@text##\\[|著|\\]",
      "bookList": "class.list@tag.a",
      "bookUrl": "tag.a@href",
      "lastChapter": "class.shop-info.2@text",
      "name": "class.shop-info.0@text##\\《|\\》"
    },
    "ruleToc": {
      "chapterList": "class.panel-chapterlist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.jianpan.la/search.php?q={{key}}&s=15947871991047423724",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃19书院🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.19shuyuan.com#🎃",
    "customButton": false,
    "customOrder": 947,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 0,
    "respondTime": 9810,
    "ruleBookInfo": {
      "author": ".tab > .p1@text",
      "coverUrl": "img@src",
      "downloadUrls": "text.下载TXT@href",
      "init": "",
      "intro": ".jj > .p2@text",
      "kind": ".tab1@p.0:1@text",
      "lastChapter": ".p3 > a@text",
      "name": ".catalog1 > h1@text",
      "wordCount": ".p6@text##万##万字"
    },
    "ruleContent": {
      "content": ".novelcontent@html||#novelcontent@html",
      "nextContentUrl": "text.下一页@href",
      "sourceRegex": ""
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.-1@text",
      "bookList": ".search_box@.search_list",
      "bookUrl": "a.0@href",
      "kind": "a.1@text",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": ".p2:nth-child(5) > li:nth-child(n+1) > a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"s={{key}}&type=articlename\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "幽幽🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xiaoshuouu.com#🎃",
    "customButton": false,
    "customOrder": 948,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar result = [];\nvar push = (title, url, size) => result.push({\n    \"title\": title,\n    \"url\": url,\n    \"style\": {\n        \"layout_flexGrow\": 1,\n        \"layout_flexBasisPercent\": size\n    }\n});\nvar tag = java.ajax(\"https://www.xiaoshuouu.com\");\nif (tag) {\n    var a = org.jsoup.Jsoup.parse(tag).select(\".nav li a\");\n    result.push({\n        \"title\": \"🔥分类小说🔥\",\n        \"url\": null,\n        \"style\": {\n            \"layout_flexGrow\": 1,\n            \"layout_flexBasisPercent\": 1\n        }\n    });\n    \n    push(\"全本小说\",`/quanben/category/{{page}}/`,0.33);\n    \n    var subResult = [];\n    for (var i in a) {\n        var title = a[i].text();\n        var url = a[i].attr(\"href\");\n        var size = 0.33;\n        title = String(title).replace(/\\s/g, \"\");\n        url = baseUrl+String(url).replace(/\\d+\\/$/, \"{{page}}/\");\n       {\n            subResult.push({\n                \"title\": title,\n                \"url\": url,\n                \"style\": {\n                    \"layout_flexGrow\": 1,\n                    \"layout_flexBasisPercent\": size\n                }\n            }); \n         }\n       } \n    \n    if (subResult.length > 0) {\n        if (subResult[0].title === \"首页\") {\n            subResult.shift();\n        }\n    }\n    if (subResult.length > 5) {\n        subResult.length = subResult.length -4;\n    } else {\n        subResult = [];\n    }\n    result = result.concat(subResult);\n} \nJSON.stringify(result);",
    "lastUpdateTime": 0,
    "respondTime": 2306,
    "ruleBookInfo": {
      "author": "author",
      "coverUrl": "cover",
      "init": "@js:\n(function(){\n    let doc = org.jsoup.Jsoup.parse(result)\n    let og = (selector) => doc.select('[property=\"og:' + selector + '\"]').attr('content')\n    return {\n        name: og('novel:book_name'),\n        author: og('novel:author'),\n        kind: og('novel:category')\n        +'•'+og('novel:status')\n      +'•'+String(og('novel:update_time')),\n        lastest: og('novel:lastest_chapter_name'),\n        cover: og('image'),\n        intro: og('description'),\n        url:og('novel:read_url')\n    }\n})()",
      "intro": "intro",
      "kind": "kind",
      "lastChapter": "lastest",
      "name": "name"
    },
    "ruleContent": {
      "content": "#content@p!0@html",
      "nextContentUrl": "#next_url@href"
    },
    "ruleExplore": {
      "bookList": ""
    },
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".txt-list-row5@li!0",
      "bookUrl": "a.0@href",
      "kind": ".s1,.s5@text##\\[|\\]",
      "lastChapter": ".s3@a@text",
      "name": ".s2@text"
    },
    "ruleToc": {
      "chapterList": "class.section-list fix.1@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": ""
    },
    "searchUrl": "https://www.xiaoshuouu.com/search/,{\n  \"body\": \"searchkey={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🎃玄幻阁🎃#5",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wap.xuanyge.info#🎃",
    "customButton": false,
    "customOrder": 949,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url+\"/sort.html\";\nvar ph=url+\"/top.html\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".content li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".content li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".content li a\");\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        push(title,url,size)\n    };\n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        size=0.25;\n        push(title,url,size)\n    }\npush(\"🌹全本🌹\",\"/full-{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)\n",
    "lastUpdateTime": 0,
    "respondTime": 7062,
    "ruleBookInfo": {
      "author": ".block_txt2@a.2@text",
      "downloadUrls": "text.点击下载@href",
      "intro": ".intro_info@text",
      "kind": ".block_txt2@p.3:4:5@text",
      "lastChapter": ".block_txt2@a.-1@text",
      "name": ".block_txt2@h2@text",
      "tocUrl": "text.查看目录@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下 页@href||text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "//*[not(@class='blue')]/text()##\\[.*\\]|\\/",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "checkKeyWord": "",
      "coverUrl": "",
      "intro": "",
      "kind": "##\\[(.*)\\]##$1##",
      "name": ".blue@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "nextTocUrl": "@js:if(result.match(/\\/(\\d+)页/)){\nvar n=result.match(/\\/(\\d+)页/)[1];\nbaseUrl=baseUrl.replace(/(.+)\\//,'$1');\nvar list=[];\nfor(var i=2;i<=n;i++){list.push(baseUrl+\"_\"+i+\"/\");}\nlist\n}"
    },
    "searchUrl": "/modules/article/waps.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "云中书库",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yunxs.info",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 957,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n{\"title\":\"🔖分类🔖\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻·奇幻\",\"url\":\"/xuanhuan/shuku_1949_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠·武侠\",\"url\":\"/xianxia/shuku_3336_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市·言情\",\"url\":\"/dushi/shuku_8625_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越·历史\",\"url\":\"/chuanyue/shuku_1335_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻·灵异\",\"url\":\"/kehuan/shuku_1500_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人·网游\",\"url\":\"/tongren/shuku_1056_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n\n{\"title\":\"🔖完结🔖\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻·奇幻\",\"url\":\"/xuanhuan/over_20_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"仙侠·武侠\",\"url\":\"/xianxia/over_1701_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市·言情\",\"url\":\"/dushi/over_5514_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越·历史\",\"url\":\"/chuanyue/over_40_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻·灵异\",\"url\":\"/kehuan/over_44_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人·网游\",\"url\":\"/tongren/over_55_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}\n]",
    "header": "",
    "lastUpdateTime": 1731441485020,
    "loginUrl": "",
    "respondTime": 6045,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "init": "",
      "intro": "🔔 更新时间：{{@@[property=\"og:novel:update_time\"]@content##\\s##🔸}}\n🏷 {{@@.info li[2:4]@text##\\s##🔸}}\n📂 内容简介：{{@@[property=\"og:description\"]@content}}##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": "[property~=category|status|update_time]@content##\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "",
      "wordCount": "#cms_ready_1@text"
    },
    "ruleContent": {
      "content": ".box_box@textNodes",
      "imageStyle": "",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": ".author a@text",
      "bookList": ".ul_m_list li",
      "bookUrl": ".t a@href",
      "coverUrl": "",
      "intro": "",
      "kind": ".c a@text&&.abover@text",
      "lastChapter": ".n a.1@text",
      "name": ".t a@text",
      "wordCount": ".words@text"
    },
    "ruleSearch": {
      "author": ".state@text##\\s.*",
      "bookList": ".ul_b_list li",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": "",
      "kind": "{{@@h2 span@text}}\n{{@@.state@text##.*状态：|\\s.*}}\n{{@@.arcurl@textNodes##.*：}}",
      "lastChapter": "",
      "name": "h2 a@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".list_box li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVip": "",
      "nextTocUrl": "",
      "updateTime": ""
    },
    "searchUrl": "http://www.yunxs.info/plus/search.php?kwtype=0&searchtype=&q={{key}}",
    "weight": 1
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "燃文小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.ranwen1.cc/",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 958,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "header": "",
    "lastUpdateTime": 1747623648122,
    "respondTime": 409,
    "ruleBookInfo": {
      "lastChapter": "",
      "tocUrl": "text.章节目录@href"
    },
    "ruleContent": {
      "content": "<js>\nj=src.match(/var c=\"([^\"]+)\"/)[1];\njja=String(java.base64Decode(j)).replace(/^[^-]*-/,\"-\")\nif(/=/.test(jja)){jj=jja.replace(/=[^=]*$/,\"\");}else{jj=jja.replace(/_[^_]*$/,\"\");}\n//java.log(jj.toString())\nm=jj.replace(/-/g,\"PHA+\").replace(/_/g,\"8L3A+\");\n//java.log(m.toString())\nn=java.getString(\"@@#chaptercontent@p!0@html\");\nn+java.base64Decode(m)\n</js>",
      "nextContentUrl": "",
      "replaceRegex": "##更多内容加载.*|本站只.*|本章未.*|小说推荐.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".author@text",
      "bookList": ".item",
      "bookUrl": "a.0@href",
      "coverUrl": "img@data-src",
      "intro": ".intro@text",
      "kind": "span.0@text",
      "lastChapter": "",
      "name": "a.0@title",
      "wordCount": "span.-2@text"
    },
    "ruleToc": {
      "chapterList": "ul li a",
      "chapterName": "text",
      "chapterUrl": "onclick##location.href='(.+)'##$1",
      "nextTocUrl": "option[selected]+option@value"
    },
    "searchUrl": "<js>cookie.removeCookie(source.key);</js>/search/?searchkey={{key}}&submit=",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "三九小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.wxshuku.info/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 963,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1690070030560,
    "loginUrl": "",
    "respondTime": 5292,
    "ruleBookInfo": {
      "author": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h2[1]/text()##作者：",
      "coverUrl": "//*[@id=\"content\"]/div/div[2]/div[1]/img/@src",
      "intro": "//*[@id=\"content\"]/div/div[2]/div[2]/div[3]/p/text()",
      "kind": "h2.2:3:1@text##.*：",
      "lastChapter": "h3@a@text",
      "name": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h1/text()"
    },
    "ruleContent": {
      "content": "class.novel_content@html##最新网址：www.xyshuk.com",
      "replaceRegex": "##.*最新网址.*|无尽的昏迷过后.*时宇猛地从床上起身.*想要看最新章节.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*\\n.*"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "@tag.td.2@text",
      "bookList": "class.grid@tbody@tr!0",
      "bookUrl": "@tag.td.0@a@href",
      "checkKeyWord": "七世神盘",
      "coverUrl": "@tag.td.0@a@href<js>\nvar id = result.match(/(\\d+)\\/?$/)[1];\nvar iid = parseInt(id/1000);\nsource.bookSourceUrl + 'files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "lastChapter": "@tag.td.1@a@text",
      "name": "@tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.zhangjie",
      "chapterName": "@tag.a@text",
      "chapterUrl": "@tag.a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🍊 情人游戏",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.qingrenyouxi.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 964,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"日榜\",\"url\":\"/top/dayvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"周榜\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"月榜\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总榜\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"收藏\",\"url\":\"/top/goodnum_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"字数\",\"url\":\"/top/size_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"日推\",\"url\":\"/top/dayvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"周推\",\"url\":\"/top/weekvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"月推\",\"url\":\"/top/monthvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"总推\",\"url\":\"/top/allvote_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"入库\",\"url\":\"/top/postdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"更新\",\"url\":\"/top/lastupdate_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"都市\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"浓情\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"校园\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"武侠\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"玄幻\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"惊悚\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"悬疑\",\"url\":\"/sort/9_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"重生\",\"url\":\"/sort/10_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"/sort/11_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"网游\",\"url\":\"/sort/12_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"/sort/13_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/sort/14_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"高干\",\"url\":\"/sort/15_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"种田\",\"url\":\"/sort/16_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"百合\",\"url\":\"/sort/17_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/sort/18_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/full/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}}]",
    "header": "",
    "lastUpdateTime": 1685832713159,
    "respondTime": 10257,
    "ruleBookInfo": {
      "author": ".tab p.0@text",
      "coverUrl": ".tu img@src",
      "init": "",
      "intro": ".jj p@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".tab1 p.0:1@text&&.info_chapters p.0@text##.*更新.|\\s..:.*",
      "lastChapter": ".tab a@text",
      "name": ".catalog1 h1@text",
      "tocUrl": "",
      "wordCount": ".tab1 p.2@text##$##字"
    },
    "ruleContent": {
      "content": "#novelcontent@html",
      "nextContentUrl": "",
      "replaceRegex": "",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".tt||.content_link",
      "bookUrl": "a.1@href",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##http://img.qingrenyouxi.com/image/$2/$1/$1s.jpg###",
      "intro": ".p5@text",
      "kind": ".label p.0@text",
      "lastChapter": "",
      "name": "a.1@text",
      "wordCount": ".label p.1@text"
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".search_list",
      "bookUrl": "a.0@href",
      "checkKeyWord": "",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://img.qingrenyouxi.com/image/$2/$1/$1s.jpg###",
      "intro": "",
      "kind": "a.1@text",
      "lastChapter": "",
      "name": "a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".info_chapters li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isVip": "",
      "nextTocUrl": "option!0@value",
      "updateTime": ""
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"post\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "主域名1(需梯)：https://www.aaqqcc.com\n主域名2：https://www.aahhss.com\n备用1(需梯)：https://www.aaccnn.com\n备用2：https://www.sseegg.com\n网站名会被gitee屏蔽😑",
    "bookSourceGroup": "免费",
    "bookSourceName": "🌈寻欢小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://寻欢小说2.luoyacheng.ip-ddns.com",
    "bookUrlPattern": ".+www.aahhss.com/book/.+|.+www.aaqqcc.com/book/.+|.+www.sseegg.com/cover/.+",
    "customButton": false,
    "customOrder": 966,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nlet banben=\"1.0.6\";\neval((eval(java.importScript(lycurl)+'')[0].exploreUrl||'').replace('@js:',''));",
    "header": "@js:\neval(((cache.getFromMemory('xhycy')||(eval(java.readTxtFile(java.md5Encode16(lycurl)+'.json')+'')||[{}])[0]).header||'').replace('@js:',''));",
    "jsLib": "function gets(x, r) {\nreturn r==undefined?\nthis.java.getString(x)+'':\nPackages.io.legado.app.model.analyzeRule.AnalyzeRule().getString(x,r)+'';}\nfunction gete(x, r) {\nreturn r==undefined?\nthis.java.getElement(x): Packages.io.legado.app.model.analyzeRule.AnalyzeRule().setContent(r).getElement(x);}\nfunction gengxin(){\nconst {java, source} = this;\n\tlet url0='https://gitee.com/lyc486/yuedu2/commits/main/书源/寻欢小说/xvhs.json?browser_history=0&page=1&per=4';\n\tlet rr0=java.get(url0,{'User-Agent': 'Mozilla/5.0 (Linux; Android 14)','X-Requested-With': 'XMLHttpRequest'}).body();\n\tlet \tgxlrr = com.jayway.jsonpath.JsonPath.read(rr0, '$.list[0:4].title');\n\tlet [gxlr, gxlr2, gxlr3, gxlr4] = gxlrr;\n\tlet banben =   String(source.exploreUrl).match(/let banben=\"([\\d\\.]+)\"/)[1];\n\tgxlr=String(gxlr).split(/^([^\\-]+)-/);\n\tgxlr[0]=='' ? '' : gxlr=['','0',gxlr[0]];\n\tlet gxts;\n\tif (gxlr[1]>banben){gxts=['更新','0,140,186'];}\n\telse {gxts= ['导入','76,175,80'];};\n\tlet htm = `<html>\n<head>\n<title>更新</title>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<style>\ntable {\n\ttext-align: center;\n\tmargin: 2em auto 0 auto;\n\t}\nth span{font-size: 1.2em;}\n.ann {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\theight: 50vh;\n\t}\nbutton {\n\tbackground-color: rgb(${gxts[1]});\n\tcolor: white;\n\tborder: none;\n\tborder-radius: 4px;\n\theight: 6vh;\n\twidth: 30vw;\n\toverflow: hidden;\n\t}\nbutton span {\n  cursor: pointer;\n  display: inline-block;\n  position: relative;\n  transition: 0.4s;\n}\nbutton span:after {\n  content: '>';\n  position: absolute;\n  opacity: 0;\n  top: 0;\n  right: 30px;\n  transition: 0.2s;\n}\nbutton:active span {\n  padding-right: 20px;\n}\nbutton:active span:after {\n  opacity: 1;\n  right: -40px;\n}\n</style>\n</head>\n<body>\n<table border=\"1\" cellspacing=\"0\">\n<th colspan=\"2\">最新日志：<span>${gxlr[2]}</span></th>\n<tr>\n<td>仓库版本：${gxlr[1]}</td>\n<td>本地版本：${banben}</td>\n</tr>\n<tr>\n<td colspan=\"2\" style=\"text-align: left;\">往期日志：${gxlr2}<br>　　　　　${gxlr3}<br>　　　　　${gxlr4}</td>\n</tr>\n</table>\n<div class=\"ann\">\n<a href=\"legado://import/importonline?src=https://gitee.com/lyc486/yuedu2/raw/main/书源/寻欢小说/xvhs.json\">\n<button><span>${gxts[0]}</span></button>\n</a>\n</div>\n<a href=\"legado://import/importonline?src=https://cdn.jsdelivr.net/gh/Luoyacheng/yuedu@main/书源/寻欢小说/xvhs.json\" style=\"font-size: 10px;\">备用链接</a>\n</body>\n</html>`;\nif(typeof this.book=='undefined'||gxts[0]=='更新') java.startBrowser(`data:text/html;base64,${java.base64Encode(htm)}`,'更新');\r\n}\nvar lycurl=((h)=>{\nfor (var i=0,s='';i<h.length;i+=2) s+=String.fromCharCode(parseInt(h.substr(i,2),16));return s;})('68747470733A2F2F67697465652E636F6D2F6C79633438362F7975656475322F7261772F6D61696E2F2545342542392541362545362542412539302F2545352541462542422545362541432541322545352542302538462545382541462542342F79792F787679632E6A736F6E');",
    "lastUpdateTime": 1747999352695,
    "loginCheckJs": "let r=cache.getFromMemory('xhycy');\nif (!r) {\nMath.random()<0.3&&java.downloadFile(lycurl);\nr=eval(java.readTxtFile(java.md5Encode16(lycurl)+'.json')+'')[0];\nr&&cache.putMemory('xhycy',r);}\neval(r.loginCheckJs||'result');",
    "loginUi": "[\n {\n\t\"name\": \"网站地址\",\n\t\"type\": \"text\"\n\t},\n {\n\t\"name\": \"更新远程代码\",\n\t\"type\": \"button\",\n\t\"action\": \"gxin()\",\n\t\"style\": {\n\t\t\"layout_flexGrow\": 1,\n\t\t\"layout_flexBasisPercent\": -1}\n\t},\n {\n\t\"name\": \"更新书源本体\",\n\t\"type\": \"button\",\n\t\"action\": \"gengxin()\",\n\t\"style\": {\n\t\t\"layout_flexGrow\": 1,\n\t\t\"layout_flexBasisPercent\": -1}\n\t},\n {\n\t\"name\": \"用户名\",\n\t\"type\": \"text\"\n\t},\n {\n\t\"name\": \"密码\",\n\t\"type\": \"password\"\n\t},\n {\n\t\"name\": \"💍网站\",\n\t\"type\": \"button\",\n\t\"action\": \"web()\",\n\t\"style\": {\n\t\t\"layout_flexGrow\": 0,\n\t\t\"layout_flexBasisPercent\": -1,\n\t\t\"layout_wrapBefore\": true}\n\t},\n {\n\t\"name\": \"🔺登　录🔺\",\n\t\"type\": \"button\",\n\t\"action\": \"Login()\",\n\t\"style\": {\n\t\t\"layout_flexGrow\": 1,\n\t\t\"layout_flexBasisPercent\": -1}\n\t},\n {\n\t\"name\": \"♤登出\",\n\t\"type\": \"button\",\n\t\"action\": \"re()\",\n\t\"style\": {\n\t\t\"layout_flexGrow\": 0,\n\t\t\"layout_flexBasisPercent\": -1}\n\t}\n]",
    "loginUrl": "eval(eval(java.importScript(lycurl)+'')[0].loginUrl);",
    "respondTime": 6044,
    "ruleBookInfo": {
      "author": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.author)",
      "canReName": "1",
      "coverUrl": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.coverUrl)",
      "init": "@js:\neval((cache.getFromMemory('xhycy').ruleBookInfo.init||'').replace('@js:','')||'result');",
      "intro": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.intro)",
      "kind": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.kind)",
      "lastChapter": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.lastChapter)",
      "name": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.name)",
      "wordCount": "@js:\ngets(cache.getFromMemory('xhycy').ruleBookInfo.wordCount)"
    },
    "ruleContent": {
      "content": "@js:\nlet r=cache.getFromMemory('xhycy');\nif (!r) {\nr=eval(java.readTxtFile(java.md5Encode16(lycurl)+'.json')+'')[0];cache.putMemory('xhycy',r);}\ngets(r.ruleContent.content);",
      "replaceRegex": "{{(cache.getFromMemory('xhycy').ruleContent.replaceRegex||'##lyc₄₈₆##').replaceAll('\\\\\\\\','\\\\')}}"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "@js:\ngets(cache.getFromMemory('xhycy').ruleSearch.author)",
      "bookList": "@js:\ngete(cache.getFromMemory('xhycy').ruleSearch.bookList)",
      "bookUrl": "@js:\ngets(cache.getFromMemory('xhycy').ruleSearch.bookUrl)",
      "coverUrl": "@js:\ngets(cache.getFromMemory('xhycy').ruleSearch.coverUrl)",
      "name": "@js:\ngets(cache.getFromMemory('xhycy').ruleSearch.name)"
    },
    "ruleToc": {
      "chapterList": "@js:\ngete(cache.getFromMemory('xhycy').ruleToc.chapterList)",
      "chapterName": "text",
      "chapterUrl": "href",
      "preUpdateJs": "let r=cache.getFromMemory('xhycy');\nif (!r) {\nr=eval(java.readTxtFile(java.md5Encode16(lycurl)+'.json')+'')[0];cache.putMemory('xhycy',r);}\neval(r.ruleToc.preUpdateJs||'');"
    },
    "searchUrl": "<js>\neval(java.importScript(lycurl)+'')[0].searchUrl\n</js>",
    "variableComment": "\n♦书籍变量：\n　 ①填写“修复章节顺序”并刷新，能解决本书目录乱序的情况\n\n！注意区分源变量和书籍变量\n",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "八零电子",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.balingtxt.com#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 968,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "lastUpdateTime": 1734983353174,
    "loginUrl": "",
    "respondTime": 4549,
    "ruleBookInfo": {
      "coverUrl": "class.soft_info_r@img@src",
      "intro": "id.mainSoftIntro@p@text##.*推荐给你的朋友！|更多.*敬请关注.*",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content",
      "lastChapter": "class.soft_info_r@tag.li.9@textNodes",
      "tocUrl": "text.在线阅读_目录@href"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.p.0@a@text",
      "bookList": "class.storelistbt5",
      "bookUrl": "a@href",
      "coverUrl": "img@src",
      "kind": "tag.p.0@text##.*分类：",
      "lastChapter": "tag.p.2@text##.*最新章节:",
      "name": "class.bookname@text##《|》|TXT下载"
    },
    "ruleToc": {
      "chapterList": "id.yulan@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 PO18文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po18gv.vip",
    "customButton": false,
    "customOrder": 970,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"排  行\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总点击榜\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月点击榜\",\"url\":\"/top/monthvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周点击榜\",\"url\":\"/top/weekvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐榜\",\"url\":\"/top/allvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐榜\",\"url\":\"/top/monthvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周推荐榜\",\"url\":\"/top/weekvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"本站推荐\",\"url\":\"/top/toptime/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"收藏排行\",\"url\":\"/top/goodnum/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数排行\",\"url\":\"/top/size/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新小说\",\"url\":\"/top/postdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"完本小说\",\"url\":\"/wanben/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"分  类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"都市小说\",\"url\":\"/list/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"浓情小说\",\"url\":\"/list/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情小说\",\"url\":\"/list/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园小说\",\"url\":\"/list/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠小说\",\"url\":\"/list/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"/list/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越小说\",\"url\":\"/list/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚小说\",\"url\":\"/list/8/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑小说\",\"url\":\"/list/9/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生小说\",\"url\":\"/list/10/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史小说\",\"url\":\"/list/11/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"/list/12/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1724314980501,
    "respondTime": 2530,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=status|category|update_time]@content",
      "lastChapter": "[property$=lastest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": ".panel-body@html||#htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "small@text##\\/ 著",
      "bookList": ".row@class.col-md-4 col-xs-4 book-coverlist",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": "p@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".panel-body@dd@a",
      "chapterName": "text##全部章节目录",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：https://wap.po18k.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 PO18文学",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.po18at.com",
    "customButton": false,
    "customOrder": 971,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "                             分  类                               \n耽美小说::/class_visit_1/{{page}}.html\n百合小说::/class_visit_2/{{page}}.html\n言情小说::/class_visit_3/{{page}}.html\n  高辣文  ::/class_visit_4/{{page}}.html\n腹黑小说::/class_visit_5/{{page}}.html\n  种田文  ::/class_visit_6/{{page}}.html\n  高干文  ::/class_visit_7/{{page}}.html\n玄幻小说::/class_visit_8/{{page}}.html\n修真小说::/class_visit_9/{{page}}.html\n其他小说::/class_visit_10/{{page}}.html\n武侠小说::/class_visit_11/{{page}}.html\n都市小说::/class_visit_12/{{page}}.html\n科幻小说::/class_visit_13/{{page}}.html\n网游小说::/class_visit_14/{{page}}.html\n恐怖小说::/class_visit_15/{{page}}.html\n历史小说::/class_visit_16/{{page}}.html\n同人小说::/class_visit_17/{{page}}.html\n                             全  本                               \n全部分类::/quanben_0/{{page}}.html\n耽美小说::/quanben_1/{{page}}.html\n百合小说::/quanben_2/{{page}}.html\n言情小说::/quanben_3/{{page}}.html\n  高辣文  ::/quanben_4/{{page}}.html\n腹黑小说::/quanben_5/{{page}}.html\n  种田文  ::/quanben_6/{{page}}.html\n  高干文  ::/quanben_7/{{page}}.html\n玄幻小说::/quanben_8/{{page}}.html\n修真小说::/quanben_9/{{page}}.html\n其他小说::/quanben_10/{{page}}.html\n武侠小说::/quanben_11/{{page}}.html\n都市小说::/quanben_12/{{page}}.html\n科幻小说::/quanben_13/{{page}}.html\n网游小说::/quanben_14/{{page}}.html\n恐怖小说::/quanben_15/{{page}}.html\n历史小说::/quanben_16/{{page}}.html\n同人小说::/quanben_17/{{page}}.html",
    "lastUpdateTime": 1724314991014,
    "respondTime": 18082,
    "ruleBookInfo": {
      "author": "",
      "coverUrl": ".pic@img@src",
      "downloadUrls": "",
      "intro": ".intro@text",
      "kind": "##\\[状态\\]：([^<]+)</p>##$1###",
      "lastChapter": "",
      "name": "",
      "tocUrl": "text.打开目录@href"
    },
    "ruleContent": {
      "content": ".content@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": ".pictext",
      "bookUrl": "a@href",
      "coverUrl": "img@data-original",
      "intro": ".info_description@text",
      "kind": ".author_intro@text",
      "name": ".info_title@text"
    },
    "ruleSearch": {
      "author": "span.0@text",
      "bookList": "class.partlist-info@dl||class.slist xbk@li",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.a.1@href<js>'http://img.po18at.com/image'+String(result).replace(/.*?(\\d*?)(\\d{1,3}).html/,'/$1/$1$2/$1$2s.jpg').replace('//','/0/')</js>",
      "intro": "tag.span.2@text",
      "kind": "##\\[类别\\]：\\s*<[^>]+>(.*?)<##$1###",
      "lastChapter": "class.latest_title ablue@title",
      "name": "a.0@text",
      "wordCount": "##\\[字数\\]：\\s*<[^>]+>(.*?)<##$1###"
    },
    "ruleToc": {
      "chapterList": ".list@li",
      "chapterName": "span@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "渣女小说🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.zhanvxs.cc#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 972,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "耽美小说::/sort/1_{{page}}/\n海棠耽美::/sort/2_{{page}}/\n言情小说::/sort/3_{{page}}/\n海棠言情::/sort/4_{{page}}/\n百合小说::/sort/5_{{page}}/\n情欲小说::/sort/6_{{page}}/\n长佩小说::/sort/7_{{page}}/\n连城小说::/sort/8_{{page}}/",
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (iPhone; CPU OS 10_13_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.1 Mobile/14E304 Safari/605.1.15\"\n}",
    "lastUpdateTime": 0,
    "loginUrl": "",
    "respondTime": 12030,
    "ruleBookInfo": {
      "author": "class.infotype@tag.a.0@text",
      "coverUrl": "class.pic@img@src",
      "init": "",
      "intro": "class.intro@p@text##爱☆就☆收☆藏.*|禁忌书屋.*",
      "kind": "class.infotype@tag.p.1@text##类型：",
      "lastChapter": "class.infotype@tag.p.3@tag.a@text",
      "name": "class.cataloginfo@tag.h3@text",
      "tocUrl": "class.gochapter@a@href",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.novelcontent@html",
      "imageStyle": "TEXT",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##上一章|返回目录|下一章|加入书签|下一页|\\s*本章尚未完结.*\\s*|努力加载.*刷新页面！",
      "sourceRegex": "",
      "webJs": ""
    },
    "ruleExplore": {
      "author": "class.author@text",
      "bookList": "class.article",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.simple@text",
      "kind": "",
      "lastChapter": "",
      "name": "tag.h6@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "tag.a.1@text",
      "bookList": "class.searchresult@tag.p",
      "bookUrl": "tag.a@href",
      "coverUrl": "tag.a.0@href##/(\\d+)(\\d{3})/##/files/article/image/$1/$1$2/$1$2s.jpg",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "tag.a.0@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "class.chapters@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href",
      "isVip": "",
      "nextTocUrl": "text.下一页@href",
      "updateTime": ""
    },
    "searchUrl": "http://m.zhanvxs.cc/s.html,{\n\"charset\":\"\",\n\"method\":\"POST\",\n\"body\":\"type=articlename&s={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：https://wap.po18shu.com\n新御书屋 https://m.u9mm.com\n耽美小说 https://m.danmei.info\n  肉书阁   https://m.roushuge.com\n新御宅屋 https://m.xyuzhaiwu3.com\n                https://m.xyuzhaiwu5.com\n                https://m.xyuzhaiwu7.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 ️PO脸红心跳",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.po18bb.com",
    "customButton": false,
    "customOrder": 973,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "   全 部    ::/wapsort/0_{{page}}.html\n玄幻奇幻::/wapsort/1_{{page}}.html\n武侠仙侠::/wapsort/2_{{page}}.html\n都市言情::/wapsort/3_{{page}}.html\n科幻网游::/wapsort/4_{{page}}.html\n惊悚悬疑::/wapsort/5_{{page}}.html\n耽美同人::/wapsort/6_{{page}}.html\n穿越架空::/wapsort/7_{{page}}.html\n高辣浓情::/wapsort/8_{{page}}.html\n禁忌百合::/wapsort/9_{{page}}.html\n精品文学::/wapsort/10_{{page}}.html",
    "lastUpdateTime": 1724320146725,
    "respondTime": 5966,
    "ruleBookInfo": {
      "author": ".article_info_td a.0@text",
      "init": "",
      "intro": "pre@text",
      "kind": ".article_info_td@div.1:3@text##类别：|更新时间：",
      "lastChapter": ".article_info_td.0@a.1@text",
      "name": ".h_nav_items@li.1@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": "##总字数：([^<]+)<##$1###@js:result+'字'"
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "p.0@text##作者：",
      "bookList": ".common-bookele",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": "@js:'https://m.powenwu8.com/images/nocover.jpg'",
      "intro": "span@text||.abstract@text",
      "kind": "p.1@text##.*：",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "ul@li a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 肉文屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po18e.vip",
    "customButton": false,
    "customOrder": 974,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"排  行\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总点击榜\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月点击榜\",\"url\":\"/top/monthvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周点击榜\",\"url\":\"/top/weekvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐榜\",\"url\":\"/top/allvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐榜\",\"url\":\"/top/monthvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周推荐榜\",\"url\":\"/top/weekvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"本站推荐\",\"url\":\"/top/toptime/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"收藏排行\",\"url\":\"/top/goodnum/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数排行\",\"url\":\"/top/size/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新小说\",\"url\":\"/top/postdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"分  类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"耽美小说\",\"url\":\"/list/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"百合小说\",\"url\":\"/list/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情小说\",\"url\":\"/list/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高辣文\",\"url\":\"/list/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"腹黑小说\",\"url\":\"/list/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"种田文\",\"url\":\"/list/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高干文\",\"url\":\"/list/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"/list/8/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"修真小说\",\"url\":\"/list/9/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他小说\",\"url\":\"/list/10/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"/wanben/{{page}}\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1724546079661,
    "respondTime": 3339,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=status|category|update_time]@content",
      "lastChapter": "[property$=lastest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": ".panel-body@html||#htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "small@text##\\/ 著",
      "bookList": ".row@class.col-md-4 col-xs-4 book-coverlist",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": "p@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".panel-body@dd@a",
      "chapterName": "text##全部章节目录",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "被电子书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.iwurexs.info#",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 975,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"武侠仙侠\",\"url\":\"/wuxia/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/yanqing/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美小说\",\"url\":\"/danmei/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻小说\",\"url\":\"/xuanhuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"青春校园\",\"url\":\"/xiaoyuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/wangyou/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异推理\",\"url\":\"/kongbu/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"纪实小说\",\"url\":\"/jishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军事历史\",\"url\":\"/lishi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻小说\",\"url\":\"/kehuan/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"管理哲学\",\"url\":\"/zhexue/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"学习资料\",\"url\":\"/xuexi/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总排行榜\",\"url\":\"/paihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月排行榜\",\"url\":\"/mpaihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周排行榜\",\"url\":\"/wpaihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"日排行榜\",\"url\":\"/dpaihangbang/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"封推小说\",\"url\":\"/fengtui/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"金牌推荐\",\"url\":\"/jinpaituijian/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网站推荐\",\"url\":\"/tuijian/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}},{\"title\":\"最新书籍\",\"url\":\"/new/index_{{page}}.html\",\"style\":{\"layout_flexGrow\":0,\"layout_flexBasisPercent\":0.295}}]",
    "lastUpdateTime": 1734878799061,
    "loginUrl": "",
    "respondTime": 1719,
    "ruleBookInfo": {
      "author": "class.small.0@text",
      "coverUrl": ".detail_right@tag.img.0@src",
      "intro": "##简介：([^<]+)<##$1###",
      "kind": "class.wrap.position@tag.span@tag.a.1@text&&.detail_right@li.2@text##.*：",
      "lastChapter": "class.chapter-item.0@text",
      "name": "class.detail_right.1@tag.h1@text"
    },
    "ruleContent": {
      "content": "id.content@html##请记住本书.*|最新网址.*|书快书快.*|书快电子书.*|-",
      "imageStyle": "0",
      "nextContentUrl": "text.下一章@href",
      "replaceRegex": "##本文由4020电子书.*http://www.4020.cn/"
    },
    "ruleExplore": {
      "author": "##作者：([^<]+)<##$1###",
      "bookList": "//div[5]/div[2]/div/ul/li",
      "bookUrl": "class.red@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.wrlwx.com/headimgs/$2/$1/s$1.jpg###",
      "intro": "class.u@textNodes",
      "kind": "##更新：([^<]+)<##$1###",
      "lastChapter": "tag.a.1@text",
      "name": "tag.a.0@text##txt.*",
      "wordCount": "##大小：([^<]+)<##$1###"
    },
    "ruleSearch": {
      "author": "tag.td.3@text",
      "bookList": "tag.tbody@tag.tr!0",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.0@href##.+\\D((\\d+)\\d{3})\\D##https://www.iwurexs.com/headimgs/$2/$1/s$1.jpg###",
      "kind": "tag.td.4@text",
      "lastChapter": "tag.td.2@text",
      "name": "tag.td.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": "//div[5]/div/div[3]/div[2]/ul/li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/so.html?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n肉文屋 https://www.rouwenwu12.com\n笔文斋 https://www.biwenzhai.com\n色书院 https://www.seshuyuan.com\nS3文学 https://www.s3wx.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🚬 肉肉屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.rourouwu1.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 976,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "   全 部   ::/sort/0/{{page}}.html\n玄幻奇幻::/sort/1/{{page}}.html\n仙侠修真::/sort/2/{{page}}.html\n都市言情::/sort/3/{{page}}.html\n历史军事::/sort/4/{{page}}.html\n网游竞技::/sort/5/{{page}}.html\n科幻灵异::/sort/6/{{page}}.html\n恐怖惊悚::/sort/7/{{page}}.html\n其他类型::/sort/8/{{page}}.html",
    "lastUpdateTime": 1724318313160,
    "respondTime": 3307,
    "ruleBookInfo": {
      "author": "span.1@a@text",
      "coverUrl": "img.1@src",
      "intro": ".tabcontent@div.2@text",
      "kind": ".hide@text##作品分类：|连载状态：|最后更新：|作品性质：|授权级别：|首发网站：",
      "lastChapter": "h3@text",
      "name": "span.0@text",
      "tocUrl": ".b_hot@href"
    },
    "ruleContent": {
      "content": ".acontent@textNodes"
    },
    "ruleExplore": {
      "author": ".c_value.0@text",
      "bookList": ".c_row",
      "bookUrl": "a.2@href",
      "coverUrl": "img@src",
      "intro": ".c_description@text",
      "kind": ".c_value.2@text",
      "lastChapter": "a.3@text",
      "name": "a.2@text",
      "wordCount": ".c_value.1@text@js:result+'字'"
    },
    "ruleSearch": {
      "author": ".c_value.0@text",
      "bookList": ".c_row",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".c_description@text",
      "kind": ".c_value.1@text",
      "lastChapter": "a.3@text",
      "name": "a.1@text",
      "wordCount": ".c_value.2@text@js:result+'字'"
    },
    "ruleToc": {
      "chapterList": "dl@dd@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php,{\n  \"method\": \"POST\",\n  \"body\": \"searchtype=all&searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n御宅屋 https://m.123yuzhaiwu.com\n肉文阁 https://m.rouwenge.com\n新御宅屋 https://m.xyuzhaiwu1.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 新御书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yushuwu.club",
    "customButton": false,
    "customOrder": 978,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部\",\"url\":\"/wapsort/0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"/wapsort/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠\",\"url\":\"/wapsort/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情\",\"url\":\"/wapsort/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越\",\"url\":\"/wapsort/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"/wapsort/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"/wapsort/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游\",\"url\":\"/wapsort/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖\",\"url\":\"/wapsort/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美\",\"url\":\"/wapsort/9_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园\",\"url\":\"/wapsort/10_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高辣\",\"url\":\"/wapsort/11_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"腹黑\",\"url\":\"/wapsort/12_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"种田\",\"url\":\"/wapsort/13_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"高干\",\"url\":\"/wapsort/14_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"百合\",\"url\":\"/wapsort/15_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"其他\",\"url\":\"/wapsort/16_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"  \",\"url\":\"  \",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1724318595521,
    "respondTime": 9988,
    "ruleBookInfo": {
      "author": ".article_info_td a.0@text",
      "init": "",
      "intro": "pre@text",
      "kind": ".article_info_td@div.1:3@text##类别：|更新时间：",
      "lastChapter": ".article_info_td.0@a.1@text",
      "name": ".h_nav_items@li.1@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": "##总字数：([^<]+)<##$1###@js:result+'字'"
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "strong@text",
      "bookList": ".common-bookele",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": "@js:'https://img.powenwu15.com/image/0/295/295s.jpg'",
      "intro": ".abstract@text",
      "kind": ".lastupdate@text##.*：",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "ul@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n   PO文    https://m.po18vip.me \n  海棠寺   https://m.haitangsi.com   \n 肉宅屋    https://m.rouzhaiwu.info\n寂寞书库 http://m.jimoshuku.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 新御书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yswnovel.com",
    "bookUrlPattern": "",
    "concurrentRate": "",
    "customButton": false,
    "customOrder": 979,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "   全  部   ::/shuku/0/0/0/0/0/0/lastupdate/{{page}}.html                \n玄幻奇幻::/shuku/0/1/0/0/0/0/lastupdate/{{page}}.html\n武侠仙侠::/shuku/0/2/0/0/0/0/lastupdate/{{page}}.html\n都市生活::/shuku/0/3/0/0/0/0/lastupdate/{{page}}.html\n历史军事::/shuku/0/4/0/0/0/0/lastupdate/{{page}}.html\n网游竞技::/shuku/0/5/0/0/0/0/lastupdate/{{page}}.html\n科幻未来::/shuku/0/6/0/0/0/0/lastupdate/{{page}}.html\n恐怖悬疑::/shuku/0/7/0/0/0/0/lastupdate/{{page}}.html\n  二次元  ::/shuku/0/8/0/0/0/0/lastupdate/{{page}}.html\n古代言情::/shuku/0/9/0/0/0/0/lastupdate/{{page}}.html\n现代言情::/shuku/0/10/0/0/0/0/lastupdate/{{page}}.html\n幻想奇缘::/shuku/0/11/0/0/0/0/lastupdate/{{page}}.html\n浪漫青春::/shuku/0/12/0/0/0/0/lastupdate/{{page}}.html\n网络情缘::/shuku/0/13/0/0/0/0/lastupdate/{{page}}.html\n科幻空间::/shuku/0/14/0/0/0/0/lastupdate/{{page}}.html\n鬼怪灵异::/shuku/0/15/0/0/0/0/lastupdate/{{page}}.html\n  N 次元  ::/shuku/0/16/0/0/0/0/lastupdate/{{page}}.html\n言情美文::/shuku/0/17/0/0/0/0/lastupdate/{{page}}.html\n其他类型::/shuku/0/18/0/0/0/0/lastupdate/{{page}}.html\n  男点击  ::/top/rank.html\n  女点击  ::/top/nrank.html\n  收藏榜  ::/top/collect.html\n  推荐榜  ::/top/vote.html",
    "header": "",
    "lastUpdateTime": 1724318673225,
    "loginCheckJs": "",
    "loginUi": "",
    "loginUrl": "",
    "respondTime": 111541,
    "ruleBookInfo": {
      "author": "class.xq_bookne@tag.div.2@text",
      "coverUrl": "class.bookimg@img@src",
      "init": "",
      "intro": "class.bookintro@text",
      "kind": "class.xq_bookne@tag.div.3:4@text##类别：|状态：",
      "lastChapter": "id.newlist@tag.ul@tag.li.0@tag.a@text",
      "name": "class.one@text",
      "tocUrl": "class.btn_book@tag.a.3@href",
      "wordCount": "class.xq_bookne@tag.div.5@text##字数："
    },
    "ruleContent": {
      "content": "id.YiJianZhan@html",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": "##(‘’)##\\\""
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "class.book_other@textNodes",
      "bookList": "id.sitebox@dl",
      "bookUrl": "tag.a@href",
      "checkKeyWord": "",
      "coverUrl": "img@src",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span@text##\\|",
      "name": "h3@tag.a.0@text",
      "wordCount": "class.tag-small blue@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.ul@tag.li",
      "chapterName": "a@text##\\>",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href||option@value"
    },
    "searchUrl": "/modules/article/search.php,{\n'charset':'utf-8',\n'method':'POST',\n'body':'searchkey={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 7wav",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.7wav.com",
    "customButton": false,
    "customOrder": 980,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻魔法::/xs/1-default-0-0-0-0-0-0-{{page}}.html\n武侠修真::/xs/2-default-0-0-0-0-0-0-{{page}}.html\n穿越小说::/xs/3-default-0-0-0-0-0-0-{{page}}.html\n都市言情::/xs/4-default-0-0-0-0-0-0-{{page}}.html\n历史军事::/xs/5-default-0-0-0-0-0-0-{{page}}.html\n科幻小说::/xs/6-default-0-0-0-0-0-0-{{page}}.html\n网游动漫::/xs/7-default-0-0-0-0-0-0-{{page}}.html\n耽美同人::/xs/8-default-0-0-0-0-0-0-{{page}}.html\n侦探推理::/xs/9-default-0-0-0-0-0-0-{{page}}.html\n恐怖灵异::/xs/10-default-0-0-0-0-0-0-{{page}}.html\n\n连载中::/xs/quanbu-default-0-0-0-0-1-0-{{page}}.html\n已完成::/xs/quanbu-default-0-0-0-0-2-0-{{page}}.html\n总点击::/xs/quanbu-allvisit-0-0-0-0-0-0-{{page}}.html\n月点击::/xs/quanbu-monthvisit-0-0-0-0-0-0-{{page}}.html\n周点击::/xs/quanbu-weekvisit-0-0-0-0-0-0-{{page}}.html\n日点击::/xs/quanbu-dayvisit-0-0-0-0-0-0-{{page}}.html\n总推荐::/xs/quanbu-allvote-0-0-0-0-0-0-{{page}}.html\n月推荐::https://www.7wav.com/xs/quanbu-monthvote-0-0-0-0-0-0-{{page}}.html\n周推荐::/xs/quanbu-weekvote-0-0-0-0-0-0-{{page}}.html\n日推荐::/xs/quanbu-dayvote-0-0-0-0-0-0-{{page}}.html\n收藏数::/xs/quanbu-goodnum-0-0-0-0-0-0-{{page}}.html\n入站时间::/xs/quanbu-postdate-0-0-0-0-0-0-{{page}}.html\n  字数  ::/xs/quanbu-size-0-0-0-0-0-0-{{page}}.html\n30万以下::/xs/quanbu-default-0-1-0-0-0-0-{{page}}.html\n30万-50万::/xs/quanbu-default-0-2-0-0-0-0-{{page}}.html\n50万-100万::/xs/quanbu-default-0-3-0-0-0-0-{{page}}.html\n100万-200万::/xs/quanbu-default-0-4-0-0-0-0-{{page}}.html\n200万以上::/xs/quanbu-default-0-5-0-0-0-0-{{page}}.html",
    "header": "",
    "lastUpdateTime": 1724320491969,
    "respondTime": 7899,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "",
      "intro": "h3@text##.*.简介：|您要是觉得.*",
      "kind": "[property$=category]@content&&[property$=status]@content",
      "lastChapter": "[property$=latest_chapter_name]@content",
      "name": "[property$=book_name]@content",
      "tocUrl": "text.请访问手机版@href",
      "wordCount": "[property$=update_time]@content"
    },
    "ruleContent": {
      "content": "id.nr@textNodes"
    },
    "ruleExplore": {
      "author": "dd.1@span@text",
      "bookList": "class.sitebox@dl",
      "bookUrl": "h3@a@href",
      "coverUrl": "img@src",
      "intro": "dd.2@text",
      "kind": "span.uptime@text",
      "lastChapter": "dd.3@a@text",
      "name": "h3@a@text"
    },
    "ruleSearch": {
      "author": "p.s3@text",
      "bookList": "div.toplist@li",
      "bookUrl": "p.s1@a@href",
      "coverUrl": "img@src",
      "kind": "p.s6@text&&p.s5@text",
      "lastChapter": "p.s2@a@text",
      "name": "p.s1@a@text",
      "wordCount": "p.s4@text"
    },
    "ruleToc": {
      "chapterList": "class.lb fk@li",
      "chapterName": "a@text##本页章节列表结束！|没有更多分页了！",
      "chapterUrl": "a@href",
      "nextTocUrl": ".showpage.0@ul@a@href"
    },
    "searchUrl": "/modules/article/search.php?action=login&searchkey={{key}}&page={{page}},{\n  \"charset\": \"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "集书阁网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://jishuge.vip/",
    "customButton": false,
    "customOrder": 982,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"短篇\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"全部分类\",\"url\":\"/list_1_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"现代情色\",\"url\":\"/list_15_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日本情色\",\"url\":\"/list_16_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"西洋情色\",\"url\":\"/list_17_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"伴侣交换\",\"url\":\"/list_18_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠情色\",\"url\":\"/list_19_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"奇幻科幻\",\"url\":\"/list_20_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"家庭乱伦\",\"url\":\"/list_21_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"性爱调教\",\"url\":\"/list_22_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"粗野性交\",\"url\":\"/list_23_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"多人群交\",\"url\":\"/list_24_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"教师学生\",\"url\":\"/list_25_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"古典情色\",\"url\":\"/list_26_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史情色\",\"url\":\"/list_27_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"同性情色\",\"url\":\"/list_28_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市生活\",\"url\":\"/list_29_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"乡间记趣\",\"url\":\"/list_30_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"疯狂暴露\",\"url\":\"/list_31_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"午夜怪谈\",\"url\":\"/list_32_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"游戏乐园\",\"url\":\"/list_33_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"医生护士\",\"url\":\"/list_34_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"奇遇物语\",\"url\":\"/list_35_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"左邻右舍\",\"url\":\"/list_36_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"同事之间\",\"url\":\"/list_37_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"旅游纪事\",\"url\":\"/list_38_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"纯洁恋情\",\"url\":\"/list_39_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"明星系列\",\"url\":\"/list_40_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"意外收获\",\"url\":\"/list_41_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"忘年之乐\",\"url\":\"/list_42_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"另类其他\",\"url\":\"/list_43_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"知识技巧\",\"url\":\"/list_44_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"情欲性爱\",\"url\":\"/list_45_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"经典激情\",\"url\":\"/list_46_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"近亲乱伦\",\"url\":\"/list_47_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"人妻美妇\",\"url\":\"/list_48_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"学生校园\",\"url\":\"/list_49_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"职业制服\",\"url\":\"/list_50_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"粗暴性爱\",\"url\":\"/list_51_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"情色武侠\",\"url\":\"/list_52_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"【长篇】\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"全部分类\",\"url\":\"/list_2_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"通俗小说\",\"url\":\"/list_5_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"校园小说\",\"url\":\"/list_6_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"乡村小说\",\"url\":\"/list_7_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/list_8_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"医生小说\",\"url\":\"/list_9_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠小说\",\"url\":\"/list_10_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"奇幻小说\",\"url\":\"/list_11_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/list_12_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"黑暗小说\",\"url\":\"/list_13_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"日本小说\",\"url\":\"/list_14_{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1689754782244,
    "respondTime": 10393,
    "ruleBookInfo": {},
    "ruleContent": {
      "content": "#bookcontent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "bookList": ".ucontent li",
      "bookUrl": "a@href##$##,{'webView': true}",
      "intro": ".description@text##(^|[。！？]+[”」）】]?)##$1<br>",
      "name": ".title@text"
    },
    "ruleToc": {
      "chapterList": ".ucontent li a||.content-title div.-1",
      "chapterName": "text",
      "chapterUrl": "href##$##,{'webView': true}",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "list-{{key}}.html",
    "weight": 0
  },
  {
    "bookSourceComment": "kandeshu.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 看的书",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.rourouwu18.com",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 984,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"◎排行榜◎\",\"url\":\"\",\"style\":{layout_flexGrow: 1,layout_flexBasisPercent:1}},\n{\"title\":\"最近更新\",\"url\":\"/top/lastupdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"最新入库\",\"url\":\"/top/postdate/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"点击总榜\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"推荐总榜\",\"url\":\"/top/allvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"点击月榜\",\"url\":\"/top/monthvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"推荐月榜\",\"url\":\"/top/monthvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周排行榜\",\"url\":\"/top/weekvisit/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周推荐榜\",\"url\":\"/top/weekvote/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总收藏榜\",\"url\":\"/top/goodnum/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"本站推荐\",\"url\":\"/top/toptime/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数排行\",\"url\":\"/top/size/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"/wanben/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"分类全部\",\"url\":\"/list/0/{{page}}.html\",\"style\":{layout_flexGrow: 1,layout_flexBasisPercent:1}},\n{\"title\":\"玄幻\",\"url\":\"/list/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"修真\",\"url\":\"/list/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"言情\",\"url\":\"/list/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"都市\",\"url\":\"/list/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"耽美\",\"url\":\"/list/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"校园\",\"url\":\"/list/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"高辣\",\"url\":\"/list/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"腹黑\",\"url\":\"/list/8/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"种田\",\"url\":\"/list/9/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"高干\",\"url\":\"/list/10/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"百合\",\"url\":\"/list/11/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},{\"title\":\"其他\",\"url\":\"/list/12/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "lastUpdateTime": 1724359754306,
    "loginUrl": "",
    "respondTime": 3544,
    "ruleBookInfo": {
      "author": "class.red.0@text",
      "coverUrl": "",
      "init": "",
      "intro": "id.bookIntro@text",
      "kind": "class.red.-1@text",
      "lastChapter": "p.1@text##最新章节：|\\（|\\）",
      "name": "h1@text",
      "tocUrl": "",
      "wordCount": "class.blue.0@text"
    },
    "ruleContent": {
      "content": ".panel-body@html",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "class.text-muted.-1@text||class.list-group-item@tag.small@text",
      "bookList": "class.table@tag.tr!0||class.list-group-item",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "@js:'/modules/article/images/nocover.jpg'",
      "intro": "",
      "kind": "tag.td.-1@text",
      "lastChapter": "class.text-muted.0@text",
      "name": "tag.a.0@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "tag.li.2@text",
      "bookList": "class.mySearch@tag.ul!-1",
      "bookUrl": "tag.a.0@href",
      "checkKeyWord": "",
      "coverUrl": "@js:'/modules/article/images/nocover.jpg'",
      "intro": "class.intro@text",
      "kind": "tag.li.-1@text##状态：",
      "lastChapter": "class.chapter@text",
      "name": "tag.a.0@text",
      "wordCount": "tag.li.3@text##大小："
    },
    "ruleToc": {
      "chapterList": ".col-md-3 a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "",
      "updateTime": "class.visible-xs@text##更新时间："
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}},{\n'charset': 'gbk'}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "全本小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xs5200.com#",
    "bookUrlPattern": "/\\d+_\\d+/",
    "customButton": false,
    "customOrder": 985,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/xuanhuanxiaoshuo/1_{{page}}.html\n修真小说::/xiuzhenxiaoshuo/2_{{page}}.html\n都市小说::/dushixiaoshuo/3_{{page}}.html\n穿越小说::/chuanyuexiaoshuo/4_{{page}}.html\n网游小说::/wangyouxiaoshuo/5_{{page}}.html\n科幻小说::/kehuanxiaoshuo/6_{{page}}.html",
    "lastUpdateTime": 1734841094172,
    "loginUrl": "",
    "respondTime": 741,
    "ruleBookInfo": {
      "author": "id.info@tag.p.0@text##作 者：",
      "coverUrl": "id.bookimg@img@src",
      "init": "",
      "intro": "id.intro@tag.p.1@text",
      "kind": "id.info@tag.p.2@text&&\nid.info@tag.p.1@text##最后更新：|状 态：",
      "lastChapter": "id.info@tag.p.3@a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "id.info@h1@text",
      "tocUrl": "",
      "wordCount": ""
    },
    "ruleContent": {
      "content": "id.content@html##一秒记住.*最新章节！|清爽免费阅读请记.*|手机免费.*|www.*cc"
    },
    "ruleExplore": {
      "author": "class.s5@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "coverUrl": "class.s2@a@href<js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.xs5200.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "intro": "",
      "kind": "",
      "lastChapter": "class.s3@text",
      "name": "class.s2@a@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "tag.td.2@text",
      "bookList": "class.grid@id.nr",
      "bookUrl": "tag.td.0@tag.a@href",
      "coverUrl": "tag.td.0@tag.a@href<js>\nvar id = result.match(/_(\\d+)/)[1];\nvar iid = parseInt(id/1000);\n'http://www.xs5200.com/files/article/image/'+iid+'/'+id+'/'+id+'s.jpg';\n</js>",
      "kind": "tag.td.4@text&&\ntag.td.5@text",
      "lastChapter": "tag.td.1@tag.a@text##免费章节 |正文卷 |正文 |VIP章节 ",
      "name": "tag.td.0@tag.a@text",
      "wordCount": "tag.td.3@text"
    },
    "ruleToc": {
      "chapterList": "id.list@tag.dd",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/modules/article/search.php?s=10362325638345863231&q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "九五小说 ",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xfjxs.com#♤yc",
    "customButton": false,
    "customOrder": 986,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻魔法\",\"url\":\"/mulu/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠修真\",\"url\":\"/mulu/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"/mulu/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"历史军事\",\"url\":\"/mulu/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"侦探推理\",\"url\":\"/mulu/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游动漫\",\"url\":\"/mulu/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻小说\",\"url\":\"/mulu/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"恐怖灵异\",\"url\":\"/mulu/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越小说\",\"url\":\"/mulu/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其他类型\",\"url\":\"/mulu/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.29}},\n{\"title\":\"完本小说\",\"url\":\"/modules/article/articlelist.php?fullflag=1&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1754709897055,
    "loginUrl": "",
    "respondTime": 722,
    "ruleBookInfo": {
      "author": ".author a@text",
      "coverUrl": ".con_limg img@src",
      "intro": ".r_cons@html",
      "kind": ".txt_nav a.1@text&&.lastrecord@ownText##小说|.*\\(|\\).*",
      "lastChapter": ".lastrecord a@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "h1@text",
      "tocUrl": ".r_tools a.1@href"
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##\\.pbtxt."
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "#alistbox",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "",
      "lastChapter": "",
      "name": "a.1@text##《|》",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##http://www.xfjxs.com/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "td.1@text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": ".novel_list dd a",
      "chapterName": "text##[\\(（【].*?[求更谢乐发订合补加].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?ie=gbk&searchkey={{key}}&ct=2097152",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "中华诗词🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.zhonghuashici.com#🎃",
    "bookUrlPattern": "https://m.zhonghuashici.com/show-\\d+-\\d+.html",
    "customButton": false,
    "customOrder": 987,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"首页\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1.0}},{\"title\":\"古诗\",\"url\":\"/list-1-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"宋词\",\"url\":\"/list-2-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"元曲\",\"url\":\"/list-3-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"文言文\",\"url\":\"/list-4-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"诗人\",\"url\":\"/list-5-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"典籍\",\"url\":\"/list-6-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}},{\"title\":\"故事\",\"url\":\"/list-7-{{page-1}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.4}}]",
    "header": "{\n\t\"User-Agent\": \"Mozilla/5.0 (Linux; Android 11; Phh-Treble vanilla Build/RQ3A.211001.001;) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/90.0.4430.91 Safari/537.36\"\n\t}",
    "lastUpdateTime": 0,
    "respondTime": 2834,
    "ruleBookInfo": {
      "author": "span.0@text##作者：",
      "kind": "span.1@text",
      "name": "h1@text"
    },
    "ruleContent": {
      "content": ".box div!-1@html",
      "nextContentUrl": "",
      "replaceRegex": "##(\\d+|-|:)",
      "sourceRegex": ""
    },
    "ruleExplore": {
      "author": "a@text",
      "bookList": "ul li h2||ul li a[8:]",
      "bookUrl": "a@href",
      "coverUrl": "@js:'https://z3.ax1x.com/2021/08/22/fzzNBq.png'",
      "intro": "",
      "name": "a@text"
    },
    "ruleSearch": {
      "bookList": ".r",
      "bookUrl": "a.1@href",
      "checkKeyWord": "蝶恋花",
      "coverUrl": "@js:'https://z3.ax1x.com/2021/08/22/fzzNBq.png'",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": "tag.html",
      "chapterName": "h1@text"
    },
    "searchUrl": "/e/search/index.php,{\n  \"body\": \"keyboard={{key}}&show=title&tempid=1\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "玄幻阁子",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xuankuks.com#一程",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 990,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/sort1/{{page}}/\n武侠::/sort2/{{page}}/\n都市::/sort3/{{page}}/\n历史::/sort4/{{page}}/\n言情::/sort5/{{page}}/\n穿越::/sort6/{{page}}/\n科幻::/sort7/{{page}}/\n恐怖::/sort8/{{page}}/\n校园::/sort9/{{page}}/\n异界::/sort10/{{page}}/\n全本::/quanben/{{page}}/",
    "lastUpdateTime": 1734840742140,
    "loginUrl": "",
    "respondTime": 369,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content##\\s.*",
      "lastChapter": "[property=\"og:novel:latest_chapter_name\"]@content##正文卷\\s",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "id.content@html##随机推荐.*",
      "imageStyle": "0"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "tag.span.1@text",
      "bookList": "id.sitebox@tag.dl",
      "bookUrl": "tag.a.1@href",
      "coverUrl": "tag.img@src",
      "intro": "tag.dd.3@text",
      "kind": "tag.span.2@text&&tag.span.0@text",
      "lastChapter": "tag.a.2@text",
      "name": "tag.a.1@text",
      "wordCount": "tag.span.3@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "/modules/article/search.php?s=7673184438602983814&s={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "二三中文网🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ersanxs.net#🎃",
    "customButton": false,
    "customOrder": 991,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": " [{\"title\":\"分类(标签)\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"全部\",\"url\":\"/xclass/0/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/xclass/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真小说\",\"url\":\"/xclass/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/xclass/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/xclass/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游小说\",\"url\":\"/xclass/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/xclass/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/xclass/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖小说\",\"url\":\"/xclass/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"肉文小说\",\"url\":\"/xclass/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"周榜(标签)\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"全部\",\"url\":\"/ph/week<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/ph/week1<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真小说\",\"url\":\"/ph/week2<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/ph/week3<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/ph/week4<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游小说\",\"url\":\"/ph/week5<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/ph/week6<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/ph/week7<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖小说\",\"url\":\"/ph/week8<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"肉文小说\",\"url\":\"/ph/week9<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"月榜(标签)\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"全部\",\"url\":\"/ph/month<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/ph/month1<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真小说\",\"url\":\"/ph/month2<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/ph/month3<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/ph/month4<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游小说\",\"url\":\"/ph/month5<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/ph/month6<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/ph/month7<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖小说\",\"url\":\"/ph/month8<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"肉文小说\",\"url\":\"/ph/month9<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"总榜(标签)\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"全部\",\"url\":\"/ph/all<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"玄幻小说\",\"url\":\"/ph/all1<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"修真小说\",\"url\":\"/ph/all2<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市小说\",\"url\":\"/ph/all3<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/ph/all4<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游小说\",\"url\":\"/ph/all5<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/ph/all6<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他小说\",\"url\":\"/ph/all7<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖小说\",\"url\":\"/ph/all8<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"肉文小说\",\"url\":\"/ph/all9<,_{{page}}>.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 0,
    "respondTime": 6339,
    "ruleBookInfo": {
      "author": "class.author@text",
      "coverUrl": "class.synopsisArea_detail@tag.img@src",
      "intro": "class.review@text",
      "kind": "class.sort@text&&class.synopsisArea_detail@tag.p.2@text&&class.synopsisArea_detail@tag.p.3@text&&class.synopsisArea_detail@tag.p.4@text",
      "name": "class.title@text",
      "tocUrl": "text.查看完整目录@href"
    },
    "ruleContent": {
      "content": "id.chaptercontent @html##（本章未完，请点击下一页继续阅读）|最新网址：m.ersanxs.net|『加入书签，方便阅读』|.*\\(第\\d+\\/\\d+页\\)|（本章未完，请点击下一页）\n<js>result.split(/[\\t\\r\\f\\n\\s]*/g).join('')</js>\n##\\<ahref.*red\\;\\\"\\>\n<js>result.split(/[\\t\\r\\f\\n\\s]*/g).join('')</js>",
      "nextContentUrl": "text.下一页@href",
      "replaceRegex": ""
    },
    "ruleExplore": {
      "author": "class.author@text",
      "bookList": "class.hot_sale",
      "bookUrl": "tag.a.0@href",
      "coverUrl": "tag.a.0@tag.img@data-original",
      "intro": "class.review@text",
      "name": "class.title@text"
    },
    "ruleSearch": {
      "author": "tag.span@text##/",
      "bookList": "class.result@tag.li",
      "bookUrl": "tag.a.1@href",
      "kind": "tag.a.0@text##\\[|\\]",
      "name": "tag.a.1@text"
    },
    "ruleToc": {
      "chapterList": "\n<js>\nlist=[]\nlis=java.getElements('class.directoryArea@tag.p@tag.a')\nfor(var i=1;i<lis.length-1;i++){\n\tname=lis[i].text()\n\tsurl=lis[i].attr('href')\n\ttemp={\n\t\t\"name\":name,\n\t\t\"surl\":surl\n\t\t}\n\t\tlist.push(temp)\n\t}\nlist\n</js>",
      "chapterName": "name",
      "chapterUrl": "surl"
    },
    "searchUrl": "/s.php?keyword={{key}}&t=1",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "小说屋子",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xiaoshuowu.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 996,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1702174790694,
    "loginUrl": "",
    "respondTime": 3305,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "img.1@src",
      "intro": "div.tabvalue.0@text",
      "kind": "[property=\"og:novel:category\"]@content&&[property=\"og:novel:status\"]@content&&[property=\"og:novel:update_time\"]@content",
      "lastChapter": "div.divbg@.cf@li.0@a.0@text",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": ".ulrow@li.0@a@href"
    },
    "ruleContent": {
      "content": ".acontent@html",
      "replaceRegex": "##.*第.*章.*\\s|\\(|小说屋.*\\)﻿|（|）|小说屋.*|.*如果您中途有事离开.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".c_tag.0@.c_value.0@text",
      "bookList": "class.c_row",
      "bookUrl": ".fl@a@href",
      "coverUrl": "img@src",
      "kind": ".c_tag.0@.c_value.1@text",
      "lastChapter": ".c_tag.1@.c_value.0@text",
      "name": "class.c_subject@text",
      "wordCount": ".c_tag.0@.c_value.2@text"
    },
    "ruleToc": {
      "chapterList": "ul@li@a",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "modules/article/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "肉肉屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.rourouwu.xyz",
    "customButton": false,
    "customOrder": 1001,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"校园言情\",\"url\":\"/list/1/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/list/2/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"古代爱情\",\"url\":\"/list/3/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"罗曼史\",\"url\":\"/list/4/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"耽美\",\"url\":\"/list/5/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"百合\",\"url\":\"/list/6/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"同人\",\"url\":\"/list/7/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"奇幻玄幻\",\"url\":\"/list/8/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"网游竞技\",\"url\":\"/list/9/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"科幻异能\",\"url\":\"/list/10/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/list/11/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"惊悚推理\",\"url\":\"/list/12/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"/list/13/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/list/14/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"穿越重生\",\"url\":\"/list/15/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"综合其它\",\"url\":\"/list/16/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.4,\"layout_flexGrow\":1}},{\"title\":\"排行榜\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总\",\"url\":\"/top/allvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25}},{\"title\":\"月\",\"url\":\"/top/monthvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25}},{\"title\":\"周\",\"url\":\"/top/weekvisit/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25}},{\"title\":\"推荐榜\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"总\",\"url\":\"/top/allvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"月\",\"url\":\"/top/monthvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"周\",\"url\":\"/top/weekvote/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"本站\",\"url\":\"/top/toptime/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.2,\"layout_flexGrow\":1}},{\"title\":\"收藏排行\",\"url\":\"/top/goodnum/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"字数排行\",\"url\":\"/top/size/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"最近更新\",\"url\":\"/top/lastupdate/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"最新小说\",\"url\":\"/top/postdate/{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},{\"title\":\"完本\",\"url\":\"/wanben/{{page}}\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1743753102598,
    "respondTime": 2163,
    "ruleBookInfo": {
      "author": "[property$=author]@content",
      "coverUrl": "[property$=image]@content",
      "intro": "[property$=description]@content",
      "kind": "[property~=status|category|update_time]@content",
      "lastChapter": "[property$=lastest_chapter_name]@content",
      "name": "[property$=book_name]@content"
    },
    "ruleContent": {
      "content": ".panel-body@html||#htmlContent@html"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "small@text##\\/ 著",
      "bookList": ".row@class.col-md-4 col-xs-4 book-coverlist",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": "p@text",
      "name": "h4@text"
    },
    "ruleToc": {
      "chapterList": ".panel-body@dd@a",
      "chapterName": "text##全部章节目录",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?searchkey={{key}}&page={{page}},{\n  \"charset\": \"GBK\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "error:timeout\n",
    "bookSourceGroup": "免费",
    "bookSourceName": "作废",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.janpn.com/",
    "customButton": false,
    "customOrder": 1002,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::/xuanhuanqihuan/list-1-{{page}}.html\r\n修真::/wuxiaxiuzhen/list-2-{{page}}.html\r\n都市::/xiandaidushi/list-3-{{page}}.html\r\n军史::/lishijunshi/list-4-{{page}}.html\r\n网游::/youxijingji/list-5-{{page}}.html\r\n科幻::/kehuanlingyi/list-6-{{page}}.html\r\n言情::/nvshengyanqing/list-7-{{page}}.html\r\n其他::/qitaleixing/list-8-{{page}}.html",
    "lastUpdateTime": 0,
    "respondTime": 5177,
    "ruleBookInfo": {
      "intro": "//*[@name='description']/@content",
      "tocUrl": "class.btn btn-primary@href"
    },
    "ruleContent": {
      "content": "id.htmlContent@html"
    },
    "ruleExplore": {
      "author": "class.shop-info!0:2@text##\\[.*$",
      "bookList": "class.list@a",
      "bookUrl": "a@href",
      "lastChapter": "class.glyphicon glyphicon-bullhorn@text",
      "name": "a@title"
    },
    "ruleSearch": {
      "author": "class.shop-info!0:2@text##\\[.*$",
      "bookList": "class.list@a",
      "bookUrl": "a@href",
      "coverUrl": "",
      "lastChapter": "class.glyphicon glyphicon-bullhorn@text",
      "name": "a@title"
    },
    "ruleToc": {
      "chapterList": "class.panel-body panel-chapterlist@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "http://www.janpn.com/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "乃星",
    "bookSourceGroup": "免费",
    "bookSourceName": "无极小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://wujixiaoshuo.com",
    "customButton": false,
    "customOrder": 1003,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::https://ajnnan.com/xuanhuanxiaoshuo/1_1.html\n修真小说::https://ajnnan.com/xiuzhenxiaoshuo/2_1.html\n都市小说::https://ajnnan.com/dushixiaoshuo/3_1.html\n穿越小说::https://ajnnan.com/chuanyuexiaoshuo/4_1.html\n网游小说::https://ajnnan.com/wangyouxiaoshuo/5_1.html\n科幻小说::https://ajnnan.com/kehuanxiaoshuo/6_1.html\n其他小说::https://ajnnan.com/qitaxiaoshuo/7_1.html\n完本小说::https://ajnnan.com/wanben/1_1/",
    "lastUpdateTime": 1623946915880,
    "respondTime": 7450,
    "ruleBookInfo": {
      "intro": "id.intro@html",
      "lastChapter": "id.info@tag.p.-1@text##最新章节："
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##欢迎广大书友光临阅读.*"
    },
    "ruleExplore": {
      "author": "##<a href=\"/author/\\d+/\">(.*?)</a>##$1###<js>result.replace(/<span>/g,'').replace(/<.*span>/g,'')</js>",
      "bookList": ".ll dl,.r ul li,.l ul li",
      "bookUrl": "##<a href=\"(/\\d+_\\d+/)\"##https://ajnnan.com$1###",
      "intro": "dd@text",
      "kind": ".s1@text##\\[|\\]",
      "lastChapter": ".s3@text",
      "name": ".s2@text||tag.a.1@text",
      "wordCount": "##<span class=\"s5\">(\\d+-\\d+)</span>##$1###"
    },
    "ruleSearch": {
      "author": ".s4.wid@text",
      "bookList": "class.novelslist2@ul@li!0",
      "bookUrl": ".s2.wid a@href",
      "lastChapter": "{{@@class.s3 wid3@text}} • {{@@class.s6 wid6@text}}",
      "name": ".s2.wid@text"
    },
    "ruleToc": {
      "chapterList": "dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "https://ajnnan.com/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "无极小说-电脑",
    "bookSourceType": 0,
    "bookSourceUrl": "https://ajnnan.com",
    "customButton": false,
    "customOrder": 1004,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻小说::/xuanhuanxiaoshuo/1_{{page}}.html\n修真小说::/xiuzhenxiaoshuo/2_{{page}}.html\n都市小说::/dushixiaoshuo/3_{{page}}.html\n穿越小说::/chuanyuexiaoshuo/4_{{page}}.html\n网游小说::/wangyouxiaoshuo/5_{{page}}.html\n科幻小说::/kehuanxiaoshuo/6_{{page}}.html\n其它小说::/qitaxiaoshuo/7_{{page}}.html",
    "lastUpdateTime": 1654017956420,
    "respondTime": 4321,
    "ruleBookInfo": {
      "coverUrl": "img@src",
      "init": "",
      "intro": "id.intro@text"
    },
    "ruleContent": {
      "content": "id.content@textNodes"
    },
    "ruleExplore": {
      "author": "class.s4@a@text",
      "bookList": "class.l@li",
      "bookUrl": "class.s2@a@href",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleSearch": {
      "author": "class.s4@a@text",
      "bookList": "class.novelslist2@li!0",
      "bookUrl": "class.s2@a@href",
      "lastChapter": "class.s3@a@text",
      "name": "class.s2@a@text"
    },
    "ruleToc": {
      "chapterList": "dl@dd",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "/search.html?name={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "⭐️沙滩",
    "bookSourceType": 0,
    "bookSourceUrl": "       http://m.shatanxs.com",
    "customButton": false,
    "customOrder": 1005,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url+\"/sort/\";\nvar ph=url+\"/top/allvisit_1/\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".content li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".content li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".content li a\");\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        push(title,url,size)\n    };\n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\")\n        size=0.25;\n        push(title,url,size)\n    }\npush(\"🌹全本🌹\",\"/full/{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)\n",
    "lastUpdateTime": 1703496419852,
    "respondTime": 9619,
    "ruleBookInfo": {
      "author": ".block_txt2@a.0@text",
      "intro": ".intro_info@text",
      "kind": ".block_txt2@a.1@text",
      "lastChapter": ".block_txt2@a.2@text",
      "name": ".block_txt2@h2@text",
      "tocUrl": "text.完整目录@href",
      "wordCount": ".block_txt2@p.4@text"
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "text.下 页@href||text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "//*[not(@class='blue')]/text()##\\[.*\\]|\\/",
      "bookList": ".line",
      "bookUrl": ".blue@href",
      "checkKeyWord": "",
      "coverUrl": "",
      "intro": "",
      "kind": "##\\[(.*)\\]##$1##",
      "name": ".blue@text"
    },
    "ruleToc": {
      "chapterList": ".chapter li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "isPay": "",
      "nextTocUrl": "@js:\nvar n=result.match(/\\/(\\d+)页/)[1];\nbaseUrl=baseUrl.replace(/(.+)\\//,'$1');\nvar list=[];\nfor(var i=2;i<=n;i++){list.push(baseUrl+\"_\"+i+\"/\");}\nlist"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"s={{key}}&type=articlename\",\n  \"charset\": \"gbk\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "九五书包",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.95shubao.info/",
    "customButton": false,
    "customOrder": 1009,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"玄幻魔法\",\"url\":\"/mulu/1-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"武侠修真\",\"url\":\"/mulu/2-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"都市言情\",\"url\":\"/mulu/3-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"历史军事\",\"url\":\"/mulu/4-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"侦探推理\",\"url\":\"/mulu/5-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"网游动漫\",\"url\":\"/mulu/6-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"科幻小说\",\"url\":\"/mulu/7-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"恐怖灵异\",\"url\":\"/mulu/8-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"穿越小说\",\"url\":\"/mulu/9-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他类型\",\"url\":\"/mulu/10-{{page}}.html\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"完本小说\",\"url\":\"/modules/article/articlelist.php?fullflag=1&page={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1690930820226,
    "loginUrl": "",
    "respondTime": 331,
    "ruleBookInfo": {
      "author": ".author a@text",
      "coverUrl": ".con_limg img@src",
      "intro": ".r_cons@html",
      "kind": ".txt_nav a.1@text&&.lastrecord@ownText##小说|.*\\(|\\).*",
      "lastChapter": ".lastrecord a@text##[\\(（【].*?[求更票谢乐发订合补加K].*?[】）\\)]",
      "name": "h1@text",
      "tocUrl": ".r_tools a.1@href"
    },
    "ruleContent": {
      "content": "#content@textNodes",
      "replaceRegex": "##\\.pbtxt."
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": "#alistbox",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": ".intro@text",
      "kind": "",
      "lastChapter": "",
      "name": "a.1@text##《|》",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "td.2@text",
      "bookList": "tbody tr!0",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.+\\D((\\d+)\\d{3})\\D##/files/article/image/$2/$1/$1s.jpg###",
      "kind": "td.5:4@text",
      "lastChapter": "td.1@text##[\\(（【].*?[求更票谢乐发订合补加K].*?[】）\\)]",
      "name": "td.0@text",
      "wordCount": "td.3@text"
    },
    "ruleToc": {
      "chapterList": ".novel_list dd a",
      "chapterName": "text##[\\(（【].*?[求更票谢乐发订合补加K].*?[】）\\)]",
      "chapterUrl": "href"
    },
    "searchUrl": "/modules/article/search.php?ie=gbk&searchkey={{key}}&ct=2097152",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "三九小说",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.xyshuk.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 1010,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "",
    "header": "",
    "lastUpdateTime": 1685680623916,
    "loginUrl": "",
    "respondTime": 61,
    "ruleBookInfo": {
      "author": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h2[1]/text()##作者：",
      "coverUrl": "//*[@id=\"content\"]/div/div[2]/div[1]/img/@src",
      "intro": "//*[@id=\"content\"]/div/div[2]/div[2]/div[3]/p/text()",
      "kind": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h2[3]/text()##所属：",
      "name": "//*[@id=\"content\"]/div/div[2]/div[2]/div[1]/h1/text()"
    },
    "ruleContent": {
      "content": "class.novel_content@html##最新网址：www.xyshuk.com"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "@tag.td.2@text",
      "bookList": "class.grid@tbody@tr!0",
      "bookUrl": "@tag.td.0@a@href",
      "lastChapter": "@tag.td.1@a@text",
      "name": "@tag.td.0@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.zhangjie",
      "chapterName": "@tag.a@text",
      "chapterUrl": "@tag.a@href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&searchtype=articlename",
    "weight": 0
  },
  {
    "bookSourceComment": "//2024.12.7 正文下一页12.28修复壬二酸",
    "bookSourceGroup": "免费",
    "bookSourceName": "圣武书屋◎辞晨◎",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.swskw.com/",
    "customButton": false,
    "customOrder": 1012,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部🏷分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"奇幻·玄幻\",\"url\":\"/catalog/xuanhuan_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻·游戏\",\"url\":\"/catalog/game_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠·仙侠\",\"url\":\"/catalog/xianxia_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"女生·言情\",\"url\":\"/catalog/yanqing_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市·娱乐\",\"url\":\"/catalog/dushi_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史·军事\",\"url\":\"/catalog/lishi_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"悬疑·灵异\",\"url\":\"/catalog/kongbu_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美·纯爱\",\"url\":\"/catalog/chunai_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"轻小说\",\"url\":\"/catalog/light_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{'User-Agent':'Mozilla/5.0 (Linux; Android 14; V2304A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36',\n\"Referer\":\"https://www.swskw.com/\"}",
    "lastUpdateTime": 1736741016888,
    "respondTime": 5663,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "wordCount": "[property$=status]@content"
    },
    "ruleContent": {
      "content": "#cont-body@html",
      "nextContentUrl": "class.col-md-6 text-center@tag.a.2@href"
    },
    "ruleExplore": {
      "bookList": ".row@.col-md-12",
      "bookUrl": "h4@a@href",
      "coverUrl": "img@src",
      "intro": ".media-info@text",
      "name": "h4@a@text"
    },
    "ruleSearch": {
      "author": "td.1@text",
      "bookList": "table@tbody@tr",
      "bookUrl": "a.0@href",
      "name": "a.0@text##.*《|》"
    },
    "ruleToc": {
      "chapterList": ".row@.col-md-6",
      "chapterName": "a@text",
      "chapterUrl": "a@href"
    },
    "searchUrl": "https://www.swskw.com/plus/search.php?q={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "免费",
    "bookSourceName": "🔖86读书",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.86dushu.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 1013,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "言情小说::http://www.86dushu.com/yanqing/{{page}}.html\n玄幻小说::http://www.86dushu.com/xuanhuan/{{page}}.html\n武侠小说::http://www.86dushu.com/wuxia/{{page}}.html\n历史小说::http://www.86dushu.com/lishi/{{page}}.html\n网游竞技::http://www.86dushu.com/wangyou/{{page}}.html\n科幻小说::http://www.86dushu.com/kehuan/{{page}}.html\n恐怖小说::http://www.86dushu.com/kongbu/{{page}}.html\n穿越小说::http://www.86dushu.com/chuanyue/{{page}}.html\n文学名著::http://www.86dushu.com/wenxue/{{page}}.html\n激情小说::http://www.86dushu.com/jiqing/{{page}}.html\n其他电子书::http://www.86dushu.com/qita/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1678669185590,
    "loginUrl": "",
    "respondTime": 26641,
    "ruleBookInfo": {
      "coverUrl": "class.left@tag.img@src",
      "intro": "id.con_one_1@text",
      "name": "class.left@tag.h1@text"
    },
    "ruleContent": {
      "content": "class.chapter@textNodes"
    },
    "ruleExplore": {
      "bookList": "class.list@class.listable",
      "bookUrl": "class.dysx1@tag.a@href",
      "coverUrl": "class.listable-l@tag.img@src",
      "name": "class.dysx1@tag.a@text"
    },
    "ruleSearch": {
      "bookList": "class.list@tag.table",
      "bookUrl": "class.name@tag.a@href",
      "coverUrl": "class.cover@tag.img@src",
      "intro": "class.book@class.intro@text",
      "name": "class.name@tag.a@text"
    },
    "ruleToc": {
      "chapterList": "class.list@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.86dushu.com/search.php?keyword={{key}}&submit=,{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站： \n御宅屋 https://m.ibbxs.com\n肉肉屋 https://m.rourouwu8.com\n肉书吧 https://m.484b.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 新御宅屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.xyuzhaiwu.xyz",
    "customButton": false,
    "customOrder": 1014,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部/最近\",\"url\":\"/wapsort/0_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},\n{\"title\":\"玄幻\",\"url\":\"/wapsort/1_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"修真\",\"url\":\"/wapsort/2_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"言情\",\"url\":\"/wapsort/3_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"都市\",\"url\":\"/wapsort/4_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"耽美\",\"url\":\"/wapsort/5_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"校园\",\"url\":\"/wapsort/6_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"高辣\",\"url\":\"/wapsort/7_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"腹黑\",\"url\":\"/wapsort/8_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"种田\",\"url\":\"/wapsort/9_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"高干\",\"url\":\"/wapsort/10_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"百合\",\"url\":\"/wapsort/11_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}},\n{\"title\":\"其他\",\"url\":\"/wapsort/12_{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.2}}]",
    "lastUpdateTime": 1724358546545,
    "respondTime": 7465,
    "ruleBookInfo": {
      "author": ".article_info_td a.0@text",
      "init": "",
      "intro": "pre@text",
      "kind": ".article_info_td@div.1:3@text##类别：|更新时间：",
      "lastChapter": ".article_info_td.0@a.1@text",
      "name": ".h_nav_items@li.1@text",
      "tocUrl": "[style=\"color:red;\"]@href",
      "wordCount": "##总字数：([^<]+)<##$1###@js:result+'字'"
    },
    "ruleContent": {
      "content": "#nr1@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "p.0@text##作者：",
      "bookList": ".common-bookele",
      "bookUrl": "a@href",
      "checkKeyWord": "",
      "coverUrl": "@js:'https://img.powenwu15.com/image/0/295/295s.jpg'",
      "intro": ".abstract@text",
      "kind": "p.1@text##栏目：|更新时间：",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "ul@li!-1@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "/s.php,{\n'charset': '',\n'method': 'POST',\n'body': 'type=articlename&s={{key}}'\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "🎃伪版主🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "http://m.ltxswu.me#🎃",
    "customButton": false,
    "customOrder": 1015,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\"User-Agent\": \"Mozilla/5.0 (Linux; Android 14; V2314A Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/132.0.6834.122 Mobile Safari/537.36\"}",
    "lastUpdateTime": 1769087216534,
    "respondTime": 5118,
    "ruleBookInfo": {
      "author": "p:nth-child(4) > a@text",
      "coverUrl": "img@src",
      "kind": "p:nth-child(5) > a@text",
      "lastChapter": "p:nth-child(8) > a@text",
      "name": "h2 > a@text"
    },
    "ruleContent": {
      "content": "#nr1@textNodes",
      "nextContentUrl": "#pb_next@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".cover@p",
      "bookUrl": "a.1@href",
      "checkKeyWord": "我的",
      "kind": "a.0@text",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".cover@ul.1@li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": ".right@a@href"
    },
    "searchUrl": "http://m.ltxswu.me/s.php,{\n  \"body\": \"s={{key}}&type=articlename\",\n  \"charset\": \"GBK\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "（同站）PO18文：\nhttps://wap.po18bl.com\nhttps://m.po18sf.com\nhttps://m.txtyzw.com\nhttps://wap.po18.club\n三九书屋：https://m.sanjiushuwu.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 新御书屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.ayushuwu.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 1016,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "更新时间::/shuku/0/0/0/0/0/0/lastupdate/{{page}}.html\n男点击榜::/top/rank.html\n女点击榜::/top/nrank.html\n  收藏榜  ::/top/collect.html\n  推荐榜  ::/top/vote.html\n  罗曼史  ::/shuku/0/4/0/0/0/0/lastupdate/{{page}}.html\n    耽美    ::/shuku/0/5/0/0/0/0/lastupdate/{{page}}.html\n    百合    ::/shuku/0/6/0/0/0/0/lastupdate/{{page}}.html\n    同人    ::/shuku/0/7/0/0/0/0/lastupdate/{{page}}.html\n校园言情::/shuku/0/1/0/0/0/0/lastupdate/{{page}}.html\n都市言情::/shuku/0/2/0/0/0/0/lastupdate/{{page}}.html\n古代言情::/shuku/0/3/0/0/0/0/lastupdate/{{page}}.html\n奇幻玄幻::/shuku/0/8/0/0/0/0/lastupdate/{{page}}.html\n网游竞技::/shuku/0/9/0/0/0/0/lastupdate/{{page}}.html\n科幻异能::/shuku/0/10/0/0/0/0/lastupdate/{{page}}.html\n恐怖灵异::/shuku/0/11/0/0/0/0/lastupdate/{{page}}.html\n惊悚推理::/shuku/0/12/0/0/0/0/lastupdate/{{page}}.html\n武侠仙侠::/shuku/0/13/0/0/0/0/lastupdate/{{page}}.html\n历史军事::/shuku/0/14/0/0/0/0/lastupdate/{{page}}.html\n穿越重生::/shuku/0/15/0/0/0/0/lastupdate/{{page}}.html\n综合其它::/shuku/0/16/0/0/0/0/lastupdate/{{page}}.html",
    "header": "",
    "lastUpdateTime": 1719532752688,
    "loginUrl": "",
    "respondTime": 4082,
    "ruleBookInfo": {
      "author": ".xq_bookne@div.-5@text",
      "coverUrl": ".lazyload.img@src",
      "init": "",
      "intro": ".bookintro@text",
      "kind": ".xq_bookne@div.-4@text##类别：",
      "lastChapter": "",
      "name": ".xq_bookne@class.one@em@text",
      "tocUrl": ".btn_book@a.-1@href",
      "wordCount": ".xq_bookne@div.-2@text##字数："
    },
    "ruleContent": {
      "content": "id.YiJianZhan@html"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": ""
    },
    "ruleSearch": {
      "author": "class.book_other@ownText",
      "bookList": "id.sitebox@dl",
      "bookUrl": "h3@tag.a.0@href",
      "checkKeyWord": "",
      "coverUrl": "tag.img@src",
      "intro": "class.book_des@text",
      "kind": "class.book_other@span@text",
      "name": "dd@h3@a.0@text"
    },
    "ruleToc": {
      "chapterList": "id.readerlist@ul@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/modules/article/search.php,{\n\"charset\": \"utf-8\",\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}&searchtype=all\"\n}",
    "weight": 0
  },
  {
    "bookSourceGroup": "🔞",
    "bookSourceName": "九五看书网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.95ks.org",
    "customButton": false,
    "customOrder": 1018,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[\n  {\n    \"title\": \"全部分类\",\n    \"url\": \"/lastupdate_0_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 1\n    }\n  },\n  {\n    \"title\": \"玄幻魔法\",\n    \"url\": \"/lastupdate_1_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"武侠修真\",\n    \"url\": \"/lastupdate_2_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"都市言情\",\n    \"url\": \"/lastupdate_3_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"历史军事\",\n    \"url\": \"/lastupdate_4_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"科幻灵异\",\n    \"url\": \"/lastupdate_5_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"游戏竞技\",\n    \"url\": \"/lastupdate_6_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"女生耽美\",\n    \"url\": \"/lastupdate_7_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  },\n  {\n    \"title\": \"其他类型\",\n    \"url\": \"/lastupdate_8_0_0_{{page}}.html\",\n    \"style\": {\n      \"layout_flexGrow\": 1,\n      \"layout_flexBasisPercent\": 0.4\n    }\n  }\n]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1768887490821,
    "respondTime": 7277,
    "ruleBookInfo": {
      "author": "[property=\"og:novel:author\"]@content",
      "coverUrl": "[property=\"og:image\"]@content",
      "intro": "[property=\"og:description\"]@content",
      "kind": "[property~=category|status|update_time]@content",
      "lastChapter": "[property~=las?test_chapter_name]@content",
      "name": "[property=\"og:novel:book_name\"]@content",
      "tocUrl": "{{baseUrl}}##.*\\/(\\d+)\\.html##/yuedu/$1_1/desc.html"
    },
    "ruleContent": {
      "content": "<js>\nvar bes = result.match(/PHA\\+[A-Za-z0-9+\\/]+={0,2}/g);\n//java.log(String(bes))\nif (!bes) {\n    var ml = java.webView(null,baseUrl,null);\n    var txt = java.getString(\"#txt@html\");\n    java.longToast(\"正文解密失败，转为webView动态加载。\");\n} else {\nvar result = [];\nfor (var i = 0; i < bes.length; i++) {\n    // 遍历数组，使用阅读内置Base64解码方法\n    var bsej = java.base64Decode(bes[i]);\n    var txtt = String(bsej);\n    result.push(txtt);\n      }\n\tvar txt = result.join('\\n');\n}\ntxt;\n</js>",
      "nextContentUrl": "@js:\nif(src.match(/var hhekgsv='.*\\/\\d+_\\d+_\\d+.html';var lk/)){\n\tresult=src.match(/var hhekgsv='(.*\\/\\d+_\\d+_\\d+.html)';var lk/)[1]\n\t}"
    },
    "ruleExplore": {
      "author": "span.2@text",
      "bookList": ".sort_list@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.*\\/(\\d+)\\.html##/img/$1.jpg",
      "kind": "span.0:3@text##\\[|\\]",
      "lastChapter": "a.0@title##最新章节：",
      "name": "a.0@text"
    },
    "ruleSearch": {
      "author": ".s5@text##\\s",
      "bookList": ".sort_list@li",
      "bookUrl": "a.0@href",
      "coverUrl": "a.0@href##.*\\/(\\d+)\\.html##/img/$1.jpg",
      "name": "a.0@text"
    },
    "ruleToc": {
      "chapterList": "-.chapter-list@li@a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/search.html,{\n  \"body\": \"s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "By小新\n首发论坛:https://srcbbs.com/\n请不要修改注释",
    "bookSourceGroup": "🔞",
    "bookSourceName": "乐文小说网",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.xlewen.org/",
    "customButton": false,
    "customOrder": 1019,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"首页\",\"url\":\"/\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"玄幻\",\"url\":\"/list/1/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"重生\",\"url\":\"/list/2/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市\",\"url\":\"/list/3/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"军史\",\"url\":\"/list/4/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游\",\"url\":\"/list/5/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻\",\"url\":\"/list/6/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"灵异\",\"url\":\"/list/7/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"言情\",\"url\":\"/list/8/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"排行榜\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"日榜\",\"url\":\"/rank/dayvisit_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"周榜\",\"url\":\"/rank/weekvisit_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月榜\",\"url\":\"/rank/monthvisit_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总榜\",\"url\":\"/rank/allvisit_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新书\",\"url\":\"/rank/postdate_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"更新\",\"url\":\"/rank/lastupdate_0_0_0_1.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "header": "{\"User-Agent\":\"Mozilla/5.0 (Linux; U; Android 13; zh-Hans-CN; PFJM10 Build/TP1A.220905.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/135.0.4896.58 Quark/6.13.6.581 Mobile Safari/537.36\",\"Accept-Language\":\"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\"}",
    "lastUpdateTime": 1768887496811,
    "respondTime": 13869,
    "ruleBookInfo": {
      "intro": "{{@@[class=\"options\"]@li[!-2:-1]@html}}\n{{java.get(\"t\")}}"
    },
    "ruleContent": {
      "content": "[id=\"novelcontent\"]@p[:-2]@html",
      "nextContentUrl": "@js:\na=java.getString('[id=\"next\"]@href');\na+\",{\\\"webView\\\": true}\"\n"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".book_other.0@span.0@text",
      "bookList": "[class=\"row\"]>div>dl",
      "bookUrl": "a.0@href",
      "coverUrl": "img@src",
      "intro": ".book_other.-1@text@put:{\"t\":\"@@.book_other.-1@text\"}",
      "name": "h3.0@text"
    },
    "ruleToc": {
      "chapterList": ".book_list.-1@li@a",
      "chapterName": "text",
      "chapterUrl": "href@js:result+\",{\\\"webView\\\": true}\"",
      "nextTocUrl": "[class=\"page-link\"].-1@href"
    },
    "searchUrl": "/search.html,{\n\t\"body\": \"s={{key}}\",\n\t\"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🎀笔趣阁①",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.b5200.net",
    "customButton": false,
    "customOrder": 1020,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "header": "{\n  \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/547.36 (KHTML, like Gecko, By Black Prism) Chrome/99.0 Safari/537.36\"\n}",
    "lastUpdateTime": 1704063237088,
    "respondTime": 441,
    "ruleBookInfo": {
      "coverUrl": "id.fmimg.0@tag.img.0@src",
      "intro": "id.intro.0@tag.p.0@text"
    },
    "ruleContent": {
      "content": "tag.h1.0@textNodes&&id.content@tag.p@text##(第.{1,8}章)\\s*?(\\S*?)\\s*?\\S+?正文卷\\1\\2"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.odd.1@text",
      "bookList": "class.grid@tag.tr",
      "bookUrl": "class.odd.0@tag.a.0@href",
      "lastChapter": "class.even.0@tag.a.0@text",
      "name": "class.odd.0@tag.a.0@text"
    },
    "ruleToc": {
      "chapterList": "class.box_con@tag.dd!0:1:2:3:4:5:6:7:8",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "http://www.b5200.net/modules/article/search.php?searchkey={{key}}",
    "weight": 0
  },
  {
    "bookSourceComment": "同站：\n   海棠城  https://m.powenwu14.com\n海棠书屋 https://wap.haitangshuwu.info\n脸红心跳 https://m.huanxiwu.com\n  BL小说  https://m.52blxs.com",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔰 新御宅屋",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.yuzhaiwude.com",
    "customButton": false,
    "customOrder": 1021,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"总点击\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"月点击\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠修真\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市青春\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻悬疑\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越历史\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"浪漫浓情\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"游戏竞技\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"精品其他\",\"url\":\"/sort/8_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"完本\",\"url\":\"/full/{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1745854187609,
    "loginUrl": "",
    "respondTime": 7846,
    "ruleBookInfo": {
      "author": ".xx a.1@text",
      "coverUrl": "img@src",
      "init": "",
      "intro": ".jianjie@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".xx a.0@text##小说",
      "lastChapter": ".xx a.2@text##正文\\s",
      "name": ".xx li.0@text##\\_.*",
      "tocUrl": ".gengduo a@href"
    },
    "ruleContent": {
      "content": "#nr@html",
      "imageStyle": "0",
      "nextContentUrl": ""
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".list ul",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "span.2@text##\\s",
      "kind": "span.-1@text",
      "lastChapter": "",
      "name": "a.1@text##\\_.*",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".fk li",
      "bookUrl": "a.1@href",
      "coverUrl": "",
      "intro": "",
      "kind": "a.0@text##\\[|\\]",
      "lastChapter": "",
      "name": "a.1@text##\\_.*",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".lb li a",
      "chapterName": "text##本页章节.*",
      "chapterUrl": "href",
      "nextTocUrl": ".showpage@a@href"
    },
    "searchUrl": "/s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"s={{key}}&type=articlename\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "新御书屋🎃#8",
    "bookSourceType": 0,
    "bookSourceUrl": "https://wap.xyushuwu11.com#🎃",
    "customButton": false,
    "customOrder": 1022,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"全部分类\",\"url\":\"/sort/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"校园言情\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"罗曼史\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"百合\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻玄幻\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/sort/9-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻异能\",\"url\":\"/sort/10-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖灵异\",\"url\":\"/sort/11-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚推理\",\"url\":\"/sort/12-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/sort/13-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/sort/14-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/sort/15-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综合其它\",\"url\":\"/sort/16-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本\",\"url\":\"/wanben-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1746069392002,
    "respondTime": 21159,
    "ruleBookInfo": {
      "author": ".author@text##.* \\/(.*)##$1",
      "coverUrl": ".fm@mip-img@src",
      "intro": ".intro@text",
      "kind": "{{@@class.author@text##(.*) \\/.*##$1}}\n",
      "lastChapter": "{{@@class.lastchapter@text##更新：}}·{{@@class.p1@span@text##更新}}",
      "name": "h1@text",
      "tocUrl": "text.查看所有章节@href"
    },
    "ruleContent": {
      "content": ".content@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": ".author@text",
      "bookList": ".topul",
      "bookUrl": "h2@a@href",
      "coverUrl": "mip-img@src",
      "intro": "p@text",
      "kind": ".other@text",
      "name": "h2@text"
    },
    "ruleSearch": {
      "author": "span@text##\\/",
      "bookList": ".result@li",
      "bookUrl": "a.1@href",
      "kind": "a.0@text##\\[|\\]",
      "name": "a.1@text"
    },
    "ruleToc": {
      "chapterList": ".chapters@ul@li@mip-link",
      "chapterName": "text##列表结束，点击返回书页|列表开始，点击返回书页",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"submit=&type=articlename&s={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "肉文屋🎃",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.rouwenwu16.com#🎃",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 1024,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"🎖 排行榜 🎖\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"总排行\",\"url\":\"/top/allvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月排行\",\"url\":\"/top/monthvisit-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总推荐\",\"url\":\"/top/allvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"月推荐\",\"url\":\"/top/monthvote-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"总收藏\",\"url\":\"/top/goodnum-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"字数榜\",\"url\":\"/top/size-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"更新榜\",\"url\":\"/top/lastupdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"新入库\",\"url\":\"/top/postdate-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},\n{\"title\":\"全部分类\",\"url\":\"/sort/{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":1}},{\"title\":\"校园言情\",\"url\":\"/sort/1-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"都市言情\",\"url\":\"/sort/2-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"古代言情\",\"url\":\"/sort/3-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"罗曼史\",\"url\":\"/sort/4-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"耽美\",\"url\":\"/sort/5-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"百合\",\"url\":\"/sort/6-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"同人\",\"url\":\"/sort/7-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"奇幻玄幻\",\"url\":\"/sort/8-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"网游竞技\",\"url\":\"/sort/9-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"科幻异能\",\"url\":\"/sort/10-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"恐怖灵异\",\"url\":\"/sort/11-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"惊悚推理\",\"url\":\"/sort/12-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"武侠仙侠\",\"url\":\"/sort/13-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"历史军事\",\"url\":\"/sort/14-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"穿越重生\",\"url\":\"/sort/15-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"综合其它\",\"url\":\"/sort/16-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}},{\"title\":\"完本小说\",\"url\":\"/wanben-{{page}}.html\",\"style\":{\"layout_flexGrow\":1,\"layout_flexBasisPercent\":0.25}}]",
    "lastUpdateTime": 1746069450007,
    "loginUrl": "",
    "respondTime": 4293,
    "ruleBookInfo": {
      "author": "##:author\"[^\"]+\"([^\"]*)##$1###",
      "coverUrl": "##og:image\"[^\"]+\"([^\"]*)##$1###",
      "intro": "##:description\"[^\"]+\"([^\"]*)##$1###",
      "kind": "##:category\"[^\"]+\"([^\"]*)##$1###",
      "lastChapter": "##_chapter_name\"[^\"]+\"([^\"]*)##$1###",
      "name": "##:book_name\"[^\"]+\"([^\"]*)##$1###",
      "tocUrl": ""
    },
    "ruleContent": {
      "content": "div#content@html",
      "nextContentUrl": "text.下一页@href\n//需要加载下一页,章节地址添加##$##,{\"webView\": true}",
      "replaceRegex": "##更多小说请收藏.*|\\s*_{4,}"
    },
    "ruleExplore": {
      "author": "",
      "bookList": "",
      "bookUrl": "",
      "coverUrl": "",
      "intro": "",
      "kind": "",
      "lastChapter": "",
      "name": "",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": ".author@text",
      "bookList": "ul.topul>li",
      "bookUrl": "h2>a@href",
      "checkKeyWord": "我的",
      "coverUrl": "img@src",
      "intro": "p@text",
      "kind": "i.lianzai@text",
      "lastChapter": "",
      "name": "h2>a@text",
      "wordCount": ".other@text"
    },
    "ruleToc": {
      "chapterList": "tag.ul.2@tag.li",
      "chapterName": "a@text",
      "chapterUrl": "a@href",
      "nextTocUrl": "text.下一页@href"
    },
    "searchUrl": "/s.php,{\n  \"body\": \"searchkey={{key}}\",\n  \"charset\": \"UTF-8\",\n  \"method\": \"POST\"\n}\n",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "☘️🔞BL书阁🔞☘️",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.blshuge.com#响海",
    "customButton": false,
    "customOrder": 1025,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "玄幻::https://www.blshuge.com/sort/1/{{page}}.html\n穿越::https://www.blshuge.com/sort/2/{{page}}.html\n架空::https://www.blshuge.com/sort/3/{{page}}.html\n都市::https://www.blshuge.com/sort/4/{{page}}.html\n言情::https://www.blshuge.com/sort/5/{{page}}.html\n网游::https://www.blshuge.com/sort/6/{{page}}.html\n科幻::https://www.blshuge.com/sort/7/{{page}}.html\n精品::https://www.blshuge.com/sort/8/{{page}}.html\n耽美::https://www.blshuge.com/sort/9/{{page}}.html",
    "lastUpdateTime": 1746069457592,
    "respondTime": 2074,
    "ruleBookInfo": {
      "author": "class.p_author@text",
      "coverUrl": "tag.img@src",
      "intro": "id.bookintro@text",
      "lastChapter": "id.uptime@tag.span@text",
      "name": "class.d_title@tag.h1@text",
      "tocUrl": "text.更多目录@href"
    },
    "ruleContent": {
      "content": "id.TextContent@html"
    },
    "ruleExplore": {
      "bookList": "id.sitebox@tag.dl",
      "bookUrl": "tag.h3@tag.a@href",
      "coverUrl": "tag.img@_src",
      "intro": "class.book_des@text",
      "kind": "tag.dt@tag.span@text",
      "name": "tag.h3@tag.a@text"
    },
    "ruleSearch": {
      "bookList": "id.nr",
      "bookUrl": "tag.h3@tag.a@href",
      "coverUrl": "tag.img@src",
      "intro": "class.book_des@text",
      "kind": "tag.span.0@text",
      "name": "tag.h3@tag.a.-1@text"
    },
    "ruleToc": {
      "chapterList": "class.chaw_c@tag.li",
      "chapterName": "tag.a@text",
      "chapterUrl": "tag.a@href"
    },
    "searchUrl": "https://www.blshuge.com/modules/article/search.php,{\n\"method\": \"POST\",\n\"body\": \"searchkey={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "⭐️云云小说🔞",
    "bookSourceType": 0,
    "bookSourceUrl": "http://www.yunyunxs.com",
    "bookUrlPattern": ".*yunyunxs.com/works/\\d+/",
    "customButton": false,
    "customOrder": 1026,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "@js:\nvar sort=[];\nvar push=(title,url,size)=>sort.push({\n  \t\"title\": title,\n  \t\"url\": url,\n  \t\"style\": {\n   \"layout_flexGrow\": 1,\n   \"layout_flexBasisPercent\": size\n   }\n });\n\nvar url=source.key;\nvar fl=url;\nvar ph=url+\"/top_allvisit_1/\";\nvar qb=url+\"/full-1/\";\nvar html=java.ajax(fl);\nvar src=java.ajax(ph);\nvar qbl=java.ajax(qb);\n\nif(html&&src&&qbl){\na=org.jsoup.Jsoup.parse(html).select(\".nav li a\");\nb=org.jsoup.Jsoup.parse(src).select(\".r li a\");\nc=org.jsoup.Jsoup.parse(qbl).select(\".clearfix li a\");\n\npush(\"🌹分类🌹\",null,1)\n    for(i in a){\n        title=a[i].text()\n        url=a[i].attr(\"href\")\n        size=0.25;\nurl=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\");\n\nif(title!=\"首页\"&&title!=\"足迹\"){\n\tpush(title,url,size)\n\t}\n\n    \n    };\n    \n push(\"🌹排行🌹\",null,1)\n    for(i in b){\n        title=b[i].text()\n        url=b[i].attr(\"href\")\n  url=String(url).replace(\"1/\",\"{{page}}/\").replace(\"1.html\",\"{{page}}.html\")\n        size=0.25;\n        push(title,url,size)\n    }\n//push(\"🌹全本🌹\",\"/full/{{page}}/\",1)\n      \n}else{\n  java.toast(\"发现列表获取失败！\")\n}\n\nJSON.stringify(sort)",
    "lastUpdateTime": 1746069556283,
    "respondTime": 19295,
    "ruleBookInfo": {
      "author": "#info@a.0@text",
      "init": "",
      "kind": "#info@a.1@text",
      "lastChapter": "#info@a.2@text",
      "name": "#info@h1@text",
      "tocUrl": "text.全文目录@href"
    },
    "ruleContent": {
      "content": "#booktxt@textNodes",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": ".s4@text",
      "bookList": ".l li",
      "bookUrl": "a.0@href",
      "intro": ".s5@text",
      "lastChapter": ".s3@text",
      "name": ".s2@text"
    },
    "ruleToc": {
      "chapterList": "#list dl a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "text.下一页@href",
      "preUpdateJs": ""
    },
    "searchUrl": "/search.php,{\"charset\":\"gbk\",\"method\":\"post\",\"body\":\"type=articlename&s={{key}}\"}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "👔 脸红心跳",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po18yq.com/",
    "bookUrlPattern": "",
    "customButton": false,
    "customOrder": 1027,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最近更新::paihang/lastupdate_{{page}}.html\n最新入库::paihang/postdate_{{page}}.html\n总排行榜::paihang/allvisit_{{page}}.html\n总推荐榜::paihang/allvote_{{page}}.html\n总收藏榜::paihang/goodnum_{{page}}.html\n总字数榜::paihang/size_{{page}}.html\n玄幻奇幻::xuanhuan_{{page}}.html\n武侠仙侠::wuxia_{{page}}.html\n都市言情::dushi_{{page}}.html\n科幻网游::kehuan_{{page}}.html\n惊悚悬疑::jingsong_{{page}}.html\n耽美同人::danmei_{{page}}.html\n穿越架空::chuanyue_{{page}}.html\n浓情纯爱::nongqing_{{page}}.html\n百合优美::baihe_{{page}}.html\n精品文学::qita_{{page}}.html",
    "lastUpdateTime": 1746069618929,
    "loginUrl": "",
    "respondTime": 2066,
    "ruleBookInfo": {
      "coverUrl": "class.l@img@src",
      "intro": "class.p3@textNodes",
      "kind": "class.topmenuchaptermenu@span@a@text",
      "lastChapter": "class.p4@a@text"
    },
    "ruleContent": {
      "content": "id.content@p@html##喜欢请大家收藏.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@a@text||class.p2@a@text",
      "bookList": "class.lists@li||class.listcon@li",
      "bookUrl": "a@href",
      "coverUrl": "tag.a.0@href##.*/(\\d+)/(\\d+)/##http://img.po18yq.com/image/$1/$2/$2s.jpg",
      "intro": "class.p3@textNodes",
      "kind": "class.sortname@text||class.articlename@span@text##\\[|]",
      "lastChapter": "class.lastchapter@a@text",
      "name": "class.articlename@a@text"
    },
    "ruleToc": {
      "chapterList": "class.chapterlist@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "modules/article/search.php?searchkey={{key}}&t_btnsearch=&page={{page}},{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "\"error:Unabletoresolvehost\"www.po18yq.com\":Noaddressassociatedwithhostname\n\"",
    "bookSourceGroup": "🔞",
    "bookSourceName": "🔞 PO18脸红心跳②",
    "bookSourceType": 0,
    "bookSourceUrl": "https://www.po18yq.com已整理",
    "bookUrlPattern": "已校验",
    "customButton": false,
    "customOrder": 1028,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "最近更新::https://www.po18yq.com/paihang/lastupdate_{{page}}.html\n最新入库::https://www.po18yq.com/paihang/postdate_{{page}}.html\n总排行榜::https://www.po18yq.com/paihang/allvisit_{{page}}.html\n总推荐榜::https://www.po18yq.com/paihang/allvote_{{page}}.html\n总收藏榜::https://www.po18yq.com/paihang/goodnum_{{page}}.html\n总字数榜::https://www.po18yq.com/paihang/size_{{page}}.html\n玄幻奇幻::https://www.po18yq.com/xuanhuan_{{page}}.html\n武侠仙侠::https://www.po18yq.com/wuxia_{{page}}.html\n都市言情::https://www.po18yq.com/dushi_{{page}}.html\n科幻网游::https://www.po18yq.com/kehuan_{{page}}.html\n惊悚悬疑::https://www.po18yq.com/jingsong_{{page}}.html\n耽美同人::https://www.po18yq.com/danmei_{{page}}.html\n穿越架空::https://www.po18yq.com/chuanyue_{{page}}.html\n浓情纯爱::https://www.po18yq.com/nongqing_{{page}}.html\n百合优美::https://www.po18yq.com/baihe_{{page}}.html\n精品文学::https://www.po18yq.com/qita_{{page}}.html",
    "lastUpdateTime": 1746069624444,
    "loginUrl": "",
    "respondTime": 2071,
    "ruleBookInfo": {
      "coverUrl": "class.l@img@src",
      "intro": "class.p3@textNodes",
      "kind": "class.topmenuchaptermenu@span@a@text",
      "lastChapter": "class.p4@a@text"
    },
    "ruleContent": {
      "content": "id.content@p@html##喜欢请大家收藏.*"
    },
    "ruleExplore": {},
    "ruleSearch": {
      "author": "class.author@a@text||class.p2@a@text",
      "bookList": "class.lists@li||class.listcon@li",
      "bookUrl": "a@href",
      "coverUrl": "tag.a.0@href##.*/(\\d+)/(\\d+)/##http://img.po18yq.com/image/$1/$2/$2s.jpg",
      "intro": "class.p3@textNodes",
      "kind": "class.sortname@text||class.articlename@span@text##\\[|]",
      "lastChapter": "class.lastchapter@a@text",
      "name": "class.articlename@a@text"
    },
    "ruleToc": {
      "chapterList": "class.chapterlist@li@a",
      "chapterName": "text",
      "chapterUrl": "href"
    },
    "searchUrl": "https://www.po18yq.com/modules/article/search.php?searchkey={{key}}&t_btnsearch=&page={{page}},{\n\"charset\":\"gbk\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "",
    "bookSourceGroup": "🔞",
    "bookSourceName": "👔 辣妹小说",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.lamei2.com/",
    "customButton": false,
    "customOrder": 1030,
    "enabled": true,
    "enabledCookieJar": false,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"榜单\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"月点击\",\"url\":\"/top/monthvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"周点击\",\"url\":\"/top/weekvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"总点击\",\"url\":\"/top/allvisit_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"分类\",\"url\":\"\",\"style\":{\"layout_flexBasisPercent\":1,\"layout_flexGrow\":1}},\n{\"title\":\"玄幻奇幻\",\"url\":\"/sort/1_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"武侠仙侠\",\"url\":\"/sort/2_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"都市言情\",\"url\":\"/sort/3_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"穿越历史\",\"url\":\"/sort/4_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"科幻灵异\",\"url\":\"/sort/5_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"网游竞技\",\"url\":\"/sort/6_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},\n{\"title\":\"其他类型\",\"url\":\"/sort/7_{{page}}/\",\"style\":{\"layout_flexBasisPercent\":0.29}}]",
    "lastUpdateTime": 1743672496104,
    "loginUrl": "",
    "respondTime": 4252,
    "ruleBookInfo": {
      "author": ".xx a.1@text",
      "coverUrl": ".xsfm img@src",
      "init": "",
      "intro": ".jianjie@html##(^|[。！？]+[”」）】]?)##$1<br>",
      "kind": ".xx a.0@text",
      "lastChapter": ".xx a.2@text",
      "name": ".xx li.0@text",
      "tocUrl": ".gengduo a@href"
    },
    "ruleContent": {
      "content": "#nr@html",
      "nextContentUrl": "text.下一页@href"
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".list ul",
      "bookUrl": "a.1@href",
      "coverUrl": "img@src",
      "intro": "span.2@text",
      "kind": "i@text",
      "name": "a.1@text",
      "wordCount": ""
    },
    "ruleSearch": {
      "author": "a.2@text",
      "bookList": ".xbk li",
      "bookUrl": "a.1@href",
      "checkKeyWord": "青春",
      "coverUrl": "a.1@href##.+\\D((\\d+)\\d{3})\\D##http://img.lamei2.com/image/$2/$1/$1s.jpg###",
      "intro": "",
      "kind": "a.0@text##\\[|\\]",
      "lastChapter": "",
      "name": "a.1@text",
      "wordCount": ""
    },
    "ruleToc": {
      "chapterList": ".lb li a",
      "chapterName": "text##本页章节列表结束！",
      "chapterUrl": "href",
      "nextTocUrl": ".showpage a@href"
    },
    "searchUrl": "s.php,{\n  \"charset\": \"gbk\",\n  \"method\": \"POST\",\n  \"body\": \"type=articlename&s={{key}}\"\n}",
    "weight": 0
  },
  {
    "bookSourceComment": "发布地址：http://www.quan--er.com/",
    "bookSourceGroup": "🔞",
    "bookSourceName": "💠 九一版主",
    "bookSourceType": 0,
    "bookSourceUrl": "https://m.91banzhu.com",
    "customButton": false,
    "customOrder": 1031,
    "enabled": true,
    "enabledCookieJar": true,
    "enabledExplore": true,
    "eventListener": false,
    "exploreUrl": "[{\"title\":\"更新\",\"url\":\"/wap.php?action=shuku&uid=0&totalresult=10000&pageno={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"新书\",\"url\":\"/wap.php?action=shuku&order=3&uid=0&totalresult=10000&pageno={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}},{\"title\":\"其他\",\"url\":\"/wap.php?action=shuku&tid=8&over=&order=2&uid=&totalresult=9377&pageno={{page}}\",\"style\":{\"layout_flexBasisPercent\":0.25,\"layout_flexGrow\":1}}]",
    "lastUpdateTime": 1770711141230,
    "respondTime": 8115,
    "ruleBookInfo": {
      "author": "##作者.([^<]+)##$1###",
      "intro": ".book-intro@html",
      "kind": "{{@@##类型.([^<]+)##$1###}},{{@@.right span@text}}@js:result.replace(/小说|\\•/g,\"\")",
      "lastChapter": "class.list.0@a.0@text",
      "name": ".right h1@text",
      "wordCount": "##字数.([^<]+)##$1###"
    },
    "ruleContent": {
      "content": "id.nr1@html\n<js>\nm=[];n=[];\nfunction x(a,b){m.push(a);n.push(b)}\n\nresult=result.replace(/<em class=\"(.*?)\"><\\/em>/g,\"#$1#\")\n// 逐条添加：\nx(/#class属性#/gi,\"对应文本\");\nx(/#n_1#/gi,\"男\");\nx(/#n_2#/gi,\"人\");\nx(/#n_3#/gi,\"啊\");\nx(/#n_4#/gi,\"爱\");\nx(/#n_5#/gi,\"按\");\nx(/#n_6#/gi,\"暴\");\nx(/#n_7#/gi,\"臀\");\nx(/#n_8#/gi,\"逼\");\nx(/#n_9#/gi,\"擦\");\nx(/#n_10#/gi,\"潮\");\nx(/#n_11#/gi,\"操\");\nx(/#n_12#/gi,\"插\");\nx(/#n_13#/gi,\"吃\");\nx(/#n_14#/gi,\"抽\");\nx(/#n_15#/gi,\"处\");\nx(/#n_16#/gi,\"床\");\nx(/#n_17#/gi,\"春\");\nx(/#n_18#/gi,\"唇\");\nx(/#n_19#/gi,\"刺\");\nx(/#n_20#/gi,\"粗\");\nx(/#n_21#/gi,\"大\");\nx(/#n_22#/gi,\"洞\");\nx(/#n_23#/gi,\"逗\");\nx(/#n_24#/gi,\"硬\");\nx(/#n_25#/gi,\"儿\");\nx(/#n_26#/gi,\"反\");\nx(/#n_27#/gi,\"犯\");\nx(/#n_28#/gi,\"峰\");\nx(/#n_29#/gi,\"妇\");\nx(/#n_30#/gi,\"抚\");\nx(/#n_31#/gi,\"夫\");\nx(/#n_32#/gi,\"腹\");\nx(/#n_33#/gi,\"干\");\nx(/#n_34#/gi,\"搞\");\nx(/#n_35#/gi,\"根\");\nx(/#n_36#/gi,\"公\");\nx(/#n_37#/gi,\"宫\");\nx(/#n_38#/gi,\"勾\");\nx(/#n_39#/gi,\"股\");\nx(/#n_40#/gi,\"狠\");\nx(/#n_41#/gi,\"花\");\nx(/#n_42#/gi,\"滑\");\nx(/#n_43#/gi,\"坏\");\nx(/#n_44#/gi,\"魂\");\nx(/#n_45#/gi,\"鸡\");\nx(/#n_46#/gi,\"激\");\nx(/#n_47#/gi,\"夹\");\nx(/#n_48#/gi,\"奸\");\nx(/#n_49#/gi,\"交\");\nx(/#n_50#/gi,\"叫\");\nx(/#n_51#/gi,\"娇\");\nx(/#n_52#/gi,\"姐\");\nx(/#n_53#/gi,\"禁\");\nx(/#n_54#/gi,\"精\");\nx(/#n_55#/gi,\"进\");\nx(/#n_56#/gi,\"紧\");\nx(/#n_57#/gi,\"菊\");\nx(/#n_58#/gi,\"渴\");\nx(/#n_59#/gi,\"口\");\nx(/#n_60#/gi,\"裤\");\nx(/#n_61#/gi,\"胯\");\nx(/#n_62#/gi,\"快\");\nx(/#n_63#/gi,\"浪\");\nx(/#n_64#/gi,\"力\");\nx(/#n_65#/gi,\"搂\");\nx(/#n_66#/gi,\"乱\");\nx(/#n_67#/gi,\"裸\");\nx(/#n_68#/gi,\"妈\");\nx(/#n_69#/gi,\"毛\");\nx(/#n_70#/gi,\"迷\");\nx(/#n_71#/gi,\"靡\");\nx(/#n_72#/gi,\"妹\");\nx(/#n_73#/gi,\"摸\");\nx(/#n_74#/gi,\"嫩\");\nx(/#n_75#/gi,\"母\");\nx(/#n_76#/gi,\"娘\");\nx(/#n_77#/gi,\"尿\");\nx(/#n_78#/gi,\"咛\");\nx(/#n_79#/gi,\"女\");\nx(/#n_80#/gi,\"哦\");\nx(/#n_81#/gi,\"趴\");\nx(/#n_82#/gi,\"喷\");\nx(/#n_83#/gi,\"婆\");\nx(/#n_84#/gi,\"屁\");\nx(/#n_85#/gi,\"气\");\nx(/#n_86#/gi,\"枪\");\nx(/#n_87#/gi,\"窃\");\nx(/#n_88#/gi,\"骑\");\nx(/#n_89#/gi,\"妻\");\nx(/#n_90#/gi,\"情\");\nx(/#n_91#/gi,\"亲\");\nx(/#n_92#/gi,\"裙\");\nx(/#n_93#/gi,\"热\");\nx(/#n_94#/gi,\"日\");\nx(/#n_95#/gi,\"肉\");\nx(/#n_96#/gi,\"揉\");\nx(/#n_97#/gi,\"乳\");\nx(/#n_98#/gi,\"软\");\nx(/#n_99#/gi,\"润\");\nx(/#n_100#/gi,\"入\");\nx(/#n_101#/gi,\"塞\");\nx(/#n_102#/gi,\"骚\");\nx(/#n_103#/gi,\"色\");\nx(/#n_104#/gi,\"上\");\nx(/#n_105#/gi,\"舌\");\nx(/#n_106#/gi,\"射\");\nx(/#n_107#/gi,\"身\");\nx(/#n_108#/gi,\"深\");\nx(/#n_109#/gi,\"湿\");\nx(/#n_110#/gi,\"兽\");\nx(/#n_111#/gi,\"受\");\nx(/#n_112#/gi,\"舒\");\nx(/#n_113#/gi,\"爽\");\nx(/#n_114#/gi,\"水\");\nx(/#n_115#/gi,\"睡\");\nx(/#n_116#/gi,\"酥\");\nx(/#n_117#/gi,\"死\");\nx(/#n_118#/gi,\"烫\");\nx(/#n_119#/gi,\"痛\");\nx(/#n_120#/gi,\"舔\");\nx(/#n_121#/gi,\"天\");\nx(/#n_122#/gi,\"体\");\nx(/#n_123#/gi,\"挺\");\nx(/#n_124#/gi,\"头\");\nx(/#n_125#/gi,\"腿\");\nx(/#n_126#/gi,\"脱\");\nx(/#n_127#/gi,\"味\");\nx(/#n_128#/gi,\"慰\");\nx(/#n_129#/gi,\"吻\");\nx(/#n_130#/gi,\"握\");\nx(/#n_131#/gi,\"喔\");\nx(/#n_132#/gi,\"污\");\nx(/#n_133#/gi,\"下\");\nx(/#n_134#/gi,\"小\");\nx(/#n_135#/gi,\"性\");\nx(/#n_136#/gi,\"胸\");\nx(/#n_137#/gi,\"血\");\nx(/#n_138#/gi,\"穴\");\nx(/#n_139#/gi,\"阳\");\nx(/#n_140#/gi,\"痒\");\nx(/#n_141#/gi,\"药\");\nx(/#n_142#/gi,\"腰\");\nx(/#n_143#/gi,\"夜\");\nx(/#n_144#/gi,\"液\");\nx(/#n_145#/gi,\"野\");\nx(/#n_146#/gi,\"衣\");\nx(/#n_147#/gi,\"姨\");\nx(/#n_148#/gi,\"吟\");\nx(/#n_149#/gi,\"淫\");\nx(/#n_150#/gi,\"荫\");\nx(/#n_151#/gi,\"幽\");\nx(/#n_152#/gi,\"诱\");\nx(/#n_153#/gi,\"尤\");\nx(/#n_154#/gi,\"欲\");\nx(/#n_155#/gi,\"吁\");\nx(/#n_156#/gi,\"玉\");\nx(/#n_157#/gi,\"吮\");\nx(/#n_158#/gi,\"窄\");\nx(/#n_159#/gi,\"占\");\nx(/#n_160#/gi,\"征\");\nx(/#n_161#/gi,\"汁\");\nx(/#n_162#/gi,\"嘴\");\nx(/#n_163#/gi,\"，\");\nx(/#n_164#/gi,\"。\");\nx(/#n_165#/gi,\"…\");\nx(/#n_166#/gi,\"慾\");\nx(/#n_167#/gi,\"丢\");\nx(/#n_168#/gi,\"弄\");\n\nfor(i in n){result=result.replace(m[i],n[i])}\n\nresult+\"❎❎❎\"\n</js>",
      "nextContentUrl": "//*[@class=\"curr\"]/following-sibling::a[1]/@href",
      "replaceRegex": "##.*下载安卓APP.*|.本章未完.*|[\\(（]本章完[）\\)]|\\[ 本章完 \\]|(\\s*.*【1】.*)?\\s*❎❎❎\\s*|.未完待续.*"
    },
    "ruleExplore": {
      "author": "a.2@text",
      "bookList": ".column-2",
      "bookUrl": "a.0@href",
      "kind": "span.0@text",
      "lastChapter": "a.1@text",
      "name": "a.0@text",
      "wordCount": "span.1@text##字数."
    },
    "ruleSearch": {
      "author": "##作者.([^<]+)##$1###",
      "bookList": ".column-2",
      "bookUrl": "a.0@href",
      "kind": "span.0@text",
      "lastChapter": "a.1@text",
      "name": "a.0@text",
      "wordCount": "span.1@text##字数."
    },
    "ruleToc": {
      "chapterList": ".list!-1:-2@li a",
      "chapterName": "text",
      "chapterUrl": "href",
      "nextTocUrl": "option@value"
    },
    "searchUrl": "/wap.php?action=search,{\n  \"body\": \"objectType=2&wd={{key}}\",\n  \"method\": \"POST\"\n}",
    "weight": 0
  }
]