将任意文件分块编码为图片后上传至B站,对该操作逆序即可下载并还原文件
https://github.com/Hsury/BiliDrive
特色
轻量:无复杂依赖,资源占用少
自由:无文件格式与大小限制,无容量限制
安全:上传的文件需要通过生成的META URL才能访问,他人无法随意查看
稳定:带有分块校验与超时重试机制,在较差的网络环境中依然能确保文件的完整性
快速:支持多线程传输与断点续传,同时借助B站的CDN资源,能最大化地利用网络环境进行上传与下载
使用指南
准备
前往发布页获取可直接运行的二进制文件
或使用Python软件包管理器pip从PyPI仓库安装
亦可下载源代码后使用Python 3.6或更高版本运行
登录
- python3 -m BiliDrive login [-h] username password
- username: Bilibili用户名
- password: Bilibili密码
上传
- python3 -m BiliDrive upload [-h] [-b BLOCK_SIZE] [-t THREAD] file
- file: 待上传的文件路径
- -b BLOCK_SIZE: 分块大小(MB), 默认值为4
- -t THREAD: 上传线程数, 默认值为4
上传完毕后,终端会打印一串META URL(通常以bdrive://开头)用于下载或分享,请妥善保管
下载
- python3 -m BiliDrive download [-h] [-f] [-t THREAD] meta [file]
- meta: META URL(通常以bdrive://开头)
- file: 另存为新的文件名, 不指定则保存为上传时的文件名
- -f: 覆盖已有文件
- -t THREAD: 下载线程数, 默认值为8
下载完毕后会自动进行文件完整性校验,对于大文件该过程可能需要较长时间,若不愿等待可直接退出
查看文件元数据
- python3 -m BiliDrive info [-h] meta
- meta: META URL(通常以bdrive://开头)
-
- 查看历史记录
- python3 -m BiliDrive history [-h]
交互模式
不传入任何命令行参数,直接运行程序即可进入交互模式
该模式下,程序会打印命令提示符BiliDrive > ,并等待用户输入命令
最后于 20/01.28 19:31
被zsxwz编辑
,原因: