🌙 搜书2
https://api-bc.wtzw.com
six-ndrd-and-sixty-six (7477)2024/08/07
●♛七猫▪︎API▪︎ by.渊呀 by.渊呀
{ "bookSourceComment": "●♛七猫▪︎API▪︎ by.渊呀\nby.渊呀", "bookSourceGroup": "🌙 ΑΡI,📚 出版", "bookSourceName": "🌙 搜书2", "bookSourceType": 0, "bookSourceUrl": "https:\/\/api-bc.wtzw.com", "bookUrlPattern": "", "concurrentRate": "", "customOrder": 0, "enabled": true, "enabledCookieJar": false, "enabledExplore": true, "exploreUrl": "[{\"title\":\"■■■■■■■■ 男 生 ■■■■■■■■\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"都市人生\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=203&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"异术超能\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=219&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"玄幻奇幻\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=202&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠仙侠\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=205&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇闻异事\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=204&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\" 二 次 元 \",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=207&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=56&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"游戏\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=75&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=64&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"体育\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=206&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=539&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=373&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"鉴宝\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=47&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重生\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=779&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"血脉\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=426&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"签到\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=565&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"复仇\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=790&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"丹药\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=428&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"医生\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=156&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"战神\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=527&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女婿\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=36&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"皇帝\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=62&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"弃少\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=525&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"热血\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=1&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"爽文\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=570&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现实\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=12&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=27&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女总裁\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=89&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"无限流\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=557&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"强者回归\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=402&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"■■■■■■■■ 女 生 ■■■■■■■■\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代言情\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=1&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"总裁豪门\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=8&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代言情\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=2&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"种田经商\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=16&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"宫闱宅斗\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=209&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"幻想言情\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=4&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"奇闻异事\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=204&need_filters=1&page={{page}}&need_category=1\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视原著\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=539&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"日久生情\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=700&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"重生\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=779&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女强\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=620&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"年下\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=631&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"空间\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=345&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"穿越\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=373&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"隐婚\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=481&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"系统\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=782&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"快穿\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=335&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"虐渣\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=739&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"皇后\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=106&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"王爷\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=125&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"学霸\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=781&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"毒妃\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=109&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"校草\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=701&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"女配\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=191&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"甜宠\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=21&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"搞笑\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=788&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"虐恋\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=16&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"治愈\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=17&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"短篇\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=541&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"■■■■■■■■ 图 书 ■■■■■■■■\",\"url\":\"\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代言情\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=260&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"古代言情\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=259&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"青春文学\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=265&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"影视原著\",\"url\":\"https:\/\/www.baidu.com\/tag\/need_filters=1&tag_id=539&gender=2&page={{page}}\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"悬疑推理\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=262&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"武侠小说\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=289&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"科幻未来\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=261&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"历史小说\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=264&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠奇缘\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=276&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"仙侠玄幻\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=288&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现实小说\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=266&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"现代军旅\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=290&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"文学艺术\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=240&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人物传记\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=247&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"人文科社\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=241&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"少儿教育\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=258&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经管励志\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=242&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}},{\"title\":\"经典文学\",\"url\":\"https:\/\/www.baidu.com\/category\/gender=2&category_id=243&need_filters=1&page={{page}}&need_category=0\",\"style\":{\"layout_flexGrow\":1}}]", "header": "", "lastUpdateTime": "1723019128063", "loginUrl": "", "respondTime": 5069, "ruleBookInfo": { "author": "author", "coverUrl": "image_link", "init": "data.book", "intro": "intro", "kind": "book_tag_list[*].title", "lastChapter": "{{$.latest_chapter_title}}·{{java.timeFormat(java.getString('$.update_time')*1000)}}", "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" }, "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", "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 }