0. 背景
很多时候我们只能通过ssh工具远程连接服务器,很多时候是没有图形界面的,可以使用ssh或者ftp上传下载大的文件,这时下载速率受限于服务器带宽。由于本人目前在家连接学校服务器是自己搭建frp做的内网穿透,这时上传下载的速率取决于frp服务器,由于带宽只有4M,上传下载20G以上的大文件,上传下载速度500KB左右,耗时又费力,从github上发现一个不错repo:https://github.com/houtianze/bypy,可以借助百度云加速上传下载,前提是有百度云会员哈。
1. 安装
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ bypy==1.7.5
2. 登录百度云账号
输入:bypy info 然后登录:https://openapi.baidu.com/oauth/2.0/authorize?client_id=q8WE4EpCsau1oS0MplgMKNBn&response_type=code&redirect_uri=oob&scope=basic+netdisk 获取授权码如图所示:
连接好网盘后,会在~/.bypy 目录下生成一些授权文件,下一次使用bypy无需授权。如果想要退出授权,可以rm -rf ~/.bypy/ 即可。
3.上传文件
上传文件后,会在全部文件 / 我的应用资源 / bypy(也就是/app/bypy/)这个目录下保存文件。
- 上传指定文件:
bypy upload 文件名 - 上传当前目录:
bypy upload
4.下载文件
由于百度PCS API权限限制,程序只能存取百度云端/apps/bypy目录下面的文件和目录。目前好像限速,下载速率稳定在5MB/s,但是也比500KB/s强很多了。
- 下载指定文件:
bypy downfile 文件名 - 下载当前目录:
bypy downfile -v ; -v 显示详细信息
5. 其它命令
bypy : 显示使用帮助和所有命令bypy compare : 比较当前目录和云盘根目录(/apps/byby )bypy syncdown : 把云盘内容同步到本地来bypy syncup : 把当前目录同步到云盘bypy list : 显示云盘根目录下的文件列表bypy help <command> : 详细了解某个命令bypy mkdir :在云盘当前目录创建子目录
6. python代码调用
from bypy import ByPy
bp=ByPy()
bp.list()
|