利用虚拟机、aria2、nginx、AriaNg、FFmpeg等下载B站视频的方案
2021年6月8日利用虚拟机、aria2、nginx、AriaNg、FFmpeg等下载B站视频的方案
首先,可在设备上部署一个轻量的Linux服务器当作下载器使用,不需要提供过多内存和储存,可以尝试挂载物理磁盘(可能会比较危险},建议使用虚拟磁盘。
为虚拟机创建好磁盘后,选择安装系统,这里选择安装Centos 8,为了更加方便的操作,可以使用Putty ssh连接,也可以直接为它安装上宝塔面板
接下来部署服务器,如果使用宝塔,可以部署一下nginx和ftpd,用于内网传输文件(否则每次下载完文件都要关闭服务器太麻烦了)
随后编译安装aria2
下载源码后,解压进入目录,然后运行:
./configure --prefix=/usr/local/aria2
make && make install
编译完成后,在可执行文件目录将二进制文件创建软连接:
ln aria2c /bin
输入以下指令检查安装:
aria2c --version
安装完成后,在/etc/aria2中创建aria2.conf作为配置文件
具体内容见此:aria2.conf
对此文件进行部分修改后即可
随后在同一目录下创建aria2.session文件用于保存会话
然后,在宝塔面板中使用Supervisor创建aria2的进程守护
具体如下:
路径:/
命令:aria2c --conf-path=/etc/aria2/aria2.conf -D
最后的-D决定是否使用安静模式
然后部署AriaNg,
将文件下载后用nginx创建网站,指向AriaNg
这里aria2的配置就基本结束了
然后配合b站油猴脚本(Tampermonkey)可以对B站的视频进行高速下载
但是,对于DASH格式文件,还需要用到FFmpeg对mp4和m4a进行合并
安装FFmpeg很简单,但是很费时,编译安装方法基本与安装aria2相似,这里不过多描述
安装后,合并文件,需执行以下命令:
ffmpeg -i a.mp4 -i a.m4a -vcodec copy -acodec copy output.mp4
此处可以利用Python进行批量操作
这样,B站视频的下载就可以轻松搞定了
当然,你也可以用Python事先自动化
——Majjcom