【油猴脚本】蓝奏云批量输出下载链接
本帖最后由 p8e2cn5eopn 于 2024-6-17 22:09 编辑这个是一个比较小众的需求,不知有没有人需要,但还是决定把自己脚本放出来供大家使用,如果能够帮到忙了,希望给个好评。
测试链接:https://kwt767.lanzout.com/b044uyehe
注意:本脚本只匹配此一测试链接,如果需要变更可自行修改脚本。
使用方法:安装脚本后,点击左上角“main”按钮后请耐心等待,直至输出全部链接并会自动复制到剪贴板中。链接保质期短,需尽快使用。
以下是脚本代码:
// ==UserScript==
// @name 蓝奏云批量输出下载链接
// @AuThor runwithfaith
// @compatible firefox
// @homepage https://greasyfork.org/users/718683
// @Icon http://lanzout.com/favicon.ico
// @grant GM_setValue
// @grant GM_getValue
// @grant GM.setClipboard
// @license MIT
// @match https://kwt767.lanzout.com/b044uyehe
// @require https://update.greasyfork.org/scripts/435697/1387554/mylib.js
// @require https://fastly.jsdelivr.net/npm/sweetalert2@11.10.3/dist/sweetalert2.all.min.js
// ==/UserScript==
//首先,把目录下所有的文件的链接的iframe链接得到.srcs
my.addBtns(function main(){
const uw=unsafeWindow,
names = document.querySelectorAll('#name'),
len=names.length,
ifr=my.append(`iframe`,document.documentElement,'');
uw.strs='';uw.srcs=[];
(function xhrForSrc(index){
const xhr = new XMLHttpRequest(),ahref=names.querySelector('a').href;
// alert(ahref);
xhr.open('GET', ahref, true);
xhr.onload = async function () {
const parser=new DOMParser(),
xmlDoc=parser.parseFromString(xhr.responseText,"text/html"),
src = xmlDoc.querySelector('iframe').src;
uw.srcs=src;
ifr.src=src;
ifr.onload=async function(){
await sleep(1000);//等待ifr的ajax加载
uw.strs+=ifr.contentDocument.querySelector('a').href+'\n';
}
await sleep(2000);//等待ifr加载
if(index<len) {
Swal.fire('正在加载第'+index+'个iframe');
Swal.showLoading()
return xhrForSrc(index);
}
else {
// cl(srcs);
GM.setClipboard(uw.strs)
Swal.fire(`已复制`);
return;
}
};
xhr.send(null)
})(0)//从names起
});
function sleep(time){
return new Promise((resolve) => setTimeout(resolve, time));
}
河北偏北 发表于 2024-6-18 08:24
复制完成后怎么下载?
在迅雷里面新建任务,粘贴链接,即可下载 挂到greasyfork不行吗?这样比较方便{:1_887:} 感谢楼主分享,确实需要这个功能 ikunkunkun 发表于 2024-6-17 17:57
挂到greasyfork不行吗?这样比较方便
现在不太在greasyfork那边更新了,代码需要维护 尴尬,我不会改 感谢分享这么实用的干货,确实可以批量下载 下载试试。谢谢分享。 蓝奏云下载很方便,感谢分享
感谢楼主分享,确实需要这个功能 复制完成后怎么下载?