怠惰輔助&聚圖&下載

透過選擇器定位圈選出要下載的圖片,進行下載壓縮打包,也能聚集分頁的所有圖片到當前頁面裡,如有下一頁元素也能自動化下載。

Ekde 2023/05/01. Vidu La ĝisdata versio.

Aŭtoro
tony0809
Ratings
0 0 0
Versio
1.0.7
Kreita
2023/04/05
Ĝisdatigita
2023/05/01
Licenco
MIT
Aplikiĝas al
Ĉiuj retejoj

如有需要支持的站點可反饋,有空的話會嘗試幫寫規則加進腳本內置的規則庫裡,能力有限不保証一定寫的出來。
寫這個腳本的緣由是,想節省下載、複製鏈接不用做展開圖庫挑選圖片的動作,網站沒有限制連接數的話能做到高速聚集所有圖片,還能添加我想要的一些輔助功能
聚圖!反對將一話一集一部拆成好幾頁,一頁一張圖真XXX的有病,整頁用Lazy loading的話還能接受。

說明:
透過選擇器定位圈選出要下載的圖片,進行下載壓縮打包,也能聚集分頁的所有圖片到當前頁面裡,如有下一頁元素也能自動化下載,支援自定義規則方便重複使用,後續擴充規則更容易。

用戶寫的規則請自行另外備份,規則只會寫死在腳本裡不會線上規則化,腳本更新就會覆蓋規則。

關於自動下載:
當修改了腳本站點規則啟用了自動下載為autoDownload: [1]時,站點規則insertImg: ["ele", 0]必須改為手動插入圖片,不然會造成衝突,自動下載和自動插入同時間只能擇其一使用,瀏覽器的下載設定需關閉下載前詢問儲存位置和設定好預設的下載路徑,每個站點第一次啟用時需等待連續下載2~3次後,觸發瀏覽器詢問是否同意允許下載多個檔案,需同意後後續才能成功下載,並且讓分頁保持在前景運行,可以開一個獨立視窗一個分頁用作下載用。

可用規則範例:

[{
    name: "規則名稱",
    enable: 0, //填0禁用此規則
    icon: 0, //填0不顯示左下圖示
    reg: /www\.xxxxx\.com/, //正則表達式匹配網址
    init: "code", //載入頁面後執行一次的代碼
    include: "#TheImg", //網頁必須包含的元素(非必須),支持CSS / XPath
    exclude: "#TheImg", //網頁要排除的元素(非必須),支持CSS / XPath
    imgs: "#TheImg", //CSS選擇器
    imgs: "//img[@id='TheImg']", //XPath選擇器
    imgs: "js;code", //也可透過javaacript代碼自己創建IMG元素陣列Array或圖片網址陣列,有時大圖是在A元素上需要透過xhr獲取,也有圖片網址是放在代碼裡或是變量或是透過api取得的json。
    //[img, img, img] 圖片元素陣列
    //[圖址1, 圖址2, 圖址3]圖片網址陣列
    autoDownload: [1, time], //1載入頁面後立即開始下載,與next搭配可以實現全自動下載,瀏覽器需要先同意允許下載多個檔案,time延遲幾毫秒後點擊下一頁(預設5000),並且讓分頁保持在前景。
    insertImg: ["元素", 1, time], //[清空此元素內容插入圖片, 0(手動插入)1(自動插入)2(自動插入Lazy loading模式), 延遲時間(預設0)],支持CSS / XPath。
    insertImg: [
        ["元素", (插入在此元素)1(之前)2(之後), "移除不必要的元素"], 0(手動插入)1(自動插入)2(自動插入Lazy loading模式), 延遲時間(預設0)
    ],
    autoClick: "#show-all-images-button", //載入頁面後點擊一次此元素
    observerClick: "#show-all-images-button", //元素進入可視範圍內才點擊
    openInNewTab: ".manga-cover>a:not([target=_blank])", //指定的A元素在新分頁開啟
    customTitle: "code", //自定義javaacript代碼生成壓縮檔和資料夾名稱(非必須),預設是使用當前網頁標題。
    next: "//a[text()='下一章']", //設定下一頁元素綁定右方向鍵點擊下一頁。
    prev: "//a[text()='上一章']", //設定上一頁元素綁定左方向鍵點擊上一頁,填1則使用history.back();。
    css: "css", //插入自訂樣式,基本上就是用來隱藏廣告用的。
    one: 1, //使用單線程下載(非必須),有些網站限制連接數,併發請求容易出錯。
    category: "comic" //類別(非必須)
}, {
    name: "規則2",
    enable: 0,
    icon: 0,
    reg: /www\.xxxxx\.com/,
    init: "",
    include: "",
    exclude: "",
    imgs: "",
    autoDownload: [1, time],
    insertImg: ["", 0, 0],
    insertImg: [
        ["", 1, ""], 2, 0
    ],
    autoClick: "",
    observerClick: "",
    openInNewTab: "",
    customTitle: "",
    next: "",
    prev: "",
    css: "",
    one: 1,
    category: ""
}, {
    name: "規則3",
    …
}]

內置函數:


「 點擊展開查看 」
//可使用在規則init、imgs、customTitle
//返回一個指定元素,支持CSS/Xpath選擇器
fun.ge('元素選擇器', 搭配fun.doc()(可省略)))

//返回所有指定元素,支持CSS/Xpath選擇器
fun.gae('元素選擇器', 搭配fun.doc()(可省略)))

//等同eval()
fun.run('代碼')

//將字串解析成document物件
fun.doc('字串')
搭配fetch(url).then(res => res.text())返回的原始碼使用
或串接
fetch(url).then(res => res.text()).then(res => {
    let doc = fun.doc(res);
    fun.ge(ele, doc);
})

//將字串解析成xml物件
fun.xml('字串')

//顯示訊息
fun.show('字串',1000(顯示的時間,低於1000持續顯示));

//延遲運行async/await
await fun.delay(time);

//對document.title的字串修改
fun.title('字串',mode)
mode
0返回【刪除指定字串的標題(預設)】
1返回【字串切割取[0]去前後空白】
2返回【字串切割[0] + '字串' + 字串切割[1]】
3返回【字串切割[1] + '字串' + 字串切割[0]】

//取得元素的字串
fun.geT('元素選擇器',mode)
mode
1返回指定元素的字串(預設)
2返回指定元素的上一個元素的字串
3返回指定元素的上上一個元素的字串

//xhr抓取元素 (只支持靜態網頁,無法跨域請求)
fun.getImg('圖片元素選擇器',max ,mode ,['圖片網址用來替換的字串','圖片網址要被替換的字串'](可省略) )
max填入用fun.geT()取得最大頁數的數字,或想辦法算出最大頁數的數字。
fun.getImg(ele, max, mode = 1, rText = [null, null])
網址頁碼數字遞增模式
第一頁 ==> 第二頁
mode1(預設)
.html ==> .html?page=2
mode2
.html ==> /2.html
mode3
.html ==> _1.html
mode4
/ ==> /2/
mode'4'
 ==> /2
mode5
.html ==> -2.html
mode'5'
-1.html ==> -2.html
mode6
?p=1 ==> ?p=2
mode7
/1 ==> /2
.html ==> .html/2
mode8
==> &page=1
mode9
.html ==> _2.html
mode10
.html ==> .html/2
mode11
/ ==> /2.html
/1.html ==> /2.html
mode12
/ ==> /2.htm
/1.htm ==> /2.htm
mode13
-1-* ==> -2-*
mode14
/1/ ==> /2/
mode15
/ ==> /index_2.html
/index.html ==> /index_2.html
mode16
 ==> /2#list
mode17
.htm ==> _2.htm
mode18
/ ==> /page/2/
mode19
-1 ==> -2
mode20
 ==> -p-2

fun.getImgO('圖片元素選擇器', max, mode, ['圖片網址用來替換的字串', '圖片網址要被替換的字串'], time(延遲請求下一頁的時間預設200毫秒), '替換頁碼條元素', 0(不顯示獲取訊息))
fun.getImgO(img, maxPage = 1, mode = 1, rText = [null, null], time = 200, paginationEle = null, msg = 1)
基本同fun.getImg,但使用單線程獲取網頁,能設置獲取網頁的間隔時間。

fun.getImgIframe('圖片元素選擇器', max, mode, ['圖片網址用來替換的字串', '圖片網址要被替換的字串'], '替換頁碼條元素', time(給予框架讀取的時間), 0 不顯示獲取訊息)
fun.getImgIframe(img, max, mode, [null, null], paginationEle, time, showMsg)
基本同fun.getImg,使用iframe框架單線程獲取網頁,能讓網頁運行必要的javaacript。

fun.getImgA('圖片元素選擇器', 'A元素選擇器', mode, ['圖片網址要替換的字串', '圖片網址要被替換的字串'](可省略), 0 不顯示獲取訊息)
mode
0多線程(預設)
1單線程
3單線程不將A元素替換成圖片元素
A元素選擇器的href屬性不能是#和javascriptc或onclick監聽點擊事件,必須是正常的http鏈接。
fun.getImgA(img, A, one = 0, rText = [null, null], showMsg = 1)

fun.getNP('元素選擇器', '下一頁元素', '判斷為最後一頁的元素', '翻頁後要替換的頁碼條元素', time(延遲請求下一頁的時間預設0毫秒))
翻頁模式聚集圖片或是含A元素的預覽縮圖然後fun.getImgA()
用在規則init
fun.getNP(ele, nextLinkEle, lastEle, paginationEle, time);
fun.getNP(ele, nextLinkEle);

用在規則imgs,需要用async/await
//應用在www.wnacg.org的用法
const get = async () => {
    await fun.getNP('.gallary_item', '.thispage+a', null, '.paginator');
    return fun.getImgA('#picarea', '.gallary_item a')
};
return get();

//應用在www.nlegs.com的用法
init
fun.getNP(`//div[a/div[contains(@style,'thumb') and span]]`,'li.active+li>a',null,'.pagination')
imgs
fun.getImgA('.img-res','a[href*=image]',1);

//應用在包子漫畫的用法
const get = async () => {
    await fun.getNP('.comic-contain>div:not(.mobadsq)', `//a[contains(text(),'下一頁') or contains(text(),'下一页')]`, null, '.comic-chapter>.next_chapter');
    let arr = [];
    [...fun.gae('.comic-contain amp-img')].forEach(e => {
        arr.push(e.getAttribute('src'))
    });
    arr = [...new Set(arr)];
    return arr
};
return get();

應用在小黃書的用法
const get = async () => {
    await fun.getNP('.photos>a', '.pager a[current=true]+a:not(.next)', null, '.pager');
    let arr = [];
    [...fun.gae('img.cr_only')].forEach(e => {
        arr.push(e.src.replace('_600x0', ''))
    });
    return arr;
};
return get();


寫好規則後就只需要
點擊圖示、確定、確定,3步開始下載。
右鍵點擊圖示、確定,2步驟複製圖片網址,如果設置了insertImg,按右鍵是插入圖片,第二次按是複製圖片網址。

腳本有綁定按鍵
數字鍵0下載壓縮、數字鍵1複製圖片網址
按0、Enter、Enter,3步驟開始下載。
按1、Enter,2步驟複製圖片網址。
如果設置了insertImg,按1、Enter是插入圖片,第二次按是複製圖片網址。

舉例一
漫畫網站設定下一頁元素,按右方向鍵、0、Enter、Enter就能接著下載下一話了。
舉例二
對於一頁一張圖片的漫畫網站要插入全部圖片,設定完整規則和insertImg,按1、、Enter就能插入全部圖片。
舉例三
鍵盤瀏覽,將漫畫一集分成一頁一張圖的網站,insertImg的參數二設置為1或2聚集直接插入本集的所有圖片,設定prev、next左右鍵點擊上下集。

圖介
在頁面左下添加了一個圖片下載按鈕


點擊後會彈出確認窗輸入CSS和Xpath選擇圖片元素。

確認後需要再輸入資料夾名稱

確認後就會開始下載壓縮打包圖片


為了與東方永頁機共存不會造成衝突,也不需要兩邊開開關關的,整理了東方永頁機黑名單。
https://raw.githubusercontent.com/skofkyo/AutoPager/main/Blacklist.txt

老司機類內置規則支持列表


「 點擊展開查看 」
網站備註
小黃書tw.xchina.co
8色人體攝影tw.8se.me
Women Legs Gallery請使用專用腳本,greasyfork.org/scripts/463123
24tupian請使用專用腳本,greasyfork.org/scripts/464745
JKF貼圖區
草榴貼圖區
CoserBOXcoserbox.org,picacg.org,loli.pub,免積分需有第一張預覽圖
优丝库HD免VIP,大圖放在預覽圖下面
24FA
Hit-x-Hot同網頁格式,www.depvailon.com、pic.yailay.com、nungvl.net
萝丝派www.lsp.im losipai.com www.losi.cc
新闻吧封鎖部分地區,需要VPN才看的到圖片
留园酷貼圖區
ACG 资源网幾乎都需要VIP
秀人集
秀人美女網
精品美女吧
爱美女网
美人图
性感美女写真
爱看美女网不支持預覽版頁面
Xiuren 秀人网很久沒新圖了
微圖坊www.v2ph.net 需註冊,大尺度非VIP只能抓到20~30張
美桌感覺沒在更新圖了
3G壁纸v感覺沒在更新圖了
亿图全景图库
优美图库
MEITU131
爱美女
ChottieVIP限定的沒有VIP帳號只會重複抓到第一頁的圖片
美图录
妹妹图很久沒新圖了
小姐姐
遛无写真很久沒新圖了
免费私房图同網頁格式,www.ycmzt.com,www.ywsft.com,www.jpmnt.com
www.sfwht.com,www.ywmmt.com,http://js.sfywt.com/dz.html
绅士猫
COSPLAY ZIP
萌图社
秀色女神支持手機版,m.xsnvshen.co
HotAsiaGirl
BeautyLeg
Asianude4u
爱看 INS
Dmmtu 美女图
好女神网很久沒新圖了
Jablehk
套图网
Taotuxp.com很久沒新圖了
MM 范
套圖吧完整圖片都需要付費
推图网
XXIAV寫真館
Xgirls很久沒新圖了
Nude Bird
NUDECOSPLAY
Mitaku
MrCong完整無修正的圖片需要下載,聚集的只是預覽圖
4KHD
Buon Dua
BAOBUA.COM超久沒新圖了,blog.baobua.net,fb.baobua.net,vn.baobua.net
HOTGIRLchina
Everia.club
Porn Pics
NongMo.Zone
idol.gravureprincess.date
MIC MIC IDOL
Kemono
凸凹吧同網頁格式,www.63mm.cc,www.97mm.cc,www.luge8.co,luge8.co
套图之家
俊美图
美女图片网
x6o
性趣套图
苍井优图片
Asian To Lick大圖放在預覽圖下面
goddess247
BestGirlSexy
4KUP高解析原圖需要下載,聚集的只是預覽圖
牛C网导航
Qinimg
Elite Babes同格式,pmatehunter.com
EPORNER大圖放在預覽圖下面
www.eporner.com/profile/namaiki/
www.eporner.com/profile/janekhansen/
xHamster大圖放在預覽圖下面
PornHub很容易被短暫封IP...,大圖放在預覽圖下面
PicHunter
Pictoa
PimpAndHost相簿
BabeSource圖片清單頁
Pornpaw圖片清單頁
Fuskator圖片清單頁
ImageFapgallery頁聚集,大圖頁3秒獲取1張,需從第一頁開始
JavBangers大圖放在頁面底部
multi.xnxx.com
色情圖片網
GavPorn相冊
Buzzav
Hentai Imagehentai-cosplays.com,porn-images-xxx.com
Sexyxbody同系列,bunnyxgirl.com,letsgirlz.com,cn.bunnyxgirl.com,cn.letsgirlz.com
cn.bestxleg.com,kawaiix.com,kawaiixpic.com,www.peachgirlz.com
peachgirlz.com,pantyxart.com,beautyxpic.com,cutexpic.com
assgirlz.com,beautifulmetas.com,pantyxgirl.com,greatxpic.com
xartpic.com,perfectxpic.com,bestxboobs.com,artthong.com
cn.kawaiix.com,cn.kawaiixpic.com,cn.peachgirlz.com,cn.pantyxart.com
cn.beautyxpic.com,cn.cutexpic.com,cn.perfectxbody.com,cn.sexyqgirl.com
cn.bestxhips.com,cn.bestxass.com,cn.assgirlz.com,cn.bestxbum.com
cn.eroticxpic.com,cn.xxxthong.com,cn.thongxgirl.com,cn.bestxlingerie.com
cn.sexyxart.com,cn.hotxhips.com,hotbeautypic.com,cn.hotbeautypic.com
gogo人体艺术同系列,956n.com,48mp.com,6666rt.com,www.64ay.com
www.98ah.com,www.54aj.com,www.48gd.com,www.42jd.com
www.36ut.com,xixirt.org,www.23fe.com,www.02aj.com
www.139tu.com,gogo38.com,488xm.com,rtys96.com
291103.com,366807.com,508332.com,693350.com
660183.com,702038.com,873750.com,981070.com
18renti.com,renti92.com,133rt.com,rt211.com
gogo44.com,xixi78.com,816mm.com,999zv.com
28rtys.com,454t.com,784z.com,34tp.com
28xv.com,22bb.org,444rp.com,03hb.com
39um.com,45xm.com,444wp.com,005mm.com
188rt.com,956n.com,7m11.com,61ak.com
34bu.com,344F.com,23bp.com,rty6.com
22gs.com,44aq.com

H漫類內置規則支持列表


「 點擊展開查看 」
網站備註
E-Hentai作用在圖片清單頁
nhentai作用在圖片清單頁,nyahentai.red,www.hentai.name,cathentai.net
nhentai.xxx,nhentai.to,nhentai.website
Hanime1作用在圖片清單頁
HentaiFox作用在圖片清單頁
3hentai作用在圖片清單頁
Simply Hentai作用在圖片清單頁
Doujins作用在圖片清單頁
IMHentai作用在閱讀頁
Hentai2Read作用在閱讀頁
Pururin作用在閱讀頁
9hentai作用在閱讀頁
AsmHentai作用在閱讀頁
MultPorn作用在閱讀頁
HentaiHere作用在閱讀頁
7mmtv
18H
H次元大圖在清單後面
淫漫画www.yinmh.top,www.yinmh.xyz
丽图·污漫画
Avbebe
ACG漫画网
紳士漫畫作用在圖片清單頁
TWHentai作用在圖片清單頁
松鼠症倉庫
177漫画www.177picyy.com
18H 宅宅愛動漫
HO5HO
18禁漫
亚洲漫画走廊
韓漫射同格式,h-doujinshi.xyz,18hmanga.click,cosporn.online
Hitomi.la
Orzqwq

漫畫類內置規則支持列表

漫畫類為了兼容我提交給東方永頁機的翻頁規則和自己寫的專用腳本,幾乎預設為關閉狀態,如有需要這些規則再enable: 1開啟吧,除非需要下載不然幾乎用不到。


「 點擊展開查看 」
網站備註
嗨皮漫畫閱讀、展開目錄、自動點擊載入、漫畫鏈接新分頁打開,預設關閉
COLAMANHUA只有方向鍵左右點擊上一章下一章功能,預設關閉
8Comic無限動漫支持手機版 m.comicbus.com
Mangabz支持手機版,預設關閉
Xmanhua支持手機版,預設關閉
DM5支持手機版 m.dm5.com,預設關閉
極速支持手機版 m.1kkk.com,預設關閉
奇漫屋支持手機版 m.qiman59.com,預設關閉
漫画星球預設關閉
6漫画支持手機版 m.6mh67.com,預設關閉
漫本預設關閉
动漫之家manhua.dmzj.com,m.dmzj.com,預設關閉
Manhuagui看漫画m.manhuagui.com,預設關閉
包子漫画閱讀、展開目錄、漫畫鏈接新分頁打開,預設關閉
Komiic有限制連線數,最多只能同時載5話
LINE WEBTOON目錄聚集所有章節、閱讀,預設關閉
咚漫預設關閉
動漫狂支持手機版 www.cartoonmad.com/m/,預設關閉
動漫戲說預設關閉
亲亲漫画m.acgud.com,預設關閉
古风漫画网支持手機版 m.gufengmh.com,預設關閉
漫画456預設關閉
90漫画預設關閉
优酷漫画預設關閉
前未漫画預設關閉
漫画芯預設關閉
蔷薇漫画預設關閉
最漫画預設關閉
爱米推漫画預設關閉
下拉式漫画預設關閉
漫画吧預設關閉
漫画连預設關閉
来漫画預設關閉
奇妙漫画預設關閉
漫客栈預設關閉
漫画屋www.manhw.com,預設關閉
爱国漫預設關閉
新新漫画m.77mh.xyz,預設關閉
漫漫聚
KuKu动漫
仙漫网預設關閉
漫画牛預設關閉
大树漫画預設關閉
GODA漫画預設關閉
包子漫畫預設關閉
漫畫屋連線品質很差,預設關閉
七夕漫画預設關閉
爱漫之家預設關閉
73漫画預設關閉
733动漫預設關閉
漫画160預設關閉
木马漫画預設關閉
砂之船动漫家預設關閉
好漫6預設關閉
好漫8預設關閉
拷貝漫畫需要手動滾動頁面顯示所有圖片後才能下載到全部圖片,預設關閉
二次元動漫預設關閉
酷漫屋預設關閉
快看漫画預設關閉
腾讯漫画預設關閉
哔哩哔哩漫画