bypy:使用Linux命令行上传及下载百度云盘文件(远程服务器大文件传输必备)

1,255 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天

本文首发于CSDN。

诸神缄默不语-个人CSDN博文目录

由于众所周知的原因,国内不方便上谷歌云盘,所以很多开源项目的大数据集、预训练模型等也会同时提供百度网盘形式存储的下载链接。 因为百度网盘本身Linux系统只提供了UI端,所以远程服务器的话就很难搞了,谁用远程服务器还会开UI啊…… 而这些文件动辄1-2G,我又不想下到本地,就想直接将这些文件转存到自己的网盘后,在服务器上直接下载。 我现在找到的最好解决方式就是Python包bypy:houtianze/bypy: Python client for Baidu Yun (Personal Cloud Storage) 百度云/百度网盘Python客户端 可以通过pip直接下载,授权本人的百度云账号后,就可以直接使Linux电脑本地文件与百度网盘的apps(我的应用数据)/bypy目录下的文件进行上传与下载的交互了。 本文简单介绍其相关的使用方式,仅限于命令行使用。在Python程序中的调用请另行查阅。

@[TOC]

1. 安装与授权

可以直接通过pip下载:pip install bypy

第一次使用时需要随便输入一个命令以激活授权界面,如输入 bypy info(注意:如果您不在虚拟环境下,需要使用 python -m bypy info,后续所有命令类似,前加 python -m 即可;如果python指令不在您的路径下,那么原则上我建议您将其加入路径,如果您不想加,就直接将上述指令中的python更换成您使用的python解释器位置即可) 终端会输出一个网址,在浏览器打开后,点击如图所示的复制授权码: 在这里插入图片描述 将复制的内容粘贴到终端后回车,等待即可。

另:需要把系统的区域编码设置为UTF-8(我的服务器默认就是,所有我没有经历这一步)。可参考:article | How to set up a clean UTF-8 environment in Linux

2. 查看百度网盘目录下的文件、上传与下载文件

常用命令:

  1. bypy list 显示百度网盘 /apps(我的应用数据)/bypy 目录下的所有文件。
  2. bypy upload [localpath] [remotepath] [ondup]bypy syncup [localdir] [remotedir] [deleteremote] 上传文件到百度网盘
  3. bypy downfile <remotefile> [localpath] 从百度网盘下载单个文件
  4. bypy downdir [remotedir] [localdir] 从百度网盘下载整个文件夹

3. 查阅文档

  1. 可以直接使用命令 bypy help <command> 来查询一个命令的具体使用方式。
  2. 使用 bypybypy helpbypy -h 直接查询所有命令。

4. 其他正文中未提及的参考资料

  1. bypy-命令行下使用百度网盘 - 知乎