论Linux非图形界面下如何上传文件到百度云盘

本需求的缘由

因为最近发现了一个比较好的电影、电视剧种子论坛,使用上面的种子下载下来的电影都是3G以上的高清视频,美剧每集也基本都是1G左右。而宿舍的网速实在是呵呵了,所以无奈之下,想到了到我的阿里云服务器上去下载。

我的阿里云服务器上的操作系统是非图形界面的Ubuntu14.04,在上面安装了transmission来使用种子下载电影。果然阿里云不负我所望,2M/s的下载速度,分分钟把高清大片下到手。

但是下载下来后,问题也来了,我想在家里随时通过电脑、ipad或者手机看电影、看美剧怎么办?

从阿里云scp到本地,然后拷贝到pad和手机上?这显然还是要受到家里的网络带宽的限制,和直接在本地下载没有太大的区别,所以这个方法不可行。

第二种方案是自己在阿里云上搭建一个流媒体服务器,然后本地在浏览器里加载播放器,从流媒体服务器获取视频数据进行播放。基本思想就是个本地的优酷。但是调查一圈下来,发现,因为对流媒体技术不是很了解,而且这中间涉及到视频压缩等技术,实现上成本太高,所以自然也不考虑了。

于是乎想到了百度云盘,最初想到使用百度云是因为想到了,百度云客户端从百度云上拉文件,速度很快,正好能够弥补本地网络带宽不足的问题。随之又想到,百度云盘支持不下载直接观看云盘中的视频,只要我在pad和手机上安装有百度云的app,就可以不用下载到本地,直接观看电影和美剧,这样基本能够满足我前面提到的需求。于是乎,说干就干,就有了本文。

具体方法实现

经过google,找到了一个神器 – bypy!

这是一个百度云\百度网盘的python客户端,其主要目的和功能,就是为Linux使用者提供一种在命令行下,使用百度云盘中2T存储空间的方法。它提供文件列表、下载、上传、比较、向上同步、向下同步,等操作。

其github主页地址为:bypy在github的主页地址

若要使用bypy,需要安装有python,这里默认本地Linux操作系统中已安装有python了。同时,bypy依赖于python的Requests库,所以在安装bypy之前,需要先安装Requests包,安装代码如下:

sudo pip install requests

其中pip是python的软件包管理工具,具体安装和使用方法请自行查阅。

由bypy的github主页我们可以知道,bypy对使用者提供了稳定版和最新版两个版本,本文使用的为稳定版,若要使用最新版,可参考github主页自行安装使用。

可以直接使用pip来对bypy进行安装,具体安装方法如下:

sudo pip install bypy

第一次运行时需要授权,只需跑任何一个命令(比如 bypy.py info)然后跟着说明(登陆等)来授权即可。授权只需一次,一旦成功,以后不会再出现授权提示。

在阿里云上运行bypy.py info的结果如下:

bypy.py info 在阿里云上运行结果

可以看到,提示你访问某个网址,并对bypy python客户端进行授权,按照提示操作即可授权成功。授权成功如图所示:

由于百度PCS API权限限制,程序只能存取百度云端/apps/bypy目录下面的文件和目录。我们可以通过

bypy.py list

来查看在云盘(程序的)根目录下文件列表。

然后就可以使用

bypy.py upload

把本地当前目录下的文件同步到百度云盘,或者通过

bypy.py downdir

把云盘上的内容同步到本地。

还可以通过

bypy.py compare

来比较本地当前目录和云盘(程序的)根目录,看是否一致,来判断同步成功与否。

论Linux非图形界面下如何上传文件到百度云盘_第1张图片

到此,我已成功将本地的一个6G的电影上传到百度云盘上,然后就可以直接使用ipad和手机,通过百度云app进行观看了!

你可能感兴趣的:(论Linux非图形界面下如何上传文件到百度云盘)