🌟漫蛙动漫🔞
https://manwane.cc
langzaier (13654)08/01 11:58
by狼崽儿 //2026.7.1
有些资源只有一条线路,所以单线路时换线路没有用。
修改了目录列表,确保能正确换线路。//2026.7.6
2026.8.1
如果网站失效,就去该漫蛙的发布页https://ManWaLa.CC/进去任一漫画网站再跳到动漫网页,获取最新网站更新源域名即可。
套了第三方播放器,不依赖阅读自身的解析能力,提高了播放链接的播放成功率。以下是只给出M3U8直链文本而不拉起播放器的正文规则,直接复制粘贴即可。
@js:
var iframe = src.match(/<iframe[^>]*src="([^"]+)"/);
var videoUrl = '';
if (iframe) {
var m = iframe[1].match(/[?&]url=([^&]+)/);
if (m) {
videoUrl = decodeURIComponent(m[1]);
}
}
result = videoUrl;
如果想优先播放直链,就把原正文规则的java.startBrowser(playUrl, book.name + ' - ' + chapter.title);改成java.startBrowser(videoUrl || playerUrl, book.name + ' - ' + chapter.title);
{
"bookSourceComment": "by狼崽儿 \/\/2026.7.1\n有些资源只有一条线路,所以单线路时换线路没有用。\n修改了目录列表,确保能正确换线路。\/\/2026.7.6\n\n2026.8.1\n如果网站失效,就去该漫蛙的发布页https:\/\/ManWaLa.CC\/进去任一漫画网站再跳到动漫网页,获取最新网站更新源域名即可。\n套了第三方播放器,不依赖阅读自身的解析能力,提高了播放链接的播放成功率。以下是只给出M3U8直链文本而不拉起播放器的正文规则,直接复制粘贴即可。\n@js:\nvar iframe = src.match(\/<iframe[^>]*src=\"([^\"]+)\"\/);\nvar videoUrl = '';\nif (iframe) {\n var m = iframe[1].match(\/[?&]url=([^&]+)\/);\n if (m) {\n videoUrl = decodeURIComponent(m[1]);\n }\n}\nresult = videoUrl;\n\n如果想优先播放直链,就把原正文规则的java.startBrowser(playUrl, book.name + ' - ' + chapter.title);改成java.startBrowser(videoUrl || playerUrl, book.name + ' - ' + chapter.title);",
"bookSourceName": "🌟漫蛙动漫🔞",
"bookSourceType": 0,
"bookSourceUrl": "https:\/\/manwane.cc",
"customOrder": 0,
"enabled": true,
"enabledCookieJar": true,
"enabledExplore": true,
"exploreUrl": "@js:\nvar result = [];\nvar push = (title, typeId, tag, size) => result.push({\n title: title,\n url: \"\/api\/cate\/,\" + JSON.stringify({\n \"body\": \"{\\\"page\\\":{\\\"page\\\":{{page}},\\\"pageSize\\\":36},\\\"category\\\":\\\"video\\\",\\\"sort\\\":0,\\\"comic\\\":{\\\"status\\\":-1,\\\"day\\\":0,\\\"year\\\":0,\\\"tag\\\":\\\"\\\"},\\\"video\\\":{\\\"typeId\\\":\" + typeId + \",\\\"tag\\\":\\\"\" + tag + \"\\\",\\\"area\\\":\\\"\\\",\\\"lang\\\":\\\"\\\",\\\"status\\\":-1,\\\"year\\\":0},\\\"novel\\\":{\\\"status\\\":-1,\\\"day\\\":0,\\\"sortId\\\":0}}\",\n \"method\": \"POST\"\n }),\n style: {\n layout_flexGrow: 1,\n layout_flexBasisPercent: size\n }\n});\n\n\/\/ typeId名称映射\nvar types = [\"\", \"国产\", \"日韩\", \"欧美\", \"港台\", \"电影\", \"里番\"];\n\/\/ 全部tag列表(含空=全部)\nvar tags = [\"全部\", \"动画\", \"喜剧\", \"奇幻\", \"剧情\", \"冒险\", \"动作\", \"科幻\", \"爱情\", \"儿童\", \"短片\", \"家庭\", \"悬疑\", \"运动\"];\n\nfor (var t = 1; t <= 6; t++) {\n for (var g = 0; g < tags.length; g++) {\n var title = types[t] + '-' + tags[g];\n var tag = (g === 0) ? '' : tags[g];\n var size = (g === 0) ? 1 : 0.25;\n push(title, t, tag, size);\n }\n}\n\nJSON.stringify(result);",
"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": "1785556734823",
"loginUi": "",
"respondTime": 4885,
"ruleBookInfo": {
"author": "@js:var m=src.match(new RegExp('导演:<span>([^<]+)<\/span>'));result=m?m[1]:'';",
"coverUrl": ".comic-cover@src",
"intro": "<js>\nfunction d(s) {\n return s.replace(\/&#x([0-9a-f]+);\/gi, function(_, h) {\n return String.fromCharCode(parseInt(h, 16));\n });\n}\nvar m0 = src.match(\/option value=\"0\">\\s*([^<]+)\\s*<\\\/\/);\nvar m1 = src.match(\/option value=\"1\">\\s*([^<]+)\\s*<\\\/\/);\nvar name0 = m0 ? d(m0[1].trim()) : '线路0';\nvar name1 = m1 ? d(m1[1].trim()) : '线路1';\nvar xu = (book.getVariable('custom') != null && book.getVariable('custom') != '') ? book.getVariable('custom') : '0';\njava.put('custom', xu);\nvar descM = src.match(\/comic-desc[^>]*>([\\s\\S]*?)<div\\s\/);\nvar dsc = descM ? descM[1].replace(\/<[^>]+>\/g,'').trim() : '';\nresult = '【线路列表】(右上角书籍变量输入序号刷新切换)\\n◖0◗' + name0 + '\\n◖1◗' + name1 + '\\n当前来源◖' + xu + '◗\\n------------\\n' + dsc;\n<\/js>",
"kind": "@js:var tags=[];var re=new RegExp('<span class=\\\"tag\\\">([^<]+)<\/span>','g');var m;while((m=re.exec(src))!==null){tags.push(m[1]);}result=tags.join(',');",
"name": ".comic-title@text",
"tocUrl": "@js:\nbook.tocUrl"
},
"ruleContent": {
"content": "@js:\nvar iframe = src.match(\/<iframe[^>]*src=\"([^\"]+)\"\/);\nvar playerUrl = '';\nvar videoUrl = '';\nif (iframe) {\n playerUrl = iframe[1];\n var m = iframe[1].match(\/[?&]url=([^&]+)\/);\n if (m) { videoUrl = decodeURIComponent(m[1]); }\n}\n\/\/ 优先播放器地址,没有再播直链\nvar playUrl = playerUrl || videoUrl;\nif (playUrl) {\n java.startBrowser(playUrl, book.name + ' - ' + chapter.title);\n java.toast('正在播放');\n}\nresult = '【刷新正文】播放器:' + String.fromCharCode(10) + playerUrl + String.fromCharCode(10, 10) + '直链:' + String.fromCharCode(10) + videoUrl;"
},
"ruleExplore": {
"author": "$.author",
"bookList": "$.data.list",
"bookUrl": "$.url",
"coverUrl": "$.pic",
"intro": "$.intro",
"kind": "$.tags",
"name": "$.title"
},
"ruleSearch": {
"author": "$.author",
"bookList": "$.data.list",
"bookUrl": "$.url",
"coverUrl": "$.cover",
"intro": "$.description",
"kind": "$.tags",
"name": "$.title"
},
"ruleToc": {
"chapterList": "@js:\nvar m = String(book.intro).match(\/来源◖(\\d+)◗\/);\nvar xu = (m && m[1]) ? m[1] : '0';\nvar gridId = (xu === '1') ? 'grid-1' : 'grid-0';\nvar start = src.indexOf('<div id=\"' + gridId + '\"');\nvar end = src.indexOf('<div id=\"grid-', start + 10);\nif (end < 0) { end = src.indexOf('<script', start + 10); }\nif (end < 0) { end = src.length; }\nvar block = src.substring(start, end);\nvar list = [];\nvar re = new RegExp('<a href=\"(\/video\/\\\\d+\/\\\\d+)\"[^>]*class=\"episode-item\"[^>]*>\\\\s*([^<]+)\\\\s*<\/a>', 'g');\nvar m;\nwhile ((m = re.exec(block)) !== null) {\n list.push({ text: m[2].trim(), href: m[1] });\n}\nlist",
"chapterName": "text",
"chapterUrl": "href"
},
"searchUrl": "\/api\/search?type=mh&page={{page}}&pageSize=20&keyword={{key}}",
"weight": 0
}