FlexGet 官网:https://flexget.com/

官方安装向导:https://flexget.com/InstallWizard/Linux

配置Flexget

flexget 会在用户目录下的.flexget 文件夹 (~/.​flexget) 种查找配置文件 (con­fig.yml),装好后默认是没有的,需要自己建一个。

mkdir .flexget
cd .flexget
nano config.yml

要注意的是,由于配置文件是 YAML 格式,需要遵循 YAML 语法,也就是说,千万不要使用 tab 来缩进,一定要用空格。缩进是一定要遵守的,每个层级之间用两个空格缩进。
写配置文件的时候可以通过 flexget --test ex­e­cute 来测试配置文件
基本的配置文件格式如下:

tasks:
  test 任务名:
    rss: http://mysite.com/myfeed.rss
    accept_all: yes
    download: /root/bt/torrents
    transmission:
    path: /root/bt/downloads

templates:
  default:
    transmission:
      host: localhost
      port: 9091
      username: admin
      password: "123456"
    clean_transmission:
      enabled: no

test 任务名是任务的名称可以自己随便起
rss 是输入插件,flexget 支持许多种输入方式,但是最常用的还是配合 PT 使用的 RSS
ac­cep­t_all 是过滤器插件,表示接受 rss 源中的所有项
down­load 是输出插件,表示将 rss 项中的种子文件存到指定的文件夹。
tem­plates 是模板可以设置不同 trans­mis­sion 客户端

配置好后检测、验证FlexGet配置

flexget check

检测 FlexGet 配置文件是否有错误,如果有错会指出错误在哪一行

flexget --test execute

执行 FlexGet 的 RSS 测试,不会下载任何文件到硬盘。

flexget execute

执行 RSS,开始自动下载 RSS 订阅内容。

flexget status

检查 FlexGet 执行状态。

如果检测或者执行时有 rejected,failed,别忘记执行文章末尾的清除命令

如果提示 Transmissionrpc module version 0.11 or higher required.

执行 sudo pip install transmissionrpc

让Transmission自动添加种子任务

上一步我们用 Flexget 把种子已经下载到了 /root/bt/ 中,现在我们需要让 Transmission 监视这个目录并自动添加任务
利用 watch.sh 脚本,可以实现。

定时任务

which flexget

确认 FlexGet 位置。例如路径是 /usr/bin/flexget

crontab -e

添加计划任务 (修改成上面 Flexget 查出来的路径)

* */1 * * * /usr/bin/flexget -c /root/.flexget/config.yml execute

每小时自动执行 FlexGet,监控 RSS 订阅,一旦 RSS 有更新就会自动下载到指定的目录中。

*/1 * * * * /usr/bin/flexget -c /root/.flexget/config.yml execute

每分钟自动执行 FlexGet,监控 RSS 订阅,一旦 RSS 有更新就会自动下载到指定的目录中。

附:

flexget rejected list 列出所有被拒绝的条目

flexget rejected clear 清除所有被拒绝的条目

flexget failed list 列出所有失败的条目

flexget failed clear 清除所有失败的条目

更多用法说明查看官网:https://flexget.com/CLI