之前写了教程,讲的Debian下如何使用transmission配合flexget自动下载pt并删除,达到自动刷pt数据的目的,不过教程里面的方法已经失效了,因为python2.7版本已经不再受支持。

找了一个新的办法,采用qbittorrent、flexget与autoremove torrents配合,达到同样的目的。

一、安装qbittorrent

add-apt-repository ppa:qbittorrent-team/qbittorrent-stable
apt-get update
apt-get install qbittorrent-nox

运行一次

qbittorrent-nox

ctrl+c结束进程

创建服务

vim /etc/systemd/system/qbittorrent.service

在其中输入一下内容:

[Unit]
Description=qBittorrent Daemon Service
After=network.target

[Service]
User=root
ExecStart=/usr/bin/qbittorrent-nox --webui-port==8088
ExecStop=/usr/bin/killall -w qbittorrent-nox

[Install]
WantedBy=multi-user.target

启动并设置开机自启(如何结束不用讲了吧)

systemctl start qbittorrent
systemctl enable qbittorrent

访问qb的webUI,端口号我修改为8088了,默认是8080。

默认地址: http://IP地址:8088
默认用户名: admin
默认密码: adminadmin

二、flexget

安装flexget

apt-get install python3
pip3 install -U pip
apt-get install python3-setuptools
apt-get install nano
pip3 install flexget

创建配置文件:

mkdir /root/.flexget
nano /root/.flexget/config.yml

在其中输入以下内容:

tasks:
  mt:
    rss: https://pt.m-team.cc/torrentrss.php?https=1&rows=10&linktype=dl&passkey=xxxxxx
    accept_all: yes
    content_size:
      min: 256
      max: 4000
      strict: no
    download: /root/torrents
    qbittorrent:
      host: 127.0.0.1
      port: 8088
      username: admin
      password: adminadmin
      path: /root/pt
    free_space:
      path: /root/pt
      space: 5000
web_server:
  bind: 0.0.0.0
  port: 8089
  web_ui: yes

在插件支持的情况下,还可以只下载free的免费种子,配置如下:

tasks:
  hdsky:
    rss:
      url: https://hdsky.me/torrentrss.php?rows=10&linktype=dl&passkey=xxxx
      other_fields:
        - link
    nexusphp:
      cookie: 'c_secure_uid=NjYz; c_secure_ssl=eWVD; c_secure_tracker_ssl=eWVhD; c_secure_login=bm9w3D; c_secure_pass=b58bd85'
      discount:
        - free
        - 2xfree
    content_size:
      min: 256
      max: 4000
      strict: no
    download: /root/torrents
    qbittorrent:
      host: 127.0.0.1
      port: 8088
      username: admin
      password: adminadmin
      path: /root/pt
    free_space:
      path: /root/pt
      space: 5000
web_server:
  bind: 0.0.0.0
  port: 8089
  web_ui: yes

需要先将插件上传至/root/.flexget/plugins目录下, 没有plugins目录的可以自己新建。

插件下载及教程参照:flexget-nexusphp,目前只试了下hdsky的设置没问题,m-team的我测试即使加了过5秒盾的插件,仍然报错,有兴趣的朋友可以自己折腾一下。

新建两个目录

mkdir /root/torrents
mkdir /root/pt

执行一下,应该不会有错,注意yaml文件中不能用tab键,只能空格

flexget execute

设置自动运行

crontab -e

在其中加入:

*/10 * * * * /usr/local/bin/flexget --cron execute

表示每10分钟执行一次。

设置webUI

flexget web passwd <要设置的密码>

必须开启守护进程:

flexget daemon start -d

访问 http://ip:8089 即可,用户名为 flexget,密码为设置密码。

编辑 crontab,输入以下内容。

@reboot /usr/local/bin/flexget daemon start -d

三、autoremove torrents

安装

pip3 show autoremove-torrents
pip3 install autoremove-torrents

创建配置文件:

mkdir /root/autoremove-torrents
vim /root/autoremove-torrents/config.yml

在其中输入

my_task:
  client: qbittorrent
  host: http://127.0.0.1:8088
  username: admin
  password: adminadmin
  strategies:
    strategy1:
      all_categories: true
      free_space:
        min: 6
        path: /root/pt
        action: remove-inactive-seeds
  delete_data: true

这样,做种达到10800秒后,就会自动删除该种子。

运行

autoremove-torrents --conf=/root/autoremove-torrents/config.yml

自动运行,编辑crontab,添加

*/10 * * * * /usr/local/bin/autoremove-torrents --conf=/root/autoremove-torrents/config.yml

每10分钟执行一次

 

flexget和autoremove还有很多具体的配置选项,这里就不一一介绍了,可以查看别人的教程。

本文参考了小学堂的教程,只是把其中的一些配置文件修改了一下,算是给自己搭建过程做一个备份。