ComicRead

为漫画站增加双页阅读、翻译等优化体验的增强功能。百合会——「记录阅读历史、自动签到等」、百合会新站、动漫之家——「解锁隐藏漫画」、E-Hentai——「匹配 nhentai 漫画」、nhentai——「彻底屏蔽漫画、自动翻页」、Yurifans——「自动签到」、拷贝漫画(copymanga)——「显示最后阅读记录」、PonpomuYuri、明日方舟泰拉记事社、禁漫天堂、漫画柜(manhuagui)、漫画DB(manhuadb)、动漫屋(dm5)、绅士漫画(wnacg)、mangabz、komiic、无限动漫、新新漫画、hitomi、Anchira、kemono、nekohouse、welovemanga

< Feedback on ComicRead

Review: Good - script works

§
Posted: 19.11.2023

詢問能否增加cola漫畫(以前的coco)
https://www.colamanga.com/manga-ug706834/
因為這個站很多條漫,頁數多時,讀取快dm5很多
簡易模式可以用,但是載入後,翻到最下面,他不會馬上接著預讀,要上捲再下捲才會再次觸發讀取,所以很容易先顯示到底退出

§
Posted: 19.11.2023
const colamangaAutoScroll = async () => {
    let timeout = false;
    const autoScroll = async arr => {
        for (let i = 0; i < arr.length; i++) {
            arr[i].scrollIntoView();
            await new Promise(resolve => {
                let timeId = setTimeout(() => {
                    timeout = true;
                    clearInterval(loop);
                    resolve();
                }, 5000);
                let loop = setInterval(() => {
                    if (arr[i].querySelector("img[src]")) {
                        clearTimeout(timeId);
                        clearInterval(loop);
                        resolve();
                    }
                }, 100);
            });
            if (timeout) break;
        }
    };
    let imgs = [...document.querySelectorAll(".mh_comicpic")];
    await autoScroll(imgs);
    let newImgs = [...document.querySelectorAll(".mh_comicpic")];
    if (imgs.length < newImgs.length) {
        newImgs = newImgs.slice(imgs.length);
        autoScroll(newImgs);
    }
};

加個進入簡易閱讀模式後,colamanga執行自動滾動觸發圖片載入的函式。

§
Posted: 20.11.2023

請問要放在哪部分呢,我直接丟在腳本最下方好像沒發現差異

§
Posted: 20.11.2023

請問要放在哪部分呢,我直接丟在腳本最下方好像沒發現差異

版本8.1.0
第8554行
const start = async () => {
的後面添加

                if (/^https:\/\/www\.colamanga\.com\/manga-[^\.]+\.html/.test(window.location.href)) {
                    const colamangaAutoScroll = async () => {
                        let timeout = false;
                        const autoScroll = async arr => {
                            for (let i = 0; i < arr.length; i++) {
                                arr[i].scrollIntoView();
                                await new Promise(resolve => {
                                    let timeId = setTimeout(() => {
                                        timeout = true;
                                        clearInterval(loop);
                                        resolve();
                                    }, 5000);
                                    let loop = setInterval(() => {
                                        if (arr[i].querySelector("img[src]")) {
                                            clearTimeout(timeId);
                                            clearInterval(loop);
                                            resolve();
                                        }
                                    }, 100);
                                });
                                if (timeout) break;
                            }
                        };
                        let imgs = [...document.querySelectorAll(".mh_comicpic")];
                        await autoScroll(imgs);
                        let newImgs = [...document.querySelectorAll(".mh_comicpic")];
                        if (imgs.length < newImgs.length) {
                            newImgs = newImgs.slice(imgs.length);
                            autoScroll(newImgs);
                        }
                    };
                    colamangaAutoScroll();
                }
hymbzAuthor
§
Posted: 20.11.2023

这个站点的反爬做得很好,服务器提供的图片都需要在加载到浏览器后再做特殊处理才能正常显示,其他各种反爬措施也是一应俱全,简易模式能支持这个站点只能说是运气好。

所以如果只是简单适配的话,效果也只会和简易模式差不多。而要认真适配的话就得花不少功夫,但这站的大字号彩色水印太败我这个洁癖强迫症(?)的好感了,实在不想在这种站点上花时间去解读经过混淆的代码,非常抱歉。

不过我还是更新优化了一下简易模式的加载速度,并增加了提前预测页数的功能,这样应该就能避免你说的这种情况了。

另外,如果之后简易模式在这个站点的支持上有新问题,也欢迎你继续反馈。虽然不想认真适配它,但只要还能通过优化升级简易模式来解决的话,我还是很乐意借机优化的。(很巧的是简易模式的上次更新也是为了兼容这个站点 #109

§
Posted: 20.11.2023

再修改一下,只滾一次有時會被上一張擠出可視範圍外,然後圖片就被取消載入了。

                if (/^https:\/\/www\.colamanga\.com\/manga-[^\.]+\.html/.test(window.location.href)) {
                    const colamangaAutoScroll = async () => {
                        let timeout = false;
                        const autoScroll = async arr => {
                            for (let i = 0; i < arr.length; i++) {
                                await new Promise(resolve => {
                                    let timeId = setTimeout(() => {
                                        timeout = true;
                                        clearInterval(loop);
                                        resolve();
                                    }, 5000);
                                    let loop = setInterval(() => {
                                        arr[i].scrollIntoView();
                                        if (arr[i].querySelector("img[src]")) {
                                            clearTimeout(timeId);
                                            clearInterval(loop);
                                            resolve();
                                        }
                                    }, 200);
                                });
                                if (timeout) break;
                            }
                        };
                        let imgs = [...document.querySelectorAll(".mh_comicpic")];
                        await autoScroll(imgs);
                        let newImgs = [...document.querySelectorAll(".mh_comicpic")];
                        if (imgs.length < newImgs.length) {
                            newImgs = newImgs.slice(imgs.length);
                            autoScroll(newImgs);
                        }
                    };
                    colamangaAutoScroll();
                }
§
Posted: 20.11.2023

感謝tony,增加後,進去會自動加載全部了

感謝作者,在3/4時就會加載了, 只要能方便觀看就好了 。
另外問能先暫時增加AD讓翻頁能類似space大約跳90%這樣嗎?
因為我家空白按鍵的反饋有點大...

認同討人厭的浮水印超大,但她讀取快...有時候會用tony大的腳本去包子漫畫看,但包子有時候也會很卡><"
不然明明他也有拷貝的浮水印,但是拷貝卻找不到,不明原因...

§
Posted: 20.11.2023

回報8.1.1新版的,在讀取似乎會因為加載順序問題,後面圖片好像就卡住不能讀取,等很久後,中間頁數有先顯示,所以有點隨機,然後一次是卡在176第二次卡在110頁,就不再讀取了

原本的簡易模式,因為會進去後才逐一加載(似乎就是等瀏覽器逐一加載然後顯示),所以很順利,然後配tony的連續加載就順了

hymbzAuthor
§
Posted: 20.11.2023
Edited: 20.11.2023

能先暫時增加AD讓翻頁能類似space大約跳90%這樣嗎?

没问题,不过加在ad这种左右键上感觉有点怪,还是加在ws这种上下键上吧。

在讀取似乎會因為加載順序問題,後面圖片好像就卡住不能讀取

每个漫画都会吗?我这边试了几个都没问题,你发下漫画链接我试试。顺带一提其实现在也是等浏览器逐一加载显示的,只不过现在会先预测一个页数,如果当前显示图片数不够,就先用空白页占位,之后再随着图片的加载进行更新。具体加载情况可以看滚动条色块,空白占位页会显示为黄色色块。

§
Posted: 21.11.2023
Edited: 21.11.2023

https://www.colamanga.com/manga-ug706834/1/39.html
就是上面的-從滿級開始升級
發覺只要退出後,捲到最下,讓他持續載入再進去簡易模式就會有後面的了,要一直反覆...chrome和cent都是這樣

好的,感謝快捷鍵ws

hymbzAuthor
§
Posted: 22.11.2023

已更新。快捷键滚动我试了几个条漫感觉90%还是有点太多了,所以就先设置为80%了。

至于卡加载,我这里还是复现不了。。。不过还是盲猜了下原因针对改进了一下代码,你再试试看。

§
Posted: 22.11.2023
Edited: 22.11.2023

嘗試幾次後,發現可以了!
原因似乎是我用end直接跳尾,導致加載認為到底了
改用pagedown或滑鼠順順拉,就可以一直載入了

就差到底翻頁按鍵s不會退出,不過可以按ESC
到底s會提示,再次s無反應,按d則取消
到底a會提示,再次a退出
感謝更新

hymbzAuthor
§
Posted: 22.11.2023

翻页 bug 已更新修复。


载入这个应该和操作无关,因为我自己测试的时候也都是直接 end 跳尾页看有没有加载完的(

稍微讲解下吧,简易模式下会不断执行两个函数,一个是将页面上符合长宽的图片作为图源放入列表中,还有一个是触发所有图片元素的懒加载。前者没啥好说的主要是后者。

要触发图片懒加载的方法就只有将图片滚动到窗口内显示这一招。所以脚本的阅读模式其实只是个弹窗,在弹窗遮盖下的网页会不断滚动来触发懒加载。即使不进阅读模式,脚本也会通过在一帧内滚动过去再滚回来的方式,在不影响视觉的情况下尝试触发懒加载。所以正常是完全不需要手动操作原网页的。

之前都是无限循环上面这俩函数的,虽然加了半秒延迟,实际对性能影响应该微乎其微。但一想到在所有图片都加载完以后,这俩函数还会在后台不断循环执行浪费资源我就难受😩。所以之前更新改成了,只在网页元素发生变动且影响到了图片元素时,才会执行这俩函数。

虽然具体原因还不清楚,但会卡加载肯定是因为触发懒加载的函数没有调用导致的。所以上次更新改让它们多循环几次等到没什么变化了再结束循环。

不过毕竟我这边无法复现,而且因为网页加载中的随机性太大,到底是真的解决了这个 bug,还是只是减少了其出现的频率,我也无法确定,只能辛苦你再遇到时再来提了。实在不行就改回无限循环

§
Posted: 23.11.2023

原來如此,所以如果加裝把所有圖片合併一頁的腳本,就能適配簡易模式了@@

可以了!!end到底後,往上加載50p後也往下加載成功了!
感謝更新~

§
Posted: 08.03.2024

https://www.colamanga.com/manga-ad81146/1/203.html

不好意思,不知道是不是載入變了,最近進入簡易模式在載入圖片又會卡住了,大概12P就沒了

§
Posted: 09.03.2024

感謝作者,順利載入了!!

Post reply

Sign in to post a reply.