Linux利用百度网盘上传/下载数据——bypy指令
安装bypy
pip install bypy
授权百度网盘账户信息
bypy info
输出
Please visit:
https://openapi.baidu.com/oauth/2.0/authorize?client_id=q8WE4EpCsau1oS0MplgMKNBn&response_type=code&redirect_uri=oob&scope=basic+netdisk
And authorize this app
Paste the Authorization Code here within 10 minutes.
Press [Enter] when you are done
点开地址,之后将授权码输入到终端窗口,之后按回车即可完成授权,授权成功后,再次输入bypy info
可以显示百度网盘存储占用量,例如:
Quota: 12.293TB
Used: 3.398TB
常用指令
查看文件列表
bypy list
该命令会查看百度网盘中,“我的应用数据”文件夹内的所有文件,例如在这里我有两个文件夹“COCO2014”和“BDD100K”:
/apps/bypy ($t $f $s $m $d):
D BDD100K 0 2024-01-22, 19:58:40
D COCO2014 0 2024-01-22, 19:46:28
下载文件
从百度网盘下载单个文件
bypy downfile <remotefile> [localpath]
从百度网盘下载整个文件
bypy downdir <remotefile> [localpath]
注:下载文件时,可以使用第三方工具aria2来加速下载,常用指令:
# 安装aria2
sudo apt-get install aria2
# 用参数'--downloader aria2'来让bypy调用aria2工具来加速下载
bypy --downloader aria2 download [remotepath] [localpath]
上传文件
bypy upload <localpath> [remotepath] [ondup]
[ondup]
表示如果远程目录有重命文件,该如何操作,可选overwrite
(覆盖、默认选项)和newcopy
(创建一个新的文件名)。或
bypy syncup <localdir> [remotedir] [deleteremote]
[deleteremote]
表示是否删除不在本地目录内的远程文件(即百度网盘中的文件),默认False
查询文档
可以直接使用命令bypy help <command>
来查询一个命令的使用方式以及参数解释,例如
bypy help upload
使用bypy help
或bypy -h
可以查询所有命令
退出登录
bypy -c
利用Python实现利用bypy上传/下载文件
# 导入库
from bypy import ByPy
# 实例化bypy对象
bp = ByPy()
# 百度网盘创建远程文件夹
bp.mkdir(remotepath = '')
# 上传文件
bp.upload(localpath = '', remotepath = '', ondup = "overwrite")
# 下载文件
bp.download(remotepath = '/', localpath = '')
参考链接
注:文章若有问题,欢迎指正。