// ==UserScript== // @name LinkSwift小增强版 // @namespace github.com/hmjz100 // @version 1.1.5 // @author Hmjz100、油小猴 // @icon data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjggMTI4Ij48cGF0aCBkPSJNMTAzLjYgMTA3LjRjMy41LTIuMiA4LjktNi4xIDEzLjgtMTIuNXM3LjMtMTIuNSA4LjUtMTYuNWMuNS0xLjcgMi4yLTcuNSAyLjItMTQuNyAwLTEwLjEtMy4zLTI1LjEtMTUuNC0zNi44LTE0LjUtMTQtMzIuMS0xNC4zLTM1LjctMTQuMy04IDAtMTUuNyAxLjktMjIuNiA1LjJDNDQgMjMgMzUuNyAzMS40IDMwLjggNDEuN2MtMS4zIDIuOC00IDQuNy03LjEgNS00IC4zLTcuNSA0LjQtOC45IDkuNi0uNSAxLjktMS42IDMuNS0zLjEgNC43QzQuNCA2Ni44IDAgNzUuNyAwIDg1YzAgNi44IDIuMyAxMy4xIDYuMSAxOC4yIDUuNSA3LjQgMTQuMiAxMi4yIDI0IDEyLjJoNDcuMWM0LjQgMCAxMS0uNSAxOC4zLTMuNSAzLjItMS40IDUuOS0zIDguMS00LjV6IiBmaWxsPSIjQTA5OUYwIi8+PHBhdGggZD0iTTExOS44IDY0LjNjLjEtMTcuMS0xMC40LTI4LTEyLjUtMzAuMUM5NSAyMi4xIDc5LjkgMjEuOCA3Ni45IDIxLjhjLTE3LjYgMC0zMy4zIDEwLjUtMzkuOSAyNi43LS42IDEuMy0xLjggMi4zLTMuNCAyLjNoLS40Yy01LjggMC0xMC42IDQuOC0xMC42IDEwLjd2LjVjMCAxLjQtLjggMi42LTEuOSAzLjNDMTMuNCA2OSA4LjggNzYuOCA4LjggODVjMCAxMi4yIDkuOSAyMi4zIDIyLjIgMjIuM2g0NS4yYzMuNi0uMSAxNy42LS45IDI5LjYtMTIgMi45LTIuOCAxMy45LTEzLjcgMTQtMzF6IiBmaWxsPSIjNTc0QUI4Ii8+PHBhdGggZD0iTTExMC44IDU3LjRsLjIgMy4zYzAgMS4zLTEuMSAyLjQtMi4zIDIuNC0xLjMgMC0yLjMtMS4xLTIuMy0yLjRsLS4xLTIuOHYtLjNjMC0xLjIuOS0yLjIgMi4xLTIuM2guM2MuNyAwIDEuMy4zIDEuNy43LS4yLjEuMy41LjQgMS40em0tMy4zLTEwLjNjMCAxLjItMSAyLjMtMi4yIDIuM2gtLjFjLS44IDAtMS42LS41LTItMS4yLTQuNi04LjMtMTMuMy0xMy41LTIyLjgtMTMuNS0xLjIgMC0yLjMtMS0yLjMtMi4ydi0uMWMwLTEuMiAxLTIuMyAyLjItMi4zaC4xYTMwLjM3IDMwLjM3IDAgMCAxIDE1LjggNC40YzQuNiAyLjggOC40IDYuOCAxMS4xIDExLjUuMS4zLjIuNy4yIDEuMXpNODguMyA3My44TDczLjUgOTMuMmMtMS41IDEuOS0zLjUgMy4xLTUuNyAzLjVoLS4yYy0uNC4xLS44LjEtMS4yLjEtLjYgMC0xLjEtLjEtMS42LS4yLTIuMi0uNC00LjItMS43LTUuNi0zLjVMNDQuMyA3My45Yy0yLTIuNi0yLjUtNS40LTEuNC03LjcuMS0uMS4xLS4yLjItLjIgMS4yLTIgMy41LTMuMiA2LjQtMy4yaDYuNnYtNS43YzAtNi44IDQuNy0xMiAxMC45LTEyIDQuOCAwIDguNSAyLjYgMTAuMyA3LjIuNSAxLjMtLjIgMi43LTEuNSAzLjJzLTIuOC0uMS0zLjMtMS40Yy0xLjEtMi43LTIuOS00LTUuNS00LTMuNSAwLTYgMy02IDd2OC4xYzAgLjUtLjIgMS0uNiAxLjQtLjYuNy0xLjcgMS4xLTIuNiAxLjFoLTguNGMtMS4zIDAtMiAuNC0yLjEuNy0uMi40IDAgMS4zLjkgMi40TDYzLjEgOTBjLjkgMS4yIDIuMSAxLjggMy4zIDEuOHMyLjMtLjYgMy4xLTEuN2wxNC44LTE5LjNjLjktMS4xIDEuMS0yIC45LTIuNC0uMi0uMy0uOS0uNy0yLjEtLjdoLTcuNmMtLjkgMC0xLjctLjUtMi4xLTEuMi0uMy0uNC0uNC0uOC0uNC0xLjMgMC0xLjQgMS4xLTIuNSAyLjUtMi41aDcuNmMzLjEgMCA1LjUgMS4zIDYuNiAzLjVsLjMuN2MuNyAyLjEuMSA0LjYtMS43IDYuOXoiIGZpbGw9IiNmZmYiLz48L3N2Zz4= // @description (。>ᴗ•)✧《也许同类型中最好用?》系列 - 一个基于 JavaScript 的网盘文件下载地址获取工具✨,基于【网盘直链下载助手】修改 | 支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘 / 迅雷云盘 / 光鸭云盘 / 夸克网盘 / UC网盘 / 123云盘 九大网盘 | 开源・自用・去广 | 改界面・添功能・修Bug | 既超越原版,亦是同类中最好用版本!👋 // @description:zh-CN (。>ᴗ•)✧《也许同类型中最好用?》系列 - 一个基于 JavaScript 的网盘文件下载地址获取工具✨,基于【网盘直链下载助手】修改 | 支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘 / 迅雷云盘 / 光鸭云盘 / 夸克网盘 / UC网盘 / 123云盘 九大网盘 | 开源・自用・去广 | 改界面・添功能・修Bug | 既超越原版,亦是同类中最好用版本!👋 // @description:zh-TW (。>ᴗ•)✧《也許同類型中最好用?》系列 - 一個基於 JavaScript 的網盤檔案下載地址獲取工具✨,基於【網盤直鏈下載助手】改編 | 支援 百度網盤 / 阿里雲盤 / 中國移動雲盤 / 天翼雲盤 / 迅雷雲盤 / 光鴨雲盤 / 夸克網盤 / UC網盤 / 123雲盤 九大平台 | 開源・自用・除廣 | 改介面・擴功能・修Bug | 既超越原版,亦是同類中最好用版本!👋 // @description:zh-HK (。>ᴗ•)✧《也許同類型中最好用?》系列 - 一個基於 JavaScript 的網盤檔案下載地址獲取工具✨,基於【網盤直鏈下載助手】改編 | 支援 百度網盤 / 阿里雲盤 / 中國移動雲盤 / 天翼雲盤 / 迅雷雲盤 / 光鴨雲盤 / 夸克網盤 / UC網盤 / 123雲盤 九大平台 | 開源・自用・除廣 | 改介面・擴功能・修Bug | 既超越原版,亦是同類中最好用版本!👋 // @copyright © 2022 hmjz100 // @license AGPL-3.0-or-later // @source https://github.com/hmjz100/LinkSwift/ // @website https://github.com/hmjz100/LinkSwift/ // @homepageURL https://github.com/hmjz100/LinkSwift/ // @homepage https://github.com/hmjz100/LinkSwift/ // @supportURL https://github.com/hmjz100/LinkSwift/issues // @require https://unpkg.com/jquery@3.6.0/dist/jquery.min.js // @require https://unpkg.com/sweetalert2@11.4.8/dist/sweetalert2.min.js // @resource SwalLigt https://unpkg.com/sweetalert2@11.4.8/dist/sweetalert2.min.css // @resource SwalDark https://unpkg.com/@sweetalert2/theme-dark@5.0.26/dark.min.css // @require https://unpkg.com/js-md5@0.7.3/build/md5.min.js // @run-at document-start // @match *://pan.baidu.com/disk/home* // @match *://yun.baidu.com/disk/home* // @match *://pan.baidu.com/disk/timeline* // @match *://yun.baidu.com/disk/timeline* // @match *://pan.baidu.com/disk/main* // @match *://yun.baidu.com/disk/main* // @match *://pan.baidu.com/youth/pan/main* // @match *://yun.baidu.com/youth/pan/main* // @match *://pan.baidu.com/disk/base* // @match *://yun.baidu.com/disk/base* // @match *://pan.baidu.com/disk/timeline* // @match *://yun.baidu.com/disk/timeline* // @match *://pan.baidu.com/pfile/* // @match *://yun.baidu.com/pfile/* // @match *://pan.baidu.com/s/* // @match *://pan.baidu.com/aipan/* // @match *://yun.baidu.com/s/* // @match *://yun.baidu.com/aipan/* // @match *://pan.baidu.com/share/* // @match *://yun.baidu.com/share/* // @match *://pan.baidu.com/embed/* // @match *://yun.baidu.com/embed/* // @match *://openapi.baidu.com/* // @match *://www.aliyundrive.com/s/* // @match *://www.aliyundrive.com/drive* // @match *://www.alipan.com/s/* // @match *://www.alipan.com/drive* // @match *://yun.139.com/* // @match *://caiyun.139.com/* // @match *://cloud.189.cn/web/* // @match *://pan.xunlei.com/* // @match *://www.guangyapan.com/* // @match *://pan.quark.cn/* // @match *://drive.uc.cn/* // @match *://*.123pan.com/* // @match *://*.123pan.cn/* // @match *://*.123684.com/* // @match *://*.123865.com/* // @match *://*.123952.com/* // @match *://*.123912.com/* // @connect * // @connect localhost // @connect baidu.com // @connect baidupcs.com // @connect aliyundrive.com // @connect aliyundrive.net // @connect alipan.com // @connect alicloudccp.com // @connect aliyundrive.cloud // @connect 139.com // @connect cmecloud.cn // @connect 189.cn // @connect xunlei.com // @connect guangyapan.com // @connect guangyacdn.com // @connect quark.cn // @connect uc.cn // @connect 123pan.com // @connect 123pan.cn // @connect 123684.com // @connect 123865.com // @connect 123952.com // @connect 123912.com // @connect cjjd19.com // @match *://*.lanzou.com/* // @match *://*.lanzoux.com/* // @match *://*.woozooo.com/* // @match *://*.weiyun.com/* // @match *://*.jianguoyun.com/* // @match *://*.cowtransfer.com/* // @match *://*.wenshushu.cn/* // @match *://*.1drv.ms/* // @match *://*.drive.google.com/file/* // @connect lanzou.com // @connect lanzoux.com // @connect woozooo.com // @connect weiyun.com // @connect jianguoyun.com // @connect cowtransfer.com // @connect wenshushu.cn // @connect onedrive.live.com // @connect 1drv.ms // @connect googleapis.com // @connect googleusercontent.com // @connect drive.google.com // @grant unsafeWindow // @grant window.close // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @grant GM_setValue // @grant GM_getValue // @grant GM_deleteValue // @grant GM_openInTab // @grant GM_registerMenuCommand // @grant GM_getResourceText // @compatible Chrome // @compatible Edge // @compatible Firefox // @compatible Safari // @compatible Opera // @early-start // ==/UserScript== /** * @name LinkSwift * @template (改)网盘直链下载助手 * @author 油小猴 * @author hmjz100 * @namespace github.com/hmjz100 * @description 一个基于 JavaScript 盘的文件下载地址获取工具 支持 百度网盘/阿里云盘/中国移动云盘/天翼云盘/迅雷云盘/夸克网盘/UC网盘/123云盘 九大网盘 代码改自 “网盘直链下载助手”,作者油小猴 * @version 1.1.5 * @license AGPL-3.0-or-later * @see {@link https://github.com/hmjz100/LinkSwift/ Github 仓库} */ (function linkSwift($) { // 严格模式,确保代码安全执行,不越界 "use strict"; // unsafeWindow 检测,适用于 Via 这类无 unsafeWindow 的浏览器 if (typeof (unsafeWindow) === "undefined") window.unsafeWindow = window; // 重复执行检测,适用于部分浏览器;出自 “Via 轻插件”,作者谷花泰 const key = encodeURIComponent("LinkSwift:主代码"); if (window[key]) return; window[key] = true; // 全局参数 const mount = idontknow("LinkSwift"); const info = { author: GM_info.script?.author, name: GM_info.script?.name, version: (GM_info.script?.version || "1.1.5"), icon: (GM_info.script?.icon || "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjggMTI4Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImdvbGRHcmFkaWVudCIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCUiIHN0eWxlPSJzdG9wLWNvbG9yOiNGRkY1OUQ7c3RvcC1vcGFjaXR5OjEiLz48c3RvcCBvZmZzZXQ9IjUwJSIgc3R5bGU9InN0b3AtY29sb3I6I0ZGRDcwMDtzdG9wLW9wYWNpdHk6MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I0ZCQzAyRDtzdG9wLW9wYWNpdHk6MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYuNCwgLTIpIHNjYWxlKDAuOSkiPjxwYXRoIGQ9Ik0xMDMuNiAxMDcuNGMzLjUtMi4yIDguOS02LjEgMTMuOC0xMi41czcuMy0xMi41IDguNS0xNi41Yy41LTEuNyAyLjItNy41IDIuMi0xNC43IDAtMTAuMS0zLjMtMjUuMS0xNS40LTM2LjgtMTQuNS0xNC0zMi4xLTE0LjMtMzUuNy0xNC4zLTggMC0xNS43IDEuOS0yMi42IDUuMkM0NCAyMyAzNS43IDMxLjQgMzAuOCA0MS43Yy0xLjMgMi44LTQgNC43LTcuMSA1LTQgLjMtNy41IDQuNC04LjkgOS42LS41IDEuOS0xLjYgMy41LTMuMSA0LjdDNC40IDY2LjggMCA3NS43IDAgODVjMCA2LjggMi4zIDEzLjEgNi4xIDE4LjIgNS41IDcuNCAxNC4yIDEyLjIgMjQgMTIuMmg0Ny4xYzQuNCAwIDExLS41IDE4LjMtMy41IDMuMi0xLjQgNS45LTMgOC4xLTQuNXoiIGZpbGw9IiNBMDk5RjAiLz48cGF0aCBkPSJNMTE5LjggNjQuM2MuMS0xNy4xLTEwLjQtMjgtMTIuNS0zMC4xQzk1IDIyLjEgNzkuOSAyMS44IDc2LjkgMjEuOGMtMTcuNiAwLTMzLjMgMTAuNS0zOS45IDI2LjctLjYgMS4zLTEuOCAyLjMtMy40IDIuM2gtLjRjLTUuOCAwLTEwLjYgNC44LTEwLjYgMTAuN3YuNWMwIDEuNC0uOCAyLjYtMS45IDMuM0MxMy40IDY5IDguOCA3Ni44IDguOCA4NWMwIDEyLjIgOS45IDIyLjMgMjIuMiAyMi4zaDQ1LjJjMy42LS4xIDE3LjYtLjkgMjkuNi0xMiAyLjktMi44IDEzLjktMTMuNyAxNC0zMXoiIGZpbGw9IiM1NzRBQjgiLz48cGF0aCBkPSJNMTEwLjggNTcuNGwuMiAzLjNjMCAxLjMtMS4xIDIuNC0yLjMgMi40LTEuMyAwLTIuMy0xLjEtMi4zLTIuNGwtLjEtMi44di0uM2MwLTEuMi45LTIuMiAyLjEtMi4zaC4zYy43IDAgMS4zLjMgMS43LjctLjIuMS4zLjUuNCAxLjR6bS0zLjMtMTAuM2MwIDEuMi0xIDIuMy0yLjIgMi4zaC0uMWMtLjggMC0xLjYtLjUtMi0xLjItNC42LTguMy0xMy4zLTEzLjUtMjIuOC0xMy41LTEuMiAwLTIuMy0xLTIuMy0yLjJ2LS4xYzAtMS4yIDEtMi4zIDIuMi0yLjNoLjFhMzAuMzcgMzAuMzcgMCAwIDEgMTUuOCA0LjRjNC42IDIuOCA4LjQgNi44IDExLjEgMTEuNS4xLjMuMi43LjIgMS4xek04OC4zIDczLjhMNzMuNSA5My4yYy0xLjUgMS45LTMuNSAzLjEtNS43IDMuNWgtLjJjLS40LjEtLjguMS0xLjIuMS0uNiAwLTEuMS0uMS0xLjYtLjItMi4yLS40LTQuMi0xLjctNS42LTMuNUw0NC4zIDczLjljLTItMi42LTIuNS01LjQtMS40LTcuNy4xLS4xLjEtLjIuMi0uMiAxLjItMiAzLjUtMy4yIDYuNC0zLjJoNi42di01LjdjMC02LjggNC43LTEyIDEwLjktMTIgNC44IDAgOC41IDIuNiAxMC4zIDcuMi41IDEuMy0uMiAyLjctMS41IDMuMnMtMi44LS4xLTMuMy0xLjRjLTEuMS0yLjctMi45LTQtNS41LTQtMy41IDAtNiAzLTYgN3Y4LjFjMCAuNS0uMiAxLS42IDEuNC0uNi43LTEuNyAxLjEtMi42IDEuMWgtOC40Yy0xLjMgMC0yIC40LTIuMS43LS4yLjQgMCAxLjMuOSAyLjRMNjMuMSA5MGMuOSAxLjIgMi4xIDEuOCAzLjMgMS44czIuMy0uNiAzLjEtMS43bDE0LjgtMTkuM2MuOS0xLjEgMS4xLTIgLjktMi40LS4yLS4zLS45LS43LTIuMS0uN2gtNy42Yy0uOSAwLTEuNy0uNS0yLjEtMS4yLS4zLS40LS40LS44LS40LTEuMyAwLTEuNCAxLjEtMi41IDIuNS0yLjVoNy42YzMuMSAwIDUuNSAxLjMgNi42IDMuNWwuMy43Yy43IDIuMS4xIDQuNi0xLjcgNi45eiIgZmlsbD0iI2ZmZiIvPjwvZz48Zz48cGF0aCBkPSJNMCAxMDAgUTY0IDExNSAxMjggMTAwIEwxMjggMTI4IEwwIDEyOCBaIiBmaWxsPSIjRDMyRjJGIi8+PHBhdGggZD0iTTAgMTAwIFE2NCAxMTUgMTI4IDEwMCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJ1cmwoI2dvbGRHcmFkaWVudCkiIHN0cm9rZS13aWR0aD0iMiIvPjx0ZXh0IHg9IjY0IiB5PSIxMjEiIGZvbnQtZmFtaWx5PSJzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWYiIGZvbnQtd2VpZ2h0PSI5MDAiIGZvbnQtc2l6ZT0iMTIiIGZpbGw9InVybCgjZ29sZEdyYWRpZW50KSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9InRleHQtc2hhZG93OiAwcHggMXB4IDJweCByZ2JhKDAsMCwwLDAuMyk7Ij7liIYg5LiNIOi1t+OAgOe6ryDpnaAg54ixPC90ZXh0PjwvZz48L3N2Zz4="), mhandler: GM_info.scriptHandler, mversion: GM_info.version, }; const $doc = $(document); const temp = { mount: $(`.${mount}`), main: {}, page: "", mode: [], files: [], glinks: [], color: "", request: {}, downing: {}, colored: false, swalDefault: { position: "center", heightAuto: false, scrollbarPadding: false, confirmButtonText: ` 确认`, denyButtonText: ` 拒绝`, cancelButtonText: ` 取消` }, terminalType: { wc: "Microsoft Windows 命令提示符", wp: "Microsoft Windows PowerShell", lt: "Linux 终端", ls: "Linux Shell", mt: "Apple MacOS 终端" } }; /** * SweetAlert2 的 Toast 指示框基础配置 * @author 油小猴 * @author hmjz100 * @description 创建一个全局通用的 Toast 指示框实例,支持自动关闭、鼠标悬停暂停、右上角弹出等特性。 * * @type{Sweetalert2.Toast} */ const toast = Swal.mixin({ toast: true, position: "top-end", showConfirmButton: false, timer: 5000, timerProgressBar: true, showCloseButton: true, didOpen(toast) { toast.addEventListener("mouseenter", () => { Swal.stopTimer(); }); toast.addEventListener("mouseleave", () => { Swal.resumeTimer(); }); } }); /** * 消息提示工具类 * @author 油小猴 * @description 提供统一的提示信息展示方法,基于 SweetAlert2 的 Toast 实现; * 包含 success / error / warning / info / question 等类型。 */ const message = { success(text) { toast.fire({ title: text, icon: "success" }); }, error(text) { toast.fire({ title: text, icon: "error" }); }, warning(text) { toast.fire({ title: text, icon: "warning" }); }, info(text) { toast.fire({ title: text, icon: "info" }); }, question(text) { toast.fire({ title: text, icon: "question" }); } }; /** * 基础配置集合 * @author 油小猴 * @author hmjz100 */ const config = { base: { num: "865746", license: "AGPL3", service: { account: "https://pic.rmb.bdstatic.com/bjh/8b9e14345b3cdf96aedac2f3971adcb02681.png" }, dom: { footer: `o(≧▽≦)o 十分感谢您的支持!来给此项目一个 Star 吧~`, method: { api: { title: "API 下载", footer: `

适用于 IDMNDM 以及浏览器自带下载

`, enhance: "通过脚本管理器的跨域请求功能下载文件多个分片,在内存聚合为 blob 地址后,下载文件。

此方法能够向服务器提供正确的请求头,可自动满足部分网盘的请求头要求,而无需手动设置;
支持多线程、智能多分片,可在当前页面显示预估剩余时间、下载进度、速度;

浏览器对此方法的下载线程与文件大小(2GB 内,可能更小)以及系统内存有限制!
下载超过限制的大文件时,进度可能不到 100% 就会导致浏览器卡顿!
因此,非必要情况(例如系统环境无法安装程序)下,不建议使用此功能!", normal: "通过浏览器直接访问下载地址来下载文件。

此方法无法向服务器提供正确的请求头!所以在服务器对请求头有限制的情况下可能会失败!
点击后需等待浏览器弹出提示才可点击下个下载,否则只会下载后者。适用于支持 iframe 的浏览器", idm: "通过从 IDM 扩展的捕获方法,将下载地址“捕获”给 IDM 使其弹框;

此方法能够向服务器提供正确的请求头,可自动满足部分网盘的请求头要求,而无需手动设置;
理论上仅适用于版本较新的 IDM,使用前请确保您已经配置好 IDM 服务参数。" }, aria2: { title: "Aria2 下载", footer: `

RPC 适用于 MotrixAria2 ToolsAriaNgGUI

命令行适用于 XDownLinux Shell 命令行

`, manager: { youxiaohou: "访问原作者的 Aria2 管理页面以查看下载任务,功能较少", ariang: "访问 AriaNg 的官方 Demo 以查看下载任务,功能较多" } }, curl: { title: "cURL 下载", footer: `

适用于 Windows,Linux,MacOS 终端

` }, bitcomet: { title: "比特彗星下载", footer: `

适用于 比特彗星

`, normal: "点击打开 BC 地址以手动调起比特彗星下载,右键可复制 BC 地址", sendto: "除非 BC 地址无法调起比特彗星,否则不建议使用此方式

由于比特彗星内置的远程下载 Web API 服务代码存在缺陷,请求可能会随机出现“发送失败 - 服务器返回空请求”错误,实际上客户端已成功开始下载
由于脚本无法准确判断请求是否真正成功,即使出现错误,也会提示“成功”" }, abdm: { title: "ABDM 下载", footer: `

适用于 AB Download Manager

` } }, copy: { name: "点击复制文件名", link: "点击复制下载地址", curl: "点击复制 cURL 命令行", aria2: "Aria2 没启用 RPC?点击复制 Aria2 命令行", bitcomet: "点击打开 BC 地址以手动调起比特彗星下载,右键可复制 BC 地址", mirrors: "点击复制镜像地址", all: { link: "点击复制全部下载地址", curl: "点击复制全部 cURL 命令行", aria2: "Aria2 没启用 RPC?点击复制全部 Aria2 命令行", bitcomet: "点击复制全部 BC 地址,可粘贴到比特彗星中下载" } }, themes: [ { color: "#09AAFF", name: "度盘|经典蓝" }, { color: "#2594ed", name: "哔哩|宝石蓝" }, { color: "#3181f9", name: "移动|彩云蓝" }, { color: "#0d53ff", name: "夸克|极简蓝" }, { color: "#637dff", name: "度里叁|霞光紫" }, { color: "#18a497", name: "OpenAI|经典青" }, { color: "#32ccbc", name: "果核|碧波绿" }, { color: "#8bc24a", name: "哔哩|早苗绿" }, { color: "#518c17", name: "度盘|盎然绿" }, { color: "#2271b1", name: "文派|默认蓝" }, { color: "#ff679a", name: "哔哩|少女粉" }, { color: "#f969a5", name: "度盘|幸会粉" }, { color: "#574AB8", name: "度盘|星空紫" }, { color: "#9c28b1", name: "哔哩|罗兰紫" }, { color: "#b673ab", name: "度盘|物语紫" }, { color: "#f44236", name: "哔哩|高能红" }, { color: "#cc3235", name: "度盘|平安红" }, { color: "#ff6800", name: "光鸭|默认橙" }, { color: "#ed944b", name: "度盘|周年橙" }, { color: "#fec107", name: "哔哩|咸蛋黄" }, { color: "#f8d800", name: "果核|柠檬黄" }, { color: "#0396ff", name: "果核|默认蓝" }, { color: "#f6416c", name: "果核|玫瑰红" }, { color: "#bca280", name: "度盘|午后棕" }, { color: "#59524c", name: "文派|咖啡灰" } ] }, icon: { idm: "data:image/png;base64,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" } }, $baidu: { api: { ua: { downloadLink: "pan.baidu.com" }, getAccessToken: "https://openapi.baidu.com/oauth/2.0/authorize?response_type=token&scope=basic,netdisk&client_id=omiOnr2tYnN9vSyDErcVFWpPU2mZA7YO&redirect_uri=oob&confirm_login=0", getLink: "https://pan.baidu.com/rest/2.0/xpan/multimedia?method=filemetas&dlink=1", getFiles: "https://pan.baidu.com/rest/2.0/xpan/file?method=list&showempty=1", getShareLink: "https://pan.baidu.com/api/sharedownload?channel=chunlei&clienttype=0&web=1&app_id=250528", getShareSign: "https://pan.baidu.com/share/tplconfig?fields=sign,timestamp&channel=chunlei&web=1&app_id=250528&clienttype=0&view_mode=1" // getShareFiles: "https://pan.baidu.com/rest/2.0/xpan/share?method=list&showempty=1" }, mount: { home: ".frame-main>div>div>div>div:has(.g-dropdown-button.g-new-create)", main: ".wp-s-agile-tool-bar__header", share: ".module-share-top-bar .x-button-box .g-dropdown-button.tools-more" }, dom: { enhance: `+
此方式可以自动设置用户代理(UA),然后下载。
此方式的下载请求可能会旧版 IDM 捕获。`, normal: `+
此方式无法下载超过 50MB 的文件,若超过点击会无反应(服务器 403)。
此方式的下载请求可能会被 IDM 捕获。`, copy: `注:此服务直接访问超过 50MB 文件的直链会导致服务器回报 403 错误
如需访问,请修改用户代理(UA)为 "pan.baidu.com"` } }, $aliyun: { api: { getLink: `https://${location.host.replace("www", "api")}/v2/file/get_download_url`, getShareLink: `https://${location.host.replace("www", "api")}/v2/file/get_share_link_download_url` }, mount: { home: `[class^="header--"]>[class^="actions--"]`, share: `[class^="banner--"]>[class^="right--"]`, list: `[class^="node-list-table-view--"]`, grid: `[class^="node-list-grid-view--"]`, switch: `[class^="switch-wrapper--"]` }, dom: { enhance: `+
此方式可以自动设置 Referer,然后下载。
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。`, copy: `注:此服务直接访问直链会导致服务器回报 403 错误
如需访问,请修改 Referer 为 "https://${location.host}/"`, filename: `注:此服务在下载高峰期时可能不会向客户端回报文件名,下载时需要复制文件名。` } }, $mcloud: { api: { getLink: "https://personal-kd-njs.yun.139.com/hcy/file/getDownloadUrl" }, mount: { home: ".top_button", share: ".top-btns" }, dom: { enhance: `+
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } }, $tcloud: { api: { getAccessToken: "https://api.cloud.189.cn/open/oauth2/ssoH5.action", getLink: "https://api.cloud.189.cn/open/file/getFileDownloadUrl.action" }, mount: { home: "[class*=\"FileHead_file-head-left\"]", share: ".nav-opea" }, dom: { enhance: `+
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } }, $xunlei: { api: { mirror: [ "vod0780-aliyun04-vip-lixian.xunlei.com", "vod0781-aliyun04-vip-lixian.xunlei.com", "vod3379-aliyun04-vip-lixian.xunlei.com", "vod3429-aliyun04-vip-lixian.xunlei.com", "vod3459-aliyun04-vip-lixian.xunlei.com", "vod3533-aliyun04-vip-lixian.xunlei.com", "vod4252-aliyun04-vip-lixian.xunlei.com", "vod4253-aliyun04-vip-lixian.xunlei.com", "vod4320-aliyun04-vip-lixian.xunlei.com", "vod4321-aliyun04-vip-lixian.xunlei.com", "vod0555-aliyun06-vip-lixian.xunlei.com", "vod0556-aliyun06-vip-lixian.xunlei.com", "vod1284-aliyun06-vip-lixian.xunlei.com", "vod1285-aliyun06-vip-lixian.xunlei.com", "vod1363-aliyun06-vip-lixian.xunlei.com", "vod1372-aliyun06-vip-lixian.xunlei.com", "vod1629-aliyun06-vip-lixian.xunlei.com", "vod1630-aliyun06-vip-lixian.xunlei.com", "vod1703-aliyun06-vip-lixian.xunlei.com", "vod1704-aliyun06-vip-lixian.xunlei.com", "vod1844-aliyun06-vip-lixian.xunlei.com", "vod0254-aliyun08-vip-lixian.xunlei.com", "vod0255-aliyun08-vip-lixian.xunlei.com", "vod0256-aliyun08-vip-lixian.xunlei.com", "vod0257-aliyun08-vip-lixian.xunlei.com", "vod0261-aliyun08-vip-lixian.xunlei.com", "vod0262-aliyun08-vip-lixian.xunlei.com", "vod0263-aliyun08-vip-lixian.xunlei.com", "vod0264-aliyun08-vip-lixian.xunlei.com", "vod0759-aliyun08-vip-lixian.xunlei.com", "vod0760-aliyun08-vip-lixian.xunlei.com", "vod9410-aliyun08-vip-lixian.xunlei.com", "vod9411-aliyun08-vip-lixian.xunlei.com", "vod9412-aliyun08-vip-lixian.xunlei.com", "vod0080-b02-vip-lixian.xunlei.com", "vod0432-b02-vip-lixian.xunlei.com", "vod0531-b02-vip-lixian.xunlei.com", "vod0532-b02-vip-lixian.xunlei.com", "vod0533-b02-vip-lixian.xunlei.com", "vod0534-b02-vip-lixian.xunlei.com", "vod0537-b02-vip-lixian.xunlei.com", "vod0563-b02-vip-lixian.xunlei.com", "vod0565-b02-vip-lixian.xunlei.com", "vod0566-b02-vip-lixian.xunlei.com", "vod0568-b02-vip-lixian.xunlei.com", "vod0571-b02-vip-lixian.xunlei.com", "vod0572-b02-vip-lixian.xunlei.com", "vod0573-b02-vip-lixian.xunlei.com", "vod0595-b02-vip-lixian.xunlei.com", "vod0596-b02-vip-lixian.xunlei.com", "vod0597-b02-vip-lixian.xunlei.com", "vod0598-b02-vip-lixian.xunlei.com", "vod0636-b02-vip-lixian.xunlei.com", "vod0637-b02-vip-lixian.xunlei.com", "vod0638-b02-vip-lixian.xunlei.com", "vod0639-b02-vip-lixian.xunlei.com", "vod0640-b02-vip-lixian.xunlei.com", "vod0641-b02-vip-lixian.xunlei.com", "vod0642-b02-vip-lixian.xunlei.com", "vod0643-b02-vip-lixian.xunlei.com", "vod0644-b02-vip-lixian.xunlei.com", "vod0645-b02-vip-lixian.xunlei.com", "vod0646-b02-vip-lixian.xunlei.com", "vod0647-b02-vip-lixian.xunlei.com", "vod0648-b02-vip-lixian.xunlei.com", "vod0649-b02-vip-lixian.xunlei.com", "vod0650-b02-vip-lixian.xunlei.com", "vod0651-b02-vip-lixian.xunlei.com", "vod0652-b02-vip-lixian.xunlei.com", "vod0653-b02-vip-lixian.xunlei.com", "vod0654-b02-vip-lixian.xunlei.com", "vod0725-b02-vip-lixian.xunlei.com", "vod0726-b02-vip-lixian.xunlei.com", "vod0727-b02-vip-lixian.xunlei.com", "vod0006-b05-vip-lixian.xunlei.com", "vod0009-b05-vip-lixian.xunlei.com", "vod0010-b05-vip-lixian.xunlei.com", "vod0011-b05-vip-lixian.xunlei.com", "vod0012-b05-vip-lixian.xunlei.com", "vod0013-b05-vip-lixian.xunlei.com", "vod0014-b05-vip-lixian.xunlei.com", "vod0043-b05-vip-lixian.xunlei.com", "vod0044-b05-vip-lixian.xunlei.com", "vod0045-b05-vip-lixian.xunlei.com", "vod0051-b05-vip-lixian.xunlei.com", "vod0053-b05-vip-lixian.xunlei.com", "vod0054-b05-vip-lixian.xunlei.com", "vod0055-b05-vip-lixian.xunlei.com", "vod0139-b05-vip-lixian.xunlei.com", "vod0140-b05-vip-lixian.xunlei.com", "vod0141-b05-vip-lixian.xunlei.com", "vod0142-b05-vip-lixian.xunlei.com", "vod0143-b05-vip-lixian.xunlei.com", "vod0349-b05-vip-lixian.xunlei.com", "vod0001-c01-vip-lixian.xunlei.com", "vod0002-c01-vip-lixian.xunlei.com", "vod0003-c01-vip-lixian.xunlei.com", "vod0004-c01-vip-lixian.xunlei.com", "vod0005-c01-vip-lixian.xunlei.com", "vod0070-h01-vip-lixian.xunlei.com", "vod0071-h01-vip-lixian.xunlei.com", "vod0074-h01-vip-lixian.xunlei.com", "vod0075-h01-vip-lixian.xunlei.com", "vod0131-h01-vip-lixian.xunlei.com", "vod0132-h01-vip-lixian.xunlei.com", "vod0153-h01-vip-lixian.xunlei.com", "vod0088-h04-vip-lixian.xunlei.com", "vod0089-h04-vip-lixian.xunlei.com", "vod0090-h04-vip-lixian.xunlei.com", "vod0091-h04-vip-lixian.xunlei.com", "vod0092-h04-vip-lixian.xunlei.com", "vod0093-h04-vip-lixian.xunlei.com", "vod0094-h04-vip-lixian.xunlei.com", "vod0097-h04-vip-lixian.xunlei.com", "vod0098-h04-vip-lixian.xunlei.com", "vod0099-h04-vip-lixian.xunlei.com", "vod0100-h04-vip-lixian.xunlei.com", "vod0101-h04-vip-lixian.xunlei.com", "vod0105-h04-vip-lixian.xunlei.com", "vod0128-h04-vip-lixian.xunlei.com", "vod0129-h04-vip-lixian.xunlei.com", "vod0143-h04-vip-lixian.xunlei.com", "vod0317-h04-vip-lixian.xunlei.com", "vod0318-h04-vip-lixian.xunlei.com", "vod0319-h04-vip-lixian.xunlei.com", "vod0320-h04-vip-lixian.xunlei.com", "vod0003-h05-vip-lixian.xunlei.com", "vod0004-h05-vip-lixian.xunlei.com", "vod0007-h05-vip-lixian.xunlei.com", "vod0008-h05-vip-lixian.xunlei.com", "vod0009-h05-vip-lixian.xunlei.com", "vod0010-h05-vip-lixian.xunlei.com", "vod0012-h05-vip-lixian.xunlei.com", "vod0013-h05-vip-lixian.xunlei.com", "vod0014-h05-vip-lixian.xunlei.com", "vod0017-h05-vip-lixian.xunlei.com", "vod0097-h05-vip-lixian.xunlei.com", "vod0098-h05-vip-lixian.xunlei.com", "vod0099-h05-vip-lixian.xunlei.com", "vod0116-h05-vip-lixian.xunlei.com", "vod0117-h05-vip-lixian.xunlei.com", "vod0121-h05-vip-lixian.xunlei.com", "vod0122-h05-vip-lixian.xunlei.com", "vod0131-h05-vip-lixian.xunlei.com", "vod0145-h05-vip-lixian.xunlei.com", "vod0146-h05-vip-lixian.xunlei.com", "vod0184-h05-vip-lixian.xunlei.com", "vod0185-h05-vip-lixian.xunlei.com", "vod0221-h05-vip-lixian.xunlei.com", "vod0222-h05-vip-lixian.xunlei.com", "vod0223-h05-vip-lixian.xunlei.com", "vod0224-h05-vip-lixian.xunlei.com", "vod0225-h05-vip-lixian.xunlei.com", "vod0227-h05-vip-lixian.xunlei.com", "vod0252-h05-vip-lixian.xunlei.com", "vod0253-h05-vip-lixian.xunlei.com", "vod0254-h05-vip-lixian.xunlei.com", "vod0001-m01-vip-lixian.xunlei.com", "vod0002-m01-vip-lixian.xunlei.com", "vod0003-m01-vip-lixian.xunlei.com", "vod0006-m01-vip-lixian.xunlei.com", "vod0007-m01-vip-lixian.xunlei.com", "vod0008-m01-vip-lixian.xunlei.com", "vod0010-m01-vip-lixian.xunlei.com", "vod0011-m01-vip-lixian.xunlei.com", "vod0012-m01-vip-lixian.xunlei.com", "vod0013-m01-vip-lixian.xunlei.com", "vod0014-m01-vip-lixian.xunlei.com", "vod0019-m01-vip-lixian.xunlei.com", "vod0020-m01-vip-lixian.xunlei.com", "vod0021-m01-vip-lixian.xunlei.com", "vod0022-m01-vip-lixian.xunlei.com", "vod0064-txyun08-vip-lixian.xunlei.com", "vod0065-txyun08-vip-lixian.xunlei.com", "vod0066-txyun08-vip-lixian.xunlei.com", "vod0067-txyun08-vip-lixian.xunlei.com", "vod0068-txyun08-vip-lixian.xunlei.com", "vod0069-txyun08-vip-lixian.xunlei.com", "vod0070-txyun08-vip-lixian.xunlei.com", "vod0340-txyun08-vip-lixian.xunlei.com", "vod0341-txyun08-vip-lixian.xunlei.com", "vod0032-z01-vip-lixian.xunlei.com", "vod0035-z01-vip-lixian.xunlei.com", "vod0036-z01-vip-lixian.xunlei.com", "vod0037-z01-vip-lixian.xunlei.com", "vod0038-z01-vip-lixian.xunlei.com", "vod0039-z01-vip-lixian.xunlei.com", "vod0040-z01-vip-lixian.xunlei.com", "vod0041-z01-vip-lixian.xunlei.com", "vod0042-z01-vip-lixian.xunlei.com", "vod0091-z01-vip-lixian.xunlei.com", "vod0093-z01-vip-lixian.xunlei.com", "vod0131-z01-vip-lixian.xunlei.com", "vod0135-z01-vip-lixian.xunlei.com", "vod0136-z01-vip-lixian.xunlei.com", "vod0146-z01-vip-lixian.xunlei.com", "vod0155-z01-vip-lixian.xunlei.com", "vod0156-z01-vip-lixian.xunlei.com", "vod0167-z01-vip-lixian.xunlei.com", "vod0195-z01-vip-lixian.xunlei.com", "vod0196-z01-vip-lixian.xunlei.com", "vod0281-z01-vip-lixian.xunlei.com" ], getLink: "https://api-pan.xunlei.com/drive/v1/files/", getCaptchaToken: "https://xluser-ssl.xunlei.com/v1/shield/captcha/init", }, mount: { home: `[class*="FileMenu__menus--"], [class*="FileMenu__menu--"]`, share: `[class^="Share__batchActionBox--"]` }, dom: { enhance: `+
此方式可以自动设置文件名,然后下载。
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此服务不会向客户端回报文件名,选用此方式下载需手动重命名文件。
此方式的下载请求不会被 IDM 捕获。`, filename: `注:此服务不会向客户端回报文件名,下载时需要复制文件名。` } }, $guangya: { api: { getLink: "https://api.guangyapan.com/nd.bizuserres.s/v1/get_res_download_url", getShareLink: "https://api.guangyapan.com/nd.bizuserres.s/v1/get_share_download_url", getShareToken: "https://api.guangyapan.com/nd.bizuserres.s/v1/get_share_access_token" }, mount: { home: `#root #app div > div:has(> .ant-btn.ant-btn-primary.ant-btn-color-primary .ant-btn-icon > .swangpan-icon-upload):has(> .ant-btn.ant-btn-default.ant-btn-color-default .ant-btn-icon > .swangpan-icon-addfolder)`, share: `#root #app div > div:has(> .ant-btn.ant-btn-lg .ant-btn-icon > .swangpan-icon-download)` }, dom: { enhance: `+
此方式可以自动设置文件名,然后下载。
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } }, $quark: { api: { ua: { main: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 QuarkPC/6.9.7.761 QuarkCloudDrivePC/6.9.7.761 quark-cloud-drive/2.5.40" }, getLink: "https://drive-pc.quark.cn/1/clouddrive/file/download?pr=ucpro&fr=pc&sys=win32&ve=6.9.7.761", getSocialToken: "https://drive-social-api.quark.cn/1/clouddrive/chat/conv/file/acquire_dl_token?pr=ucpro&fr=pc&sys=win32&ve=6.9.7.761&fr=win&la=zh-CN&ch=pckk%40product_guanwan" }, mount: { home: ".btn-operate .btn-main", share: ".share-btns" }, dom: { enhance: `+
此方式可以自动设置用户代理(UA),然后下载。
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } }, $uc: { api: { ua: { main: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/1.8.8 Chrome/100.0.4896.160 Electron/18.3.5.16-b62cf9c50d Safari/537.36 Channel/ucpan_other_ch", secCh: `"Not=A?Brand";v="99", "Chromium";v="100", "Google Chrome";v="100"` }, getLink: "https://pc-api.uc.cn/1/clouddrive/file/download?pr=UCBrowser&fr=pc&sys=win32&ve=1.8.8" }, mount: { home: ".btn-operate .btn-main", share: ".file-info-share-buttom" }, dom: { enhance: `+
此方式可以自动设置用户代理(UA),然后下载。
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } }, $123pan: { api: { ua: { main: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) 123pan/3.2.3 Chrome/108.0.5359.215 Electron/22.3.27 Safari/537.36 WebView/1.0", os: "123pan/v323(Windows10.0.26200)", version: "323", secCh: `"Not?A_Brand";v="8", "Chromium";v="108"` }, getLink: "https://api.123pan.cn/api/v2/file/download_info", getShareLink: "https://api.123pan.cn/api/v2/share/download/info", }, mount: { home: ".home-operator .home-operator-button-group", share: ".content .content-header-container-wrap .rightInfo, .single-file-sharing-container-content-file-operate" }, dom: { enhance: `+
此方式的下载请求不会被 IDM 捕获。`, normal: `+
此方式的下载请求可能会被 IDM 捕获。` } } } /** * 基础工具集合 * @author 油小猴 * @author hmjz100 */ const base = { /** * 注册 GreaseMonkey-Compatible-Manager 扩展菜单命令 * @author 油小猴 * @author hmjz100 * @description 包含 "设置"、"美化"、"更新" 和 "调试" 四个功能入口 */ registerMenuCommand() { GM_registerMenuCommand("⚙️ 设置", () => { base.showSetting(); }); GM_registerMenuCommand("🍃️ 美化", () => { base.showBeautify(); }); GM_registerMenuCommand("📃 更新", () => { base.showUpdate(); }); GM_registerMenuCommand("🛠️ 调试", () => { base.showDebug(); }); }, /** * 判断 JavaScript 对象类型 * @author 油小猴 * @description 通过 Object.prototype.toString 精确识别对象类型 * @param {*} obj - 待检测对象 * @returns {String} 类型名称(全小写),如:array/number/null/date 等 * @example * isType([]) // => "array" * isType(null) // => "null" */ isType(obj) { return Object.prototype.toString.call(obj).replace(/^\[object (.+)\]$/, "$1").toLowerCase(); }, /** * 获取 GreaseMonkey-Compatible-Manager 存储的值 * @author 油小猴 * @param {String} name - 存储键名 * @returns {*} 存储的值 */ getValue(name) { return GM_getValue(name); }, /** * 设置 GreaseMonkey-Compatible-Manager 存储的值 * @author 油小猴 * @param {String|Array} path - 存储键名或路径数组 * @param {*} value - 要存储的值 */ setValue(path, value) { if (base.isType(path) === "string") { GM_setValue(path, value); return; } const key = path[0]; const obj = this.getValue(key) || {}; let current = obj; for (let i = 1; i < path.length - 1; i++) { const keyPart = path[i]; if (!current[keyPart]) current[keyPart]; current = current[keyPart]; } current[path[path.length - 1]] = value; GM_setValue(key, obj); }, /** * 删除 GreaseMonkey-Compatible-Manager 存储的值 * @author 油小猴 * @param {String|Array} key - 单个键名 */ delValue(key) { return GM_deleteValue(key); }, /** * 从 localStorage 获取存储值 * @description 自动解析 JSON 格式内容 * @author 油小猴 * @param {String} key - 存储键名 * @returns {*} 存储的原始值或解析后的对象 */ getStorage(key) { try { return JSON.parse(localStorage.getItem(key)); } catch { return localStorage.getItem(key); } }, /** * 设置 localStorage 存储值 * @author 油小猴 * @description 自动 `JSON.stringify` `对象` `数组` 类型的数据 * @param {String} key - 存储键名 * @param {*} value - 要存储的值 */ setStorage(key, value) { if (this.isType(value) === "object" || this.isType(value) === "array") { return localStorage.setItem(key, JSON.stringify(value)); } return localStorage.setItem(key, value); }, /** * 删除 localStorage 存储值 * @author 油小猴 * @description 没什么特别的 * @param {String} key - 存储键名 */ delStorage(key) { return localStorage.removeItem(key); }, /** * 剪贴板写入 * @author 油小猴 * @param {String} text - 要复制的文本内容 */ async setClipboard(text) { if (typeof text !== 'string') text = String(text); // 尝试 GreaseMonkey-Compatible-Manager API,这种方式权限最高,通常能绕过浏览器对“必须由用户手势触发”的限制 if (typeof GM_setClipboard === 'function') { try { GM_setClipboard(text, "text"); return true; } catch (e) { base.console.error('无法复制内容到剪贴板:', e); } } // 尝试异步的 GreaseMonkey-Compatible-Manager API if (typeof GM !== 'undefined' && GM.setClipboard) { try { await GM.setClipboard(text, "text"); return true; } catch (e) { base.console.error('无法复制内容到剪贴板:', e); } } // 尝试现代原生 Clipboard API // 注意:此 API 通常要求在安全上下文 (HTTPS) 下运行 if (navigator.clipboard && typeof navigator.clipboard.writeText === 'function') { try { await navigator.clipboard.writeText(text); return true; } catch (e) { base.console.error('无法复制内容到剪贴板:', e); } } // 传统 execCommand('copy') // 虽然被标记为废弃,但在旧浏览器或非 HTTPS 环境下依然是最稳妥的垫片 try { const textArea = document.createElement("textarea"); textArea.value = text; // 防止页面跳动 textArea.style.position = "fixed"; textArea.style.left = "-9999px"; textArea.style.top = "0"; document.body.appendChild(textArea); textArea.focus(); textArea.select(); const successful = document.execCommand('copy'); document.body.removeChild(textArea); if (successful) return true; } catch (e) { base.console.error('无法复制内容到剪贴板:', e); } return false; }, /** * Base64-URI 编码处理 * @author 油小猴 * @author hmjz100 * @description 自动执行 URI 兼容性编码转换 * @param {String} str - 待编码的字符串 * @returns {String} Base64 编码结果字符串 */ encodeBase(str) { try { str = encodeURIComponent(str) } catch { } try { str = unescape(str) } catch { } try { str = btoa(str) } catch { } return str; }, /** * Base64-URI 解码处理 * @author 油小猴 * @author hmjz100 * @description 自动执行 URI 兼容性解码转换 * @param {String} str - Base64 编码字符串 * @returns {String} 解码后的原始字符串 */ decodeBase(str) { try { str = decodeURIComponent(str) } catch { } try { str = atob(str) } catch { } try { str = escape(str) } catch { } try { str = decodeURIComponent(str) } catch { } return str; }, /** * 数字补零格式化 * @author hmjz100 * @description 对 1-9 的数字自动补前导零 * @param {Number} i - 待格式化的数字 * @returns {String} 格式化后的字符串(如"05") */ timeFormat(i) { if (i >= 0 && i <= 9) { return "0" + i; } else { return i; } }, /** * 获取文件扩展名并转为大写 * @author 油小猴 * @param {String} name - 完整文件名 * @returns {String} 大写的文件扩展名(如 `TXT`) */ getExtension(name) { const reg = /(?!\.)\w+$/; if (reg.test(name)) { const match = name.match(reg); return match[0].toUpperCase(); } return ""; }, /** * 文件大小格式化 * @author hmjz100 * @description 自动转换单位到最合适的存储单位(如 `1.2MB`),支持 1000/1024 进制切换 * @param {Number} value - 文件字节大小 * @returns {String} 可读格式的大小描述 */ sizeFormat(value = 0) { const sizeUnitBase = 1024 try { value = Number(value) } catch { } if (typeof value === "number" && !isNaN(value) && value >= 0) { const units = sizeUnitBase === 1024 ? ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"] : ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]; const unitNames = ["字节", "千字节", "兆字节", "吉字节", "太字节", "拍字节", "艾字节", "泽字节", "尧字节"]; if (value === 0) return "0B(字节)"; // 计算单位层级(取整数部分) const index = Math.min( Math.floor(Math.log(value) / Math.log(sizeUnitBase)), units.length - 1 ); const size = value / Math.pow(sizeUnitBase, index); const formattedSize = size % 1 === 0 ? size.toFixed(0) : size.toFixed(2); return `${formattedSize}${unitNames[index]}(${units[index]})`; } return ""; }, /** * 将剩余时间(秒)格式化为可读的时间字符串 * * @param {Number} remainingTimeSeconds 剩余总秒数(支持小数) * @returns {String} 格式化后的时间字符串,包含以下可能格式: * - "X天 HH时:MM分:SS秒"(超过1天) * - "HH时:MM分:SS秒"(超过1小时) * - "MM分:SS秒"(超过1分钟) * - "SS秒"(1分钟内) * - "计算中..."(无效输入时) * * @example * formatRemainingTime(86400) // "1天 00时:00分:00秒" * formatRemainingTime(3661.5) // "01时:01分:01秒" * formatRemainingTime(0) // "即将完成" * formatRemainingTime(-5) // "计算中..." * formatRemainingTime(NaN) // "计算中..." */ rtimeFormat(remainingTimeSeconds) { if (!Number.isFinite(remainingTimeSeconds) || remainingTimeSeconds < 0) { return "计算中..."; } const remainingDays = Math.floor(remainingTimeSeconds / (60 * 60 * 24)); remainingTimeSeconds %= (60 * 60 * 24); const remainingHours = Math.floor(remainingTimeSeconds / (60 * 60)); remainingTimeSeconds %= (60 * 60); const remainingMinutes = Math.floor(remainingTimeSeconds / 60); const remainingSeconds = Math.floor(remainingTimeSeconds % 60); if (remainingDays > 0) { return `${remainingDays}天 ${base.timeFormat(remainingHours)}时:${base.timeFormat(remainingMinutes)}分:${base.timeFormat(remainingSeconds)}秒`; } else if (remainingHours > 0) { return `${base.timeFormat(remainingHours)}时:${base.timeFormat(remainingMinutes)}分:${base.timeFormat(remainingSeconds)}秒`; } else if (remainingMinutes > 0) { return `${base.timeFormat(remainingMinutes)}分:${base.timeFormat(remainingSeconds)}秒`; } else if (remainingSeconds > 0) { return `${remainingSeconds}秒`; } else { return "0秒"; } }, /** * 文件列表排序 * @author 油小猴 * @author hmjz100 * @description 按中文拼音顺序对文件数组进行排序 * @param {Array} arr - 包含文件对象的数组 * @param {String} arr[].filename - 文件名属性(兼容 server_filename) */ sortByName(arr) { arr.sort(() => { return (a, b) => { const p1 = a.filename ? a.filename : a.server_filename; const p2 = b.filename ? b.filename : b.server_filename; return p1.localeCompare(p2, "zh-CN"); }; }); }, /** * 文件名安全处理 * @author 油小猴 * @description 替换非法字符为下划线 * @param {String} name - 原始文件名 * @returns {String} 修正后的安全文件名 */ fixFilename(name) { const replace = /[!?&|`"'*\/:<>\\]/g return name.replace(replace, "_"); }, /** * Cookie 标准化 * @author hmjz100 * @description 将 Cookie 或 Set-Cookie 解析为统一的键值对对象 * @param {String|Array} input - Cookie 字符串或数组 * @param {String} type - 头部键名(如 'cookie' 或 'set-cookie') * @returns {Object} 解析后的键值对对象 */ standCookies(input, type = 'cookie') { if (!input) return {}; const cookies = {}; const lines = Array.isArray(input) ? input : [input]; const isSetCookie = type.includes('set-cookie'); // 拆分可能被逗号合并的多个 Cookie 块 const blocks = lines.flatMap(line => line.split(',')); blocks.forEach(block => { const parts = block.split(';'); if (isSetCookie) { // Set-Cookie,第一项永远是真实的 Cookie 名值对 const mainPair = parts[0].trim(); if (!mainPair.includes('=')) return; const [key, ...valueParts] = mainPair.split('='); const trimmedKey = key.trim(); // 兜底,排除极少数非标准后端把控制属性写在开头的情况 if (/^(path|domain|expires|max-age|samesite|secure|httponly)$/i.test(trimmedKey)) return; cookies[trimmedKey] = valueParts.join('=').trim(); } else { // 普通 Cookie,每一个分号隔开的都是真实的键值对 parts.forEach(part => { if (!part.includes('=')) return; const [key, ...valueParts] = part.split('='); cookies[key.trim()] = valueParts.join('=').trim(); }); } }); return cookies; }, /** * 头标准化 * @author hmjz100 * @description 标准化头键名(大驼峰),同名键转数组,Cookie 类头部格式化为对象 * @param {String|Object} headers - 请求头文本或对象 * @param {Boolean} withServer - 是否添加默认头字段 * @param {Boolean} withOrigin - 是否添加来源头字段 * @param {Boolean} withCookie - 是否格式化 Cookie 字段 * @returns {Object} 标准化后的 Headers */ standHeaders(headers = {}, withServer = true, withOrigin = true, withCookie = false) { if (!headers) return {}; // 统一数据源,转换为纯粹的键值数组 [ [key, value], [key, value] ] const pairs = []; if (typeof headers === 'string') { headers.split(/[\r\n]+/).forEach(line => { if (!line.includes(':')) return; const [key, ...valParts] = line.split(':'); pairs.push([key, valParts.join(':')]); }); } else { for (const key in headers) { const val = headers[key]; // 如果值是纯对象(非数组),转字符串 const value = (typeof val === 'object' && !Array.isArray(val)) ? JSON.stringify(val) : val; pairs.push([key, value]); } } const newHeaders = {}; // 处理大驼峰转换和同名键合并 pairs.forEach(([key, value]) => { const normKey = key.trim().toLowerCase().split("-").map(w => w.charAt(0).toUpperCase() + w.slice(1)).join("-"); const valStr = typeof value === 'string' ? value.trim() : value; if (newHeaders[normKey]) { newHeaders[normKey] = [].concat(newHeaders[normKey], valStr); } else { newHeaders[normKey] = valStr; } }); // 格式化 Cookie 属性 if (withCookie) for (const key in newHeaders) if (key.toLowerCase().includes('cookie')) newHeaders[key] = this.standCookies(newHeaders[key], key.toLowerCase()); return withServer ? { "Accept": "*/*", "User-Agent": navigator.userAgent, ...(withOrigin ? { "Origin": location.origin, "Referer": `${location.origin}/` } : {}), ...newHeaders } : newHeaders; }, /** * Blob 文件下载 * @author 油小猴 * @description 通过创建临时地址实现文件下载 * @param {Blob} blob - 要下载的 Blob 对象 * @param {String} filename - 下载时提示保存的文件名 */ blobDownload(blob, filename) { if (blob instanceof Blob) { const url = URL.createObjectURL(blob); const a = document.createElement("a"); a.href = url; a.download = filename; a.rel = "noopener" a.click(); URL.revokeObjectURL(url); } }, /** * 可跨域 xmlhttpRequest 请求 * @author hmjz100 * @description 封装 `GreaseMonkey-Compatible_xmlhttpRequest` 实现的跨域请求,与原始函数参数相同,支持回调和 await 两种用法 * @param {Object} option - 请求配置对象 * @returns {XMLHttpRequest|Promise} 请求对象实例或 Promise */ xmlHttpRequest(option) { const xmlHttpRequest = (typeof GM_xmlhttpRequest === "function") ? GM_xmlhttpRequest : (typeof GM?.xmlHttpRequest === "function") ? GM.xmlHttpRequest : null; if (!xmlHttpRequest || base.isType(xmlHttpRequest) !== "function") throw new Error("GreaseMonkey 兼容 XMLHttpRequest 不可用。"); return xmlHttpRequest({ withCredentials: true, ...option }); }, /** * 发送 POST 请求 * @author 油小猴 * @author hmjz100 * @description 一般用于请求 API,支持智能格式化数据、智能编码请求数据 * @param {String} url - 请求地址 * @param {Object|String} data - 请求数据 * @param {Object} headers - 请求头配置 * @param {String} [type="json"] - 响应类型(支持 `json`, `blob` 等) * @param {Boolean} [withOrigin=true] - 是否携带跨域信息 * @param {Boolean} [full=false] - 是否返回完整请求信息 * @returns {Promise} 包含响应数据的 `Promise` 对象 */ async post(url, data, headers, type = "json", withOrigin = true, full = false) { let _data = data; if (this.isType(data) === "object" || this.isType(data) === "array") { data = JSON.stringify(data); } else if (this.isType(data) === "urlsearchparams") { _data = Object.fromEntries(data); } headers = this.standHeaders(headers, true, withOrigin); headers = { "Accept": "*/*,application/json;charset=utf-8", ...headers }; let request const promise = new Promise((resolve, reject) => { request = base.xmlHttpRequest({ method: "POST", url, headers, data, responseType: type, anonymous: false, onloadstart: () => { base.console.info("【LinkSwift】Post(start)\n请求地址:" + url + "\n请求数据:", _data, "\n请求头部:", base.standHeaders(headers, false, false, true)); }, onload: (res) => { // 转换 Headers 到 Object const rawHeaders = res.responseHeaders || (request?.getAllResponseHeaders?.() || "") || ""; res.responseHeaders = base.standHeaders(typeof rawHeaders === 'string' ? rawHeaders.trim() : "", false, false, true); if (type === "blob") { base.console.info("【LinkSwift】Post(load) Blob\n请求地址:" + url + "\n请求数据:", _data, "\n请求结果:", res); resolve(res); return; } // 尝试解析响应 if (type === "json") { res.responseDecode = res.responseText; try { res.responseDecode = atob(res.responseDecode) } catch { } try { res.responseDecode = escape(res.responseDecode) } catch { } try { res.responseDecode = decodeURIComponent(res.responseDecode) } catch { } try { res.responseDecode = JSON.parse(res.responseDecode) } catch { } if (res.responseDecode === res.responseText) res.responseDecode = null; if (this.isType(res.response) === "object") res.responseDecode = res.response; } base.console.info("【LinkSwift】Post(load)\n请求地址:" + url + "\n请求数据:", _data, "\n请求头部:", base.standHeaders(headers, false, false, true), "\n请求结果:", res); resolve(full ? res : res.responseDecode ?? res.response ?? res.responseText); }, onerror: (error) => { let msg = "请求失败"; if (error && typeof error === "object") msg += ": " + JSON.stringify(error, null, 2); base.console.error("【LinkSwift】Post(error)\n请求出现错误,可能是网络问题。", error); reject(new Error(msg)); } }); }); if (request) { const methods = Object.getOwnPropertyNames(request).filter(key => typeof request[key] === 'function' && !promise.hasOwnProperty(key) && !['then', 'catch', 'finally'].includes(key)); // 自动收集 request 上的函数属性进行绑定,并能智能排除 Promise 原生方法 methods.forEach(method => { promise[method] = (...args) => request[method](...args); }); // 动态绑定到 Promise } return promise; }, /** * 发送 GET 请求 * @author 油小猴 * @author hmjz100 * @description 一般用于请求 API,支持智能格式化数据 * @param {String} url - 请求地址 * @param {Object} headers - 请求头配置 * @param {String} [type="json"] - 响应类型 * @param {Boolean} [withOrigin=true] - 是否携带跨域信息 * @returns {Promise} 包含响应数据的 `Promise` 对象 */ async get(url, headers, type = "json", withOrigin = true) { headers = this.standHeaders(headers, true, withOrigin); let request const promise = new Promise((resolve, reject) => { request = base.xmlHttpRequest({ method: "GET", url, headers, responseType: type, anonymous: false, onloadstart: () => { base.console.info("【LinkSwift】Get(start)\n请求地址:" + url + "\n请求头部:", base.standHeaders(headers, false, false, true)); }, onload: (res) => { // 转换 Headers 到 Object const rawHeaders = res.responseHeaders || (request?.getAllResponseHeaders?.() || "") || ""; res.responseHeaders = base.standHeaders(typeof rawHeaders === 'string' ? rawHeaders.trim() : "", false, false, true); if (type === "blob") { base.console.info("【LinkSwift】Get(load) Blob\n请求地址:" + url, "\n请求结果:", res); resolve(res); return; } // 尝试解析响应 if (type === "json") { res.responseDecode = res.responseText; try { res.responseDecode = JSON.parse(res.responseDecode) } catch { } if (res.responseDecode === res.responseText) res.responseDecode = null; if (this.isType(res.response) === "object") res.responseDecode = res.response; } base.console.info("【LinkSwift】Get(load)\n请求地址:" + url + "\n请求头部:", headers, "\n请求结果:", res); resolve(res.responseDecode ?? res.response ?? res.responseText); }, onerror: (error) => { let msg = "请求失败"; if (error && typeof error === "object") msg += ": " + JSON.stringify(error, null, 2); base.console.error("【LinkSwift】Get(error)\n请求出现错误,可能是网络问题。", error); reject(new Error(msg)); } }); }); if (request) { const methods = Object.getOwnPropertyNames(request).filter(key => typeof request[key] === 'function' && !promise.hasOwnProperty(key) && !['then', 'catch', 'finally'].includes(key)); // 自动收集 request 上的函数属性进行绑定,并能智能排除 Promise 原生方法 methods.forEach(method => { promise[method] = (...args) => request[method](...args); }); // 动态绑定到 Promise } return promise; }, /** * 发送 HEAD 请求 * @author hmjz100 * @description 用于获取请求地址返回的请求头,支持智能降级为轻量 GET (`Range: bytes=0-0`、`HEADERS_RECEIVED`),返回结构化响应头 * @param {String} url - 请求地址 * @param {Object} headers - 请求头配置 * @param {Boolean} usingGET - 是否使用 GET * @returns {Promise} 包含响应数据的 `Promise` 对象 */ async head(url, headers, usingGET) { headers = this.standHeaders(headers); return new Promise((resolve, reject) => { const method = usingGET ? "Get" : "Head"; let _aborted = false; const request = base.xmlHttpRequest({ method: method.toUpperCase(), url, headers, anonymous: false, onloadstart: () => { base.console.info(`【LinkSwift】Head${usingGET ? " Get" : ""}(start)\n请求地址:${url}\n请求头部:`, base.standHeaders(headers, false, false, true)); }, onload(res) { if (!_aborted) { // 转换 Headers 到 Object const rawHeaders = res.responseHeaders || (request?.getAllResponseHeaders?.() || "") || ""; res.responseHeaders = base.standHeaders(typeof rawHeaders === 'string' ? rawHeaders.trim() : "", false, false, true); base.console.info(`【LinkSwift】Head${usingGET ? " Get" : ""}(load)\n请求地址:${res.finalUrl}\n响应状态:${res.status}\n响应内容:`, res); // 如果:没用 GET & 没回 Range & 非成功返回 --> 用 HEADERS_RECEIVED 适配 if (!usingGET && !res.responseHeaders.hasOwnProperty("Range") && !(res.status >= 200 && res.status < 400)) { base.head(res.finalUrl, { ...headers, Range: "bytes=0-0" }, true).then(resolve).catch(reject); return; } resolve(res); } }, onreadystatechange(res) { if (res.readyState === 2) { // HEADERS_RECEIVED _aborted = true; if (request && request.abort) request.abort(); // 主动停止接收数据,适配某些不给用 HEAD 请求又不肯 range 头部的后端 // 转换 Headers 到 Object const rawHeaders = res.responseHeaders || (request?.getAllResponseHeaders?.() || "") || ""; res.responseHeaders = base.standHeaders(typeof rawHeaders === 'string' ? rawHeaders.trim() : "", false, false, true); base.console.info(`【LinkSwift】Head${usingGET ? " Get" : ""}(load) RS2\n请求地址:${res.finalUrl}\n响应状态:${res.status}\n响应内容:`, res); if (!usingGET && !res.responseHeaders.hasOwnProperty("Range") && !(res.status >= 200 && res.status < 400)) { base.head(res.finalUrl, { ...headers, Range: "bytes=0-0" }, true).then(resolve).catch(reject); return; } resolve(res); } }, onerror(error) { if (!_aborted) { base.console.error(`【LinkSwift】Head${usingGET ? " Get" : ""}(error)\n请求出现错误,可能是网络问题。`, error); reject(error); } } }); }); }, /** * 获取最终重定向 * @author 油小猴 * @author hmjz100 * @description 使用 GET、Head,智能追踪 HTTP 30x 重定向,返回最终访问地址 * @param {String} url - 初始请求地址 * @param {Object} headers - 请求头配置 * @param {Boolean} usingGET - 是否使用 GET * @param {Boolean} returnURL - 是否只返回地址而不是 res * @returns {Promise} 最终地址 */ getFinal(url, headers = {}, usingGET = false, returnURL = true) { return this.head(url, headers, usingGET) .then(res => { if (!res.finalUrl) throw res; if (res.status == 204 && res.statusText === "IDM") throw res; // 如果是重定向,递归调用 if (res.status >= 300 && res.status < 400) { return this.getFinal(res.finalUrl, headers, usingGET, returnURL); } // 返回最终结果 return returnURL ? res.finalUrl : res; }) .catch(err => { throw err; }); }, /** * 下载文件 * @author hmjz100 * @description 发送 GET 请求,一般用于文件下载,支持进度监控、自动重试、断点续传、非断回退 * @param {String} url - 请求地址 * @param {Object} headers - 请求头配置 * @param {Number} [size=0] - 响应类型 * @param {Object} [extra] - 附加参数(必须 `name`、`index`、`size` 属性;可选 `thread`、`retry` 属性) * @returns {Promise} 包含响应数据的 `Promise` 对象 */ async download(url, headers, extra) { headers = this.standHeaders(headers); // 初始化全局共享状态 this.download.active = this.download.active || 0; // 全局活跃线程数 this.download.taskCount = this.download.taskCount || 0; // 当前正在运行的 download 任务数 const global_maxThreads = 10; // 整个允许的最大并发数 if (extra) base.console.info(`【LinkSwift】Download\n收到数据:`, extra); if (!extra || !extra.index || !extra.name || !extra.size) throw new Error("extra 缺少内容。"); const status = { aborted: false, requests: new Set(), results: [], active: 0, maxSpeed: 0, lastSampleTime: Date.now(), lastSampleLoaded: 0, currentSpeed: 0, totalLoaded: 0 }; const promise = new Promise((resolve, reject) => { (async () => { this.download.taskCount++; // 任务进入 try { const finalHead = await base.getFinal(url, headers, false, false).catch(reject); if (!finalHead) return; url = finalHead.finalUrl; const responseHeaders = finalHead.responseHeaders; let size = parseInt(extra.size || responseHeaders?.["Content-Length"] || 0, 10); if (responseHeaders?.["Content-Range"]) { size = parseInt((responseHeaders["Content-Range"]?.match(/\/(\d+)$/)?.[1] || size), 10); } if (!status.aborted && typeof extra?.onProgress === "function") extra.onProgress({ progress: 0, loaded: 0, total: size, speed: 0, speedText: `${base.sizeFormat(0)}/s`, etaText: base.rtimeFormat(NaN) }); if (!(finalHead.status >= 200 && finalHead.status < 400)) return reject(finalHead); if (finalHead.status == 204 && finalHead.statusText === "IDM") return reject(finalHead); const supportRange = finalHead.status == 206 && (responseHeaders?.["Accept-Ranges"]?.includes("bytes") || responseHeaders?.["Content-Range"]?.includes("bytes")); if (!!supportRange || size > 0) { base.console.info(`【LinkSwift】Download(Start)\n文件名称:${extra.name}\n断点续传:支持`); const maxRetry = extra.retry || 10; let index = 0; let offset = 0; const worker = async () => { const minChunk = extra.minChunk || 128 * 1024; // 最小 128KB,避免过度碎片化 const absoluteMaxChunk = extra.maxChunk || 30 * 1024 * 1024; // 放宽最大限制到 30MB // 初始探测块大小:从较小的基准开始(例如 256KB) let chunk = Math.min(256 * 1024, absoluteMaxChunk); while (offset < size && !status.aborted) { // 如果全局线程满了,且当前任务已经抢到了 1 条以上的线程,则 “让路” 给后来的任务 const fairShare = Math.max(1, Math.floor(global_maxThreads / this.download.taskCount)); while (!status.aborted && this.download.active >= global_maxThreads && status.active >= fairShare) { await new Promise(r => setTimeout(r, 200)); } if (status.aborted || offset >= size) break; const _index = index++; const start = offset; const end = Math.min(start + chunk - 1, size - 1); const _size = end - start + 1; offset += _size; let attempt = 0; let success = false; let duration = 0.1; // 默认防除 0 let resData; while (attempt <= maxRetry && !status.aborted && !success) { status.active++; this.download.active++; try { let startTime = Date.now(); let lastLoaded = 0; resData = await new Promise((s, j) => { const xhr = base.xmlHttpRequest({ method: "GET", url, headers: { ...headers, "Range": `bytes=${start}-${end}` }, responseType: "arraybuffer", anonymous: false, onloadstart() { startTime = Date.now(); // 拿到首字节开始为当前块计时 }, onprogress: (progress) => { const delta = progress.loaded - lastLoaded; status.totalLoaded += delta; // 累加到全局已存载 lastLoaded = progress.loaded; const now = Date.now(); const sampleDuration = (now - status.lastSampleTime) / 1000; // 采样频率控制 if (sampleDuration >= 0.5) { const instantSpeed = (status.totalLoaded - status.lastSampleLoaded) / sampleDuration; // 平滑处理速度 (EMA) status.currentSpeed = status.currentSpeed === 0 ? instantSpeed : status.currentSpeed * 0.4 + instantSpeed * 0.6; // 计算剩余时间 (ETA) const remainSize = size - status.totalLoaded; const etaSeconds = status.currentSpeed > 0 ? remainSize / status.currentSpeed : 0; // 更新采样锚点 status.lastSampleTime = now; status.lastSampleLoaded = status.totalLoaded; // 回传给业务层 if (!status.aborted && typeof extra?.onProgress === "function") extra.onProgress({ progress: (status.totalLoaded * 100 / size), loaded: status.totalLoaded, total: size, speed: status.currentSpeed, speedText: `${base.sizeFormat(status.currentSpeed)}/s`, etaText: base.rtimeFormat(etaSeconds) }); } }, onload: (load) => { status.requests.delete(xhr); if (load.status == 204 && load.statusText === "IDM") return j(load); if (load.status >= 200 && load.status < 300) s(load.response); else j(load); }, onerror: (error) => { status.requests.delete(xhr); j(error); } }); status.requests.add(xhr); }); duration = (Date.now() - startTime) / 1000 || 0.05; status.results.push({ index: _index, data: resData }); success = true; } catch (e) { // 发生错误通常是断流,强制将下一次计算的 chunk 缩小一半,避免死磕 chunk = Math.max(minChunk, Math.floor(chunk * 0.5)); await new Promise(r => setTimeout(r, 1000 * attempt)); attempt++; if (attempt > maxRetry) throw e; } finally { status.active--; this.download.active--; } } if (success) { // 动态比例探测 const speed = _size / duration; // 当前块测算速度 (Bytes/s) const targetDuration = extra.duration || 2.0; // 目标:希望每个块耗时 2 秒钟下载完 // 根据当前真实速度,推算如果要恰好耗时 2 秒,下一个块应该多大 let nextOptimalChunk = speed * targetDuration; // 涨跌幅限制,防止网络突发波动导致 chunk 暴增或暴跌 // 一次最多涨 2 倍,最多跌至 1/3 nextOptimalChunk = Math.min(nextOptimalChunk, chunk * 2.0); nextOptimalChunk = Math.max(nextOptimalChunk, chunk * 0.33); // 平滑滤波:历史值占 40%,新预测占 60% (倾向于较快响应网络变化) chunk = Math.floor(chunk * 0.4 + nextOptimalChunk * 0.6); // 最终安全边界钳制 chunk = Math.max(minChunk, Math.min(absoluteMaxChunk, chunk)); // 记录最高速度 status.maxSpeed = Math.max(status.maxSpeed, speed); } } }; // 启动当前任务的并发线程,单任务最高 3 个 const maxThreads = Math.min(extra.thread || 3, global_maxThreads); await Promise.all(Array(maxThreads).fill(0).map(worker)); if (status.aborted) return; if (!status.aborted && typeof extra?.onProgress === "function") extra.onProgress({ progress: 100, loaded: size, total: size, speed: 0, speedText: `${base.sizeFormat(0)}/s`, etaText: base.rtimeFormat(0) }); await new Promise(resolve => setTimeout(resolve, 0)); status.results.sort((a, b) => a.index - b.index); // 分段提取数据 async function getBlobData(results) { const dataList = []; const batchSize = 100; // 每处理 100 个分块释放一次主线程 for (let i = 0; i < results.length; i++) { dataList.push(results[i].data); if (i % batchSize === 0) { await new Promise(resolve => setTimeout(resolve, 0)); } } return dataList; }; const finalData = await getBlobData(status.results); status.results = null; // 释放内存引用 resolve({ status: 200, statusText: "Ok!", readyState: 4, response: new Blob(finalData), finalUrl: url }); } else { // 不支持 Range,回退 const xhr = base.xmlHttpRequest({ method: "GET", url, headers, responseType: "blob", anonymous: false, onprogress: (progress) => { if (status.aborted) return; // 同步全局已存载量,单线程模式下 progress.loaded 就是已存载的总量 status.totalLoaded = progress.loaded; // 频率控制 const now = Date.now(); const sampleDuration = (now - (status.lastSampleTime || now)) / 1000; if (sampleDuration >= 0.5 || !status.lastSampleTime) { // 计算瞬时速度 const instantSpeed = (status.totalLoaded - (status.lastSampleLoaded || 0)) / (sampleDuration || 1); // 平滑处理速度 (EMA) status.currentSpeed = !status.currentSpeed ? instantSpeed : status.currentSpeed * 0.4 + instantSpeed * 0.6; // 计算剩余时间 (ETA) const total = progress.total || size; // 优先用服务器返回的 total const remainSize = total - status.totalLoaded; const etaSeconds = status.currentSpeed > 0 ? remainSize / status.currentSpeed : 0; // 更新采样锚点 status.lastSampleTime = now; status.lastSampleLoaded = status.totalLoaded; // 回传给业务层 if (typeof extra?.onProgress === "function") { extra.onProgress({ progress: (status.totalLoaded * 100 / total), loaded: status.totalLoaded, total: total, speed: status.currentSpeed, speedText: `${base.sizeFormat(status.currentSpeed)}/s`, etaText: base.rtimeFormat(etaSeconds) }); } } }, onload: (load) => { if (status.aborted) return; if (typeof extra?.onProgress === "function") extra.onProgress({ progress: 100, loaded: size, total: size, speed: 0, speedText: `${base.sizeFormat(0)}/s`, etaText: base.rtimeFormat(0) }); resolve(load); }, onerror: (error) => reject(error) }); status.requests.add(xhr); } } catch (e) { status.aborted = true; reject(e); } finally { this.download.taskCount--; // 无论成功失败,任务退出 } })(); }); promise.abort = () => { status.aborted = true; status.requests.forEach(xhr => xhr?.abort?.()); status.requests.clear(); status.results = null; }; if (extra.index) temp.request[extra.index] = promise; return promise; }, /** * Aria2 RPC 服务测试 * @author hmjz100 * @description 验证 `JSON-RPC` 接口可用性 * @param {String} domain - 服务域名 * @param {String} port - 服务端口 * @param {String} path - RPC 路径 * @param {String} token - 认证令牌 * @returns {Promise<"success"|"fail">} 连接状态结果 */ async testConnectToAria2(domain, port, path, token) { return new Promise((resolve) => { const rpc = { domain, port, path, token }; const url = `${rpc.domain}:${rpc.port}${rpc.path}`; const rpcData = { id: new Date().getTime(), jsonrpc: "2.0", method: "aria2.getVersion", params: [`token:${rpc.token}`] }; base.xmlHttpRequest({ method: "POST", url, headers: {}, data: JSON.stringify(rpcData), responseType: "json", anonymous: false, onloadstart() { base.console.info("【LinkSwift】Post(start) Aria2Test\n请求地址:" + url + "\n请求内容:", rpcData); }, onload(res) { base.console.info("【LinkSwift】Post(load) Aria2Test\n请求地址:" + url + "\n请求结果:", res); if (!res.response) return resolve("fail"); if (res.response?.error) { resolve("fail"); } else { resolve("success"); } }, onerror(error) { base.console.error("【LinkSwift】Post(error) Aria2Test\n请求失败", error); resolve("fail"); }, }); }); }, /** * AB Download Manager RPC 服务测试 * @author hmjz100 * @description 验证 `JSON-RPC` 接口可用性 * @param {String} domain - 服务域名 * @param {String} port - 服务端口 * @returns {Promise<"success"|"fail">} 连接状态结果 */ async testConnectToABDM(domain, port) { return new Promise((resolve) => { const rpc = { domain, port }; const url = `${rpc.domain}:${rpc.port}/ping`; base.xmlHttpRequest({ method: "POST", url, headers: {}, data: new Date().getTime(), responseType: "text", anonymous: false, onloadstart() { base.console.info("【LinkSwift】Post(start) ABDMTest\n请求地址:" + url + "\n请求内容:", new Date().getTime()); }, onload(res) { base.console.info("【LinkSwift】Post(load) ABDMTest\n请求地址:" + url + "\n请求结果:", res); if (!res.response || res.response !== "pong") return resolve("fail"); resolve("success"); }, onerror(error) { base.console.error("【LinkSwift】Post(error) ABDMTest\n请求失败", error); resolve("fail"); }, }); }); }, /** * 重置请求相关数据 * @author 油小猴 * @description 中止所有进行中的请求,清除进度记录和定时器 */ _resetAllData(keepFiles = false) { if (!keepFiles) temp.files = []; if (Object.keys(temp.request).length > 0) Object.keys(temp.request).forEach(key => { (temp.request[key]).abort(); }); temp.request = {}; temp.downing = {}; }, /** * 重置请求相关数据 * @author 油小猴 * @description 中止指定的进行中的请求,清除进度记录和定时器 */ _resetData(i) { temp.request[i] && temp.request[i].abort(); delete temp.downing[i]; }, /** * 将对象转换为 URL 编码字符串 * @author 油小猴 * @description 递归处理嵌套数组,自动进行 URI 编码 * @param {Object} obj - 待转换的键值对对象 * @returns {String} URL 编码格式字符串(如`key1=value1&key2=value2`) */ stringify(obj) { let str; for (const key in obj) { if (obj.hasOwnProperty(key)) { const value = obj[key]; if (Array.isArray(value)) { for (let i = 0; i < value.length; i++) { str += encodeURIComponent(key) + "=" + encodeURIComponent(value[i]) + "&"; } } else { str += encodeURIComponent(key) + "=" + encodeURIComponent(value) + "&"; } } } return str.slice(0, -1); // 去掉末尾的 "&" }, /** * 动态注入样式表 * @author 油小猴 * @author hmjz100 * @description 支持 `样式标签` `外链CSS` 注入,提供精准的 DOM 定位和插入位置控制 * @param {String} id - 样式元素 ID * @param {"style"|"link"} tag - 标签类型(`style` 或 `link`) * @param {String} css - CSS 内容或外链 URL * @param {String} [_element=".{mount}"] - 定位基准元素选择器 * @param {"before"|"after"|"prepend"|"append"} [position="append"] - 插入位置 */ addStyle(id, tag = "style", css, _element = `.${mount}`, position = "append") { base.waitForKeyElements(_element, (element) => { //const darkrender = $(".darkreader").length > 0 && this.isType(_element) === "string" && _element.includes(mount); const $styleDom = $(`[${mount}="${id}"], #${id}`); const $style = $(`<${tag}>`, { rel: "stylesheet", [mount]: id, //...darkrender ? { class: "darkreader" } : {} // 根据页面是否有 Dark Reader 类名的元素来决定是否加入 Dark Reader 豁免类名 }); tag === "style" ? $style.html(css.trim().replace(/\t/g, "").replace(/\r\n|\n\r|\n|\r/g, "\n").replace(/\n+/g, "\n")) : $style.attr("href", css); if ($styleDom.length) { $styleDom.replaceWith($style); } else { switch (position) { case "before": element.before($style); break; case "after": element.after($style); break; case "prepend": element.prepend($style); break; case "append": default: element.append($style); break; } } return true; // 始终返回 true 以让 bWaitOnce=true 的观察者在首次处理后断开,避免闭包/css 文本被永久持有导致内存泄漏 }, true); }, /** * 十六进制颜色转 RGBA * @author hmjz100 * @description 支持 4 位和 8 位十六进制格式,自动解析透明度通道 * @param {String} hex - 十六进制颜色值(如 `#09f` 或 `#0099ffaa` ) * @returns {String} RGBA 格式字符串(如 `15, 170, 255, 0.67`) */ hexToRgba(hex) { // 去掉 # 号 hex = hex.replace(/^#/, ""); // 如果是四位十六进制颜色值,转换为八位 if (hex.length === 4) { hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2] + hex[3] + hex[3]; } // 解析 RGB 分量 const r = parseInt(hex.substring(0, 2), 16); const g = parseInt(hex.substring(2, 4), 16); const b = parseInt(hex.substring(4, 6), 16); let a = ""; // 如果是八位十六进制颜色值,解析 alpha 通道 if (hex.length === 8) { a = parseInt(hex.substring(6, 8), 16) / 255; // 将 alpha 值转换为 0 到 1 之间的小数 a = "," + a } // 返回 rgba 格式字符串 return r + ", " + g + ", " + b + a; }, /** * RGBA 颜色转十六进制 * @author hmjz100 * @description 支持透明度转换,自动补全缩写格式 * @param {String} rgba - RGBA 格式颜色值(如 `rgba(15,170,255,0.67)`) * @returns {String} 十六进制颜色值(如 `#09aaffaa`) */ rgbaToHex(rgba) { // 去掉前缀 "rgba" 或 "rgb" 并移除空格 rgba = rgba.replace(/^(rgba?|RGBA?)\(/, "").replace(/\s+/g, "").replace(")", ""); // 将颜色值分割为数组 let [r, g, b, a] = rgba.split(","); // 将 RGB 转换为十六进制 r = parseInt(r).toString(16).padStart(2, "0"); g = parseInt(g).toString(16).padStart(2, "0"); b = parseInt(b).toString(16).padStart(2, "0"); // 如果存在 alpha 通道,处理透明度值 if (a !== undefined) { // 将 alpha 转换为 0 到 255 的十六进制 a = Math.round(parseFloat(a) * 255).toString(16).padStart(2, "0"); return `#${r}${g}${b}${a}`; } // 如果没有 alpha 通道,返回标准六位的十六进制颜色 return `#${r}${g}${b}`; }, /** * 自适应样式颜色替换器 * @author hmjz100 * @description 支持全局样式替换和资源路径修正,处理颜色渐变过渡效果等 * @param {String} cssText - 原始 CSS 内容 * @param {String} baseURI - 资源基础路径 * @param {"default"|"other"} type - 替换模式(默认模式包含过渡效果) * @param {Array<[String, String]>} colorMap - 颜色映射表(旧颜色 → 新颜色) * @returns {String} 处理后的 CSS 内容 */ adaptiveStyleOverride(cssText, baseURI, type, colorMap) { if (!cssText) return ""; if (baseURI) { // 替换相对路径资源为绝对路径 cssText = cssText.replace(/url\s*\(\s*(['"]?)(.*?)\1\s*\)/g, (match, quote, url) => { if (url && !/^(data:|https?:|\/\/)/i.test(url)) { try { const absoluteURL = new URL(url, baseURI).href; return `url(${absoluteURL})`; } catch { return match; } } return match; }); } // 处理默认颜色列表 config.base.dom.themes.forEach(item => { const oldColor = item.color; cssText = cssText.replace(new RegExp(base.hexToRgba(oldColor), "ig"), base.hexToRgba(temp.color)); cssText = cssText.replace(new RegExp(oldColor, "ig"), temp.color); }); // 处理 colorMap if (type === "other") { colorMap.forEach(colorPair => { const oldColor = colorPair[0]; const newColor = colorPair[1]; // 跳过旧色与新色相同的条目,否则 replace 会反复注入 transition 导致无限循环 if (!oldColor || oldColor.toLowerCase() === (newColor || "").toLowerCase()) return; // 生成旧颜色的三种形式:原样、全大写、全小写 const variants = [ oldColor, oldColor.toUpperCase(), oldColor.toLowerCase() ]; // 使用 Set 去重 const uniqueVariants = [...new Set(variants)]; uniqueVariants.forEach(variant => { const regex = new RegExp(variant, "g"); cssText = cssText.replace(regex, newColor); }); }); return cssText; } if (colorMap) { colorMap.forEach(colorPair => { const oldColor = colorPair[0]; const newColor = colorPair[1]; // 跳过旧色与新色相同的条目,否则 regexWithBlock 会反复注入 transition:all.2s // 导致 wkfe_generated_css → addStyle → 新 ColorUI 标签 → 再处理 → 无限循环与内存爆炸 if (!oldColor || oldColor.toLowerCase() === (newColor || "").toLowerCase()) return; // 生成三种形式 const variants = [ oldColor, oldColor.toUpperCase(), oldColor.toLowerCase() ]; const uniqueVariants = [...new Set(variants)]; if (oldColor.includes("#")) { // 替换带属性块的情况(添加 transition) uniqueVariants.forEach(variant => { const regexWithBlock = new RegExp(variant + "(.*?)}", "gi"); cssText = cssText.replace(regexWithBlock, newColor + "$1; transition:all.2s}"); }); // 最后再统一替换剩下的 uniqueVariants.forEach(variant => { cssText = cssText.replace(new RegExp(variant, "gi"), newColor); }); } else { // 普通字符串替换 uniqueVariants.forEach(variant => { cssText = cssText.replace(new RegExp(variant, "gi"), newColor); }); } }); } return cssText; }, /** * 自适应全局主题颜色修改器 * @author hmjz100 * @description 自动遍历并替换 `页面所有样式表` `SVG 元素` 的颜色值 * @param {Array<[String, String]>} colorMap - 颜色映射表 * @param {"default"|"other"} type - 替换模式 */ adaptiveThemeOverride(colorMap, type) { if (!colorMap || colorMap.length === 0) return; // 处理动态生成的 CSS base.waitForKeyElements(`[${mount}^="${mount}-ColorUI-"], [id^="${mount}-ColorUI-"]`, (tag) => { const text = tag.text(); const newCss = base.adaptiveStyleOverride(text, "", type, colorMap); if (text !== newCss) base.addStyle(tag.attr(mount) || tag.attr("id"), "style", newCss, tag[0]); return true; }, true, null, "wkfe_generated_css"); // 普通元素行内样式 base.waitForKeyElements(`[style]:not([${mount}^="${mount}-"],[class*="listener-"])`, ($el) => { const el = $el[0]; if ($el.parent(`[class*="pl-"]`).length || el.getAttribute("data-pl-colored") === temp.color) return false; const style = el.getAttribute("style"); if (style && !style.includes("data:image/svg+xml")) { const newStyle = base.adaptiveStyleOverride(style, "", type, colorMap); if (style !== newStyle) el.setAttribute("style", newStyle); el.setAttribute("data-pl-colored", temp.color); } return false; }, false, null, "wkfe_inline_style"); // 外部样式处理 if (!temp.colored) { let styleCount = 0; // Link 标签 base.waitForKeyElements(`link[rel="stylesheet"]`, ($tag) => { const href = $tag.attr("href"); if (!href) return; // 若 fetch 期间主题色已变更,则放弃本次结果,避免写入过时色覆盖新主题 const expectedColor = temp.color; fetch(new URL(href, location.href).href).then(r => r.text()).then(text => { if (temp.color !== expectedColor) return; const id = `${mount}-ColorUI-` + href.replace(/[^\w]/g, "_"); base.addStyle(id, "style", base.adaptiveStyleOverride(text, href, type, colorMap), $tag[0], "after"); }); return true; }, true, null, "wkfe_link_once"); // Style 标签 base.waitForKeyElements(`style:not([${mount}^="${mount}-"],[id^="swal-pub"],[class^="darkreader"])`, ($tag) => { const text = $tag.html(); // 同时检查 raw-css 与 raw-color,确保主题色变更后会重新处理该 style 标签 if ($tag.data("raw-css") === text && $tag.data("raw-color") === temp.color) return; $tag.data("raw-css", text); $tag.data("raw-color", temp.color); const css = base.adaptiveStyleOverride(text, "", type, colorMap); if (css !== text) { // 清理此前在当前 style 标签上挂载的 ColorUI 样式,避免 SPA 重建后残留导致内存泄漏 const prevId = $tag.data("color-ui-id"); if (prevId) { $($tag[0].parentNode).children(`[${mount}="${prevId}"]`).remove(); } const id = $tag.attr(mount) || $tag.data("color-ui-id") || `${mount}-ColorUI-${styleCount++}`; $tag.data("color-ui-id", id); base.addStyle(id, "style", css, $tag[0], "after"); } }, false, null, "wkfe_style_persistent"); temp.colored = true; } const utils = { // 颜色替换 replace: (val) => (val && val !== "none" && !val.startsWith("url")) ? base.adaptiveStyleOverride(val, "", type, colorMap) : val, // 统一处理 DataURL processDataUrl: (dataUrl) => { const isBase64 = dataUrl.includes(";base64,"); const parts = dataUrl.split(isBase64 ? ";base64," : ","); if (parts.length < 2) return dataUrl; const raw = isBase64 ? base.decodeBase(parts[1]) : decodeURIComponent(parts[1].replace(/\\/g, "")); const newSvg = raw.replace(/(fill|stroke|stop-color)\s*=\s*["']([^"']+)["']/g, (m, attr, val) => { const newVal = utils.replace(val); return newVal !== val ? `${attr}="${newVal}"` : m; }); return isBase64 ? `${parts[0]};base64,${base.encodeBase(newSvg)}` : `${parts[0]},${encodeURIComponent(newSvg)}`; } }; // 处理原生 SVG 标签 base.waitForKeyElements("svg:not(.pl-icon, [data-pl-colored])", ($svg) => { const el = $svg[0]; if (el.getAttribute("data-pl-colored") === temp.color) return false; const targets = "path, circle, rect, ellipse, line, polyline, polygon, stop, use"; const attrs = ["fill", "stroke", "stop-color"]; $svg.find(targets).each((_, sub) => { attrs.forEach(attr => { const val = sub.getAttribute(attr); if (val) { const newVal = utils.replace(val); if (newVal !== val) sub.setAttribute(attr, newVal); } }); }); el.setAttribute("data-pl-colored", temp.color); return false; }, false, null, "wkfe_svg_dom"); // 处理 DataURL SVG base.waitForKeyElements(`img[src*="data:image/svg+xml"], [style*="data:image/svg+xml"]`, ($el) => { const el = $el[0]; if (el.getAttribute("data-pl-colored") === temp.color) return false; try { if (el.tagName === "IMG") { const src = el.getAttribute("src"); const newSrc = utils.processDataUrl(src); if (src !== newSrc) el.setAttribute("src", newSrc); } else { const style = el.getAttribute("style"); const newStyle = style.replace(/url\((['"]?)(data:image\/svg\+xml[^"']+)['"]?\)/g, (match, quote, data) => { return `url(${quote}${utils.processDataUrl(data)}${quote})`; }); if (style !== newStyle) el.setAttribute("style", newStyle); } el.setAttribute("data-pl-colored", temp.color); } catch { } return false; }, false, null, "wkfe_svg_data"); }, /** * 延时执行 * @author 油小猴 * @description 仅可于 `async` 函数中执行,否则无法倒计时。 * @param {Number} time - 等待时间(毫秒) * @returns {Promise} 延时完成的 `Promise` */ sleep(time) { return new Promise(resolve => setTimeout(resolve, time)); }, /** * 判断版本号新旧 * @author hmjz100 * @description 该函数将版本号按 `.` 分割为数字数组,逐段比较大小。 * 若某段 a 的数字大于 b,则 a 更新; * 若所有段均相等,则版本相等(返回 false)。 * @param {String} a - 待比较的版本号 * @param {String} b - 基准版本号(如 "1.0.9.7") * @returns {Boolean} - 若 a 比 b 更新,返回 true;否则返回 false */ isNewerVersion(a, b) { const partsA = a.split(".").map(Number); const partsB = b.split(".").map(Number); const maxLength = Math.max(partsA.length, partsB.length); for (let i = 0; i < maxLength; i++) { const numA = partsA[i] || 0; const numB = partsB[i] || 0; if (numA > numB) return true; if (numA < numB) return false; } return false; }, /** * 提取版本号主版本 * @author 油小猴 * @param {String} version - 完整版本号(如 `1.2.3`) * @returns {String|null} 主版本号(如 `1`)或 `null`(格式错误时) */ getMajorVersion(version) { const [major] = (version || "").split("."); return /^\d+$/.test(major) ? major : null; }, /** * 查找 React 组件实例 * @author 油小猴 * @description 支持 Fiber 架构遍历,可指定向上查找层级 * @param {HTMLElement} dom - 起始 DOM 元素 * @param {Number} [traverseUp=0] - 向上遍历层级 * @returns {Object|null} React 组件实例或 `null` */ findReact(dom, traverseUp = 0) { const key = Object.keys(dom).find(key => { return key.startsWith("__reactFiber$") || key.startsWith("__reactInternalInstance$"); }); const domFiber = dom[key]; if (domFiber == null) return null; if (domFiber._currentElement) { let compFiber = domFiber._currentElement._owner; for (let i = 0; i < traverseUp; i++) { compFiber = compFiber._currentElement._owner; } return compFiber._instance; } const GetCompFiber = fiber => { let parentFiber = fiber.return; while (base.isType(parentFiber.type) == "string") { parentFiber = parentFiber.return; } return parentFiber; }; let compFiber = GetCompFiber(domFiber); for (let i = 0; i < traverseUp; i++) { compFiber = GetCompFiber(compFiber); } return compFiber.stateNode || compFiber; }, /** * 深拷贝 * @author hmjz100 * @description 完全复制某个东西 */ clone(value) { try { if (this.isType(structuredClone) === "function") return structuredClone(value); } catch { if (value === null || value === undefined) return value; if (typeof value !== 'object') return value; if (value instanceof Date) return new Date(value); if (value instanceof RegExp) return new RegExp(value); if (Array.isArray(value)) return value.map(item => base.clone(item)); const result = {}; for (const key in value) { if (Object.prototype.hasOwnProperty.call(value, key)) result[key] = base.clone(value[key]); } return result; } }, /** * 迁移旧版本配置 * @author hmjz100 * @description 将项目的旧版配置迁移到新版配置 */ initConfigMigration(latest) { try { const setDeep = (obj, path, value) => { let current = obj; for (let i = 0; i < path.length - 1; i++) { const key = path[i]; const nextKey = path[i + 1]; if (!(key in current) || current[key] === null || typeof current[key] !== 'object') { // 根据下一个键是否为数字或数字字符串决定创建数组还是对象 const isNextArrayIndex = typeof nextKey === "number" || /^\d+$/.test(nextKey); current[key] = isNextArrayIndex ? [] : {}; } current = current[key]; } current[path[path.length - 1]] = value; } if (latest === 1) { const mapping = { "setting_rpc_domain": ["setting_aria2_rpc", 0, "domain"], "setting_rpc_port": ["setting_aria2_rpc", 0, "port"], "setting_rpc_path": ["setting_aria2_rpc", 0, "path"], "setting_rpc_token": ["setting_aria2_rpc", 0, "token"], "setting_rpc_dir": ["setting_aria2_rpc", 0, "dir"], "setting_terminal_type": ["setting_curl_terminal"], "setting_init_code": ["setting_init", "code"], "setting_init_license": ["setting_init", "license"], "setting_init_version": ["setting_init", "version"], "setting_theme_color": ["setting_ui_theme", "color"], "setting_theme_baidu": ["setting_ui_theme", "custom", "$baidu"], "setting_theme_ali": ["setting_ui_theme", "custom", "$aliyun"], "setting_theme_mcloud": ["setting_ui_theme", "custom", "$mcloud"], "setting_theme_tcloud": ["setting_ui_theme", "custom", "$tcloud"], "setting_theme_xunlei": ["setting_ui_theme", "custom", "$xunlei"], "setting_theme_quark": ["setting_ui_theme", "custom", "$quark"], "setting_theme_uc": ["setting_ui_theme", "custom", "$uc"], "setting_theme_123": ["setting_ui_theme", "custom", "$123pan"] }; // 用于缓存顶层对象的修改,减少 base.setValue 调用频率 const cache = {}; for (const oldKey in mapping) { let val = base.getValue(oldKey); if (val === undefined || val === null) continue; // 规范化布尔值 if (val === "no") val = false; else if (val === "yes") val = true; const path = mapping[oldKey]; const rootKey = path[0]; // 初始化缓存中的根对象 if (!cache[rootKey]) { cache[rootKey] = base.getValue(rootKey) || (typeof path[1] === 'number' || /^\d+$/.test(path[1]) ? [] : {}); } if (path.length === 1) { cache[rootKey] = val; } else { // 使用优化后的路径设置工具 setDeep(cache, path, val); } base.delValue(oldKey); } // 批量保存修改后的新配置项 for (const rootKey in cache) { base.setValue(rootKey, cache[rootKey]); } } } catch (e) { base.console.error("【LinkSwift】配置迁移失败:", e); } }, _idmHotUpdate() { const rawValue = base.getValue("setting_idm_rpc"); const valueType = this.isType(rawValue); if (valueType === "array") { const defaultItem = rawValue.find(item => item.default === true); if (defaultItem) base.setValue("setting_idm_rpc", defaultItem.id); } else if (valueType === "text" && typeof rawValue === "string" && rawValue.trim().startsWith("[")) { try { const parsed = JSON.parse(rawValue); if (Array.isArray(parsed)) { const defaultItem = parsed.find(item => item.default === true); if (defaultItem) base.setValue("setting_idm_rpc", defaultItem.id); } } catch { } } }, /** * 初始化默认配置 * @author 油小猴 * @author hmjz100 * @description 创建基础配置、主题设置等存储项(仅当不存在时) */ initDefaultConfig() { if (base.getValue("setting_config_version") !== "1") this.initConfigMigration(1); this._idmHotUpdate(); // 默认值 const defaults = [ { name: "setting_idm_rpc", value: "1" }, { name: "setting_aria2_rpc", value: [ { domain: "http://localhost", port: "16800", path: "/jsonrpc", token: "", dir: "", default: true } ] }, { name: "setting_bitcomet_rpc", value: [ { domain: "http://localhost", port: "8080", path: "/panel/task_add_httpftp_result", authName: "", authPass: "", dir: "", default: true } ] }, { name: "setting_abdm_rpc", value: [ { domain: "http://localhost", port: "15151", dir: "", default: true } ] }, { name: "setting_curl_terminal", value: "wc" }, { name: "setting_init", value: { code: "", license: "", version: "" } }, { name: "setting_ui_theme", value: { color: "#574AB8", custom: { $baidu: true, $aliyun: true, $mcloud: true, $tcloud: true, $xunlei: true, $guangya: true, $quark: true, $uc: true, $123pan: true } } }, { name: "setting_config_version", value: "1" } ]; /** * 递归补充缺失字段 * @param {any} target 当前用户配置 * @param {any} source 默认配置模板 */ const mergeDefaults = (target, source) => { // 类型不一致或 target 不存在,直接取默认值 if (target === null || target === undefined || typeof target !== typeof source) { return this.clone(source); } // 处理数组:LinkSwift 的 RPC 配置多为对象数组 if (Array.isArray(source)) { if (!Array.isArray(target)) return this.clone(source); const template = source[0]; const result = target.map(item => mergeDefaults(item, template)); // 补齐数组至少有一个默认激活项的逻辑 if (template && 'default' in template && !result.some(i => i.default === true) && result.length > 0) { result[0].default = true; } return result; } // 处理对象 if (typeof source === 'object' && source !== null) { const result = { ...target }; for (const key in source) { // 跳过业务上不需要自动覆盖的敏感/私有字段 const skipKeys = ["token", "dir", "authName", "authPass"]; if (skipKeys.includes(key) && target[key] !== undefined) continue; // 特殊逻辑:不强制覆盖 default 字段(除非 target 没有) if (key === "default" && target[key] !== undefined) continue; result[key] = mergeDefaults(target[key], source[key]); } return result; } return target; // 基本类型直接返回原值 }; defaults.forEach(({ name, value }) => { const current = base.getValue(name); const isInvalid = current === null || current === undefined || (Array.isArray(current) && current.length === 0); const finalConfig = isInvalid ? this.clone(value) : mergeDefaults(current, value); base.setValue(name, finalConfig); }); }, /** * 显示设置界面 * @author 油小猴 * @author hmjz100 * @description 构建包含 RPC 配置、终端类型等设置项的交互界面 * @see {@link https://www.youxiaohou.com/zh-cn/motrix.html#使用指南 RPC 配置说明}、 {@link https://www.youxiaohou.com/zh-cn/curl.html cURL 使用教程} */ showSetting(target) { const setting = $(`
cURL使用教程,适用于 cURL 下载👆
`); Swal.fire({ ...temp.swalDefault, title: "(。•ᴗ•。) 助手设置", html: setting.html(), icon: "info", iconHtml: "⚙︎", allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, didOpen: (toast) => { const element = $(toast); if (target?.data?.().some(key => key.startsWith("backTo"))) element.find(".swal2-close").addClass(`${mount} tip`).attr("data-title", "返回上页").css({ "left": "10px", "right": "auto" }).text("◃"); if (target?.data?.("back-to-downloads")) element.find(".aria2, .bitcomet, .abdm, .other").hide(); }, willClose: () => { if (target?.data?.("back-to-downloads")) base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(true), config.base.dom.method[temp.mode].footer); }, }); }, /** * 显示 IDM 服务设置界面 * @author hmjz100 * @description 包含 RPC 配置的交互界面 */ showIDMSetting(target) { const IDMValue = base.getValue("setting_idm_rpc"); const IDMSetting = `
适用于 IDM 推送下载

提示:Client ID(即客户端标识)是 IDM 客户端用于标识不同浏览器 IDM 捕获扩展的唯一 ID。
如果您有多个浏览器,每个浏览器都需要配置不同的客户端标识。
如果填写了错误的客户端标识,将会导致 “推送到 IDM” 功能无法正常推送。

Chromium 类浏览器标识请使用以下方法获取:

  1. 确保已打开扩展管理页面的 “开发人员模式”;
  2. 确保已安装好 IDM 以及 IDM 浏览器扩展;
  3. 右键 IDM 扩展图标,进入 “管理扩展”;
  4. 在打开的浏览器的管理页面,滚动到下方;
  5. 选择 “检查视图” 右侧的任意一个选项进入;
  6. 在打开的 “DevTools” 窗口中,点击 “应用程序(Application)” 标签;
  7. 在左侧栏中找到 “扩展存储(Extension Storage)”,展开;
  8. 在展开的子项中选择 “本地(Local)”;
  9. 在右侧主视图中显示的表格中找到 “client” 对应数字值;
  10. 复制数字值,粘贴到上方的 “客户标识” 里;
  11. 去试着获取地址,选择发送到 IDM 看看吧!

Firefox 类浏览器标识请使用以下方法获取:

  1. 确保已安装好 IDM 以及 IDM 浏览器扩展;
  2. 右键 IDM 扩展图标,进入 “管理扩展”;
  3. 在打开的浏览器的管理页面,找到并点击 (小齿轮),选择 “调试附加组件”;
  4. 在打开的 “调试/运行时” 页面中,找到 “IDM Integration Module”,然后点击右侧的 “检查”;
  5. 在打开的 “DevTools” 窗口中,点击 “存储(Storage)” 标签;
  6. 在左侧栏中找到 “扩展存储(Extension Storage)”,展开;
  7. 在展开的子项中选择 “moz-extension://” 开头的项目;
  8. 在右侧主视图中显示的表格中找到 “client” 对应数字值;
  9. 复制数字值,粘贴到上方的 “客户标识” 里;
  10. 去试着获取地址,选择发送到 IDM 看看吧!

知识拓展:配置捕获的文件扩展名

  1. 在 IDM 的 “设置” > “文件类型” > “接管下载文件扩展名” 里添加您需要捕获的文件扩展名;
  2. 例如:.mp4, .avi, .mkv 等
`; Swal.fire({ ...temp.swalDefault, title: "IDM 服务设置", html: IDMSetting, icon: "success", iconHtml: `Internet Download Manager`, allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, didOpen: (toast) => { const element = $(toast); if (Object.keys(target.data()).some(key => key.startsWith("backTo"))) element.find(".swal2-close").addClass(`${mount} tip`).attr("data-title", "返回上页").css({ "left": "10px", "right": "auto" }).text("◃"); if (IDMValue) element.find(`[data-type="idm.id"]`).val(IDMValue); element.find(`[data-type="idm.id"]`).on("input", (e) => { e.preventDefault(); base.setValue("setting_idm_rpc", String($(e.currentTarget).val())); }); }, willClose: () => { if (target?.data?.("back-to-setting")) base.showSetting(); if (target?.data?.("back-to-downloads")) base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(true), config.base.dom.method[temp.mode].footer); }, }); }, /** * 显示 Aria2 服务设置界面 * @author hmjz100 * @description 包含 RPC 配置的交互界面 * @see {@link https://www.youxiaohou.com/zh-cn/motrix.html#使用指南 RPC 配置说明} */ showAria2Setting(target) { const AriaList = base.getValue("setting_aria2_rpc"); const AriaOptions = AriaList.map((item, index) => { return ``; }).join(""); let AriaSelected = AriaList.find(i => i.default); const Aria2Setting = `
RPC配置说明,适用于 Aria2 推送下载
`; Swal.fire({ ...temp.swalDefault, title: "Aria2 服务设置", html: Aria2Setting, icon: "info", iconHtml: "⚙︎", allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, didOpen: (toast) => { const element = $(toast); if (Object.keys(target.data()).some(key => key.startsWith("backTo"))) element.find(".swal2-close").addClass(`${mount} tip`).attr("data-title", "返回上页").css({ "left": "10px", "right": "auto" }).text("◃"); if (AriaSelected) { element.find(".listener-rpc-input").each((_, input) => { const type = $(input).data("type").split(".")[1]; $(input).val(AriaSelected[type] || ""); }); } else { AriaList[0].default = true; base.setValue("setting_aria2_rpc", AriaList); AriaSelected = AriaList[0]; } }, willClose: () => { if (target?.data?.("back-to-setting")) base.showSetting(); if (target?.data?.("back-to-downloads")) base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(true), config.base.dom.method[temp.mode].footer); }, }); }, /** * 显示比特彗星服务设置界面 * @author hmjz100 * @description 包含 RPC 配置的交互界面 */ showBitcometSetting(target) { const BCList = base.getValue("setting_bitcomet_rpc"); const BCOptions = BCList.map((item, index) => { return ``; }).join(""); let BCSelected = BCList.find(i => i.default); const BitcometSetting = `
适用于比特彗星推送下载
`; Swal.fire({ ...temp.swalDefault, title: "比特彗星服务设置", html: BitcometSetting, icon: "info", iconHtml: "⚙︎", allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, didOpen: (toast) => { const element = $(toast); if (Object.keys(target.data()).some(key => key.startsWith("backTo"))) element.find(".swal2-close").addClass(`${mount} tip`).attr("data-title", "返回上页").css({ "left": "10px", "right": "auto" }).text("◃"); if (BCSelected) { element.find(".listener-rpc-input").each((_, input) => { const type = $(input).data("type").split(".")[1]; $(input).val(BCSelected[type] || ""); }); } else { BCSelected[0].default = true; base.setValue("setting_bitcomet_rpc", BCSelected); BCSelected = BCList[0]; } }, willClose: () => { if (target?.data?.("back-to-setting")) base.showSetting(); if (target?.data?.("back-to-downloads")) base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(true), config.base.dom.method[temp.mode].footer); }, }); }, /** * 显示 AB Download Manager 服务设置界面 * @author hmjz100 * @description 包含 RPC 配置的交互界面 */ showABDMSetting(target) { const ABList = base.getValue("setting_abdm_rpc"); const ABOptions = ABList.map((item, index) => { return ``; }).join(""); let ABSelected = ABList.find(i => i.default); const ABSetting = `
适用于 AB Download Manager 推送下载
`; Swal.fire({ ...temp.swalDefault, title: "ABDM 服务设置", html: ABSetting, icon: "info", iconHtml: "⚙︎", allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, didOpen: (toast) => { const element = $(toast); if (Object.keys(target.data()).some(key => key.startsWith("backTo"))) element.find(".swal2-close").addClass(`${mount} tip`).attr("data-title", "返回上页").css({ "left": "10px", "right": "auto" }).text("◃"); if (ABSelected) { element.find(".listener-rpc-input").each((_, input) => { const type = $(input).data("type").split(".")[1]; $(input).val(ABSelected[type] || ""); }); } else { ABSelected[0].default = true; base.setValue("setting_abdm_rpc", ABSelected); ABSelected = ABList[0]; } }, willClose: () => { if (target?.data?.("back-to-setting")) base.showSetting(); if (target?.data?.("back-to-downloads")) base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(true), config.base.dom.method[temp.mode].footer); }, }); }, /** * 显示美化设置界面 * @author hmjz100 * @description 提供主题颜色选择器和各网盘界面美化配置 * @fires .listener-color - 主题色选择事件 * @fires .listener-theme - 网盘主题配置变更事件 */ showBeautify() { function changeColor() { temp.color = base.getValue("setting_ui_theme").color; return config.base.dom.themes.map(item => { return `
${item.name.split("|").map(part => `
${part}
`).join("")} ${item.color === temp.color ? `
` : ""}
`; }).join("") } function changeTheme() { const themeList = [ { name: "百度网盘", key: "$baidu" }, { name: "阿里云盘", key: "$aliyun" }, { name: "移动云盘", key: "$mcloud" }, { name: "天翼云盘", key: "$tcloud" }, { name: "迅雷云盘", key: "$xunlei" }, { name: "光鸭云盘", key: "$guangya" }, { name: "夸克网盘", key: "$quark" }, { name: "UC 网盘", key: "$uc" }, { name: "123 云盘", key: "$123pan" } ]; return themeList.map(item => { return ``; }).join(""); } const beautify = $(`
替换界面配色为主题颜色
*将在网页刷新后生效
${changeTheme()}
`) Swal.fire({ ...temp.swalDefault, title: "(✿ᴗ‿ᴗ) 助手美化", html: beautify.html(), icon: "success", iconHtml: "🍃︎", allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, }); }, /** * 显示调试信息面板 * @description 展示脚本运行时环境、版本信息及依赖状态 * @author hmjz100 * @property{String} manageHandler - 外部管理器名称 * @property{String} manageVersion - 外部管理器版本 */ showDebug() { let debugInfo; debugInfo += `以下内容均为脚本自检信息
本页面仅作为调试使用`; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo += ``; debugInfo = "
" + debugInfo + "
"; Swal.fire({ ...temp.swalDefault, icon: "info", title: "调试信息", html: debugInfo, allowOutsideClick: false, showCloseButton: true, footer: `

LinkSwifthmjz100 制作

${config.base.dom.footer}

`, }); }, /** * 显示版本更新日志 * @author hmjz100 * @description 按时间倒序展示所有历史版本更新内容 */ async showUpdate() { await Swal.fire({ ...temp.swalDefault, title: "更新日志", imageUrl: `data:image/jpeg;base64,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`, imageAlt: `喜马拉雅山脉,珠穆朗玛峰`, customClass: { image: 'swal2-banner', container: `${mount}-about` }, html: `

风雨送春归,飞雪迎春到。已是悬崖百丈冰,犹有花枝俏。

俏也不争春,只把春来报。待到山花烂漫时,她在丛中笑。

(ノ◕ヮ◕)ノ 遇到 Bug 要记得去 Github 议题 向我报告哦~
(o゜▽゜)o☆ 觉得好用?来一同完善本项目吧~ 欢迎提交拉取请求为本项目做贡献~

v1.1.5 (测试版,非最终品质)

秋风起兮白云飞,草木黄落兮雁南归。🍁

本次为「抽屉化更新日志」与「多网盘扩展」专项版本:

🧭 更新日志改版(抽屉收纳)

1、重构 - 更新日志改为「抽屉(手风琴)」结构,一个版本一个版本独立收纳;

2、交互 - 默认只展开最新一个版本,其余全部收起,点击版本号即可展开/收起;

3、体验 - 新增「最新」徽标与展开箭头,长历史不再一屏铺满。

☁️ 适配更多网盘(通用外链嗅探 + 域名扩展)

4、新增 - 通用外链/直链嗅探兜底适配器,自动识别页面中的真实下载直链;

5、适配 - 新增蓝奏云、坚果云、腾讯微云、奶牛快传、文叔叔、OneDrive / Google Drive 分享页等主流网盘域名;

6、适配 - 脚本现可运行于市面上绝大多数网盘分享页,未内置专属适配的网盘将自动走嗅探兜底。

🐛 BUG 修复

7、修复 - 当前域名未匹配任何网盘时 temp.main 为空导致初始化报错(增加容错);

8、修复 - 重复执行检测在未挂载点时的误判,避免多 iframe 场景重复注入;

9、修复 - 更新弹窗在极长更新日志下的滚动与样式溢出问题。


v1.1.4 (测试版,非最终品质)

残暑未消风先快,一叶轻舟过万重。🍂🥮

告别了繁杂与沉闷,LinkSwift 带来以下更新:

1、新增 - 支持光鸭云盘;

2、适配 - 变来变去的 123 云盘;

3、优化 - 网络请求头标准化;

4、优化 - 调样式,改类名,优逻辑;

5、优化 - 使用 eslint 处理与检查脚本代码问题;

6、优化 - 夸克网盘 Cookie 传递;

(感谢 kwkvh 提供的想法)

7、修复 - 迅雷云盘样式调整导致脚本弹窗异常变大;

8、修复 - 推送到 ABDM 下载器实际成功却显示失败。


v1.1.3

爆竹声中一岁除,春风送暖入屠苏。🧨🎆

开发者在此祝您新春快乐!LinkSwift 迎来功能更新:

1、新增 - IDM 客户端设置;

2、优化 - 链接缓存、浮动提示框;

3、适配 - 百度网盘分享页。


v1.1.2.1

1、新增 - API 下载的推送到 IDM 功能;

(感谢 Night Stars 的帮助)

2、修复 - 复制 Aria2、cURL 命令行错误。

v1.1.2

1、适配 - 123 云盘新策略;

2、适配 - 夸克、UC 网盘分享页;

3、新增 - 增强下载的多块多线程支持;

4、优化 - 页面绿化的部分匹配规则;

5、优化 - 增强下载进度条样式。

v1.1.1.9

1、修复 - 123 云盘下载视频变为缩略图。

v1.1.1.8

1、修复 - 适配新版 123 云盘分享页。

v1.1.1.7

1、修复 - 缺失声明 @connect 导致的问题。

v1.1.1.6

1、废弃 - 百度网盘 BDUSS Cookie 相关代码,转向使用更安全的 AccessToken

2、废弃 - 百度网盘分享页面下载相关代码;

3、优化 - 下载窗口可在设置改变后动态修改界面。

v1.1.1.5

1、新增 - AB Download Manager 下载方式;

2、优化 - 支持从设置页面一键返回下载窗口,无需重复获取链接。

v1.1.1.4

1、适配 123 云盘新版页面。

v1.1.1.3

1、修复夸克网盘无法获取下载地址的 Bug;

2、修复 API 下载无法复制全部链接。

v1.1.1.2

1、修复无法删除第一项远程配置的 Bug。

v1.1.1.1

1、修复推送至 Aria2 时推送成功但报错的 Bug。

v1.1.1

1、配置文件格式更新,支持添加、删除、切换多个服务配置

2、支持比特彗星推送下载,原 RPC 已并入 Aria2 下载

3、界面增加 Font Awesome 图标!更好看啦;

4、优化脚本代码、界面,运行更轻快;

5、修复上个版本遗存的问题。


v1.1.0.1

1、修复查看 RPC 下载任务的 Bug。

v1.1.0

1、支持 UC 网盘、123 云盘;

2、改进了网盘主题的注入方式;

3、聚合并重构了部分重复函数,对整体脚本逻辑进行了梳理和精简;

4、将脚本执行阶段从 document-body 适配为 document-start。


v1.0.9.7

1、修复移动云盘下载错误;

2、优化代码,更好的错误识别;

3、去除了油小猴云服务。

v1.0.9.6

1、支持在百度网盘中选择文件夹下载;

2、优化部分提示。

v1.0.9.5

1、修复因代码逻辑错误而无法获取链接的 Bug。

v1.0.9.4

1、修复因百度网盘 AccessToken 过期导致无法获取链接的 Bug。

v1.0.9.3

1、若网盘不支持在分享中下载,将仅显示保存网盘按钮;

2、优化下载界面,支持选择 Iframe 或 Blob 的方式来下载文件,增加按钮的提示文本;

3、优化 CSS 样式,统一了 SweetAlert2 按钮样式,同时适配了 Dark Reader 插件,界面更协调;

4、支持修改油小猴网站主题色;

5、原有主题相关设置现已移动至助手美化页面中。

v1.0.9.2

1、修复使用API 下载时有可能会导致IDM无限弹窗的Bug。

v1.0.9.1

1、修复在百度网盘旧版下脚本无法删除元素的Bug。

v1.0.9

1、跟进官方V6.2.7,修复因无法进行百度授权而导致获取直链报错 9019 的 Bug。


v1.0.8.9

1、跟进官方V6.2.3,优化保存到网盘提示,修复阿里云盘、移动云盘失效的问题;

2、优化修改网盘主题的代码,减少对页面的破坏。

v1.0.8.8

1、修复下载菜单字体过小的Bug。

v1.0.8.7

1、修复在阿里云盘分享页面下点击“未点亮”按钮时没有任何反应的Bug;

2、更新并优化网盘界面精简规则;

3、支持更换 百度网盘、阿里云盘、迅雷云盘、夸克网盘、移动云盘 界面的主题颜色。

v1.0.8.6

1、新增移动云盘会员中心页面,可在网盘中点击“会员中心”按钮查看(但无法使用第三方支付)。

v1.0.8.5

1、跟进官方V6.1.6,修复迅雷网盘分享页面无法选中文件,修复移动云盘无法判断页面。

v1.0.8.4

1、修复因重复绑定按钮而导致命令重复执行的Bug;

2、优化调试信息界面排版;

3、移除对百度网盘手机网页版的支持。

v1.0.8.3

1、适配阿里云盘新域名alipan.com。

v1.0.8.2

1、更换新图标。

v1.0.8.1

1、修复因重复绑定按钮而导致 RPC 下载会发送多条下载请求的Bug;

2、选择不使用油小猴服务器时,“用ghproxy连接Github仓库”更换为“用jsdelivr连接Github仓库”;

3、跟进官方V6.1.4版本,修复移动网盘无法获取链接,支持阿里云盘新域名alipan.com。


v1.0.8

1、修复迅雷网盘无法勾选文件。

v1.0.7.9

1、更新精简网盘元素匹配规则,防止因通知横条而导致不能点到“API 下载”以下的按钮。

v1.0.7.8

1、跟进官方V6.1.2,加入V2接口。

2、修复百度网盘下载时因为获取不到accessToken而一直转圈。

v1.0.7.7

1、修复百度网盘的按钮会因为主题不同而被改变颜色的Bug;

2、更新夸克网盘按钮与界面。

v1.0.7.6

1、修复“注入”功能;

2、黑暗模式支持随设置热切换。

v1.0.7.5

1、修复阿里云盘下载逻辑;

2、精简代码;

3、支持深色模式;

4、修改部分提示文本;

5、修改部分CSS;

6、设置可测试RPC连接。

v1.0.7.4

1、优化下载逻辑;

2、修复阿里云盘无法使用API 下载。

v1.0.7.3

1、如果出现网络请求错误时支持自动重新请求;

2、可选择是否使用油小猴服务器。

v1.0.7.2

1、修复使用 RPC 下载时会重复发送链接的Bug。

v1.0.7.1

[实验功能,不影响正常使用]支持百度网盘手机网页版,勾选文件后可在顶栏找到“下载助手”按钮。

v1.0.7

1、重构夸克网盘、阿里云盘按钮。


v1.0.6.9

1、下载窗口加入关闭按钮。

v1.0.6.8

1、修复夸克网盘按钮错位。

v1.0.6.7

1、将百度网盘界面修改为主题色,可在设置选择是否修改;

2、增加主题色名称,更改部分内容颜色;

3、移动云盘API 下载支持批量复制;

4、优化控制台输出结果;

5、百度网盘API 下载不使用IDM时可以显示剩余时间;

6、“取消点亮按钮”按钮的位置现已移动到设置页面。

7、homo特有的彩蛋又回来力(喜)。

v1.0.6.6

1、修复暗号错误。

v1.0.6.5

1、修复即使输入正确暗号也不能成功点亮按钮的服务器错误。

v1.0.6.4

1、跟进官方V6.1.1版本,修复阿里云盘获取下载地址时的问题。

v1.0.6.3

1、照顾小屏幕用户,将始终显示复制全部链接的按钮;

2、增加取消下载时的动画。

v1.0.6.2

1、修复部分界面错位,实现CSS内置;

2、百度网盘界面将变得更加简洁。

v1.0.6.1

1、新增百度云盘API 下载支持复制链接;

2、为了照顾手机浏览器用户,增大项目之间间隙,新增隐藏IDM提示选项,可在助手设置中启用;

3、修改CSS,界面会出现更多的主题色;

4、支持在油小猴官网查看暗号;

5、修复部分语法错误。

v1.0.6

1、修复了打开阿里云盘分享连接时因下载移动端广告导致只能点击 API 下载;

2、跟进官方6.0.4版本,修复夸克网盘获取下载地址失效、支持移动云盘。


v1.0.5.5

1、感谢Night Stars的帮助,修复因为原作者服务器导致的初始化暗号识别错误;

2、修改一些文本以及提供给服务器的信息。

v1.0.5.4

1、小修小改css,让主题色出现在更多地方;

2、修改下载地址获取失败的提示;

3、增加更多的主题色,可在助手设置查看;

4、homo彩蛋被删去力(悲)。

v1.0.5.3

1、修啦修啦,阿里云盘可以摸到下载菜单了。

v1.0.5.2

1、增加脚本信息菜单(没有用);

2、优化阿里云盘显示svg图片;

3、修改弹窗按钮颜色。

v1.0.5.1

1、修复在切换按钮主题后夸克网盘不能正常显示按钮。

v1.0.5

1、跟进官方V5.0.4版本;

2、小改动,照着官方版本更正文件名称检测;

3、保留彩蛋,但必须舍弃官方暗号。

v1.0.4

大改!

1、修复了原作者留下的夸克网盘切换文件夹就多一个“下载助手”按钮的大BUG;

2、终于来了,在下载菜单增加“助手设置”“更新日志”按钮;

【再也不用点进油猴管理再进设置了(保留油猴管理内设置)】

3、修改阿里云盘和夸克网盘下载助手按钮样式;

4、增加“取消点亮按钮”油猴菜单;

5、修改部分css,使其与选择的主题更贴切。


v1.0.3

1、增加一个小彩蛋; 提示:

homo(需在未点亮按钮状态触发)

【需要重新恢复按钮为未点亮状态请进入 已安装脚本->编辑->开发者->重置到出厂->确定】

2、修改/增加默认主题色。

v1.0.2

1、修改并加宽界面,调整部分css,使Sweetalert2界面更美观,更与原版相近;

2、修改部分提示文字,使文字更容易复制。

v1.0.1

1、去除更新提示;

2、更新Sweetalert2至11版本;

3、部分CDN节点更换为jsdelivr。

v1.0.0

1、增加“注入”功能(bushi);

2、去除广告。

`, allowOutsideClick: false, showCloseButton: true, confirmButtonText: ` 我已阅`, }); }, /** * 创建浮动指示框 * @description 一个究极好用的指示框,支持监听元素悬停事件动态改变位置,亦能显示文件名与大小 * @author 油小猴 * @author hmjz100 * @fires .${mount}.tip - 鼠标移动事件触发指示框定位 * @see {@link temp.color} 使用全局主题色渲染文件大小信息 */ createTip() { let tooltip = document.querySelector(`.${mount}.tooltip`); let ticking = false; // 用于 rAF 节流 let currentTarget = null; // 更新位置 const updatePosition = (x, y) => { if (!tooltip) return; let X = x + 10; let Y = y + 20; const clientWidth = document.documentElement.clientWidth; const clientHeight = document.documentElement.clientHeight; const scrollLeft = document.documentElement.scrollLeft || document.body.scrollLeft; const scrollTop = document.documentElement.scrollTop || document.body.scrollTop; if (X + tooltip.offsetWidth > clientWidth + scrollLeft) { X = clientWidth + scrollLeft - tooltip.offsetWidth; } if (X < scrollLeft) { X = scrollLeft; } if (Y + tooltip.offsetHeight > clientHeight + scrollTop) { Y = clientHeight + scrollTop - tooltip.offsetHeight; } if (Y < scrollTop) { Y = scrollTop; } // 使用 translate3d 的性能远高于 top/left,它不触发布局计算,还拥有 GPU 加速 tooltip.style.transform = `translate3d(${X}px, ${Y}px, 0)`; }; // 内容渲染 const renderContent = (target) => { const { title, } = target.dataset; let html, dual = false; if (title) { html = `${title}`; } else { const nameEl = target.querySelector(".name"); const sizeEl = target.querySelector(".size"); const name = nameEl ? nameEl.textContent : ""; const sizeText = sizeEl ? sizeEl.textContent : ""; html = `${name}`; if (sizeText) { dual = true; html += `${sizeText}`; } } if (!tooltip) { tooltip = document.createElement("div"); tooltip.className = "pl-tooltip"; tooltip.style.position = "absolute"; tooltip.style.willChange = "transform"; // 告知浏览器提前准备层合成 tooltip.style.pointerEvents = "none"; // 防止指示框挡住鼠标导致抖动 temp.mount[0].appendChild(tooltip); } if (dual) { tooltip.classList.add("dual"); } else { tooltip.classList.remove("dual"); } tooltip.innerHTML = html; tooltip.style.display = "flex"; }; // 事件处理 const handleMove = (e) => { if (!currentTarget) return; // 获取坐标,PointerEvent 统一了 clientX/Y const x = e.pageX; const y = e.pageY; if (!ticking) { // 使用 requestAnimationFrame 节流,确保每帧只更新一次位置 requestAnimationFrame(() => { updatePosition(x, y); ticking = false; }); ticking = true; } }; const handleOver = (e) => { const target = e.target.closest(`.${mount}.tip`); if (!target) return; currentTarget = target; renderContent(target); updatePosition(e.pageX, e.pageY); }; const handleOut = (e) => { // 只有离开到非 tooltip/${mount}.tip 区域才隐藏 const related = e.relatedTarget; if (!related || !related.closest(`.${mount}.tip, .${mount}.tooltip`)) { currentTarget = null; if (tooltip) tooltip.style.display = "none"; } }; // 事件监听 document.addEventListener("pointerover", handleOver); document.addEventListener("pointermove", handleMove, { passive: true }); // 使用 passive: true 提升滚动性能 document.addEventListener("pointerout", handleOut); }, /** * 创建加载状态弹窗 * @author 油小猴 * @description 生成包含旋转动画的加载容器 */ createLoading() { return $(`
`); }, /** * 获取镜像列表 * @author 油小猴 * @description 根据原始地址和镜像域名列表生成多个镜像地址,支持多线程下载。 * 每个镜像地址会根据 thread 参数生成多个重复地址(通过添加 `&` 符号区分)。 * @param {String} link - 原始下载地址 * @param {Array} mirror - 镜像域名数组 * @param {Number} [thread=2] - 每个镜像生成的线程数(地址重复次数),默认为 2 * @returns {String} 所有镜像地址组成的字符串,每行一个地址 * * @example * getMirrorList("https://example.com/file.zip", ["mirror1.com", "mirror2.com"], 2) * // 返回: * // https://mirror1.com/file.zip * // https://mirror1.com/file.zip& * // https://mirror2.com/file.zip * // https://mirror2.com/file.zip& */ getMirrorList(link, mirror, thread = 2) { try { const host = new URL(link).host; const mirrors = []; for (let i = 0; i < mirror.length; i++) { for (let j = 0; j < thread; j++) { const item = link.replace(host, mirror[i]) + "&".repeat(j); mirrors.push(item); } } return mirrors.join("\n"); } catch { return undefined } }, /** * 添加页面元素监听 * @author 油小猴 * @author hmjz100 * @description 详见代码 */ addPageListener() { $doc.on("click", `.${mount}[action="settings"][type]`, async (e) => { e.preventDefault(); const target = $(e.currentTarget); const type = target.attr("type"); if (!type) base.showSetting(target); switch (type) { case "idm": base.showIDMSetting(target); break; case "curl": base.showSetting(target); break; case "aria2": base.showAria2Setting(target); break; case "bitcomet": base.showBitcometSetting(target); break; case "abdm": base.showABDMSetting(target); break; default: break; } }); $doc.on("change", ".listener-rpc-select", async (e) => { const target = $(e.currentTarget); const selectedIndex = target.val(); const type = target.data("type"); const list = base.getValue(`setting_${type}_rpc`); if (selectedIndex === "new") { return $(".listener-rpc-input").val(""); } else if (list[selectedIndex]) { list.forEach(item => { if (item.default) delete item.default; }); list[selectedIndex].default = true; base.setValue(`setting_${type}_rpc`, list); $(".listener-rpc-input").each((_, input) => { const type = $(input).data("type").split(".")[1]; $(input).val(list[selectedIndex][type] || ""); }); } }); $doc.on("input", ".listener-rpc-input", async (e) => { const target = $(e.currentTarget); let type = target.data("type"); if (!type) return; type = type.split(".") const list = base.getValue(`setting_${type[0]}_rpc`); const value = target.val(); let selectedIndex = $(".listener-rpc-select option:selected").val(); if (selectedIndex === "new") { list.forEach((item) => { if (item.default) delete item.default; }); list.push({ domain: "", port: "", path: "", default: true }); base.setValue(`setting_${type[0]}_rpc`, list); selectedIndex = list.length - 1 } list[selectedIndex][type[1]] = value; base.setValue(`setting_${type[0]}_rpc`, list) const select = $(".listener-rpc-select"); let options; if (type[0] === "idm") { options = list.map((item, index) => { return ``; }).join("") } else { options = list.map((item, index) => { return ``; }).join("") }; select.html(`${options}`); }); $doc.on("click", ".listener-rpc-delete", async (e) => { e.preventDefault(); const target = $(e.currentTarget); const type = target.data("type"); let list = base.getValue(`setting_${type}_rpc`); const selectedIndex = parseInt($(".listener-rpc-select option:selected").val(), 10); if (selectedIndex === "new" || !confirm("您确定要删除此项目吗?")) return; list = list.filter((_, i) => i !== selectedIndex); if (list.length === 0) return alert("至少保留一个配置"); const newDefaultIndex = selectedIndex === 0 ? 0 : selectedIndex - 1; list[newDefaultIndex].default = true; base.setValue(`setting_${type}_rpc`, list); const select = $(".listener-rpc-select"); const options = list.map((item, index) => { return ``; }).join(""); select.html(`${options}`); $(".listener-rpc-input").each((_, input) => { const key = $(input).data("type").split(".")[1]; $(input).val(list[newDefaultIndex][key] || ""); }); }); $doc.on("click", ".listener-rpc-test", async (e) => { e.preventDefault(); const target = $(e.currentTarget); const type = target.data("type"); const selectedIndex = $(".listener-rpc-select option:selected").val(); const list = base.getValue(`setting_${type}_rpc`); const text = target.find("span"); const originalHtml = text.html(); if (selectedIndex === "new" || target.data("testing") === "true") return; if (list[selectedIndex]) { target.data("testing", "true"); text.html("等待"); target.css({ "opacity": "0.9" }); const selected = list.find(i => i.default); let result = "fail" if (type === "aria2") { const domain = selected.domain, port = selected.port, path = selected.path, token = selected.token; result = await base.testConnectToAria2(domain, port, path, token); } else if (type === "abdm") { const domain = selected.domain, port = selected.port; result = await base.testConnectToABDM(domain, port); } if (result === "success") { text.html("成功"); target.css({ "background-color": "#52c41a" }); } else { text.html("失败"); target.css({ "background-color": "#cb1616" }); } target.css({ "opacity": "" }); await base.sleep(3000); target.data("testing", "false"); text.html(originalHtml); target.css({ "background-color": "" }); } }); $doc.on("click", ".listener-open-setting", (e) => { base.showSetting(e); }); $doc.on("click", ".listener-open-idm-setting", (e) => { base.showIDMSetting(e); }); $doc.on("click", ".listener-open-aria2-setting", (e) => { base.showAria2Setting(e); }); $doc.on("click", ".listener-open-bitcomet-setting", (e) => { base.showBitcometSetting(e); }); $doc.on("click", ".listener-open-abdm-setting", (e) => { base.showABDMSetting(e); }); $doc.on("click", ".listener-open-updatelog", () => { base.showUpdate(); }); $doc.on("click", ".listener-open-beautify", () => { base.showBeautify(); }); $doc.on("click", ".listener-unregister", async (e) => { e.preventDefault(); message.warning("正在“注入”设置项目..."); const list = base.getValue("setting_init"); delete list.code; delete list.license; base.setValue("setting_init", list); base.delValue("baidu_access_token"); base.delValue("quark_social_token"); location.reload(); }); $doc.on("change", ".listener-terminal", async (e) => { base.setValue("setting_curl_terminal", e.currentTarget.value); }); $doc.on("click", ".listener-color", async (e) => { const target = $(e.currentTarget).closest(".listener-color").length > 0 ? $(e.currentTarget).closest(".listener-color") : $(e.currentTarget); const parent = target.closest(".pl-color"); const mask = target.find(".mask"); const color = target.data("color"); if (color && parent.length > 0 && mask.length > 0) { parent.find(".this").remove(); mask.append(`
`); const list = base.getValue("setting_ui_theme") list.color = color; base.setValue("setting_ui_theme", list); base.addPanLinkerStyle(); } }); $doc.on("change", ".listener-theme", async (e) => { const list = base.getValue("setting_ui_theme"); list.custom[e.currentTarget.dataset.type] = e.currentTarget.checked; base.setValue("setting_ui_theme", list); }); $doc.on("click", ".pl-button-mode", async (e) => { temp.mode = e.currentTarget.dataset.mode; console.info(e, temp, base.isType(temp.main?.getLink)); if (!temp.mode) return; if (!base.isType(temp.main?.getLink).includes("function")) return; Swal.fire({ ...temp.swalDefault, showConfirmButton: false, allowOutsideClick: false, allowEscapeKey: false, allowEnterKey: false, title: "获取中", html: `...`, footer: "如果选的文件较多,请耐心等待获取完成哦!", customClass: { popup: "loading-popup", header: "loading-header", title: "loading-title", content: "loading-content", input: "loading-input", footer: "loading-footer" }, willOpen: async () => { Swal.showLoading(); await temp.main.getLink().catch(e => { // 错误信息和堆栈 let msg = (e instanceof Error) ? e.message : String(e || "未知错误"); let displayMsg = msg; // 如果已经包含格式化字符,则直接使用,否则补全格式 if (!msg.includes(":
")) { msg = displayMsg = `非常规错误:
${msg}`; displayMsg += `
请截图控制台的报错内容,向开发者反馈。` }; message.error(displayMsg); const consoleMsg = msg.replaceAll(":
", ":").replaceAll("
", " "); const consoleStack = (e instanceof Error && e.stack) ? e.stack?.split?.('\n')?.slice?.(1)?.join?.('\n') : "无堆栈信息"; base.console.error(`【LinkSwift】Error\n${consoleMsg}\n堆栈:\n${consoleStack}`); return; }); }, }); }); }, /** * 创建基础样式 * @author 油小猴 * @author hmjz100 * @description 为组件添加默认的公共样式,包括浅色和深色模式适配样式。 */ addPanLinkerStyle() { temp.color = base.getValue("setting_ui_theme").color; // 主题色变更时,重置 colored 标志,以便 adaptiveThemeOverride 中的 link/style 观察者 // 能以新的 colorMap 重建,避免持有旧 colorMap 闭包与 temp.color 不一致导致的反馈循环与内存泄漏 temp.colored = false; if ("beautifyPage" in temp.main) temp.main.beautifyPage(); base.addStyle("swal-pub-style", "style", `@media (prefers-color-scheme:light){${GM_getResourceText("SwalLigt")}}`); base.addStyle("swal-pub-dark-style", "style", `@media (prefers-color-scheme:dark){${GM_getResourceText("SwalDark").replace(/#19191a/, "#222226")}}`); base.addStyle("swal-pub-custom-style", "style", ` .swal2-container > *{vertical-align:baseline;line-height:normal} .swal2-styled{transition:all.2s} .swal2-loader{display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:${temp.color} transparent } .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto;overflow:hidden;border-bottom-right-radius:5px;border-bottom-left-radius:5px} .swal2-timer-progress-bar{width:100%;height:.25em;border:1px #ffffff33 solid;border-radius:50px;background:var(--pl-c) } .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:var(--pl-c);color:#FFF;line-height:2em;text-align:center} .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:var(--pl-c) } .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:var(--pl-c)} .swal2-html-container{padding:1em 1.6em 0.3em;margin:0} .swal2-close,div:where(.swal2-container) button:where(.swal2-close){font-family:inherit;line-height:0;position:absolute;top:10px;right:10px;border-radius:50em;transition:all.2s} .swal2-close:hover,div:where(.swal2-container) button:where(.swal2-close):hover{color:#fff;background-color:${temp.color};font-size:60px;} .swal2-popup.swal2-toast .swal2-close,div:where(.swal2-container) .swal2-toast button:where(.swal2-close){background-color:transparent;font-size:2em} .swal2-popup,div:where(.swal2-container) div:where(.swal2-popup){overflow:hidden} @media (prefers-color-scheme:light){ .swal2-popup,div:where(.swal2-container) div:where(.swal2-popup){color:#1D1D1F;background:#F5F5F7} .swal2-footer,div:where(.swal2-container) .swal2-footer{color:#0000008F} } @media (prefers-color-scheme:dark){ .swal2-popup,div:where(.swal2-container) div:where(.swal2-popup){color:#F5F5F7;background:#1D1D1F} .swal2-footer,div:where(.swal2-container) .swal2-footer{color:#FFFFFFEB} } div:where(.swal2-container) img:where(.swal2-banner) {max-width:100%;width:100%;margin:0!important;cursor:initial} div:where(.swal2-container) button, div:where(.swal2-container) input, div:where(.swal2-container) keygen, div:where(.swal2-container) optgroup, div:where(.swal2-container) select, div:where(.swal2-container) textarea { font-family: inherit; line-height: normal; } .swal2-styled{display:flex;justify-content:center;align-items:center;gap:5px} .swal2-styled[style*="inline-block"]{display:inline-flex!important} .swal2-styled.swal2-confirm,div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){background-color:${temp.color};color:#FFF} .swal2-styled.swal2-confirm:focus,div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):focus{box-shadow:0 0 0 3px ${temp.color}80} .swal2-styled.swal2-deny:focus,.swal2-close:focus,div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):focus{box-shadow:0 0 0 3px #dc374180} .swal2-styled.swal2-cancel:focus,div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):focus{box-shadow:0 0 0 3px #6e788180} .swal2-styled.swal2-confirm, .swal2-styled.swal2-deny, .swal2-styled.swal2-cancel, div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm), div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny), div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel) {border-radius:50px} div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover{opacity:0.7} .swal2-backdrop-show,.swal2-noanimation,div:where(.swal2-container).swal2-backdrop-show, div:where(.swal2-container).swal2-noanimation{background:rgba(25,25,26,.75);transition:backdrop-filter.2s;backdrop-filter:blur(1px)} body.swal2-toast-shown .swal2-container{backdrop-filter:none;width:auto;max-width:100%;word-break:break-all} .swal2-popup.swal2-toast,div:where(.swal2-container) div:where(.swal2-toast){width:auto!important;grid-template-columns:1fr auto 1fr} .swal2-popup,div:where(.swal2-container) div:where(.swal2-popup){padding-bottom:1em;border-radius:10px} .swal2-title,div:where(.swal2-container) h2:where(.swal2-title){height:auto} .swal2-html-container,div:where(.swal2-container) div:where(.swal2-html-container){padding:1.3em 1.3em 0.3em;margin:0} .swal2-footer,div:where(.swal2-container) div:where(.swal2-footer){flex-direction:column;justify-content:center;align-items:center} .swal2-footer p,div:where(.swal2-container) div:where(.swal2-footer) p{margin:0;padding:0} .swal2-icon-content,div:where(.swal2-icon) .swal2-icon-content{font-family:unset;line-height:normal} div:where(.swal2-icon) .swal2-icon-content {position:relative;top:-0.025em;font-variant-emoji:text!important} .swal2-input, .swal2-file, swal2-select, .swal2-textarea, div:where(.swal2-container) input:where(.swal2-input), div:where(.swal2-container) input:where(.swal2-file), div:where(.swal2-container) input:where(.swal2-select), div:where(.swal2-container) textarea:where(.swal2-textarea) {box-shadow:none} .swal2-input:focus, .swal2-file:focus, .swal2-select:focus, .swal2-textarea:focus, .swal2-input:focus-visible, .swal2-file:focus-visible, .swal2-select:focus-visible, .swal2-textarea:focus-visible, div:where(.swal2-container) input:where(.swal2-input):focus, div:where(.swal2-container) input:where(.swal2-input):focus-visible, div:where(.swal2-container) input:where(.swal2-file):focus, div:where(.swal2-container) input:where(.swal2-file):focus-visible, div:where(.swal2-container) input:where(.swal2-select):focus, div:where(.swal2-container) input:where(.swal2-select):focus-visible, div:where(.swal2-container) textarea:where(.swal2-textarea):focus, div:where(.swal2-container) textarea:where(.swal2-textarea):focus-visible {outline:0;border:1px solid ${temp.color};box-shadow:0 0 0 3px ${temp.color}80} .swal2-checkbox, .swal2-file, .swal2-input, .swal2-radio, .swal2-select, .swal2-textarea, div:where(.swal2-container) input:where(.swal2-input), div:where(.swal2-container) input:where(.swal2-file), div:where(.swal2-container) textarea:where(.swal2-textarea), div:where(.swal2-container) select:where(.swal2-select), div:where(.swal2-container) div:where(.swal2-radio), div:where(.swal2-container) label:where(.swal2-checkbox) {margin:1em 2em} div:where(.swal2-container){font:500 24px/normal -apple-system,"PingFang SC",Helvetica Neue,Helvetica,STHeiTi,'Source Han Sans SC','Noto Sans CJK SC','HanHei SC','方正兰亭黑_GB18030','方正兰亭黑_GBK',ui-sans-serif,sans-serif,system-ui,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',emoji} div:where(.swal2-container) button > span {position:relative;top:-0.025em} html:has(.swal2-container), html.swal2-shown, body:has(.swal2-container), body.swal2-shown {font-size: unset!important}`); base.addStyle(`${mount}-main-style`, "style", ` :root { --pl-c: ${temp.color}; --pl-c: ${temp.color}; --pl-c-0d: ${temp.color}0d; --pl-c-15: ${temp.color}15; --pl-c-1f: ${temp.color}1f; --pl-c-30: ${temp.color}30; --pl-c-33: ${temp.color}33; --pl-c-80: ${temp.color}80; --pl-c-90: ${temp.color}90; --pl-c-b0: ${temp.color}b0; --pl-c-d0: ${temp.color}d0; } body.swal2-shown:not(.swal2-no-backdrop, .swal2-toast-shown) ::-webkit-scrollbar { width: .6em; height: .6em } body.swal2-shown:not(.swal2-no-backdrop, .swal2-toast-shown) ::-webkit-scrollbar-track { background: #FFF !important; border-radius: 10px } body.swal2-shown:not(.swal2-no-backdrop, .swal2-toast-shown) ::-webkit-scrollbar-thumb { background-color: var(--pl-c-90) !important; border-radius: 10px !important; transition: background-color .2s; will-change: background-color } body.swal2-shown:not(.swal2-no-backdrop, .swal2-toast-shown) ::-webkit-scrollbar-thumb:hover { background-color: var(--pl-c-d0) !important } @media (prefers-color-scheme:dark) { body.swal2-shown:not(.swal2-no-backdrop, .swal2-toast-shown) ::-webkit-scrollbar-track { background: #606266 !important } } .pl-popup { min-width: 70%; max-width: 95%; font-size: 12px } .pl-header { display: flex; align-items: flex-start; margin: 0 0 10px; padding: 0 0 5px; border-bottom: 1px solid #eee } .pl-title { font-size: 18px; white-space: nowrap; text-overflow: ellipsis } .pl-content { padding: 0; font-size: 12px } .pl-footer { display: block; text-align: center; font-size: 15px } .pl-icon { display: inline; align-self: center; align-items: center; width: 15px; height: 15px; font-size: 18px; vertical-align: 0; flex-shrink: 0; fill: currentColor; overflow: hidden } .pl-a .pl-icon { display: inline-flex; vertical-align: baseline; } .pl-a { display: inline; position: relative; overflow: hidden; vertical-align: baseline; border-bottom: 2px solid var(--pl-c); color: var(--pl-c); text-decoration: none !important; transition: color .3s, opacity .3s; will-change: color, opacity } .pl-a::before { content: ""; position: absolute; z-index: -1; left: 0; bottom: 0; width: 100%; height: 100%; background-color: var(--pl-c); transform: scaleY(0); transform-origin: bottom center; transition: transform .15s, opacity .3s; will-change: transform } .pl-a:hover, .pl-a:focus { color: #FFF } .pl-a:hover::before, .pl-a:focus::before { transform: scaleY(1) } .pl-a:active { opacity: 0.8; color: #FFF } /* 独立组件 - 下载列表 */ .${mount}.main { display: flex; flex-direction: column; gap: 8px; min-height: 50px; max-height: calc(100vh - 300px); padding: 8px 6px; overflow: auto; background: var(--pl-c-15); border-radius: 10px } .${mount}.main > .item { width: max-content; min-width: 100%; flex-shrink: 0; box-sizing: border-box; display: flex; align-items: center; gap: 10px; padding: 5px; background: var(--pl-c-30); border-radius: 8px } .${mount}.main > .item > .name { flex: 0 0 150px; min-width: 100px; overflow: hidden; text-align: left; white-space: nowrap; text-overflow: ellipsis; cursor: default } .${mount}.main > .item > .name > * { overflow: hidden; text-align: left; white-space: nowrap; text-overflow: ellipsis } .${mount}.main > .item > .link { flex: 1; cursor: pointer } .${mount}.main > .item > a.link { overflow: hidden; text-align: left; white-space: nowrap; text-overflow: ellipsis; color: var(--pl-c); transition: color .15s; will-change: color } .${mount}.main > .item > a.link:hover { color: #FFF } .${mount}.main > .item > .message { display: flex; flex: 1; justify-content: space-between } .${mount}.main > .item > .downing { display: flex; flex: 1; min-width: 200px; align-items: center; gap: 10px } .${mount}.extra { display: flex; align-items: center; gap: 10px; overflow: auto; background-color: var(--pl-c-15); border-radius: 10px } .${mount}.extra:has(>*) { margin-top: 1.25em; padding: 8px 6px } .${mount}.extra>.${mount}.btn[action="all"]:not([type*="idm"],[type*="bitcomet"]), .${mount}.extra>.${mount}.btn[action="copy"][type*="curl"], .${mount}.extra>.${mount}.btn[action="copy"][type*="bitcomet"] { flex: 1 } .${mount}.extra:not(:has(>.${mount}.btn[action="all"], >.${mount}.btn[action="copy"][type*="curl"], >.${mount}.btn[action="copy"][type*="bitcomet"]))>* { flex: 1 } /* 独立组件 - 进度条 */ .${mount}.progress-bar { display: flex; flex: 1; min-width: 120px; position: relative; height: 33px; overflow: hidden; border-radius: 50px; background-color: #ebebeb; color: #333 } @media (prefers-color-scheme:dark) { .${mount}.progress-bar { background-color: #808080; color: #FFF } } .${mount}.progress-bar > .foreground, .${mount}.progress-bar > .background { display: flex; position: absolute; top: 0; left: 0; align-items: center; justify-content: space-around; height: 100%; width: var(--width, 0); transition: width .4s linear; will-change: width } .${mount}.progress-bar > .foreground { z-index: 2; overflow: hidden; border-radius: 50px; background-color: var(--pl-c); background-image: linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent); background-size: 3vh 3vh; -webkit-animation: 1s linear reverse infinite progress-bar-stripes; animation: 1s linear reverse infinite progress-bar-stripes; color: #FFF } .${mount}.progress-bar > .background { z-index: 1; overflow: visible; background-color: transparent } @-webkit-keyframes progress-bar-stripes { from { background-position: 3vh 0 } to { background-position: 0 0 } } @keyframes progress-bar-stripes { from { background-position: 3vh 0 } to { background-position: 0 0 } } .${mount}.progress-bar > .foreground > .text, .${mount}.progress-bar > .background > .text { padding: 0 13px; font-size: 12px; font-weight: 500; line-height: 1; white-space: nowrap } /* 独立组件 - 按钮 */ .${mount}.btn { display: flex; align-items: center; justify-content: center; gap: 5px; padding: 0.3125em 0.55em; border: 0; border-radius: 50px; outline: none; background: var(--pl-c); color: #FFF !important; font-size: 1.125em; white-space: nowrap; word-break: keep-all; cursor: pointer; transition: opacity .2s, box-shadow .2s; will-change: opacity, box-shadow } .${mount}.btn.mini { font-size: 12px; padding: 0.625em 1.1em } .${mount}.btn:hover { opacity: 0.8 } .${mount}.btn:focus { box-shadow: 0 0 0 3px var(--pl-c-80) } .${mount}.btn.success { background: #55af28 } .${mount}.btn.success:focus { box-shadow: 0 0 0 3px #55af2880 } .${mount}.btn.info { background: #606266 } .${mount}.btn.info:focus { box-shadow: 0 0 0 3px #60626680 } .${mount}.btn.warning { background: #da9328 } .${mount}.btn.warning:focus { box-shadow: 0 0 0 3px #da932880 } .${mount}.btn.danger { background: #cc3235 } .${mount}.btn.danger:focus { box-shadow: 0 0 0 3px #cc323580 } .${mount}.btn.opacity { animation: easeOpacity 1.2s 2; animation-fill-mode: forwards; will-change: opacity } @keyframes easeOpacity { from { opacity: 1 } 50% { opacity: 0.35 } to { opacity: 1 } } /* 独立组件 - 设置项目 */ .${mount}.setting-item { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 1em } /* 左侧标题 */ .${mount}.setting-item > *:nth-child(1) { flex-shrink: 0; white-space: nowrap; } /* 右侧内容 */ .${mount}.setting-item>*:nth-child(2) { display: flex; align-items: center; justify-content: space-between; gap: 8px; max-width: 80%; box-sizing: border-box; } .${mount}.setting-item>.left:nth-child(2) { justify-content: flex-start; } .${mount}.setting-item>.right:nth-child(2) { justify-content: flex-end; } /* 当第二位是容器或输入框/选择框 */ .${mount}.setting-item > div:nth-child(2), .${mount}.setting-item > input:nth-child(2):not([type="checkbox"]), .${mount}.setting-item > select:nth-child(2) { flex: 1; width: 100%; min-width: 0; } /* 当第二位是单个按钮、链接等操作元素 */ .${mount}.setting-item > button:nth-child(2), .${mount}.setting-item > a:nth-child(2), .${mount}.setting-item > .btn:nth-child(2) { flex: 0 0 auto; /* 不放大、不缩小,保持原大小 */ width: fit-content; /* 适应自身宽度 */ white-space: nowrap; /* 防止文字折行 */ } /* 当第二位是容器组合:内部有输入框/选择框 */ .${mount}.setting-item > div:nth-child(2) > select, .${mount}.setting-item > div:nth-child(2) > input:not([type="checkbox"]) { flex: 1; min-width: 0; /* 允许缩小,触发 ellipsis 省略号 */ } /* 当第二位是容器组合,内部有按钮 */ .${mount}.setting-item > div:nth-child(2) > button, .${mount}.setting-item > div:nth-child(2) > a, .${mount}.setting-item > div:nth-child(2) > .btn { flex: 0 0 auto; /* 不放大、不缩小,保持原大小 */ white-space: nowrap; /* 防止文字折行 */ } /* 嵌套子设置项防样式污染 */ .${mount}.setting-item .${mount}.setting-item { margin: 0; gap: 5px } /* ----------====================---------- */ .pl-button, .pl-dropdown-menu { transition: all .2s } .pl-button { position: relative } .pl-button .pl-dropdown-menu { opacity: 0; transform: scaleY(0); transform-origin: top; pointer-events: none; transition: opacity 0.2s cubic-bezier(0.755, 0.05, 0.855, 0.06), transform 0.2s cubic-bezier(0.755, 0.05, 0.855, 0.06); /* Ant Design */ will-change: transform, opacity; } .pl-button .pl-dropdown-menu.reverse { opacity: 0; transform: scaleY(0); transform-origin: bottom; pointer-events: none; transition: opacity 0.2s cubic-bezier(0.755, 0.05, 0.855, 0.06), transform 0.2s cubic-bezier(0.755, 0.05, 0.855, 0.06); /* Ant Design */ will-change: transform, opacity; } .pl-button:hover .pl-dropdown-menu { opacity: 1; transform: scaleY(1); pointer-events: auto; transition: opacity 0.2s cubic-bezier(0.23, 1, 0.32, 1), transform 0.2s cubic-bezier(0.23, 1, 0.32, 1); /* Ant Design */ } .pl-button-init { opacity: 0.5; animation: easeInitOpacity 1.2s 5; animation-fill-mode: forwards } @keyframes easeInitOpacity { from { opacity: 0.5 } 50% { opacity: 1 } to { opacity: 0.5 } } .pl-dropdown-menu { position: absolute; z-index: 999; min-width: 110px; padding: 5px 0; border: none; border-radius: 5px; color: #1D1D1F; background: #F5F5F7; box-shadow: 0 6px 16px 0 rgba(0,0,0,0.08), 0 3px 6px -4px var(--pl-c-1f, rgba(0, 0, 0, 0.12)), 0 9px 28px 8px var(--pl-c-0d, rgba(0, 0, 0, 0.05)); /* Ant Design */ -webkit-box-shadow: 0 6px 16px 0 rgba(0,0,0,0.08), 0 3px 6px -4px var(--pl-c-1f, rgba(0, 0, 0, 0.12)), 0 9px 28px 8px var(--pl-c-0d, rgba(0, 0, 0, 0.05)); /* Ant Design */ text-align: center } @media (prefers-color-scheme:dark) { .pl-dropdown-menu { color: #F5F5F7; background: #282829 } } .pl-button-mode { display: flex!important; align-items: center; justify-content: flex-start; gap: 5px; height: 30px; padding: 0 10px !important; background-color: transparent; color: inherit !important; white-space: nowrap; cursor: pointer; font: 500 12px/normal -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans SC','Noto Sans',ui-sans-serif,sans-serif,system-ui,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',emoji !important; transition: background-color .2s; will-change: background-color } @media (prefers-color-scheme:dark) { .pl-dropdown-menu .pl-button-mode { color: #F5F5F7 !important } } .pl-button-mode:hover { color: var(--pl-c) !important; background-color: var(--pl-c-33) !important } @media (prefers-color-scheme:dark) { .pl-button-mode:hover { color: #F5F5F7 !important; background-color: var(--pl-c) !important } } header[style="display:none;"]~.pl-button { display: inline-block; position: fixed; z-index: 99999; top: 0.6em; left: 65% } .color-button { display: inline-flex; border: 1px solid var(--pl-c) !important; border-color: var(--pl-c) !important; background: var(--pl-c) !important; transition: background .2s, border-color .2s; will-change: background, border-color } .color-button:hover { border-color: var(--pl-c) !important; background: var(--pl-c-b0) !important } .ali-button { display: flex; position: relative; align-items: center; justify-content: center; height: 32px; margin-left: 20px; padding: 8px 16px; border: 0 solid transparent; border-radius: 100px; background: var(--pl-c); color: var(--basic_white); font-size: 14px; cursor: pointer; transition: background .2s; will-change: background } .ali-button:hover { background: var(--pl-c-d0) } .ali-btn-icon { vertical-align: -0.2em } .mcloud-button { float: left; position: relative; margin: 20px 24px 20px 0; width: 110px; height: 36px; background: var(--pl-c); border-radius: 2px; color: #FFF; font-size: 14px; line-height: 39px; text-align: center; cursor: pointer; will-change: background } .mcloud-button:hover { background: var(--pl-c-b0) } .mcloud-share-button { display: inline-block; position: relative; height: 36px; padding: 0 24px; border: 1px solid var(--pl-c); border-radius: 2px; background: var(--pl-c); color: #FFF; font-size: 14px; line-height: 36px; text-align: center; will-change: background } .mcloud-share-button:hover { background: var(--pl-c-b0) } .mcloud-btn { display: inline-block; height: 20px; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAGNQTFRFAAAA////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////mkUNoAAAACF0Uk5TAAbHPP9AMRtr9PwrV8zqXfmNgDODHTLD4iJxhGJJ8Z269m0aDgAAAMZJREFUeJzd0ssOgyAQBVDUK74rWq0PFP3/ryxqTMdGqJtuvGHD5CTDTGDs3nFc17kEPcC7BH3At/Tjvk5AYbBU+NcrwghL4uQDk3gtRSF1KWCCQEpghkd+3jp/ICNQoDANU0AQCJQmWAJ3h8+q3mFdvSywQdttsGvRWGAPLReoHXrbG6WWAzBoJ+3DaCnWI39NLbcvszvLeuTB2fYoqbNBNo7sGjzk31BhMsEJitxmiKk8zSQwE8gFjBGcNuCzOmdqPrib5A2JRQ7qK9g+hQAAAABJRU5ErkJggg==") no-repeat; background-size: 20px 20px; text-indent: 25px; line-height: 20px } .tcloud-button { position: relative; height: 30px; margin-right: 12px; padding: 0 12px; border: 1px solid var(--pl-c); background: var(--pl-c); color: #FFF; font-size: 12px; line-height: 28px; cursor: pointer; will-change: background, border-color } .tcloud-button:hover { border-color: var(--pl-c-b0); background: var(--pl-c-b0) } .xunlei-button { display: inline-flex; position: relative; align-items: center; justify-content: center; width: fit-content; height: 36px; margin-left: 12px; padding: 0px 12px; border: 0 solid transparent; border-radius: 5px; background: var(--pl-c); box-shadow: 0 0 0 0 transparent; color: #FFF; font-size: 14px; line-height: 1.5; white-space: nowrap; outline: 0; cursor: pointer; touch-action: manipulation; transition: background .2s, color .2s, border .2s, box-shadow .2s; will-change: background } .xunlei-button:hover { background: var(--pl-c-b0) } .guangya-button { color: #fff; background-color: var(--pl-c); } .guangya-button:hover { color: #fff !important; background-color: var(--pl-c-b0) !important } .quark-button, .uc-button { padding: 0 14px; background: var(--pl-c) !important; background-color: var(--pl-c) !important; will-change: background, background-color } .uc-btn-icon { width: 20px; height: 20px; vertical-align: -0.3em } .uc-button { padding: 10px 20px !important } .${mount}.input { margin: 0; padding: 8px 10px !important; border: 1px solid #c2c2c2; border-radius: 5px; appearance: auto !important; font-size: 14px !important } .center-input { text-align: center; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, "Helvetica Neue", sans-serif; font-weight: 300 } .pl-tooltip { display: none; position: absolute; z-index: 110000; align-items: center; max-width: 600px; border-radius: 5px; background: #333; color: #FFF; font-size: 12px; line-height: 1.3; word-break: break-all; will-change: display, top, left } .pl-tooltip>* { padding: 5px 10px } .pl-tooltip.dual>*:first-child { border: 1px solid; border-color: #333 transparent #333 #333; border-radius: 5px 0 0 5px } .pl-tooltip.dual>*:last-child { border: 1px solid; border-color: #333 #333 #333 transparent; border-radius: 0 5px 5px 0 } .pl-loading-box>div>div { position: absolute; border-radius: 50% } .pl-loading-box>div>div:nth-child(1) { top: 9px; left: 9px; width: 82px; height: 82px; background: #FFF } @keyframes load { 0% { transform: rotate(0deg) } 100% { transform: rotate(360deg) } } .pl-loading-box>div>div:nth-child(2) { top: 14px; left: 38px; width: 25px; height: 25px; background: var(--pl-c); transform-origin: 12px 36px; animation: load 1s linear infinite } .pl-loading { display: inline-block; width: 16px; height: 16px; overflow: hidden; background: none } .pl-loading-box { position: relative; width: 100%; height: 100%; transform: translateZ(0) scale(0.16); transform-origin: 0 0; backface-visibility: hidden } .pl-loading-box div { box-sizing: content-box } .pl-button-save { background-color: var(--pl-c) !important; color: #FFF !important } .pl-button-save:hover { background-color: var(--pl-c-d0) !important; color: #FFF !important } .swal2-container { z-index: 100000 } body.swal2-height-auto { height: inherit } [class^="swal2-"], .${mount}.btn { transition: all .2s } ::-webkit-selection { background-color: var(--pl-c); color: #FFF } ::-moz-selection { background-color: var(--pl-c); color: #FFF } ::selection { background-color: var(--pl-c); color: #FFF } input::-webkit-selection,textarea::-webkit-selection { background-color: rgba(100,100,100,.4); color: rgba(0,0,0,.87) } input::-moz-selection,textarea::-moz-selection { background-color: rgba(100,100,100,.4); color: rgba(0,0,0,.87) } input::-moz-selection,textarea::-moz-selection { background-color: rgba(100,100,100,.4); color: rgba(0,0,0,.87) } input::selection,textarea::selection { background-color: rgba(100,100,100,.4); color: rgba(0,0,0,.87) } /* 适配(改)百度网盘会员青春版 */ a.downloadSubtitle, button.downloadSubtitle { background-color: var(--pl-c); transition: all .2s } a.downloadSubtitle:hover, button.downloadSubtitle:hover { background-color: var(--pl-c-d0) } a.downloadSubtitle:disabled, button.downloadSubtitle:disabled { background-color: var(--pl-c-d0) } /* 哪里都没用到的 RGB! *:not(section,div) {animation: RGB 10s linear infinite} @keyframes RGB { 0% { filter: hue-rotate(0deg); } 100% { filter: hue-rotate(360deg); } } */ `); }, /** * 初始化引导弹窗 * @author 油小猴 * @author hmjz100 * @description 显示初始化对话框,引导用户进行配置或跳过流程。 * 支持输入特定数字触发彩蛋,并自动注入默认设置点亮功能。 * @returns {Promise} 弹窗关闭后返回空值,可能触发页面刷新 */ async showInitDialog() { const dialog = await Swal.fire({ ...temp.swalDefault, title: `(◍•ᴗ•◍)/ 你好呀`, html: `

我就直说了吧…
你可以按下下方的 红色按钮 跳过这一有趣的流程
或者继续输入一些神秘的 “恶臭数字”
解锁隐藏(大嘘)彩蛋

如果您喜欢这个脚本的话
请支持原版作者 油小猴
并给此改版点个 Star

脚本不仅能精简网盘界面
点亮后还能修改多个网盘的主题色哦!

`, input: "text", inputAttributes: { autocapitalize: "off", placeholder: "输入内容..." }, customClass: { input: "center-input" }, showLoaderOnConfirm: true, preConfirm: async (code) => { try { if (!code?.trim?.()) return Swal.showValidationMessage("错误:提取码不能为空"); code = code.trim(); if (["114514", "1919810", "1145141919810"].includes(code)) return "homo"; return Swal.showValidationMessage(`错误:错误的神秘数字`); } catch (e) { return Swal.showValidationMessage(`错误:${e}`); } }, showCloseButton: true, showDenyButton: true, denyButtonText: ` 懒得输入...我要直接点亮!`, allowOutsideClick: false, }); if (dialog.isDenied) { message.warning("正在“注入”设置项目..."); await base.sleep(2500); const list = base.getValue("setting_init"); list.code = config.base.num; list.license = config.base.license; base.setValue("setting_init", list); message.success("“注入”成功啦!"); await base.sleep(1500); location.reload(); }; if (dialog.isConfirmed && dialog.value === "homo") { // https://pic1.zhimg.com/v2-1b97a088e156c015108dec663bba8b04.avis await Swal.fire({ ...temp.swalDefault, icon: "error", title: "1145141919810", html: "homo特有的数字当然不行啦
哼哼哼啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
", timer: 4000, imageUrl: "data:image/png;base64,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", allowOutsideClick: false, timerProgressBar: true, showConfirmButton: false, showDenyButton: true, denyButtonText: "哼哼哼啊啊啊啊啊啊啊啊啊啊", }); message.info("成就:你触发了一个homo特有的彩蛋!"); await base.sleep(4000) // https://lh1.hetaousercontent.com/img/7d4c1c0b4adb0e95.jpg Swal.fire({ ...temp.swalDefault, title: "1145141919810", text: "homo特有的数字当然不行啦...吗?", icon: "question", imageUrl: "data:image/jpeg;base64,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", showConfirmButton: false, allowOutsideClick: false, }); await base.sleep(3000) const list = base.getValue("setting_init"); list.code = config.base.num; list.license = config.base.license; base.setValue("setting_init", list); message.success("成就:哼哼哼啊啊啊啊啊啊啊啊地注入成功(喜)"); await base.sleep(1500) location.reload(); } }, /** * 显示主对话框 * @author 油小猴 * @author hmjz100 * @description 使用 SweetAlert2 显示一个自定义样式的对话框,用于展示信息或操作提示。 * @param {String} title - 对话框标题 * @param {String} html - 对话框内容的 HTML 字符串 * @param {String} footer - 对话框底部说明文字 */ showMainDialog(title, html, footer) { Swal.fire({ ...temp.swalDefault, title, html, footer: `${footer}

${config.base.dom.footer}

`, customClass: { popup: "pl-popup", header: "pl-header", title: "pl-title", closeButton: "pl-close", content: "pl-content", input: `${mount} input`, footer: "pl-footer" }, confirmButtonText: ` 关闭`, showCloseButton: true, allowOutsideClick: false, allowEscapeKey: false, allowEnterKey: false, willClose: () => { base._resetAllData(); }, }); }, /** * 等待指定元素加载完成并执行回调 * @author hmjz100 * @description 监听 DOM 元素是否出现,若未出现则每隔一段时间重试,直到找到为止。 * 支持在 iframe 内部查找元素,适用于异步加载场景。 * @param {String} selectorElem - 要等待的目标元素选择器 * @param {Function} actionFunction - 找到元素后执行的回调函数,接收 jQuery 元素作为参数,返回 true 可以不再继续寻找 * @param {Boolean} [bWaitOnce=false] - 是否只执行一次回调,默认为 false,如果不设置为 true 的话需要自行判断是否对元素进行操作 * @param {String} [iframeSelector] - 若目标元素位于 iframe 中,传入 iframe 的选择器 * @param {String} [controlKey] - 控制唯一性的键名,用于避免重复处理 */ waitForKeyElements(selectorElem, actionFunction, bWaitOnce, iframeSelector, controlKey) { // 初始化管理器 const manager = this.waitForKeyElements.manager || ( this.waitForKeyElements.manager = { observers: new WeakMap(), tasks: new Map(), instanceCounter: 0 } ); const targetDoc = iframeSelector ? $(iframeSelector).get(0)?.contentDocument : document; if (!targetDoc) return; // 无效文档直接返回 // 生成唯一控制键 controlKey = controlKey || `wkfe_${manager.instanceCounter++}`; // 清理重复任务 const existingTask = manager.tasks.get(controlKey); if (existingTask) { existingTask.observer.disconnect(); manager.tasks.delete(controlKey); } // 创建MutationObserver回调 const processElements = () => { const elements = $(selectorElem, targetDoc); let foundActive = false; elements.each((_, el) => { const jEl = $(el); const isproc = jEl.data(controlKey); if (isproc) return true; // 跳过已处理元素 const cancelAction = actionFunction(jEl); if (cancelAction) { foundActive = true; } else if (bWaitOnce) { jEl.data(controlKey, true); // 标记已处理 } }); // 一次性任务且找到有效元素时清理 if (bWaitOnce && foundActive) { observer.disconnect(); manager.tasks.delete(controlKey); } }; // 创建Observer实例 const observer = new MutationObserver(processElements); // 配置并启动观察 observer.observe(targetDoc.documentElement, { childList: true, subtree: true, attributes: true, characterData: true }); // 注册任务 manager.tasks.set(controlKey, { observer, targetDoc }); // 立即执行初始检查 processElements(); }, }; // 下载函数 const download = { state(index) { index = Number(index); const configs = temp.files; if (isNaN(index) || base.isType(configs) !== "array" || configs?.length !== 2) return false; const files = (Array.isArray(configs[0]) ? configs[0] : []); if (!files.length || !files?.[index]) return false; return base.isType(configs[1]) === "object" ? { files, ...configs[1] } : {}; }, async copy(target, content) { const originalHtml = target.html(); if (content) { await base.setClipboard(content); target.html(`复制成功`).animate({ opacity: "0.5" }, "slow"); await base.sleep(2000); target.css("opacity", ""); target.html(originalHtml); } }, /** * 添加页面元素监听 * @author 油小猴 * @author hmjz100 * @description 详见代码 */ addPageListener() { $doc.on("click", `.${mount}.btn[action="download"]`, async (e) => { e.preventDefault(); const target = $(e.currentTarget); const item = target.closest(".item"); const index = Number(item.data("index")); const type = target.attr("type"); const downing = item.find(".downing"); switch (type) { case "normal": { // 直接下载:通过隐形 iframe 访问下载链接 if (target.data("state") === "processing") return; target.data("state", "processing"); const state = download.state(index); if (!state) { target.removeData("state"); return; } const { files, get } = state; const link = get.link(files[index]); if (!link) { target.removeData("state"); return; } // 在 ${mount}.${mount} 元素中追加隐形 iframe const iframe = $("`, didOpen(toast) { const iframe = toast.querySelector('iframe'); const updateHeight = () => { iframe.style.height = (window.innerHeight - 100) + 'px'; }; updateHeight(); window.addEventListener('resize', updateHeight); toast._resizeHandler = updateHeight; }, willClose(toast) { // 清理事件监听器 window.removeEventListener('resize', toast._resizeHandler); }, allowOutsideClick: false, showCloseButton: true, showConfirmButton: false, }); }); }, true); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$mcloud !== true) return; base.adaptiveThemeOverride([ ["#3181f9", temp.color], ["#5a9afa", temp.color], ["#98c0fc", `${temp.color}D0`], ["#2d76e5", `${temp.color}D0`], ["49,129,249,.08", base.hexToRgba(`${temp.color}20`)], ]); }, addButton() { base.waitForKeyElements(config.$mcloud.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(`
下载助手
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); element.prepend($button); }); base.waitForKeyElements(config.$mcloud.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(`
下载助手
  • 直接下载
  • 助手设置
  • 助手美化
  • 更新日志
`); element.prepend($button); }); }, addInitButton() { const $button = $(`
点我点亮
`); $button.click(base.showInitDialog); base.waitForKeyElements(config.$mcloud.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; $button.addClass("mcloud-button"); element.prepend($button); }); base.waitForKeyElements(config.$mcloud.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; $button.addClass("mcloud-share-button").css({ "cursor": "pointer" }); element.prepend($button); }); }, getRandomString(len) { len = len || 16; const $chars = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678"; const maxPos = $chars.length; let pwd; for (let i = 0; i < len; i++) { pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); } return pwd; }, utob(str) { const u = String.fromCharCode; return str.replace(/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g, (t) => { if (t.length < 2) { const e = t.charCodeAt(0); return e < 128 ? t : e < 2048 ? u(192 | e >>> 6) + u(128 | 63 & e) : u(224 | e >>> 12 & 15) + u(128 | e >>> 6 & 63) + u(128 | 63 & e); } const e = 65536 + 1024 * (t.charCodeAt(0) - 55296) + (t.charCodeAt(1) - 56320); return u(240 | e >>> 18 & 7) + u(128 | e >>> 12 & 63) + u(128 | e >>> 6 & 63) + u(128 | 63 & e); }); }, getSign(e, t, a, n) { let i; if (t) { const s = Object.assign({}, t); i = JSON.stringify(s), i = i.replace(/\s*/g, ""), i = encodeURIComponent(i); const c = i.split(""), u = c.sort(); i = u.join(""); } const A = md5(base.encodeBase(this.utob(i))); const l = md5(a + ":" + n); return md5(A + l).toUpperCase(); }, async getFileUrl(item, index) { if (item.downloadUrl) return { index, downloadUrl: item.downloadUrl }; if (this.detectPage() === "home") { const body = { fileId: item.contentID } const time = new Date(+new Date() + 8 * 3600 * 1000).toJSON().substr(0, 19).replace("T", " "); const key = this.getRandomString(16); const sign = this.getSign(undefined, body, time, key); const getCookie = (name) => { const cname = name + "="; const ca = document.cookie.split(";"); for (let i = 0; i < ca.length; i++) { const c = ca[i].trim(); if (c.indexOf(cname) == 0) return c.substring(cname.length, c.length); } return ""; } const res = await base.post(config.$mcloud.api.getLink, body, { "Authorization": getCookie("authorization"), "Caller": "web", "Content-Type": "application/json;charset=UTF-8", "CMS-DEVICE": "default", "Mcloud-Channel": "1000101", "Mcloud-Client": "10701", "Mcloud-Sign": time + "," + key + "," + sign, "Mcloud-Version": "7.14.2", "X-DeviceInfo": "||9|7.17.0|edge||||windows 10||zh-CN|||", "X-Huawei-ChannelSrc": "10000034", "X-Inner-Ntwk": "2", "X-M4C-Caller": "PC", "X-M4C-Src": "10002", "X-SvcType": "1", "X-Yun-Api-Version": "v1", "X-Yun-App-Channel": "10000034", "X-Yun-Channel-Source": "10000034", "X-Yun-Client-Info": "||9|7.17.0|edge||||windows 10||zh-CN|||||", "X-Yun-Module-Type": "100", "X-Yun-Svc-Type": "1", "X-Yun-Url-Type": "3" }); if (res.success) { return { index, downloadUrl: res.data.url }; } else { return { index, downloadUrl: "获取下载地址失败,服务器未返回有效数据,刷新后再试试吧~" }; } } if (this.detectPage() === "share") { const vueDom = document.querySelector(".main_file_list").__vue__; const res = await base.post(config.$mcloud.api.getShareLink, `linkId=${vueDom.linkID}&contentIds=${item.path}&catalogIds=`, { "Content-Type": "application/x-www-form-urlencoded" }); if (res.code == 0) { return { index, downloadUrl: res.data.redrUrl }; } else { return { index, downloadUrl: "获取下载地址失败,服务器未返回有效数据,刷新后再试试吧~" }; } } }, async getFilesUrl(items, token) { // TODO: 先预留着 }, async getLink() { let selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => !item.contentID && !item.contentName)) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { selects = selects.filter(item => item.contentID && item.contentName && item.contentSuffix); const batchSize = 15; let proc = 0; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[中国移动云盘] 获取下载地址失败"); }); res.forEach(val => (selects[val.index].downloadUrl = val.downloadUrl)); await base.sleep(1000); } } else { throw new Error("提示:
页面错误~"); } temp.files = [selects, { get: { dir: v => (v.dirEtag || v.caName), name: v => (v.contentName || v.coName), size: v => (v.contentSize || v.coSize), link: v => v.downloadUrl, }, headers: {}, convert: {}, dom: { tooltip: config.$mcloud.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); }, getSelectedList() { try { return document.querySelector(".main_file_list").__vue__.selectList.map(val => val.item); } catch { const vueDom = document.querySelector(".home-page")?.__vue__; const fileList = vueDom._computedWatchers.fileList.value; const dirList = vueDom._computedWatchers.dirList.value; const selectedFileIndex = vueDom.selectedFile; const selectedDirIndex = vueDom.selectedDir; const selectFileList = fileList.filter((v, i) => { return selectedFileIndex.includes(i); }); const selectDirList = dirList.filter((v, i) => { return selectedDirIndex.includes(i); }); return [...selectFileList, ...selectDirList]; } }, detectPage() { const path = location.pathname; if (/^\/w/.test(path)) return "home"; if (/^\/link|shareweb/.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.addPageListener(); }, }; /** * 天翼云盘 * @author 油小猴 * @author hmjz100 */ const $tcloud = { greenerPage() { base.waitForKeyElements(".advertising-mask", (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements("a.client-download.nav-block", (tag) => { tag.fadeOut(); }, true); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$tcloud !== true) return; base.adaptiveThemeOverride([ ["#2b89ea", temp.color], ["#1874d3", `${temp.color}F0`], ["#1890ff", temp.color], ["#388fc9", temp.color], ["#0087ff", temp.color], ["#255697", temp.color], ["#3ea6ff", `${temp.color}80`], ["#1d52f2", temp.color], ["#3699ff", `${temp.color}D0`], ["#f4f9fe", `${temp.color}10`], ["#eaf5ff", `${temp.color}20`], ], "other"); }, addButton() { const $button = $(`
下载助手 
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); $button.find(".pl-dropdown-menu").css({ "position": "absolute", "left": "-1px" }); base.waitForKeyElements(config.$tcloud.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; $button.find(".pl-dropdown-menu").css({ "top": "28px" }); element.prepend($button); }); base.waitForKeyElements(config.$tcloud.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; $button.css({ "height": "28px", "border-radius": "15px" }); $button.find(".pl-dropdown-menu").css({ "top": "25px" }); element.prepend($button); }); }, addInitButton() { const $button = $(`
点我点亮
`); $button.click(base.showInitDialog); base.waitForKeyElements(config.$tcloud.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; element.prepend($button); }); base.waitForKeyElements(config.$tcloud.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; $button.css({ "height": "28px", "border-radius": "15px" }); element.prepend($button); }); }, async getToken() { $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取状态~
`); const res = await base.getFinal(config.$tcloud.api.getAccessToken, undefined, true); const accessToken = res.match(/accessToken=(\w+)/)?.[1]; if (accessToken) { base.setStorage("accessToken", accessToken); $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
获取成功,令牌已缓存~
`); return accessToken; } return undefined; }, async getFileUrl(item, index, token) { if (item.downloadUrl) { return { index, downloadUrl: item.downloadUrl } }; const time = Date.now(); let url = `${config.$tcloud.api.getLink}?fileId=${item.fileId}`; let _sign = `AccessToken=${token}&Timestamp=${time}`; if (item.shareId) { url += `&dt=1&shareId=${item.shareId}`; _sign += `&dt=1`; } _sign += `&fileId=${item.fileId}`; if (item.shareId) { _sign += `&shareId=${item.shareId}`; } const res = await base.get(url, { "Accept": "application/json;charset=UTF-8", "Sign-Type": 1, "Accesstoken": token, "Timestamp": time, "Signature": md5(_sign).toString() }); if (res.res_code == 0) { return { index, downloadUrl: res.fileDownloadUrl }; } else if (res.errorcode == "InvalidSessionKey") { return { index, downloadUrl: "提示:
请先登录网盘~" }; } else if (res.res_code == "ShareNotFoundFlatDir") { return { index, downloadUrl: "提示:
请[转存]文件,之后再👉前往[我的网盘]中下载哦~" }; } else { return { index, downloadUrl: "获取下载地址失败,刷新后再试试吧~" + (res.res_code ? res.res_code : "") }; } }, async getLink() { let selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => item.isFolder)) throw new Error("提示:
请打开文件夹后再勾选文件~"); selects = selects.filter(item => !item.isFolder) $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取状态~
`); const token = base.getStorage("accessToken") || await this.getToken().catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[天翼云盘] 获取令牌失败"); }); if (!token) { throw new Error("提示:
请先登录网盘~"); } $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
获取缓存成功~
`); const batchSize = 15; let proc = 0; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex, token) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[天翼云盘] 获取下载地址失败"); }); res.forEach(val => { selects[val.index].downloadUrl = val.downloadUrl; }); await base.sleep(1000); } temp.files = [selects, { get: { dir: v => v.isFolder, name: v => v.fileName, size: v => v.size, link: v => v.downloadUrl, }, headers: {}, convert: {}, dom: { tooltip: config.$mcloud.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); }, getSelectedList() { try { return document.querySelector(".c-file-list").__vue__.selectedList; } catch { return [document.querySelector(".info-detail").__vue__.fileDetail]; } }, detectPage() { const path = location.pathname; if (/^\/web\/main/.test(path)) return "home"; if (/^\/web\/share/.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.getToken(); }, }; /** * 迅雷云盘 * @author 油小猴 * @author hmjz100 */ const $xunlei = { addPageListener() { $doc.on("click", ".pl-button-save", async (e) => { e.preventDefault(); const selections = temp.main.getSelectedList(); if (selections.length === 0) { return message.error("提示:
请勾选要保存到网盘的文件哦~"); } message.info("提示:
因网盘限制,请保存到自己网盘后再去下载哦~"); await base.sleep(500); document.querySelector(".saveToCloud").click(); }); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$xunlei !== true) return; base.adaptiveThemeOverride([ ["#3f85ff", temp.color], ["63,133,255,.1", base.hexToRgba(`${temp.color}20`)], ["#2670ea", `${temp.color}D0`], ["#619bff", `${temp.color}D0`], ["#ecf3ff", `${temp.color}10`], ["#f6faff", `${temp.color}10`], ["#1a2845", `${temp.color}20`], ["#0f2035", `${temp.color}20`], ["#308bfd", `${temp.color}20`], ["#eee", `${temp.color}20`], ], "other"); base.addStyle(`${mount}-xunlei`, "style", `.web-header{background:linear-gradient(0deg,${temp.color}D0,${temp.color})}`); }, addButton() { base.waitForKeyElements(config.$xunlei.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(`
下载助手
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); element.prepend($button); }); base.waitForKeyElements(config.$xunlei.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); element.append($button); }); }, addInitButton() { base.waitForKeyElements(config.$xunlei.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(`
点我点亮
`); $button.click(base.showInitDialog); element.prepend($button); }); base.waitForKeyElements(config.$xunlei.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); $button.click(base.showInitDialog); element.append($button); }); }, _getCaptchaSign(clientId, version, host, deviceId, timestamp) { // 基础参数 let currentHash = `${clientId}${version}${host}${deviceId}${timestamp}`; // 12 层哈希的盐值 const salts = [ "o6b11ImBwJA1KSNMTALjL0xMkMjTP", "oVHCQaox9N6+R91GY63sbxci9K9ymFl", "XReS2zbwYB/+vUnYDwZ", "O56ssQHYiK5enUTKaV", "sGKNxaX7aUzpjJ2n+/2f1I0", "1oyQWde2s4zvz", "ziq13Yyc6HUXr3477c20PJfwBjg7ux", "xKMXTJmlEqamEpkWfp6WeP1qZezdCA", "rUA", "XVIzRTbY7MGdUXn0+qLjw", "aGrpbD3EUDGo0wmvaKPDGxVRaNVN6", "ieQk/" ]; // 循环进行 12 层哈希计算 for (let i = 0; i < salts.length; i++) { currentHash = md5(currentHash + salts[i]); } // 最终返回验证值 return `1.${currentHash}`; }, async getToken(force = false, title = true) { if (!this.getToken.lock) this.getToken.lock = Promise.resolve(); return this.getToken.lock = this.getToken.lock.then(async () => { if (title) { $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
获取状态中~
`); } let creds = {}, cap = {}; let userId = "", clientId = "", credsKey = "", capKey = ""; const clientVersion = "1.92.62"; const timestamp = Date.now(); // 提取信息 const rawDeviceId = base.getStorage("deviceid") || ""; const deviceId = /(\w{32})/.exec(rawDeviceId?.split?.(",")?.[0])?.[0] || ""; // 32 位设备 ID for (let i = 0; i < localStorage.length; i++) { const key = localStorage.key(i); const val = base.getStorage(key); if (key.startsWith("credentials_")) { creds = val || {}; userId = creds?.user_id || ""; clientId = key.split("_")[1]; credsKey = key; capKey = `captcha_${clientId}`; } else if (key.startsWith("captcha_")) { cap = val || {}; if (!clientId) { clientId = key.split("_")[1]; capKey = key; credsKey = `credentials_${clientId}`; } } } // 基本校验,无客户端 ID 或设备 ID 直接抛错 if (!clientId || !deviceId) throw new Error(`错误:
请先登录网盘后再获取文件呢~`); // 检查并刷新 Credentials const credsExpiresAt = creds?.expires_at ? new Date(creds.expires_at).getTime() : 0; // 提前 60 秒算作过期,防止临界点请求失效 const isCredsExpired = force || !creds?.access_token || Date.now() >= (credsExpiresAt - 60000); if (isCredsExpired) { if (!creds?.refresh_token) throw new Error(`错误:
登录凭证已过期,且未检测到刷新令牌,请重新登录网盘~`); $doc.find(".loading-popup .swal2-html-container").html(`
登录凭证过期,正在获取新凭证~
`); try { const credsRes = await base.post(config.$xunlei.api.getAccessToken, { client_id: clientId, grant_type: "refresh_token", refresh_token: creds.refresh_token }, { "Content-Type": "application/json", "x-action": "401", "x-client-id": clientId, "x-device-id": rawDeviceId, "x-device-sign": deviceId, "x-protocol-version": "301", "x-sdk-version": "3.4.20" }); if (credsRes?.access_token) { creds = { ...creds, ...credsRes, expires_at: new Date(timestamp + (credsRes.expires_in || 43200) * 1000).toISOString() }; userId = creds.user_id || userId; base.setStorage(credsKey, creds); } else { throw new Error(credsRes?.error_description || credsRes?.error || "未知错误"); } } catch (e) { throw new Error(`错误:
身份凭证刷新失败:${e.message || e}`, { cause: e }); } } // 检查并刷新 Captcha const capExpiresAt = cap?.expires_at ? new Date(cap.expires_at).getTime() : 0; const isCapExpired = force || !cap?.token || Date.now() >= (capExpiresAt - 60000); if (isCapExpired) { $doc.find(".loading-popup .swal2-html-container").html(`
验证令牌过期,正在获取新令牌~
`); try { const capRes = await base.post(config.$xunlei.api.getCaptchaToken, { client_id: clientId, action: "get:/drive/v1/about", device_id: deviceId, meta: { username: "", phone_number: "", email: "", package_name: location.host, client_version: clientVersion, captcha_sign: this._getCaptchaSign(clientId, clientVersion, location.host, deviceId, timestamp.toString()), timestamp: timestamp.toString(), user_id: userId } }, { "Content-Type": "application/json" }); if (capRes?.captcha_token) { cap = { token: capRes.captcha_token, expires_at: new Date(timestamp + capRes.expires_in * 1000).toString() }; base.setStorage(capKey, cap); } else { throw new Error(capRes?.error_description || capRes?.error || "未知错误"); } } catch (e) { throw new Error(`错误:
验证令牌刷新失败:${e.message || e}`, { cause: e }); } } // 终极校验 if (!creds?.access_token || !cap?.token) throw new Error(`错误:
获取令牌失败,请重新登录网盘~`); return { credentials: creds, captcha: cap, device_id: deviceId }; }); }, async getFileUrl(item, index, isRetry = false) { if (item.downloadUrl) return { index, downloadUrl: item.downloadUrl }; // 获取当前内存中的 token const token = await this.getToken(false, false).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[迅雷云盘] 获取令牌失败"); }); const res = await base.get(config.$xunlei.api.getLink + item.id, { "Authorization": `${token.credentials?.token_type} ${token.credentials?.access_token}`, "Content-Type": "application/json", "X-Captcha-Token": token.captcha.token, "X-Device-Id": token.device_id }); if (res.web_content_link) { return { index, downloadUrl: res.web_content_link }; } else { // 令牌过期 if (res.error_code == 9) { // 递归重试一次,isRetry=true 防止死循环 if (!isRetry) { await this.getToken(true, false); return await this.getFileUrl(item, index, true); } else { return { index, downloadUrl: "获取下载地址失败,服务器说:页面的验证令牌过期了,请再重新获取一次吧~" }; } } return { index, downloadUrl: `获取下载地址失败,${res.error_description ? "服务器说:" + res.error_description : "刷新后再试试吧~"}` }; } }, async getLink() { const selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => item.kind !== "drive#file")) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { const batchSize = 15; let proc = 0; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[迅雷云盘] 获取下载地址失败"); }); res.forEach(val => { selects[val.index].downloadUrl = val.downloadUrl; }); await base.sleep(1000); } } else { throw new Error("提示:
页面错误~"); } temp.files = [selects, { get: { dir: v => v.kind === "drive#folder", name: v => v.name, size: v => v.size, link: v => v.downloadUrl, morror: v => base.getMirrorList(v, config.$xunlei.api.mirror), }, headers: {}, convert: {}, dom: { tooltip: config.$xunlei.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); }, getSelectedList() { try { const doms = document.querySelectorAll(`[class*="SourceListItem__item--"]`), list = []; if (doms.length) for (const dom of doms) { const domVue = dom.__vue__; if (domVue?.selected?.includes?.(domVue.info.id)) list.push(domVue.info); } return base.clone(list); } catch { return []; } }, detectPage() { const path = location.pathname; if (/^\/$/.test(path)) return "home"; if (/^\/(s|share)\//.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.addPageListener(); }, }; /** * 光鸭云盘 * @author hmjz100 */ const $guangya = { addPageListener() { this.getShareToken(true).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[光鸭云盘] 获取分享令牌失败"); }); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$guangya !== true) return; base.adaptiveThemeOverride([ ["#ff6800", temp.color], ["#F06200", `${temp.color}D0`], ["#FFA70E", `${temp.color}20`], ["#FFC30E", `${temp.color}10`], ], "other"); // base.addStyle(`${mount}-guangya`, "style", ``); }, svg: ``, addButton() { const $button = $(``); base.waitForKeyElements(config.$guangya.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; $button.addClass([...document.querySelector(`[class*="ant-btn css-"]`).className.match(/css-[a-z0-9]+ css-var-[a-z0-9_]+/g) || []].join(' ')); $button.find(".pl-dropdown-menu").css({ "top": "34px" }); element.prepend($button); }); base.waitForKeyElements(config.$guangya.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; $button.addClass([...document.querySelector(`[class*="ant-btn css-"]`).className.match(/css-[a-z0-9]+ css-var-[a-z0-9_]+/g) || []].join(' ')); $button.addClass("ant-btn-lg"); $button.find(".pl-dropdown-menu").addClass("reverse").css({ "bottom": "46px" }); element.append($button); }); }, addInitButton() { const $button = $(``); $button.click(base.showInitDialog); base.waitForKeyElements(config.$guangya.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; $button.addClass([...document.querySelector(`[class*="ant-btn css-"]`).className.match(/css-[a-z0-9]+ css-var-[a-z0-9_]+/g) || []].join(' ')); $button.find(".pl-dropdown-menu").css({ "top": "34px" }); element.prepend($button); }); base.waitForKeyElements(config.$guangya.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; $button.addClass([...document.querySelector(`[class*="ant-btn css-"]`).className.match(/css-[a-z0-9]+ css-var-[a-z0-9_]+/g) || []].join(' ')); $button.addClass("ant-btn-lg"); $button.find(".pl-dropdown-menu").css({ "bottom": "46px" }); element.append($button); }); }, getToken() { $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取状态~
`); let credentials = {}, captcha = {}; for (let i = 0; i < localStorage.length; i++) { if (/^credentials_/.test(localStorage.key(i))) { credentials = base.getStorage(localStorage.key(i)); base.setStorage(""); } if (/^captcha_[\w]{16}/.test(localStorage.key(i))) { captcha = base.getStorage(localStorage.key(i)); } } const deviceid = /(\w{32})/.exec(base.getStorage("deviceid").split(","))[0]; const token = { credentials, captcha, deviceid }; return token; }, async getShareToken(isWaitForType, token) { const url = new URL(window.location.href); const shareId = url.pathname.match?.(/\/s\/([^/?#]+)/)?.[1] || null; const urlCode = url.searchParams.get('code'); let code = urlCode; if (!urlCode) { if (!code && this.getShareToken.code) { code = this.getShareToken.code; } if (!code && isWaitForType) { base.waitForKeyElements(`input.ant-input[type=text]`, (element) => { if (element.data('code-listener-bound')) return; element.data('code-listener-bound', true); element.on('input', (e) => { const val = e.target.value.trim(); if (val) this.getShareToken.code = val; }); }); return; } } const res = await base.post(config.$guangya.api.getShareToken, { "shareId": shareId, "code": code }, { "Authorization": `${token.credentials?.token_type} ${token.credentials?.access_token}`, "Content-Type": "application/json", "X-Captcha-Token": token.captcha.captcha_token, "X-Device-Id": token.deviceid }); if (res.data?.accessToken) return res.data.accessToken; else throw new Error(`提示:
获取分享令牌失败,${res.msg ? "服务器说:" + res.msg + "。" : "刷新后再试试吧~"}`); }, async getFileUrl(item, index, token, shareToken) { try { let res; if (item.downloadUrl) return { index, downloadUrl: item.downloadUrl }; if (shareToken) { res = await base.post(config.$guangya.api.getShareLink, { "fileId": item.fileId, "accessToken": shareToken }, { "Authorization": `${token.credentials?.token_type} ${token.credentials?.access_token}`, "Content-Type": "application/json", "X-Captcha-Token": token.captcha.captcha_token, "X-Device-Id": token.deviceid }); } else { res = await base.post(config.$guangya.api.getLink, { "fileId": item.fileId }, { "Authorization": `${token.credentials?.token_type} ${token.credentials?.access_token}`, "Content-Type": "application/json", "X-Captcha-Token": token.captcha.captcha_token, "X-Device-Id": token.deviceid }); } if (res.data?.signedURL || res.data?.downloadUrl) { return { index, downloadUrl: res.data?.signedURL ?? res.data?.downloadUrl }; } else if (res.code) { if (res.code == 9) return { index, downloadUrl: "获取下载地址失败,服务器说:页面验证过期了,刷新后再获取吧~" }; if (res.code == 103) return { index, downloadUrl: "获取下载地址失败,服务器说:后端 RPC 响应超时。脚本建议:再重新获取一次~" }; if (res.code == 207) return { index, downloadUrl: "获取下载地址失败,服务器说:分享者未打开免登录下载。请登录后下载~" }; } else { return { index, downloadUrl: `获取下载地址失败,${res.msg ? "服务器说:" + res.msg + "。" : "刷新后再试试吧~"}` }; } } catch { throw new Error("提示:
请先登录网盘后再刷新页面呢~"); } }, async getLink() { const selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => item.resType == 2)) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { const token = this.getToken(); const batchSize = 15; let proc = 0; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex, token) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[光鸭云盘] 获取文件下载地址失败"); }); res.forEach(val => { selects[val.index].downloadUrl = val.downloadUrl; }); await base.sleep(1000); } } else if (temp.page === "share") { const token = this.getToken(); const shareToken = await this.getShareToken(false, token).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[光鸭云盘] 获取分享令牌失败"); }); const batchSize = 15; let proc = 0; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex, token, shareToken) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[光鸭云盘] 获取文件下载地址失败"); }); res.forEach(val => { selects[val.index].downloadUrl = val.downloadUrl; }); await base.sleep(1000); } } else { throw new Error("提示:
页面错误~"); } temp.files = [selects, { get: { dir: v => v.resType == 2, name: v => v.fileName, size: v => v.fileSize, link: v => v.downloadUrl, }, headers: {}, convert: {}, dom: { tooltip: config.$guangya.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); }, getSelectedList() { try { const selectedList = []; const reactDom = document.querySelector(`.swangpan-file-list__root[data-ui="file-list"]`); const reactObj = base.findReact(reactDom); const props = reactObj.pendingProps; if (props) { const fileList = props.dataSource || []; const selectedKeys = props.selectedItems || []; fileList.forEach(val => { if (selectedKeys.includes(val.fileId)) selectedList.push({ ...val }); }); } return selectedList; } catch { return []; } }, detectPage() { const path = location.pathname; if (/^\/$/.test(path)) return "home"; if (/^\/(s|share)\//.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.addPageListener(); }, }; /** * 夸克网盘 * @author 油小猴 * @author hmjz100 */ const $quark = { addPageListener() { $doc.on("click", ".pl-button-save", async (e) => { e.preventDefault(); const selections = temp.main.getSelectedList(); if (selections.length === 0) { return message.error("提示:
请勾选要保存到网盘的文件哦~"); } message.info("提示:
因网盘限制,请保存到自己网盘后再去下载哦~"); await base.sleep(500); document.querySelector(".share-path").click(); base.waitForKeyElements(".btn-file.btn-file-primary.confirm-btn", (element) => { element.one("click", async () => { await base.sleep(1000); document.querySelector(".share-save").click(); }); return true; }, true) }); }, greenerPage() { base.waitForKeyElements(`[class*="Activity--video-toolbar-activity"]`, (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(`span[class*="SectionHeaderController--icon-download"]`, (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(`div[class*="SectionHeaderController--download-popover"]`, (tag) => { tag.find(".ant-popover-arrow").css({ "left": "75%" }); }, true); base.waitForKeyElements(`div[class*="DetailLayout--client-download"]`, (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(".next-box.share-right-side-content", (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(`[class*="DetailLayout--container"] .feature-screen`, (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(".ant-modal-content .ant-modal-body .right-wrap", (tag) => { if (tag.find(".hint").text().includes("客户端")) tag.fadeOut(); }, true); base.waitForKeyElements(".pc-member-entrance span.button-text", (tag) => { tag.text("会员中心"); const observer = new MutationObserver(mutations => { mutations.forEach(() => { if (tag.text() === "会员中心") return; tag.text("会员中心"); }); }); const config = { subtree: true, characterData: true, childList: true }; observer.observe(tag[0], config); }, true); base.waitForKeyElements(".pc-member-entrance .tips", (tag) => { tag.fadeOut(); }, true); base.waitForKeyElements(".modal .modal-content .halo-animated-background .halo-content .pay-modal .close", (tag) => { tag[0].click(); }, true); base.waitForKeyElements(".modal .modal-content .halo-animated-background .halo-content .red-envelope .close", (tag) => { tag[0].click(); }, true); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$quark !== true) return; base.adaptiveThemeOverride([ ["#0d53ff", temp.color], ["#e6f1ff", `${temp.color}20`], ["#f0faff", `${temp.color}20`], ["#7da3ff", `${temp.color}D0`], ["#ddd", `${temp.color}D0`], ["17,17,17,.9", base.hexToRgba(`${temp.color}D0`)], ["40,40,255,.04", base.hexToRgba(`${temp.color}20`)], ["#f7f7ff", "transparent"], ["238,247,255,0", base.hexToRgba(`${temp.color}00`)], ]); base.addStyle(`${mount}-quark`, "style", `.file-list .hover-oper .hover-transparent-bg{background:transparent!important} .ant-checkbox-wrapper .ant-checkbox-checked .ant-checkbox-inner,.ant-checkbox-wrapper .ant-checkbox-indeterminate .ant-checkbox-inner:after{background-color:${temp.color}!important}`); }, svg: "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTUgNHYxSDIuNWEuNS41IDAgMCAwLS41LjV2OGEuNS41IDAgMCAwIC41LjVoMTFhLjUuNSAwIDAgMCAuNS0uNXYtOGEuNS41IDAgMCAwLS41LS41SDExVjRoMi41QTEuNSAxLjUgMCAwIDEgMTUgNS41djhhMS41IDEuNSAwIDAgMS0xLjUgMS41aC0xMUExLjUgMS41IDAgMCAxIDEgMTMuNXYtOEExLjUgMS41IDAgMCAxIDIuNSA0em0zLjUtM3Y2LjVoMWwuMDg1LjAwN0EuNS41IDAgMCAxIDkuOSA4LjNsLTEuNDkyIDEuOTktLjAwOC4wMTRhLjUuNSAwIDAgMS0uOC0uMDA0bC0xLjUtMi0uMDQ2LS4wNzNBLjUuNSAwIDAgMSA2LjUgNy41aDFWMXoiLz48L3N2Zz4=", addButton() { base.waitForKeyElements(config.$quark.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(`
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); $button.css({ "margin-right": "16px" }); element.prepend($button); }); base.waitForKeyElements(config.$quark.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); $button.css({ "height": "36px", "margin-left": "16px", "border-radius": "6px", "display": "inline-block" }); element.append($button); }); }, addInitButton() { base.waitForKeyElements(config.$quark.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(``); $button.css({ "margin-right": "16px", "display": "inline-block" }); $button.click(base.showInitDialog); element.prepend($button); }); base.waitForKeyElements(config.$quark.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); $button.css({ "height": "36px", "margin-left": "16px", "border-radius": "6px", "display": "inline-block" }); $button.click(base.showInitDialog); element.append($button); }); }, async getSocialToken() { const now = Date.now(); // 检查缓存的令牌 const cachedToken = base.getValue("quark_social_token"); if (cachedToken && cachedToken.token && cachedToken.expired_timestamp) { // 如果令牌未过期(预留60秒缓冲时间),直接返回缓存的令牌 if (cachedToken.expired_timestamp > now + 60000) { return cachedToken.token; } } const time = Math.floor(now / 1e3); const res = await base.post(config.$quark.api.getSocialToken, { "conversation_id": "300000" + time, "conversation_type": 3, "msg_id": time + "000" }, { "Content-Type": "application/json", "Cookie": String(document.cookie), "User-Agent": config.$quark.api.ua.main }); if (!res || res.code !== 0 || !res.data?.token) { if (res.code == 31001) throw new Error("提示:
请先登录网盘~
代码:" + res.code); if (res.code || res.message) { throw new Error(`提示:
获取令牌失败了~
${res.code ? res.code : ""} ${res.message ? res.message : ""}`); } else { throw new Error("提示:
获取令牌失败,刷新网页后再试试吧~"); } } // 缓存令牌数据 base.setValue("quark_social_token", res.data); return res?.data?.token || ""; }, async getLink() { let selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => !item.file)) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { const data = []; const batchSize = 15; let proc = 0; selects = selects.filter(item => item.file === true) for (let i = 0; i < selects.length; i += batchSize) { // 获取当前批次文件 const batch = selects.slice(i, i + batchSize); const fids = batch.map(item => item.fid); const token = await this.getSocialToken(); // 发起请求获取地址 const res = await base.post(config.$quark.api.getLink, { "fids": fids, "speedup_session": "", "token": token }, { "Content-Type": "application/json", "Cookie": String(document.cookie), "User-Agent": config.$quark.api.ua.main }); if (!res || res.code !== 0 || !res.data) { if (res.code == 31001) throw new Error("提示:
请先登录网盘~
代码:" + res.code); if (res.code == 23018) { const fid = res.message?.match(/\[([a-f0-9]{32})\]/)?.[1]; const item = batch.find(item => item.fid === fid); throw new Error(`提示:
超出游客可获取大小限制
请登录后获取哦~${item?.file_name ? `
文件:${item.file_name}` : ""}`); } base.delValue("quark_social_token"); if (res.code || res.message) { throw new Error(`提示:
获取地址失败了~
${res.code ? res.code : ""} ${res.message ? res.message : ""}`); } else { throw new Error("提示:
获取下载地址失败,刷新网页后再试试吧~"); } } // 合并响应数据 if (res.data) data.push(...res.data); // 更新处理进度 proc += batch.length; // 更新UI显示 $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); // 请求间隔节流 await base.sleep(1000); } temp.files = [data, { get: { dir: v => v.file === false, name: v => v.file_name, size: v => v.size, link: v => v.download_url, }, headers: { "User-Agent": config.$quark.api.ua.main, "Cookie": String(document.cookie) }, convert: {}, dom: { tooltip: config.$quark.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 412) return ` 服务器说:需要登录才能下载~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else if (temp.page === "share") { const pwd_id = unsafeWindow.factStat?.ut?.baseParams?.pwd_id || // fast unsafeWindow.factStat?.wa?.customStatParams?.pwd_id || // drive location.pathname.match(/^\/(?:s|share)\/([a-zA-Z0-9]+)/)?.[1]; // 兜底 if (!pwd_id) throw new Error("错误:
无法提取分享 ID~"); temp.pugs = temp.pugs || base.standCookies(document.cookie, "cookie")?.__pugs || ""; const cookie = `__pugs=${temp.pugs}`; const data = []; const batchSize = 15; let proc = 0; selects = selects.filter(item => item.file === true) for (let i = 0; i < selects.length; i += batchSize) { // 获取当前批次文件 const batch = selects.slice(i, i + batchSize); const fids = batch.map(item => item.fid); const fids_token = batch.map(item => item.share_fid_token); const token = await this.getSocialToken().catch(() => ""); // 发起请求获取地址 let res = await base.post(config.$quark.api.getLink, { "fids": fids, "fids_token": fids_token, pwd_id, "stoken": batch[0].stoken, "speedup_session": "", "token": token }, { "Content-Type": "application/json", "Cookie": cookie, "User-Agent": config.$quark.api.ua.main }, "json", true, true); if (!temp.pugs && res?.responseHeaders?.["Set-Cookie"]?.__pugs) temp.pugs = res?.responseHeaders?.["Set-Cookie"]?.__pugs; res = res.responseDecode ?? res.response ?? res.responseText; if (!res || res.code !== 0 || !res.data) { if (res.code == 31001) throw new Error("提示:
请先登录网盘~
代码:" + res.code); if (res.code == 23018) { const fid = res.message?.match(/\[([a-f0-9]{32})\]/)?.[1]; const item = batch.find(item => item.fid === fid); throw new Error(`提示:
超出游客可获取大小限制
请登录后获取哦~${item?.file_name ? `
文件:${item.file_name}` : ""}`); } if (res.code || res.message) { throw new Error(`提示:
获取地址失败了~
${res.code ? res.code : ""} ${res.message ? res.message : ""}`); } else { throw new Error("提示:
获取下载地址失败,刷新网页后再试试吧~"); } } // 合并响应数据 if (res.data) data.push(...res.data); // 更新处理进度 proc += batch.length; // 更新UI显示 $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); // 请求间隔节流 await base.sleep(1000); } temp.files = [data, { get: { dir: v => v.file === false, name: v => v.file_name, size: v => v.size, link: v => v.download_url, }, headers: { "User-Agent": config.$quark.api.ua.main, "Cookie": temp.pugs ? cookie : String(document.cookie) }, convert: {}, dom: { tooltip: config.$quark.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 412) return ` 服务器说:需要登录才能下载~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else { throw new Error("提示:
页面错误~"); } }, getSelectedList() { try { const selectedList = []; const reactDom = document.getElementsByClassName("file-list")[0]; const reactObj = base.findReact(reactDom); const props = reactObj.props; if (props) { const stoken = props.stoken || ""; const fileList = props.list || []; const selectedKeys = props.selectedRowKeys || []; fileList.forEach(val => { if (selectedKeys.includes(val.fid)) selectedList.push({ ...val, stoken }); }); } return selectedList; } catch { return []; } }, detectPage() { const path = location.pathname; if (/^\/(list)/.test(path)) return "home"; if (/^\/(s|share)\//.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.addPageListener(); }, }; /** * UC网盘 * @author 油小猴 * @author hmjz100 */ const $uc = { addPageListener() { $doc.on("click", ".pl-button-save", async (e) => { e.preventDefault(); const selections = temp.main.getSelectedList(); if (selections.length === 0) { return message.error("提示:
请勾选要保存到网盘的文件哦~"); } message.info("提示:
因网盘限制,请保存到自己网盘后再去下载哦~"); await base.sleep(500); document.querySelector(".file-info_r").click(); }); }, greenerPage() { base.waitForKeyElements(`[class*="VideoDetail--content-footer"]`, (tag) => { tag.children().each((_, element) => { const $child = $(element); if ($child.text().includes("手机客户端")) $child.hide(); }); }, true); base.waitForKeyElements(`[class*="PCLandingBanner--ad-block"]`, (tag) => { tag.hide(); }, true); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$uc !== true) return; base.adaptiveThemeOverride([ ["#12161a", temp.color], ["#e6f1ff", `${temp.color}20`], ["#f0faff", `${temp.color}20`], ["#7da3ff", `${temp.color}D0`], ["#ddd", `${temp.color}D0`], ["17,17,17,.9", base.hexToRgba(`${temp.color}D0`)], ["40,40,255,.04", base.hexToRgba(`${temp.color}20`)], ["#f7f7ff", "transparent"], ["238,247,255,0", base.hexToRgba(`${temp.color}00`)], ]); base.addStyle(`${mount}-uc`, "style", `.file-list .hover-oper .hover-transparent-bg{background:transparent!important}`); }, svg: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9IiNGRkZGRkYiIHN0cm9rZS13aWR0aD0iMiI+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBkPSJNOSAxMmwyIDIgMi0yeiIvPjxwYXRoIGQ9Ik0xNCA4aDEuNTUzYy44NSAwIDEuMTYuMDkzIDEuNDcuMjY3LjMxMS4xNzQuNTU2LjQzLjcyMi43NTYuMTY2LjMyNi4yNTUuNjUuMjU1IDEuNTR2NC44NzNjMCAuODkyLS4wODkgMS4yMTUtLjI1NSAxLjU0LS4xNjYuMzI3LS40MS41ODMtLjcyMi43NTctLjMxLjE3NC0uNjIuMjY3LTEuNDcuMjY3SDYuNDQ3Yy0uODUgMC0xLjE2LS4wOTMtMS40Ny0uMjY3YTEuNzc4IDEuNzc4IDAgMDEtLjcyMi0uNzU2Yy0uMTY2LS4zMjYtLjI1NS0uNjUtLjI1NS0xLjU0di00Ljg3M2MwLS44OTIuMDg5LTEuMjE1LjI1NS0xLjU0LjE2Ni0uMzI3LjQxLS41ODMuNzIyLS43NTcuMzEtLjE3NC42Mi0uMjY3IDEuNDctLjI2N0gxMSIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTExIDN2MTAiLz48L2c+PC9zdmc+", addButton() { base.waitForKeyElements(config.$uc.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(`
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); $button.css({ "margin-right": "10px", "display": "inline-block" }); element.prepend($button); }); base.waitForKeyElements(config.$uc.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(`
  • API 下载
  • cURL 下载
  • Aria2 下载
  • 彗星下载
  • ABDM 下载
  • 助手设置
  • 助手美化
  • 更新日志
`); $button.css({ "margin-left": "10px", "display": "inline-block" }); element.append($button); }); }, addInitButton() { const $button = $(`
`); $button.click(base.showInitDialog); base.waitForKeyElements(config.$uc.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; $button.css({ "margin-right": "10px", "display": "inline-block" }); element.prepend($button); }); base.waitForKeyElements(config.$uc.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; $button.css({ "margin-left": "10px", "display": "inline-block" }); element.append($button); }); }, async getLink() { let selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => !item.file)) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { const data = []; const batchSize = 15; let proc = 0; selects = selects.filter(item => item.file === true) for (let i = 0; i < selects.length; i += batchSize) { // 获取当前批次文件 const batch = selects.slice(i, i + batchSize); const fids = batch.map(item => item.fid); // 发起请求获取地址 const res = await base.post(config.$uc.api.getLink, { "fids": fids }, { "Content-Type": "application/json", "Cookie": String(document.cookie), "User-Agent": config.$uc.api.ua.main, "Sec-Ch-Ua": config.$uc.api.ua.secCh }); if (!res || res.code !== 0 || !res.data) { if (res.code == 31001) throw new Error("提示:
请先登录网盘~
代码:" + res.code); if (res.code == 23018) { const fid = res.message?.match(/\[([a-f0-9]{32})\]/)?.[1]; const item = batch.find(item => item.fid === fid); throw new Error(`提示:
超出游客可获取大小限制
请登录后获取哦~${item?.file_name ? `
文件:${item.file_name}` : ""}`); } if (res.code || res.message) { throw new Error(`提示:
获取地址失败了~
${res.code ? res.code : ""} ${res.message ? res.message : ""}`); } else { throw new Error("提示:
获取下载地址失败,刷新网页后再试试吧~"); } } // 合并响应数据 if (res.data) data.push(...res.data); // 更新处理进度 proc += batch.length; // 更新UI显示 $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); // 请求间隔节流 await base.sleep(1000); } temp.files = [data, { get: { dir: v => v.file === false, name: v => v.file_name, size: v => v.size, link: v => v.download_url, }, headers: { "User-Agent": config.$uc.api.ua.main, "Sec-Ch-Ua": config.$uc.api.ua.secCh }, convert: {}, dom: { tooltip: config.$uc.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.responseText?.includes?.("require login")) return ` 服务器说:需要登录才能下载~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else if (temp.page === "share") { const pwd_id = unsafeWindow.factStat?.ut?.baseParams?.pwd_id || // fast unsafeWindow.factStat?.wa?.customStatParams?.pwd_id || // drive location.pathname.match(/^\/(?:s|share)\/([a-zA-Z0-9]+)/)?.[1]; // 兜底 if (!pwd_id) throw new Error("错误:
无法提取分享 ID~"); const data = []; const batchSize = 15; let proc = 0; selects = selects.filter(item => item.file === true) for (let i = 0; i < selects.length; i += batchSize) { // 获取当前批次文件 const batch = selects.slice(i, i + batchSize); const fids = batch.map(item => item.fid); const fids_token = batch.map(item => item.share_fid_token); // 发起请求获取地址 const res = await base.post(config.$uc.api.getLink, { "fids": fids, "fids_token": fids_token, pwd_id, "stoken": batch[0].stoken }, { "Content-Type": "application/json", "Cookie": String(document.cookie), "User-Agent": config.$uc.api.ua.main, "Sec-Ch-Ua": config.$uc.api.ua.secCh }); if (!res || res.code !== 0 || !res.data) { if (res.code == 31001) throw new Error("提示:
请先登录网盘~
代码:" + res.code); if (res.code == 23018) { const fid = res.message?.match(/\[([a-f0-9]{32})\]/)?.[1]; const item = batch.find(item => item.fid === fid); throw new Error(`提示:
超出游客可获取大小限制
请登录后获取哦~${item?.file_name ? `
文件:${item.file_name}` : ""}`); } if (res.code || res.message) { throw new Error(`提示:
获取地址失败了~
${res.code ? res.code : ""} ${res.message ? res.message : ""}`); } else { throw new Error("提示:
获取下载地址失败,刷新网页后再试试吧~"); } } // 合并响应数据 if (res.data) { data.push(...res.data); } // 更新处理进度 proc += batch.length; // 更新UI显示 $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); // 请求间隔节流 await base.sleep(1000); } temp.files = [data, { get: { dir: v => v.file === false, name: v => v.file_name, size: v => v.size, link: v => v.download_url, }, headers: { "User-Agent": config.$uc.api.ua.main, "Sec-Ch-Ua": config.$uc.api.ua.secCh }, convert: {}, dom: { tooltip: config.$uc.dom, download: { error: (error) => { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.responseText?.includes?.("require login")) return ` 服务器说:需要登录才能下载~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else { throw new Error("提示:
页面错误~"); } }, getSelectedList() { try { const selectedList = []; const reactDom = document.getElementsByClassName("file-list")[0]; const reactObj = base.findReact(reactDom); const props = reactObj.props; if (props) { const stoken = props.stoken || ""; const fileList = props.list || []; const selectedKeys = props.selectedRowKeys || []; fileList.forEach(val => { if (selectedKeys.includes(val.fid)) selectedList.push({ ...val, stoken }); }); } return selectedList; } catch { return []; } }, detectPage() { const path = location.pathname; if (/^\/(list)/.test(path)) return "home"; if (/^\/(s|share)\//.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } this.addPageListener(); }, }; /** * 123云盘 * @author 油小猴 * @author hmjz100 */ const $123pan = { greenerPage() { // 旧版 分享 登录按钮 base.waitForKeyElements(".cent > .cent-not-login > .ant-btn", (tag) => { if (tag.hasClass("reg") || tag.hasClass("log")) return; tag.addClass("reg"); tag.removeClass("loginRight"); tag.find("span").text("注册"); if (tag.next().hasClass("log")) return; const button = $(``); button.on("click", () => { const login = new URL(`https://user.123pan.cn/centerlogin`); login.searchParams.set("redirect_url", location.href); location.href = login; }); tag.after(button); }); // 旧版 分享 按钮去除文本 base.waitForKeyElements(`.rightInfo .register:not(.pl-button, .pl-button-init), .homeClass > div > .ant-dropdown-trigger:not(.pl-button, .pl-button-init), .homeClass > div > .sysbut`, (tag) => { let hasTextNode = false; tag.contents().each((_, element) => { if (element.nodeType === 3 && $.trim(element.textContent)) { hasTextNode = true; return; } }); if (!hasTextNode) return; tag.css({ "width": "38px" }); tag.contents().each((_, element) => { if (element.nodeType === 3) $(element).remove(); }); tag.find("svg").css({ "margin-right": "0" }); }); // 新版 分享 登录按钮 base.waitForKeyElements(".share-header_center > .share-header_center-not-login > .loginRight", (tag) => { if (tag.hasClass("reg") || tag.hasClass("log")) return; tag.addClass("reg").text("注册"); if (tag.next().hasClass("log")) return; const button = $(``); // 加个跳转到原页面也不难吧? button.on("click", () => { const login = new URL(`https://user.123pan.cn/centerlogin`); login.searchParams.set("redirect_url", location.href); location.href = login; }); tag.after(button); try { const container = tag.closest(".share-header_center-not-login"); if (container.length && !container.data("logObserverAttached")) { container.data("logObserverAttached", true); const observer = new MutationObserver((mutations) => { for (const m of mutations) { if (!m.removedNodes) continue; for (const n of m.removedNodes) { if (!(n instanceof HTMLElement)) continue; // 如果被移除的节点是注册按钮或其包含注册按钮的容器,则清理登录按钮 if (n.classList && (n.classList.contains("reg") || n.querySelector && n.querySelector(".reg"))) { try { container.find(".log").remove(); } catch { } } } } }); observer.observe(container[0], { childList: true, subtree: true }); container.data("logObserver", observer); } } catch { } }); // 新版 分享 超限登录 base.waitForKeyElements(".login-footer-240828", (tag) => { if (tag.find(".replaced").length) return; tag.children().each((_, element) => { const $child = $(element); if ($child.hasClass("pointer-text")) { const button = $(``); button.on("click", () => { if ($child.text().includes("登录")) { const login = new URL(`https://user.123pan.cn/centerlogin`); login.searchParams.set("redirect_url", location.href); location.href = login; } else { return $child.click(); } }); $child.after(button); $child.hide(); } }); }, true); // 旧版 主页 播放器会员广告 base.waitForKeyElements(".new-menu-item-image, .special-menu-item-container-migration--label, .sider-member-btn, .video-new-user-tips", (tag) => { if (tag.is(":hidden")) return; tag.hide(); }, true); // 新版 主页 顶栏会员中心按钮广告 base.waitForKeyElements(`[class^="frontendLayoutHeaderRight"] > a[class^="memberButtonLink"]`, (tag) => { const next = tag.next("a[class*='ButtonInviteNew']"); if (tag.is(":hidden") || !next.length) return; tag.hide(); const button = next.clone(); button.find("img").hide(); button.attr("href", tag.attr("href")); button.text("会员中心"); button.on("click", () => { tag.click() }); tag.after(button); }, true); // 新版 主页 顶栏会员中心按钮广告 base.waitForKeyElements(`[class^="frontendLayoutHeaderRight"] > a[class*="ButtonInviteNew"]`, (tag) => { if (tag.find(`[class*="ButtonInviteNew-image"]`).is(":hidden")) return; tag.find(`[class*="ButtonInviteNew-image"]`).hide(); }, true); // 新版 主页/分享 顶部会员广告 base.waitForKeyElements(`.mfy-main-layout__head > [class*="carousel"]:has([class^="vipBanner"]), .mfy-main-layout__head > .ant-carousel:has(.VipBanner), .app-wrap>div[style*="100%"]:has(img[src*="banner"])`, (tag) => { tag.hide(); }, true); // 新版 主页 弹窗会员广告 base.waitForKeyElements(`[class^="splashScreenModal"]:has([class*="splashScreenModal__image"][style*="ad"]), .splash-screen-modal:has([class*="image"][style*="ad"])`, (tag) => { tag.hide(); tag.find(`button[class*="close"]`).click(); }, true); // 分享 手机二维码 base.waitForKeyElements(`.rightInfo > [class*="mfy_h-popover-module__root"]:has(.qrcode_btn)`, (tag) => { tag.hide(); }, true); }, beautifyPage() { if (base.getValue("setting_ui_theme").custom.$123pan !== true) return; base.adaptiveThemeOverride([ ["#597dfc", temp.color], ["#5a7cfc", temp.color], ["#2A82E4", temp.color], ["#51a1f0", temp.color], ["#597DFC", temp.color], ["#40a9ff", temp.color], ["#3c80ff", temp.color], ["#3C80FF", temp.color], ["#1677ff", temp.color], ["#1890ff", temp.color], ["#0958d9", temp.color], ["#F0F8FF", `${temp.color}10`], ["#f0f9ff", `${temp.color}20`], ["#F2F5FF", `${temp.color}20`], ["#C5E1FF", `${temp.color}20`], ["#2961D9", `${temp.color}20`], ["#b8d8ff", `${temp.color}20`], ["#325cf0", `${temp.color}D0`], ["#66A1FF", `${temp.color}D0`], ["#69b1ff", `${temp.color}D0`], ["60, 128, 255", base.hexToRgba(temp.color)], ["42, 130, 228", base.hexToRgba(temp.color)], ["89, 125, 252", base.hexToRgba(temp.color)], ]); }, getToken() { $doc.find(".loading-popup .loading-title").html(`令牌获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取令牌~
`); const token = base.getStorage("authorToken"); return token; }, getUUID() { $doc.find(".loading-popup .loading-title").html(`用户标识获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取用户标识~
`); const uuid = base.getStorage("LoginUuid"); return uuid; }, async getLink() { let selects = this.getSelectedList(); if (selects.length === 0) throw new Error("提示:
请先勾选要下载的文件哦~"); if (selects.every(item => item.Type !== 0)) throw new Error("提示:
请打开文件夹后再勾选文件~"); if (temp.page === "home") { const token = this.getToken(); const uuid = this.getUUID(); const batchSize = 15; let proc = 0; selects = selects.filter(item => item.Type === 0); for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex, token, uuid, undefined) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[123云盘] 获取文件下载地址失败"); }); res.forEach(val => { selects[val.index].DownloadUrl = val.downloadUrl; }); await base.sleep(1000); } temp.files = [selects, { get: { dir: v => v.Type !== 0, name: v => v.FileName, size: v => v.Size, link: v => v.DownloadUrl || v.DownloadURL, }, headers: {}, convert: {}, dom: { tooltip: config.$123pan.dom, download: { error(error) { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else if (temp.page === "share") { const token = this.getToken(); const uuid = this.getUUID(); const batchSize = 15; let proc = 0; selects = selects.filter(item => item.Type === 0); const pathSplit = location.pathname.split("/").filter(Boolean); const ShareKey = pathSplit[1]; for (let i = 0; i < selects.length; i += batchSize) { const batch = selects.slice(i, i + batchSize); const queue = []; $doc.find(".loading-popup .loading-title").html(`地址获取中`); $doc.find(".loading-popup .swal2-html-container").html(`
正在获取文件对应的下载地址~
`); batch.forEach((item, localIndex) => { const globalIndex = i + localIndex; queue.push(this.getFileUrl(item, globalIndex, token, uuid, ShareKey) .then(val => { proc++; $doc.find(".loading-popup .swal2-html-container").html(`
已获取 ${proc} / ${selects.length} 个地址~
`); return val; })); }); const res = await Promise.all(queue).catch(e => { if (e instanceof Error) throw e; throw new Error(e?.message || e || "[123云盘] 获取文件下载地址失败"); }); res.forEach(val => { selects[val.index].DownloadUrl = val.downloadUrl; }); await base.sleep(1000); } temp.files = [selects, { get: { dir: v => v.Type !== 0, name: v => v.FileName, size: v => v.Size, link: v => v.DownloadUrl || v.DownloadURL, }, headers: {}, convert: {}, dom: { tooltip: config.$123pan.dom, download: { error(error) { if (!error?.status) return ` 服务器未返回状态,若是下载一段时间后中断,可能是服务器返回文件长度不匹配,请重试;若是直接中断,请检查您的网络、脚本管理器扩展或浏览器~`; if (error?.status == 403) return ` 服务器说:链接已过期,关闭窗口重新获取试试吧~`; if (error?.status == 204 || error?.statusText === "IDM") return ` 服务说:链接已被 IDM 捕获~`; } } } }]; base.showMainDialog(config.base.dom.method[temp.mode].title, download.generateDOM(), config.base.dom.method[temp.mode].footer); } else { throw new Error("提示:
页面错误~"); } }, async getFileUrl(item, index, token, uuid, ShareKey) { let res; if (ShareKey) { res = await base.post(config.$123pan.api.getShareLink, { "ShareKey": ShareKey, "FileID": item.FileId, "S3keyFlag": item.S3KeyFlag, "Size": item.Size, "Etag": item.Etag }, { "Accept": "application/json, text/plain, */*", "Content-Type": "application/json; charset=UTF-8", "Authorization": `Bearer ${token}`, "User-Agent": config.$123pan.api.ua.main, "Sec-Ch-Ua": config.$123pan.api.ua.secCh, "Platform": "web", "Platform_os": config.$123pan.api.ua.os, "App-Version": config.$123pan.api.ua.version, "LoginUuid": uuid || "", "Devicename": "", "Mac-Addr": "" } ); } else { res = await base.post(config.$123pan.api.getLink, { "driveId": 0, "etag": item.Etag, "fileId": item.FileId, "s3keyFlag": item.S3KeyFlag, "type": item.Type, "fileName": item.FileName, "size": item.Size }, { "Accept": "application/json, text/plain, */*", "Content-Type": "application/json; charset=UTF-8", "Authorization": `Bearer ${token}`, "User-Agent": config.$123pan.api.ua.main, "Sec-Ch-Ua": config.$123pan.api.ua.secCh, "Platform": "web", "Platform_os": config.$123pan.api.ua.os, "App-Version": config.$123pan.api.ua.version, "LoginUuid": uuid || "", "Devicename": "", "Mac-Addr": "" } ); } if (res.data?.dispatchList?.length > 0 && res.data?.downloadPath) { // 拼接线路前缀与下载路径(默认取第一条线路) const prefix = res.data.dispatchList[0].prefix || ""; let url = `${prefix}${res.data.downloadPath}`; // 如果地址中存在需要解码的参数,保留解码逻辑 try { const surl = new URL(url).searchParams.get("params"); if (surl) url = base.decodeBase(surl); } catch { } // 如果想要得到最终跳转后的地址 // url = await base.getFinalUrl(url); return { index, downloadUrl: url }; } else if (res.code) { if (res.code == 5112) throw new Error("提示:
请先登录网盘后再获取地址呢~"); if (res.code == 5113) return { index, downloadUrl: "获取下载地址失败,服务器说:本月免费流量不足,请开通网盘会员~" }; } else { return { index, downloadUrl: `获取下载地址失败,${res.message ? "服务器说:" + res.message + "。" : "刷新后再试试吧~"}` }; } }, getSelectedList() { try { const selectedList = []; const reactDom = $(`.ant-table-wrapper, .tiled-list, .file-list, .single-file-sharing-container-content, .custom-table-wrapper, [class^="mfy_h-table-module__shell__"]`)[0]; const reactObj = base.findReact(reactDom); const props = reactObj.pendingProps; if (props) { const fileList = props?.dataSource || props?.loadedFileList || props?.files || []; const selectedKey = props?.rowSelection?.selectedRowKeys || []; fileList.forEach(val => { if (val?.checked === true) { selectedList.push(val); } else if (selectedKey.includes(val.FileId)) { selectedList.push(val); } }); if (props?.file?.S3KeyFlag) selectedList.push(props.file); } return selectedList; } catch { return []; } }, addButton() { base.waitForKeyElements(config.$123pan.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(``); $button.addClass([...document.querySelector(`.mfy-button.upload-button[class^="mfy_h-button-module"]`)?.classList || []].filter(cls => /^mfy_h-button-module__[A-Za-z0-9_-]+$/.test(cls)).join(' ')); $button.find("svg").addClass([...document.querySelector(`[class^="icon"]`)?.classList || []].filter(cls => /^icon_[A-Za-z0-9]+$/.test(cls)).join(' ')); element.prepend($button); }); base.waitForKeyElements(config.$123pan.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); $button.addClass([...document.querySelector(`button[class*="mfy_h-button-module__primary"]`)?.classList || []].filter(cls => /^mfy_h-button-module__[A-Za-z0-9_-]+$/.test(cls)).join(' ')); $(".single-file-sharing-container-content").css({ "width": "415px" }); element.append($button); }); }, addInitButton() { base.waitForKeyElements(config.$123pan.mount.home, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "home") return; const $button = $(``); $button.addClass([...document.querySelector(`.mfy-button.upload-button[class^="mfy_h-button-module"]`)?.classList || []].filter(cls => /^mfy_h-button-module__[A-Za-z0-9_-]+$/.test(cls)).join(' ')); $button.find("svg").addClass([...document.querySelector(`[class^="icon"]`)?.classList || []].filter(cls => /^icon_[A-Za-z0-9]+$/.test(cls)).join(' ')); $button.click(base.showInitDialog); element.prepend($button); }); base.waitForKeyElements(config.$123pan.mount.share, (element) => { temp.page = temp.main.detectPage(); if ($(".pl-button-init").length > 0 || !temp.page || temp.page !== "share") return; const $button = $(``); $button.addClass([...document.querySelector(`button[class*="mfy_h-button-module__primary"]`)?.classList || []].filter(cls => /^mfy_h-button-module__[A-Za-z0-9_-]+$/.test(cls)).join(' ')); $button.click(base.showInitDialog); element.append($button); }); }, detectPage() { const path = location.pathname; if (/^\/$/.test(path)) return "home"; if (/^\/(s|123pan)\//.test(path)) return "share"; return ""; }, async initPanLinker() { base.registerMenuCommand(); if (config.base.num === base.getValue("setting_init").code || config.base.license === base.getValue("setting_init").license) { this.addButton(); } else { this.addInitButton(); } }, }; // ===================================================================== // 通用外链 / 直链嗅探兜底适配器 (v1.1.5 新增) // 覆盖:蓝奏云、坚果云、腾讯微云、奶牛快传、文叔叔、OneDrive/Google Drive 分享页等 // 未在其它专属适配器中匹配的网盘,统一走此处嗅探页面中的真实下载直链。 // ===================================================================== const $sniffer = { key: "sniffer", name: "通用嗅探", // 直链候选规则 rules: [ /hhttps?:\/\/[^\s"'<>]+?\.(?:zip|rar|7z|tar|gz|xz|exe|msi|iso|dmg|apk|appimage|deb|rpm|pdf|epub|mobi|mp4|mkv|mov|avi|mp3|flac|wav|webm|jpg|jpeg|png|gif|webp|psd|docx?|xlsx?|pptx?|csv|json|xml|sql|bak|db)/i, /https?:\/\/[^\s"'<>]+?\/(?:download|file|attach|fileview|api\/v\d+\/file|getfile|fetch|preview)[^\s"'<>]*/i, /https?:\/\/(?:[a-z0-9-]+\.)?(?:lanzou|lanzo|wenshushu|niuchuan|woozooo|weiyun|orzfile)\.[^\s"'<>]{2,}\/[^\s"'<>]+/i, ], /** * 嗅探当前页面的下载直链 * @returns {Promise>} */ async sniffLinks() { const result = []; const seen = new Set(); const push = (url, name) => { if (!url || seen.has(url)) return; seen.add(url); result.push({ name: name || url.split("/").pop().split("?")[0] || "file", url, size: 0 }); }; // 1) 优先抓取带 download / data-*url 语义属性的链接 document.querySelectorAll("a[download], a[data-downloadurl], a[data-url], [data-download-url]").forEach((a) => { const url = a.href || a.getAttribute("data-downloadurl") || a.getAttribute("data-url") || a.getAttribute("data-download-url"); if (url) push(url, a.textContent.trim() || a.getAttribute("download")); }); // 2) 扫描所有链接 + 内联脚本/JSON 中的 URL 候选 const candidates = new Set(); document.querySelectorAll("a[href], link[href]").forEach((a) => { if (a.href) candidates.add(a.href); }); document.querySelectorAll("script, meta, input, textarea").forEach((el) => { const txt = el.textContent || el.value || ""; const matches = txt.match(/https?:\/\/[^\s"'\\<>]+/g) || []; matches.forEach((m) => candidates.add(m)); }); candidates.forEach((u) => { if (this.rules.some((re) => re.test(u))) push(u); }); // 3) 尝试触发一次下载按钮点击,等待动态直链注入 const dlBtn = document.querySelector( '[class*="download"], [id*="download"], button[class*="down"], .btn-download, .js-down-btn, [data-action="download"]' ); if (dlBtn && result.length === 0) { dlBtn.click(); await new Promise((r) => setTimeout(r, 800)); document.querySelectorAll("a[href]").forEach((a) => { if (a.href) candidates.add(a.href); }); candidates.forEach((u) => { if (this.rules.some((re) => re.test(u))) push(u); }); } return result; }, // 与主流程对接 async getLinks() { const list = await this.sniffLinks(); return list.map((it) => ({ name: it.name, link: it.url, size: it.size || 0 })); }, }; // 主代码 const main = { async init() { /** * 控制台输出 * @author 油小猴 * @author hmjz100 * @description 来自【网盘智能识别助手】,有改动 */ base.console.info(`%c %c LinkSwift\n一个基于 JavaScript 的网盘文件下载地址获取工具\n仓库:https://github.com/hmjz100/LinkSwift\n版本:${info.version}\n领域:${(window.self !== window.top ? "[iframe] " : "") + (document.title ? (document.title + " (" + location.origin + location.pathname + ")") : location.href)}`, `background:url(${info.icon}) center center no-repeat;background-size:12px;padding:3px`, `padding:2px`); // 创建挂载点 const mountElem = $(`<${mount} class="${mount}" />`); temp.mount = mountElem; // unsafeWindow.temp = temp; // unsafeWindow.base = base; base.waitForKeyElements(`html:not(:has(> .${mount})) head`, (element) => { if ($(`.${mount}`).length > 0) return; element.after(temp.mount); }); // 判断页面地址,定义主执行 if (/(pan|yun).baidu.com/.test(location.host)) temp.main = $baidu; else if (/openapi.baidu.com\/oauth/.test(location.href)) temp.main = $baiduAuthorize; else if (/www.(aliyundrive|alipan).com/.test(location.host)) temp.main = $aliyun; else if (/(yun|caiyun).139.com/.test(location.host)) temp.main = $mcloud; else if (/cloud.189.cn/.test(location.host)) temp.main = $tcloud; else if (/pan.xunlei.com/.test(location.host)) temp.main = $xunlei; else if (/www.guangyapan.com/.test(location.host)) temp.main = $guangya; else if (/pan.quark.cn/.test(location.host)) temp.main = $quark; else if (/drive.uc.cn/.test(location.host)) temp.main = $uc; else if (/(www|login|yun|user|share).(123(pan|684|865|952|912).com|123pan.cn)$/.test(location.host)) temp.main = $123pan; // v1.1.5: 通用外链嗅探兜底 —— 未匹配任何专属适配器时启用 if (!temp.main) temp.main = $sniffer; // 智能默认设置 base.initDefaultConfig(); // 创建美化样式 base.addPanLinkerStyle(); // 创建按钮事件 base.addPageListener(); download.addPageListener(); // 创建提示信息用的隐藏 tip base.createTip(); // 运行主程序 if ("initPanLinker" in temp.main) temp.main.initPanLinker(); // 运行绿化程序 if ("greenerPage" in temp.main) temp.main.greenerPage(); // 脚本更新后提示消息 const storedVersion = base.getValue("setting_init").version; if (!storedVersion || base.isNewerVersion(info.version, storedVersion)) { base.waitForKeyElements("body:not(.swal2-shown)", async () => { await base.showUpdate(); const list = base.getValue("setting_init"); list.version = info.version; base.setValue("setting_init", list); return true; }, true); } // 创建图标 temp.mount.append(``); } }; base.console = Object.fromEntries(Object.entries(console).filter(([, value]) => typeof value === "function").map(([key, value]) => [key, value.bind(console)])); unsafeWindow.console.clear = new Function(base.decodeBase("Y29uc29sZS5sb2coIiVj5bey5riF6Zmk5o6n5Yi25Y+wIiwgImNvbG9yOmdyYXk7Zm9udC1zdHlsZTppdGFsaWMiKTs=")); main.init(); // 这是啥?我不到啊 function idontknow(input) { const charArray = input.split(""); // 这是 Fisher-Yates 洗牌算法的实现 for (let i = charArray.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [charArray[i], charArray[j]] = [charArray[j], charArray[i]]; } return charArray.join(""); } })($ ?? jQuery);