原链接:
https://xxxx-my.sharepoint.com/:x:/g/personal/xx_xx_xx/xxxxxxxxxx
直链:
https://xxxx-my.sharepoint.com/personal/xx_xx_xx/_layouts/52/download.aspx?share=xxxxxxxxxx
(这一种更有效)
或
https://xxxx-my.sharepoint.com/:x:/g/personal/xx_xx_xx/xxxxxxxxxx?download=1
(这是重定向跳转至直链)
我自己编写的一个Python小工具
源码:
# 原理:https://www.qian.blue/archives/OneDrive-straight.html
import re
def judgeLink(url):
reg1 = r'https://.+sharepoint\.com'
reg2 = r'personal/(\w+?)/'
reg3 = r'.*/(\S+)'
reg4 = r'com/:(\w):/'
p1 = re.findall(reg1, url)[0]
p2 = re.findall(reg2, url)[0]
p3 = re.findall(reg3, url)[0]
if '?' in p3:
p3 = re.findall(r'(\S+?)\?', p3)[0]
if re.findall(reg4, url)[0] == 'f':
return "抱歉,你所输入链接分享的是文件夹,直链生成仅对单文件有效。"
return p1 + '/personal/' + p2 + '/_layouts/52/download.aspx?share=' + p3
if __name__ == "__main__":
url = input("请输入你的OneDrive单文件分享链接:")
try:
url_judged = judgeLink(url)
print(f"\n>>> {url_judged}")
except:
print("\n>>> 请检查你的输入链接是否正确?")
OneManager(推荐,支持一键部署)
OneManager的进阶玩法:传送门
ShareList
这个比较个性,可以基于API或者分享链接挂载,个人觉得这种方式会比挂载整个网盘方便管理,也有利于保护其他文件。
sharelist支持Google Drive、OneDrive(包括世纪互联)、天翼云、蓝奏云、GitHub、WebDAV、本地文件等。
Oneindex
基于php,应该是这类项目中最早流行起来的,功能比较完善,但是实测OneDrive个人版有一部分中文目录读不出来(2019年下半年),作者donwa前段时间删除了这个项目,原因未知,链接为他人的备份。
oneindex仅支持OneDrive(个人、企业版或教育版/工作或学校帐户,世纪互联版方法请搜索)。
PyOne
基于Python的项目,个人觉得比oneindex好看一点点,并且很早就支持离线下载,不过跟oneindex一样有读不出目录的问题(2019年下半年)。
PyOne仅支持OneDrive(包括世纪互联)。
OLAINDEX
基于php,没发现前面所说读不出目录的问题。
OLAINDEX仅支持OneDrive(包括世纪互联)。
CuteOne
基于Python,也有php版本,很好看,而且做出了模块化,甚至可以当作电影分享站,不过链接OneDrive个人版有bug导致刷不出缓存,其实很简单,然而作者不打算修的亚子……
CuteOne仅支持OneDrive(包括世纪互联,其中个人版需手动修改文件)。
OneList
Vicer大佬的项目,基于Python,也有go版本,据说可以缓解一些API过度调用的问题,未测试。
OneList仅支持OneDrive(包括世纪互联)。
Goindex
基于js和CF Workers,未测试过,和oneindex同一作者,同样已删库,链接为他人备份。
goindex仅支持Google Drive。
GDIndex
基于js和CF Workers,未测试过。
GDIndex仅支持Google Drive。
Zfile(前端 后端)
支持阿里云 OSS、FTP、华为云 OBS、本地存储、MINIO、OneDrive 国际 /家庭 /个人版、OneDrive 世纪互联版、七牛云 KODO、腾讯云 COS、又拍云 USS。
Fast.io
这是一个免费的静态空间网站,也可以用来挂载网盘。
Fast.io支持Google Drive、OneDrive、Github、Dropbox、MediaFire、BOX。
JustList
比较简洁,支持OneDrive(国际版、世纪互联)和天翼云盘。
OneDriveFly
仅支持OneDrive,可以部署到QCloud SCF、Aliyun FC、Heroku,计划支持Cloudflare Workers、Google Cloud Functions、Azure Functions。
SuperOne
仅支持OneDrive,内置API,无需申请。
OneindexN
Oneindex的继承版本,加入aria2下载等功能。
YukiDrive
支持OneDrive和Sharepoint,前后端分离。
文章来源: 如何提取OneDrive文件直链? - 勿埋我心