577
文章
·
56729
阅读
577
文章
·
56729
阅读

有166人阅读过 123网盘绕过1G下载限制 油猴脚本
发布于2024/10/29 更新于2024/10/29
[ 教程仅保证更新时有效,请自行测试。]

在油猴或者暴力猴中找到创建按钮,

image.png

粘贴以下脚本内容,保存并关闭即可

// ==UserScript==
// @name         123云盘下载辅助
// @namespace    https://github.com/Bao-qing/123pan
// @version      0.3
// @description  123 Cloud Drive Unlimited Flow
// @match        https://www.123pan.com/*
// @match        https://www.123pan.cn/*
// @match        https://www.123865.com/*
// @match        https://www.123684.com/*
// @grant        none
// @author       Qing
// @downloadURL https://update.greasyfork.org/scripts/510621/123%E4%BA%91%E7%9B%98%E4%B8%8B%E8%BD%BD%E8%BE%85%E5%8A%A9.user.js
// @updateURL https://update.greasyfork.org/scripts/510621/123%E4%BA%91%E7%9B%98%E4%B8%8B%E8%BD%BD%E8%BE%85%E5%8A%A9.meta.js
// ==/UserScript==
 
(function () {
    // 重写 XMLHttpRequest
    const originalXHR = window.XMLHttpRequest;
 
    function newXHR() {
        const realXHR = new originalXHR();
 
        realXHR.open = function (method, url, async, user, password) {
            this._url = url;  // 记录请求的 URL
            return originalXHR.prototype.open.apply(this, arguments);
        };
 
        realXHR.setRequestHeader = function (header, value) {
            let headers = {
                "user-agent": "123pan/v2.4.0(Android_7.1.2;Xiaomi)",
                //"loginuuid": generateUUIDHex(),
                "platform": "android",
                "app-version": "61",
                "x-app-version": "2.4.0"
            }
            // 如果header在列表中,则修改
            if (header.toLowerCase() in headers) {
                value = headers[header.toLowerCase()];
            } else {
                console.log('header:', header);
            }
 
            return originalXHR.prototype.setRequestHeader.apply(this, arguments);
        };
 
        // 拦截响应内容,修改 DownloadUrl以适应网页端下载
        realXHR.send = function () {
            const xhrInstance = this;
            this.addEventListener('readystatechange', function () {
                let origin_url;
                let new_url_no_redirect;
                let base64data;
                if (xhrInstance.readyState === 4 && xhrInstance.status === 200) {
                    // 解析响应的 JSON
                    let responseText = xhrInstance.responseText;
                    let responseJSON = JSON.parse(responseText);
                    console.log('Original Response:', responseJSON);
 
                    // 修改 DownloadUrl
                    if (responseJSON.data && responseJSON.data.DownloadUrl) {
                        origin_url = responseJSON.data.DownloadUrl;
                        new_url_no_redirect = origin_url + "&auto_redirect=0";
                        base64data = btoa(new_url_no_redirect);
                        responseJSON.data.DownloadUrl = "https://web-pro2.123952.com/download-v2/?params=" + base64data + "&is_s3=0";
                        console.log('Modified DownloadUrl:', responseJSON.data.DownloadUrl);
                    }
 
                    // 将修改后的 JSON 转为字符串
                    let modifiedResponseText = JSON.stringify(responseJSON);
 
                    // 使用 defineProperty 重写 responseText
                    Object.defineProperty(xhrInstance, 'responseText', {
                        get: function () {
                            return modifiedResponseText;
                        }
                    });
                    console.log('Modified Response:', modifiedResponseText);
                }
            });
 
            return originalXHR.prototype.send.apply(this, arguments);
        };
 
        return realXHR;
    }
 
    window.XMLHttpRequest = newXHR;
})();

重新访问123的资源,使用浏览器下载,调用第三方下载工具即可,例如IDM

image.png

文章对你有帮助吗?
  • 一般[0]
  • 很赞[1]
  • 没用[0]
  • 垃圾[1]
  • 无语[0]

继续阅读:

扫一扫,手机浏览手机访问本站