目前用的爽的下载工具,通过搭配 Chrome 和 自己写的一些脚本达到不输迅雷的用户体验。
本文在 MacOS 下可以通过所有步骤,其他平台需要自行修改相关步骤
Aria2 下载
推荐使用 Homebrew 安装
配置 Aria2
将下面的内容复制到 /Users/用户名/.aria2/aria2.conf
里面,用户名是你 Mac 的用户名。
同时建立session文件
1
| touch ~/.aria2/aria2.session
|
文中注释了一些选项含义,所以的含义需要看这个网址获取 aria2c(1) — aria2 1.34.0 documentation
不建议修改下面的除了 用户文件夹之外的内容,这些内容都是经过实践得出的比较优秀的配置,下载速度较快
需要修改下面的用户名 jacob 改为你自己的用户名方可使用。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
|
dir=/Users/jacob/Downloads
disk-cache=0M
continue=true
max-tries=5
retry-wait=5
max-concurrent-downloads=20
max-connection-per-server=16
min-split-size=1024K
split=16
max-overall-download-limit=0
max-download-limit=0
max-overall-upload-limit=0
max-upload-limit=0
disable-ipv6=false
allow-overwrite=true
auto-file-renaming=true
input-file=/Users/jacob/.aria2/aria2.session
save-session=/Users/jacob/.aria2/aria2.session
save-session-interval=30
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
rpc-listen-port=6800
rpc-secret=maria.rpc.2018
listen-port=51413
enable-dht=true
bt-enable-lpd=true
enable-peer-exchange=true
peer-id-prefix=-TR2770- user-agent=Transmission/2.77
seed-ratio=0
bt-seed-unverified=true
bt-save-metadata=true
bt-tracker=udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.open-internet.nl:6969/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://tracker.internetwarriors.net:1337/announce,udp://9.rarbg.to:2710/announce,udp://9.rarbg.me:2710/announce,udp://tracker.opentrackr.org:1337/announce,http://tracker3.itzmx.com:6961/announce,http://tracker1.itzmx.com:8080/announce,udp://exodus.desync.com:6969/announce,udp://explodie.org:6969/announce,udp://ipv4.tracker.harry.lu:80/announce,udp://denis.stalker.upeer.me:6969/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.tiny-vps.com:6969/announce,udp://open.demonii.si:1337/announce,http://vps02.net.orel.ru:80/announce,http://re-tracker.uz:80/announce,http://open.acgnxtracker.com:80/announce,udp://tracker4.itzmx.com:2710/announce,
on-bt-download-complete=/Users/jacob/.aria2/aria2_on_bt_download_complete.sh on-download-complete=/Users/jacob/.aria2/aria2_on_download_complete.sh on-download-error=/Users/jacob/.aria2/aria2_on_download_error.sh on-download-pause=/Users/jacob/.aria2/aria2_on_download_pause.sh on-download-start=/Users/jacob/.aria2/aria2_on_download_start.sh on-download-stop=/Users/jacob/.aria2/aria2_on_download_stop.sh
|
调试 Aria2
Aria2 启动可能会有问题,我们需要调试成功之后才然后设置开机启动,否则无法查看错误信息,
1
| /usr/local/bin/aria2c --conf-path=/Users/jacob/.aria2/aria2.conf
|
通过上面的命令可以看到提示,如果没有错误就可以进入下一步了。如果有错误根据错误提示解决问题
配置 Aria2 开机启动
aira2 每次都要自己启动,十分麻烦,但是 aria2 资源占用很低,适合在后台常驻,所以可以设置为开机启动。
1 2
| cd ~/Library/LaunchAgents touch com.aria2c.plist
|
将下面的内容放入 com.aria2c.plist
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>KeepAlive</key> <true/> <key>Label</key> <string>com.aria2c</string> <key>ProgramArguments</key> <array> <string>/usr/local/bin/aria2c</string> <string>--conf-path=/Users/jacob/.aria2/aria2.conf</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist>
|
加载配置
1
| launchctl load ~/Library/LaunchAgents/com.aria2c.plist
|
此时 通过 ps aux | grep "aria2"
可以看到 aria2 已经启动,如果没有启动可以注销Mac用户后登陆即可看到 aria2 在运行中。以后 aira2 就可以开机启动了。
GUI 推荐
Aria2 有很多 GUI,这个推荐一个 Chrome 插件用作 GUI, Chrome 的功能我们可以让他看起来像一个独立的应用。
安装 Aria2 for Chrome - Chrome 网上应用店
右键插件图标进入选项,设置 rpc 网址为 http://token:maria.rpc.2018@localhost:6800/jsonrpc
然后单击插件图标即可看到提示 Aria2 已连接的提示
如果这里无法连接,需要在 GUI 内部设置token等信息
下面我们可以让这个插件变成一个应用,如果你不感兴趣可以直接看下一节。
右键点击 插件 图标,点击 打开AriaNG 文字,进入页面
然后将这个页面导出为应用
此时在mac的应用里就会有一个 AriaNG 应用了,图标可以自行定制,如何修改图标自己搜索下吧
效果如下
使用 Aria2 下载磁力链接
普通下载不必多讲,按照插件和 GUI 的页面可以很容易的进行下载,这里说说如何下载 磁力链接。Aria2 磁力链接的速度会很慢,甚至可能无法下载,此时我们可以通过修改 配置中的 bt-tracker 选项来获得高速下载,速度不输迅雷。
可以通过复制 https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_best.txt 的内容然后修改一下格式,配置给 Aria2,因为 trackers 一直在变化我也写了一个python3 的脚本来辅助更新。内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| import urllib.request import urllib.parse
path = '/Users/jacob/.aria2/aria2.conf'
url = 'https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_best.txt' f = urllib.request.urlopen(url) s = f.read().decode('utf-8') bt_tracker = s.replace('\n\n', ',')
data = '' with open(path, 'r+') as f: for line in f.readlines(): if line.find('bt-tracker') == 0: line = 'bt-tracker=%s' % bt_tracker + '\n'
data += line
with open(path, 'r+') as f: f.writelines(data)
|
通过运行上面的脚本可以一键更新 bt-tracker 内容,注意配置修改之后必须要重启 Aria2 才可以生效。可以通过 kill 进程来实现,我们的开机启动配置会自动重启一个 Aria 进程。
配置使用下载完成后通知
先看看效果:
上面的插件是没有实现下载完成后通知的,这样其实有些尴尬,每次都要去看看写没写完,可以通过 Aria2 自带的 钩子函数来实现。对应在 conf 里的配置是这些
1 2 3 4 5 6 7 8
|
on-bt-download-complete=/Users/jacob/.aria2/aria2_on_bt_download_complete.sh on-download-complete=/Users/jacob/.aria2/aria2_on_download_complete.sh on-download-error=/Users/jacob/.aria2/aria2_on_download_error.sh on-download-pause=/Users/jacob/.aria2/aria2_on_download_pause.sh on-download-start=/Users/jacob/.aria2/aria2_on_download_start.sh on-download-stop=/Users/jacob/.aria2/aria2_on_download_stop.sh
|
这些脚本的内容如下
/Users/jacob/.aria2/aria2_on_bt_download_complete.sh
1
| /usr/local/bin/terminal-notifier -title "Aria2" -subtitle "BT下载完成" -message "" -activate com.google.Chrome.app.Default-hpjnfnejkleckpmhmjppopcbnedoocmg -appIcon /Users/jacob/Applications/Chrome\ Apps.localized/Default\ hpjnfnejkleckpmhmjppopcbnedoocmg.app/Contents/Resources/app.icns
|
/Users/jacob/.aria2/aria2_on_download_complete.sh
1
| /usr/local/bin/terminal-notifier -title "Aria2" -subtitle "下载完成" -message $msg -execute "/usr/bin/open $3" -appIcon /Users/jacob/Applications/Chrome\ Apps.localized/Default\ hpjnfnejkleckpmhmjppopcbnedoocmg.app/Contents/Resources/app.icns
|
/Users/jacob/.aria2/aria2_on_download_error.sh
1 2 3
| var=$3 msg=${var##*/} /usr/local/bin/terminal-notifier -title "Aria2" -subtitle "下载失败" -message $msg -activate com.google.Chrome.app.Default-hpjnfnejkleckpmhmjppopcbnedoocmg -appIcon /Users/jacob/Applications/Chrome\ Apps.localized/Default\ hpjnfnejkleckpmhmjppopcbnedoocmg.app/Contents/Resources/app.icns
|
/Users/jacob/.aria2/aria2_on_download_pause.sh
1 2 3
| var=$3 msg=${var##*/} /usr/local/bin/terminal-notifier -title "Aria2" -subtitle "暂停下载" -message $msg -activate com.google.Chrome.app.Default-hpjnfnejkleckpmhmjppopcbnedoocmg -appIcon /Users/jacob/Applications/Chrome\ Apps.localized/Default\ hpjnfnejkleckpmhmjppopcbnedoocmg.app/Contents/Resources/app.icns
|
/Users/jacob/.aria2/aria2_on_download_start.sh
1 2 3
| var=$3 msg=${var##*/} /usr/local/bin/terminal-notifier -title "Aria2" -subtitle "开始下载" -message $msg -activate com.google.Chrome.app.Default-hpjnfnejkleckpmhmjppopcbnedoocmg -appIcon /Users/jacob/Applications/Chrome\ Apps.localized/Default\ hpjnfnejkleckpmhmjppopcbnedoocmg.app/Contents/Resources/app.icns
|
使用这些脚本需要安装软件 julienXX/terminal-notifier: Send User Notifications on macOS from the command-line.
安装方式 brew install terminal-notifier
appIcon 就是通知时候的图标,可以自定义。这样就实现了下载完成后通知,并且点击通知就能够打开下载的文件。terminal-notifier 一定要使用全路径名,否则无法生效。
Aria2 满速下载百度云文件
安装 Chrome 插件acgotaku/BaiduExporter: Assistant for Baidu to export download links to aria2/aria2-rpc
安装方式看 GitHub 的 readme, 然后配置本地 Aria2
设置在这里:
配置 URL 为 http://token:maria.rpc.2018@localhost:6800/jsonrpc
以后使用 导出下载即可获得满速下载。