由于rclone不支持公开SharePoint/OneDrive分享,SharePoint网页端批量下载一次最多下载20G,+单线程下载和无断点续传,大量下载SharePoint直接昏迷。今天乱翻的时候在网上翻到一个能用的办法(但无法保留目录结构)
本方法在2023.02.21测试有效。
首先需要浏览器安装TamperMonkey插件,使用“OneDrive 文件直链下载”脚本(链接)。再打开需要的下载的页面,左侧应该会出现OneDrive 文件直链下载的界面,在此复制需要下载的所有链接备用。
拿到的链接并不能直接放进aria2下载,还需要把对应页面的cookie一起传给aria2,cookie获取需要依次打开浏览器开发人员工具(F12)(可能需要重新刷新页面),依次选中网络->文档,再列表中找到onedrive.aspx
,选择标头->响应头,再在右侧列表中找到set-cookie
项,右键复制,如下图:
在aria2下载设置中(这里使用的AriaNg),设置请求头为cookie: [cookie]
,其中[cookie]
,为刚复制的set-cookie
项,aria2的user-agent
设置为和获取cookie的浏览器相同(不知道需不需要设置,我这里设置为Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.50
),之后便能批量下载。
需要注意的是,SharePoint有速率限制,我这里是下载到第150个左右开始限制。
参考:
油猴脚本:将OneDrive/SharePoint下载推送到IDM/Aria2,支持批量下载-清风博客 (qfya.com)
Views: 552
可以的,学会了,谢谢博主。
用的motrix,而不是插件里提示的Aria2工具,提示下不同工具的还是存在差别,需要慢慢调试,用motrix只需要按文章来,去掉请求头的“cookie:”部分,保留“FedAuth”及之后的部分后才成功开启下载。