https://flexget.com

flexget解决了PT客户端没有RSS订阅功能,实现全自动添加种子任务到qbittorrenttransmission、 deluge等客户端上,配合使用autoremove-torrents自动删除PT种子文件简直是PT党刷上传流量的必备神器

安装flexget

从pip安装

apt update
apt install python3-pip
pip3 install flexget

flexget配置文件

mkdir .flexget
nano .flexget/config.yml

示范配置

templates:
# 剩余空间模板,当 path 对应的路径的剩余空间小于 space 规定的数值的时候停止 RSS 下载 单位MB
  freespace:
    free_space:
      path: /home/star
      space: 10240
# qb 的模板,之后写 qb 就是指把种子推送到 qb 进行下载;下面 tr de rt 也是如此
# 除非你修改了对应客户端的账号密码或者端口号,不然不需要修改这些客户端的模板
  qb:
    qbittorrent:
      path: /home/SCRIPTUSERNAME/qbittorrent/download/
      host: localhost
      port: 8080
      username: admin
      password: adminadmin
  tr:
    transmission:
      path: /home/SCRIPTUSERNAME/transmission/download/
      host: localhost
      port: 9091
      username: SCRIPTUSERNAME
      password: SCRIPTPASSWORD
  de:
    deluge:
      path: /home/SCRIPTUSERNAME/deluge/download/
      host: localhost
      port: 58846
      username: SCRIPTUSERNAME
      password: SCRIPTPASSWORD
# 体积过滤模板,min 是符合条件的最小种子体积,max 是符合条件的最大种子体积,单位均为 MB
# strict 默认是 yes,表示在无法确定大小的情况下就不下载,这里把它改成 no 了
# 也就是说,这段 size 的意思是,只下载体积为 6000-666666 MB 的种子,其他不满足条件的种子不下载
  size:
    content_size:
      min: 10000
      max: 66666
      strict: no

# 任务
tasks:
  CHDbits:
    rss: https://chdbits.co/torrentrss.php?rows=
    verify_ssl_certificates: no
    accept_all: yes
    template:
      - freespace
      - qb
    qbittorrent:
      maxupspeed: 45000
# qbittorrent单种上传限速45000KB/S
	  label: CHDbits
  CMCT:
    rss: https://hdcmct.org/torrentrss.php?rows=
    verify_ssl_certificates: no
    accept_all: yes
    template:
      - freespace
	  - size
      - qb
    qbittorrent:
      label: CMCT
# RSS功能使用daemon模式的schedules或者使用cron  二选一
#schedules:
#  - tasks: [ChDbits, CMCT]
#    interval:
#      minutes: 10
# 这里我选用是CRON
schedules: no
# 每10分钟执行一次

使用 schedules 示范

schedules:
  - tasks: [HDChina,TTG]
    interval:
      minutes: 3
  - tasks: [Gods]
    interval:
      minutes: 1

测试flexget运行

flexget --test  --loglevel debug execute

第一次使用 RSS 的时候难免会下载到一些已经出种的老种,为了解决这个情况,第一次执行 flexget 的时候,可以用

flexget execute --learn

这样子不会下载种子,但是会把这次 RSS 到的种子标记为已下载,这样之后就不会下到老种了

添加开机自启动,编辑文件/etc/rc.localexit 0 前面(前一行)添加

flexget daemon start -d

运行

flexget execute

设置cron定时计划任务,编辑文件/etc/crontab在最后加以下

*/2 *  * * * root  /usr/local/bin/flexget execute >/dev/null 2>&1

每2分钟执行一次flexget execute 保存后重启下cron

/etc/init.d/cron restart
systemctl restart cron
systemctl restart cron.service

flexget-nexusphp插件

https://github.com/Juszoe/flexget-nexusphp

安装flexget-nexusphp插件

下载插件 nexusphp.py

mkdir .flexget/plugins
wget -O .flexget/plugins/nexusphp.py wget https://github.com/Juszoe/flexget-nexusphp/releases/download/v1.4/nexusphp.py

Chrome浏览器获取站点的cookie

Chrome登陆站点后按键盘F12依次如下图操作

为flexget加上flexget-nexusphp插件的配置文件

修改flexget的配置文件.flexget/config.yml 加上flexget-nexusphp插件后的完整示范配置内容如下

templates:
# 剩余空间模板,当 path 对应的路径的剩余空间小于 space 规定的数值的时候停止 RSS 下载 单位MB
  freespace:
    free_space:
      path: /home/SCRIPTUSERNAME/transmission/download/
      space: 10240
# qb 的模板,之后写 qb 就是指把种子推送到 qb 进行下载;下面 tr de rt 也是如此
# 除非你修改了对应客户端的账号密码或者端口号,不然不需要修改这些客户端的模板
  qb:
    qbittorrent:
      path: /home/SCRIPTUSERNAME/qbittorrent/download/
      host: localhost
      port: 8080
      username: admin
      password: adminadmin
  tr:
    transmission:
      path: /home/SCRIPTUSERNAME/transmission/download/
      host: localhost
      port: 9091
      username: SCRIPTUSERNAME
      password: SCRIPTPASSWORD
  de:
    deluge:
      path: /home/SCRIPTUSERNAME/deluge/download/
      host: localhost
      port: 58846
      username: SCRIPTUSERNAME
      password: SCRIPTPASSWORD
# 体积过滤模板,min 是符合条件的最小种子体积,max 是符合条件的最大种子体积,单位均为 MB
# strict 默认是 yes,表示在无法确定大小的情况下就不下载,这里把它改成 no 了
# 也就是说,这段 size 的意思是,只下载体积为 100-150666 MB 的种子,其他不满足条件的种子不下载
  size:
    content_size:
      min: 100
      max: 150666
      strict: no

# 任务
tasks:
  LemonHD:
# 带flexget-nexusphp插件的这里不要RSS
    verify_ssl_certificates: no
    accept_all: no
# flexget-nexusphp配置与accept_all同级别
    template:
      - freespace
      - size
      - qb
    nexusphp:
      cookie: 'xxxxxxxxxxxxx'
      hr: no
      discount:
        - free
        - 2xfree
# nexusphp、rss、nexusphp、accept_all、verify_ssl_certificates 、qbittorrent 同级对齐
    rss:
      url: https://lemonhd.org/torrentrss.php?rows=xxxxxxxxxx
      other_fields: [link]
    qbittorrent:
      maxupspeed: 99000
# qbittorrent单种上传限速45000KB/S
      label: LemonHD
#tasks:
  pterclub:
# 带flexget-nexusphp插件的这里不要RSS
    verify_ssl_certificates: no
    accept_all: no
# flexget-nexusphp配置与accept_all同级别
    template:
      - freespace
      - size
      - qb
    nexusphp:
      cookie: 'PHPSESSID=cclcsc68rog0078mibarn0of3v; c_secure_uid=xxxxxxxxxx'
      hr: no
      discount:
        - free
        - 2xfree
# nexusphp、rss、nexusphp、accept_all、verify_ssl_certificates 、qbittorrent 同级对齐
    rss:
      url: https://pterclub.com/torrentrss.php?rows=xxxxxxxxxxxxxx
      other_fields: [link]
    qbittorrent:
      maxupspeed: 99000
# qbittorrent单种上传限速45000KB/S
      label: pterclub
#tasks:
  ourbits:
# 带flexget-nexusphp插件的这里不要RSS
    verify_ssl_certificates: no
    accept_all: no
# flexget-nexusphp配置与accept_all同级别
    template:
      - freespace
      - size
      - qb
    nexusphp:
      cookie: 'cf_clearance=UTCejIf5fmIUd7c1.kWAVkIjxxxxxxxxxxxxxxxxxx'
      hr: no
      discount:
        - free
        - 2xfree
# nexusphp、rss、nexusphp、accept_all、verify_ssl_certificates 、qbittorrent 同级对齐
    rss:
      url: https://ourbits.club/torrentrss.php?rows=xxxxxxxxxxxxxx
      other_fields: [link]
    qbittorrent:
      maxupspeed: 45666
# qbittorrent单种上传限速45000KB/S
      label: ourbits
#tasks:
  opencd:
# 带flexget-nexusphp插件的这里不要RSS
    verify_ssl_certificates: no
    accept_all: no
# flexget-nexusphp配置与accept_all同级别
    template:
      - freespace
      - size
      - qb
    nexusphp:
      cookie: '_ga=GA1.2.529558662.1641272891; _gid=GA1.2.131640xxxxxxxxxxx'
      hr: no
      discount:
        - free
        - 2xfree
# nexusphp、rss、nexusphp、accept_all、verify_ssl_certificates 、qbittorrent 同级对齐
    rss:
      url: https://open.cd/torrentrss.php?rows=xxxxxxxxxxxxxx
      other_fields: [link]
    qbittorrent:
      maxupspeed: 95666
# qbittorrent单种上传限速45000KB/S
      label: opencd
schedules:
  - tasks: [LemonHD, pterclub]
    interval:
      minutes: 1
  - tasks: [opencd, ourbits]
    interval:
      minutes: 2
# 每10分钟执行一次

详细配置

  • cookie 网站cookie 必须填写
  • discount 优惠类型 默认不限制优惠类型。 列表类型,Flexget会只下载含有列表内优惠类型的种子。 有效值:free 2x 2x50% 2xfree 50% 30% 注意:x为英文字母
  • seeders 做种情况 做种人数超出范围的,Flexget将不会下载
    • 注意:此选项兼容性较差
    • min 最小做种人数。整数,默认不限制
    • max 最大做种人数。整数,默认不限制
  • leechers 下载情况 下载人数超出范围的,Flexget将不会下载
    • 注意:此选项兼容性较差
    • min 最小下载人数。整数,默认不限制
    • max 最大下载人数。整数,默认不限制
  • max_complete 下载者中最大完成度 超过这个值将不下载。 小数,范围0-1.0,默认为1
  • left-time 最小剩余时间 当实际剩余时间小于设置的值,则不下载。 时间字符串,例如 3 hours10 minutes1 days。 例如设置1 hours,优惠剩余59分钟,那么就不下载。默认不限制
  • hr 是否下载HR种 默认 yes
    1. yes 会下载HR,即不过滤HR
    2. no 不下载HR
  • adapter 站点适配器 站点不兼容时可自定义,具体参考 判断站点以及适配站点
  • comment 在torrent注释中添加详情链接
    1. yes 在torrent注释中添加详情链接,方便在BT客户端查看
    2. no 默认值
  • user-agent 浏览器标识 默认为Google浏览器
  • remember 记住优惠信息 不建议设置为 no,因为会增大站点压力。默认 yes

测试flexget运行

flexget --test  --loglevel debug execute

如果没有报错的话,最后别忘了在qbittorrent客户端设置自动从此处添加中的监控文件夹设置为qbittorrent下载设置的path路径/home/SCRIPTUSERNAME/qbittorrent/download/

运行

flexget execute

enjoy… …