🌙 番茄酱
🌙 番茄酱
antipodal (2949)1天前
支持阅读T原生段评
{
"bookSourceComment": "作者:明月照大江 支持阅读T原生段评",
"bookSourceName": "🌙 番茄酱",
"bookSourceType": 0,
"bookSourceUrl": "🌙 番茄酱",
"concurrentRate": "1000",
"customButton": false,
"customOrder": 2,
"enabled": true,
"enabledCookieJar": true,
"enabledExplore": true,
"eventListener": false,
"exploreUrl": "@js:\nlet sort = [];\npush = (title, url, type) => sort.push({\n title: title,\n url: url,\n style: {\n layout_flexBasisPercent: type\n }\n});\n\n push('每周推荐', 'https:\/\/fanqienovel.com\/api\/rank\/recommend\/list?type=1&limit=10&offset={{parseInt(Math.random()*10)}}', 0.29);\n push('男频精选', 'https:\/\/fanqienovel.com\/api\/rank\/recommend\/list?type=2&limit=10&offset={{parseInt(Math.random()*5)}}', 0.29);\n\t push('女频精选', 'https:\/\/fanqienovel.com\/api\/rank\/recommend\/list?type=3&limit=10&offset={{parseInt(Math.random()*5)}}', 0.29);\n push('巅峰榜单', 'https:\/\/fanqienovel.com\/api\/author\/misc\/top_book_list\/v1\/?limit=50&offset={{parseInt(Math.random()*5)}}', 0.29);\n push('出版榜单', 'https:\/\/fanqienovel.com\/api\/node\/publication\/list?page_index={{page -1}}&page_count=50', 0.29);\n push('短篇小说', 'https:\/\/api5-normal-sinfonlinea.fqnovel.com\/reading\/ugc\/feed\/cell_data\/v?offset={{(page-1)*10}}&session_id={{java.timeFormatUTC(Date.now(), \"yyyyMMddHHmm\", 8)}}&tab_type_new=8&channel=vivo_1967_64&aid=1967', 0.29);\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});\n\t\n\t\n\tcategory = () =>{\n\t\t\tcategory_url = \"https:\/\/novel.snssdk.com\/api\/novel\/channel\/homepage\/new_category\/page\/data\/v1\/?aid=13\";\nreturn JSON.parse(java.ajax(category_url)).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 \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);\n\t\n \t\n });\n });\n\nJSON.stringify(sort);",
"header": "{\n \"CF-Access-Client-Id\": \"066ae0bfae965d8cc53adb0e7ac163ab.access\",\n \"CF-Access-Client-Secret\": \"cc5632ad6accfc0482dad7ebdcc628be442ab68473ca2a23561aed88e189936f\",\n \"Authorization\":\"Bearer skybook#\"\n}",
"jsLib": "const host = \"fq.skybook1.top\";\n\nconst EMOJI_MAP = { \"[微笑]\": \"😊\", \"[偷笑]\": \"😏\", \"[笑]\": \"😀\", \"[什么]\": \"🤔\", \"[害羞]\": \"☺️\", \"[爱慕]\": \"😍\", \"[飞吻]\": \"😘\", \"[奸笑]\": \"😈\", \"[尬笑]\": \"😅\", \"[思考]\": \"🧐\", \"[撇嘴]\": \"😕\", \"[做鬼脸]\": \"😜\", \"[酷]\": \"😎\", \"[翻白眼]\": \"🙄\", \"[惊呆]\": \"😮\", \"[震惊]\": \"😲\", \"[送心]\": \"💖\", \"[委屈]\": \"🥺\", \"[快哭了]\": \"😢\", \"[笑哭]\": \"😂\", \"[哭]\": \"😭\", \"[大笑]\": \"😆\", \"[舔屏]\": \"🤤\", \"[怒]\": \"😠\", \"[捂脸]\": \"🤦♂️\", \"[吐]\": \"🤮\", \"[恐惧]\": \"😱\", \"[抓狂]\": \"😡\", \"[敬礼]\": \"🫡\", \"[石化]\": \"🪨\", \"[OK]\": \"👌\", \"[赞]\": \"👍\", \"[爱心]\": \"❤️\", \"[伤心]\": \"💔\", \"[KISS]\": \"💋\", \"[懂了]\": \"🤓\", \"[探究]\": \"🔍\", \"[重拳出击]\": \"👊\", \"[吃瓜]\": \"🍉\", \"[盯]\": \"👀\", \"[你细品]\": \"🤨\", \"[赶稿中]\": \"⌨️\", \"[注意]\": \"⚠️\", \"[饱了]\": \"😋\", \"[码住]\": \"💾\", \"[学会了]\": \"📘\", \"[顶帖]\": \"📌\", \"[求爆更]\": \"🔥\", \"[求关注]\": \"👋\", \"[我也强推]\": \"💪\", \"[雀食神作]\": \"🦅\", \"[已种草]\": \"🌱\", \"[书架加一]\": \"📚\" };\n\nconst EMOJI_RE = new RegExp(\n Object.keys(EMOJI_MAP)\n .map((k) => k.replace(\/[[\\]]\/g, \"\\\\$&\"))\n .join(\"|\"),\n \"g\"\n);\n\nconst replaceCover = (url = \"\") => {\n const stripped = url.startsWith(\"https:\/\/\") ? url.slice(8) : url.slice(7);\n const parts = stripped.split(\"\/\");\n parts[0] = \"https:\/\/p6-novel.byteimg.com\/origin\";\n return parts.map((p) => (p.includes(\"?\") || p.includes(\"~\") ? p.split(\"~\")[0] : p)).join(\"\/\");\n};\n\nfunction formatEmoji(t) {\n return String(t).replace(EMOJI_RE, (m) => EMOJI_MAP[m] || m);\n}",
"lastUpdateTime": "1792605467914",
"loginCheckJs": "if (result.url().includes(\"content\")) {\n let c = JSON.parse(result.body());\n c = c.data?.content || c.message || \"暂不支持\";\n result = new Packages.io.legado.app.help.http.StrResponse(java.url, c);\n}\nresult;",
"respondTime": 180000,
"ruleBookInfo": {},
"ruleContent": {
"content": "p@html||text"
},
"ruleExplore": {
"author": "author||mixed_data.post_data.user_info.user_name",
"bookList": "data.data[?(@.book_validate_apply_date)]||data.list||book_list||data.publication_list||data.result||data.cell_view.cell_data",
"bookUrl": "https:\/\/fanqienovel.com\/api\/reader\/directory\/detail?bookId={{$.book_id||$.bookId||$.mixed_data.post_data.post_id}}",
"coverUrl": "audio_thumb_uri||thumb_url||thumbUri||mixed_data.post_data.user_info.user_avatar##(\\d+)-tt##6-novel",
"intro": "abstract||mixed_data.post_data.pure_content##\\s",
"lastChapter": "{{$.last_chapter_title}}",
"name": "book_name||bookName||mixed_data.post_data.title",
"wordCount": "word_number"
},
"ruleReview": {
"detailAvatarRule": "$.user_info.user_avatar",
"detailBadgeRule": "$.user_info.user_sticker.sticker.small_url",
"detailContentRule": "@js:\nconst J = a => java.getString(a);\n\nJSON.stringify({\n text: formatEmoji(J(\"$.text\")),\n img: J(\"$.image_data[0].web_uri\"),\n time: java.timeFormat(+J(\"$.create_timestamp\") * 1e3),\n likeCount: J(\"$.digg_count\"),\n replyCount: J(\"$.reply_count\"),\n});",
"detailIdRule": "$.comment_id",
"detailListRule": "$.data.comments",
"detailNameRule": "$.user_info.user_name",
"enabled": true,
"replyAvatarRule": "$.user_info.user_avatar",
"replyBadgeRule": "$.user_info.user_sticker.sticker.small_url",
"replyContentRule": "@js:\nconst J = a => java.getString(a);\n\nJSON.stringify({\n text: formatEmoji(J(\"$.text\")),\n img: J(\"$.image_data[0].web_uri\"),\n time: java.timeFormat(+J(\"$.create_timestamp\") * 1e3),\n likeCount: J(\"$.digg_count\"),\n replyCount: J(\"$.reply_count\"),\n});",
"replyIdRule": "$.reply_id",
"replyListRule": "$.reply_list",
"replyNameRule": "$.user_info.user_name",
"reviewDetailNextPageUrl": "@js:\nlet u = String(baseUrl).replace(\/offset=\\d+\/, `&offset=${page * 10}`);u",
"reviewDetailUrl": "@js:\nlet bid = book.bookUrl.match(\/bookId=(\\d+)\/)[1]\nlet cid = baseUrl.match(\/item_id=(\\d+)\/)[1]\n\nlet queryParams = `item_version=0&version_code=99999&offset={{(page-1)*10}}&item_id=${cid}¶_index=${paraIndex-1}&book_id=${bid}&count=100&query_type=1&sort=0&aid=1967`;\n\n`https:\/\/api5-normal-lf.fqnovel.com\/reading\/ugc\/idea\/comment_list\/v\/?${queryParams}`;",
"reviewSummaryUrl": "@js:\nlet bid = book.bookUrl.match(\/bookId=(\\d+)\/)[1]\nlet cid = baseUrl.match(\/item_id=(\\d+)\/)[1]\n\n;`https:\/\/reading.snssdk.com\/reading\/ugc\/idea\/list\/v\/?book_id=${bid}&item_id=${cid}&item_version=1&aid=1967`",
"summaryCountRule": "$.count",
"summaryListRule": "@js:\nlet data = JSON.parse(result).data.idea_data;\nresult = Object.keys(data).reduce((arr, item, index) => {\n let id = Number(item) + 1;\n let count = data[item][\"idea_count\"];\n arr.push(\n JSON.stringify({\n id: String(id),\n count,\n })\n );\n return arr;\n}, []);\nresult;",
"summaryParagraphIndexRule": "$.id"
},
"ruleSearch": {
"author": "$.book_data[0].author",
"bookList": "$.search_tabs[?(@.tab_type == 1)].data[?(@.show_type==110)]",
"bookUrl": "https:\/\/fanqienovel.com\/api\/reader\/directory\/detail?bookId={{$.book_data[0].book_id}}",
"coverUrl": "$.book_data[0].thumb_url",
"intro": "$.book_data[0].abstract",
"kind": "$.book_data[0].category&&$.recommend_reason_tags[*].Content",
"name": "$.book_data[0].book_name"
},
"ruleToc": {
"chapterList": "@js:\nlet res = JSON.parse(result);\nlet cwv = res.data.chapterListWithVolume;\n\ncwv.reduce((arr, x) => {\n arr.push({\n title: x[0].volume_name,\n isvolume: true,\n });\n\n x.forEach((item) => {\n arr.push({\n title: item.title,\n url: `https:\/\/${host}\/content?item_id=${item.itemId}`,\n time: java.timeFormat(item.firstPassTime * 1000),\n });\n });\n\n return arr;\n}, []);",
"chapterName": "title",
"chapterUrl": "url",
"isVolume": "isvolume",
"updateTime": "time"
},
"searchUrl": "https:\/\/{{host}}\/search?key={{key}}&page={{page}}",
"weight": 0
}