为漫画站增加双页阅读、翻译等优化体验的增强功能。百合会(记录阅读历史、自动签到等)、百合会新站、动漫之家(解锁隐藏漫画)、E-Hentai(关联 nhentai、快捷收藏、标签染色、识别广告页等)、nhentai(彻底屏蔽漫画、无限滚动)、Yurifans(自动签到)、拷贝漫画(copymanga)(显示最后阅读记录、解锁隐藏漫画)、PonpomuYuri、再漫画、明日方舟泰拉记事社、禁漫天堂、漫画柜(manhuagui)、漫画DB(manhuadb)、动漫屋(dm5)、绅士漫画(wnacg)、mangabz、komiic、MangaDex、無限動漫、新新漫画、熱辣漫畫、hitomi、SchaleNetwork、kemono、nekohouse、welovemanga
新新漫画 https://www.77mh.nl/
以前折騰過
取得一話一集的圖片地址的代碼
無限動漫
//PC let imgSrcTotal = window.ps; //圖片總數 let mainCode = [...document.scripts].find(s => s.textContent.includes("ge(e)")).textContent; //取得主要代碼 let [, keyCode] = mainCode.match(/ge\([^.]+\.src\s?=\s?([^;]+)/); //取得混淆過的關鍵代碼 let imgSrcArray = []; for (let i = 1; i <= imgSrcTotal; i++) { let replaceText = "(" + i + ")"; let code = keyCode.replace(/\(pp?\)/g, replaceText); //把關鍵代碼裡的(p)或(pp)替換成頁數(1) let runCode = new Function("return " + code)(); //使用匿名函式運行改好的代碼返回圖片地址,用eval(code);也行。 let src = location.protocol + runCode; //補上協議湊成完整圖片地址 imgSrcArray.push(src); } console.log(imgSrcArray); //Mobile let imgSrcTotal = window.ps; //圖片總數 let imgSrcArray = []; for (let i = 1; i <= imgSrcTotal; i++) { let imgSrc = "https://img" + ss(c, 4, 2) + ".8comic.com/" + ss(c, 6, 1) + "/" + ti + "/" + ss(c, 0, 4) + "/" + nn([i]) + "_" + ss(c, mm([i]) + 10, 3, f) + ".jpg"; imgSrcArray.push(imgSrc); } console.log(imgSrcArray);
新新漫畫
msg.split("|").map(path => location.hostname.includes("m.77mh") ? ImgSvrList + path : img_qianz + path);
久等了,两个网站都更新支持了
@tony0809 非常感谢!直接复制完事省了我很多功夫
無限動漫網站改版了
if ("unescape" in window) { const { ps, su, ti, nn, mm } = window; const code = [...document.scripts].find(s => s.textContent.includes("ge(e)")).textContent; const [, chapterId] = code.match(/img\s+s="(.{15})/); const getSrc = (id, p) => { let src = id + p; const a = src.substring(15); const b = eval(src.substring(0, 5)); const c = eval(src.substring(5, 10)); const d = eval(src.substring(10, 15)); src = '%68%74%74%70s%3A%2F%2F%69%6D%67' + su(b, 0, 1) + '%2e%38%63%6f%6d%69%63%2e%63%6f%6d%2f' + su(b, 1, 1) + '%2F' + ti + '%2F' + c + '%2F' + nn(a) + '%5F' + su(d, mm(a), 3) + '%2E%6A%70%67'; src = unescape(src); return src; }; const srcs = new Array(ps).fill().map((_, i) => getSrc(chapterId, i + 1)); console.log(srcs); }
@tony0809 非常感谢!脚本已更新
@tony0809 非常感谢!脚本已更新
好像又加了點髒東西
if ("ge" in window) { const code = [...document.scripts].find(script => script.textContent.includes("ge(e)")).textContent; const [, obfuscated_chapter_code] = code.match(/img\s+s="([^"]+)/); const chapter_code = obfuscated_chapter_code.replace(/'|\+\w\+/g, ""); const getSrc = (a) => { const b = window[chapter_code.substring(0, 5)]; const c = window[chapter_code.substring(5, 10)]; const d = window[chapter_code.substring(10, 15)]; const src = "https://img" + su(b, 0, 1) + ".8comic.com/" + su(b, 1, 1) + "/" + ti + "/" + c + "/" + nn(a) + "_" + su(d, mm(a), 3) + ".jpg"; return src; }; const srcs = Array.from({ length: ps }, (v, i) => getSrc(i + 1)); console.log(srcs); }
@tony0809 非常感谢!脚本已更新
無限動漫的前端開發是有在看這邊嗎?
一直改前端代碼這次混淆到不能從script著手
加強了代碼混淆但環境變量依然有解密後的html
反而降低了拿圖片網址的難度
if ("xx" in window) { const html = decodeURIComponent(window.xx); const srcs = html.match(/\/\/[^"]+/g).map(e => location.protocol + e); console.log(srcs); }
@tony0809 😂可能最近刚好在刷kpi吧(
換來換去的很好玩嗎...
換湯不換藥,要嘛解密code,要嘛直接能提取網址,揉合一下能用到出現第三種加密。
if ("xx" in window) { const { su, ti, nn, mm, xx } = window; const getSrc = (code) => { const a = code.substring(15); const b = window[code.substring(0, 5)]; const c = window[code.substring(5, 10)]; const d = window[code.substring(10, 15)]; const src = "https://img" + su(b, 0, 1) + ".8comic.com/" + su(b, 1, 1) + "/" + ti + "/" + c + "/" + nn(a) + "_" + su(d, mm(a), 3) + ".jpg"; return src; }; const html = decodeURIComponent(xx); const codes = html.matchAll(/ s="([^"]+)"/g); const srcs = [...codes].map(([, code]) => { if (code.startsWith("//")) { return window.location.protocol + code; } else if (code.replace(/\d+$/, "").length === 15) { return getSrc(code); } else { return null; } }); console.log(srcs); }
请求支持新网站
无限动漫(漫画站) https://www.comicabc.com/
p.s.作者大大的插件很好用,大赞