稍微搜索了一下,发现已经有现成的Aria2 下载完自动使用rclone上传并删除文件脚本
不过却发现Aria2 本身不支持RSS订阅,于是搜索了整天总算有个能用第三方RSS订阅推送Aria2,Flexget
最终实现Aria2 自动RSS订阅任务下载,完并使用gclone上传到googleDrive、Onedrive,最后删除本地占用文件
需要使用的软件:
aria2
AriaNgGUI
gclone / rclone
Flexget(需要python3环境)
搭建教程:
一、Aria2 一键安装管理脚本 增强版
wget -N git.io/aria2.sh && chmod +x aria2.sh && ./aria2.sh
安装完后返回信息
Aria2 简单配置信息:IPv4 地址 : 127.0.0.1IPv6 地址 : IPv6 地址检测失败RPC 端口 : 6800RPC 密钥 : 221d8645ddf44bc5953c下载目录 : /root/downloads
使用AriaNg WebGUI / 程序GUI,远程/本地连接图形化管理Aria2
对应填写Aria2 简单配置信息
二、安装 gclone / rclone
#推荐 gclone 安装并复制命名rclonebash <(wget -qO- https://git.io/gclone.sh)cp /usr/bin/gclone /usr/bin/rclone#rclone 安装(注意:已安装gclone无需再安装rclone)curl https://rclone.org/install.sh | sudo bash
配置方面请自行搜索rclone教程
编辑自动上传脚本
nano /root/.aria2c/upload.sh
对应修改相关参数
# Aria2 下载目录DOWNLOAD_PATH='/root/downloads'# Rclone 配置时填写的网盘名(name)DRIVE_NAME='Onedrive'# 网盘目录。即上传目标路径,留空为网盘根目录,末尾不要有斜杠。DRIVE_PATH='/DRIVEX/Download'
启动脚本
nano /root/.aria2c/aria2.conf
修改以下参数
# 下载完成后执行的命令on-download-complete=/root/.aria2c/upload.sh
重启 Aria2
service aria2 restart./aria2.sh6
三、Flexget 第三方RSS订阅推送,全局安装
apt updateapt install python3-pippip3 install --upgrade piphash -d pip3pip3 install --upgrade setuptoolspip3 install --ignore-installed flexget
如果Flexget 全局安装失败,可以参试virtualenv环境安装
apt updateapt install python3-pipapt-get install python3-venvpip3 install --upgrade pippython3 -m venv ~/flexget/cd ~/flexget/bin/pip install flexgetsource ~/flexget/bin/activate
配置Flexget Aria2 RSS
cdmkdir -p ~/.config/flexgetcd .config/flexgettouch config.ymlnano config.yml
config.yml格式
tasks: 任务名称: rss: RSS-URL accept_all: yes aria2: server: Aria2-IP port: Aria2-端口 secret: Aria2-密钥 path: Aria2-下载绝对路径
config.yml例子
创建"Anime"名称任务,RSS链接为"https://nyaa.si/?page=rss&c=1_0&f=0"
aria2 IP为"127.0.0.1",端口为"6800",密钥为"221d8645ddf44bc5953c",下载路径为"/root/downloads/"
tasks: Anime: rss: https://nyaa.si/?page=rss&c=1_0&f=0 accept_all: yes aria2: server: 127.0.0.1 port: 6800 secret: 221d8645ddf44bc5953c path: /root/downloads/
编辑完成后测试一下
flexget --test execute
使用crontab设置Flexget刷新频率
查看Flexget的绝对路径
which flexget
假设Flexget的绝对路径为"/usr/local/bin/flexget",设置每2分钟频率刷新
crontab -e
添加
*/2 * * * * /usr/local/bin/flexget --cron execute
2分钟后查看状态
flexget status
有问题可以查看日志
cat ~/.config/flexget/flexget.log
作者:kuk
查看原帖:hostloc.com/thread-711986-1-1.html