OneDrive E3/E5 下载直链获取方法+油猴脚本

原理说明

OneDrive的分享链接格式如下:

https://su4097outlook-my.sharepoint.com/:v:/g/personal/code01_loliloli_xyz/IQCCWZzJ-NHiSrB6eY3_K5lMASnqbHj5tQ0sNPsfCKmrerY?nav=eyJyZWZlcnJhbEluZm8iOnsicmVmZXJyYWxBcHAiOiJPbmVEcml2ZUZvckJ1c2luZXNzIi…

这种链接在浏览器中打开后会跳转到Web界面,需要手动点击下载。为了获取直接下载链接,我们需要利用OneDrive API和一些技巧。

方法一:手动获取直链

  1. 将上述链接中的 /personal/ 替换为 /personal/_layouts/15/download.aspx?share=
  2. 例如,将 https://su4097outlook-my.sharepoint.com/:v:/g/personal/code01_loliloli_xyz/... 替换为 https://su4097outlook-my.sharepoint.com/:v:/g/personal/_layouts/15/download.aspx?share=code01_loliloli_xyz/...
  3. 替换后的链接即为直接下载链接。

方法二:使用油猴脚本自动获取

油猴插件管理面板图标示意图

油猴插件图标与管理面板入口

为了简化操作,我们可以编写一个油猴脚本(Tampermonkey Script),自动将分享链接转换为直接下载链接。

脚本代码

// ==UserScript==
// @name         OneDrive E3/E5 直链转换
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  将OneDrive E3/E5分享链接转换为直接下载链接
// @author       You
// @match        https://*.sharepoint.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

// 检查当前URL是否为OneDrive分享链接
    if (window.location.href.includes('/personal/')) {
        // 获取当前URL
        let url = window.location.href;
        // 提取share参数
        let sharePart = url.split('/personal/')[1];
        // 构造直接下载链接
        let directLink = 'https://su4097outlook-my.sharepoint.com/:v:/g/personal/_layouts/15/download.aspx?share=' + sharePart;
        // 自动跳转到直接下载链接
        window.location.href = directLink;
    }
})();

使用方法

  1. 安装油猴插件(Tampermonkey):Chrome商店Firefox商店
  2. 点击油猴图标,选择“管理面板”
  3. 点击“+”号创建新脚本
  4. 将上述代码粘贴到脚本编辑器中
  5. 保存脚本(Ctrl+S)
  6. 现在访问任何OneDrive E3/E5分享链接,脚本会自动将其转换为直接下载链接。

OneDrive直链转换流程示意图

链接转换逻辑示意图

注意事项

  1. 该脚本仅适用于OneDrive E3/E5的分享链接,可能不适用于个人版OneDrive。
  2. 如果链接格式有变化,脚本可能需要调整。
  3. 脚本会自动跳转到直接下载链接,如果你只是想查看文件内容,可以暂时禁用脚本。

扩展功能

如果你想进一步扩展脚本的功能,可以考虑:

  1. 添加一个按钮,点击后才跳转,而不是自动跳转。
  2. 支持更多格式的OneDrive分享链接。
  3. 添加对文件夹的支持。

希望这个教程对你有帮助!如果有任何问题,欢迎在评论区留言。

标签: none

评论已关闭