Mac使用aria2下载百度云资源

上一篇写到了使用VPS下载国外网盘资源并将资源上传至百度云,费时费力绕这么大一圈把资源搬回墙内最终目的还是为了下载。作为国内唯一还能「一用」的大公司网盘,用户体验自然差到极点,8秒小电影、无理由限制上传下载速度都是家常便饭。

我曾利用Tampermonkey里的百度云脚本获取可以在迅雷中使用的下载链接,这些脚本经常被百度封杀,不是长久之计,直到后来我发现了aria2这一利器。

什么是aria2

aria2 is a lightweight multi-protocol & multi-source command-line download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink. aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces. (摘自aria2官网)

简单来说就是有以下特性:

  • 支持多协议: HTTP / HTTPS,FTP,SFTP,BitTorrent和Metalink
  • 多线程连线:aria2 会自动从多个线程下载文件,并充分利用你的带宽;
  • 轻量:运行时不会占用过多资源;
  • 全功能 BitTorrent 客户端,可以当BT客户端使用;
  • 支持 RPC 界面远程控制

安装aria2

以Mac为例,安装方法有两种:

1.从aria2的release中下载安装Latest release中的对应系统的Downloads
2.使用Homebrew安装,在「终端」中输入

brew install aria2

就可以安装aria2,前提是Mac中已经安装有Homebrew,如提示没有可以前往官网照着说明安装。在安装过程中「终端」可能还会提示要安装Xcode中的一款工具Command Line Tools,照着指示,输入命令行

xcode-select --install

配置aria2

软件安装完成了,需要对软件进行一下配置。对于aria2这类软件需要自己编写一个配置文件。

aria2 提供两种方式使用,一种是直接命令行模式下载,不推荐使用这种方法,推荐使用另外一种 RPC 模式,这种方式 aria 启动之后只会安静的等待下载请求,下载完成后也只会安静的驻留后台不会自动退出。而使用RPC模式推荐做一个配置文件aria2.conf方便使用。我们把配置文件aria2.conf放在路径 ~/.aria2 下,在「终端」中依次逐行输入命令,并回车:

cd ~
mkdir .aria2
cd .aria2
touch aria2.conf

接着打开 Finder,利用 Shift+Cmd+G 进入路径:~/.aria2/aria2.conf,用Sublime TextNotepad+++这一类编辑器打开 aria2.conf,如果只是下载百度云资源,可以使用雪月秋水君提供的配置拷贝进去(其余配置可参考此文):

#用户名
#rpc-user=user
#密码
#rpc-passwd=passwd
#上面的认证方式不建议使用,建议使用下面的token方式
#设置加密的密钥
#rpc-secret=token
#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#允许外部访问,false的话只监听本地端口
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
#rpc-listen-port=6800
#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=5
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*
#文件保存路径, 默认为当前启动位置
dir=/Users/xxx/Downloads
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
#disk-cache=0
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
#所需时间 none < falloc ? trunc « prealloc, falloc和trunc需要文件系统和内核支持
file-allocation=prealloc

默认下载路径的/Users/xxx/Downloads可以改为任何你想要的绝对路径。此处 Downloads 为下载目录,xxx 请自行替换成你的 Mac 用户名,然后保存,退出编辑器。

启动aria2

安装配置完就可以使用aria2了,在终端中输入:

aria2c --conf-path="/Users/xxx/.aria2/aria2.conf" -D

xxx 请自行替换成你的 Mac 用户名,aria2就启动了。

使用aria2

aria2是一个命令行下载器(command-line download utility),官网也给出了命令行下载说明,它没有用户操作界面(GUI)。不过还是有大神制作了两款在线GUI:YAAWAria2 WebUI。Mac还有相应的桌面客户端Aria2GUI

操作界面有了,还需要一个插件打通百度云和aria2,这个就是BaiduExporter。可惜因某些原因,这个插件已经在Chrome的官方商店下架了。每次使用需要重新安装,比较麻烦,貌似在这有解决办法,我没试过。

安装完成后进入百度云的下载界面,会发现网页上多出一个「导出下载」按钮,点击它弹出的「ARIA2 RPC」就自动添加到你的下载队列里了。

然后我们可以在管理界面看到下载信息了。