前言
我們可以使用Flexget為Deluge、Transmission、qBittorrent和rtorrent達成自動下載種子。
以下將會撰寫:
- 安裝Flexget – Ubuntu/Debian
- Flexget配置文件 — config.yml的基本寫法
- Flexget與Bittorrent軟體的連接:
- Deluge
- Transmission
- qBittorrent
- rtorrent
- 設置Flexget的自動執行與刷新時間
上次更新時間: 2020年3月5日
安裝Flexget
安裝Python軟體包管理工具:
apt update apt install python3-pip
更新Python軟體包管理工具:
pip3 install --upgrade pip hash -d pip3 pip3 install --upgrade setuptools
安裝Flexget:
pip3 install --ignore-installed flexget
配置文件
創建config.yml:
mkdir -p ~/.config/flexget cd .config/flexget touch config.yml
配置文件必須用YAML的格式編寫,子組件需比上級縮進兩空格。
nano config.yml
例子(1):
任務名稱是Anime,下載種子.torrent檔案到/home/torrent/並過濾名稱包含「hdtv」/「480p」/「720p」的種子
然後設置Bittorrent軟體的監控目錄為/home/torrent/即可。
缺點:不支援磁力鏈結
tasks: Anime: rss: http://RSS-LINK.com/rss.php download: /home/torrent/ accept_all: yes regexp: reject: - hdtv - 480p - 720p
例子(2) Deluge專用:
Flexget可以直接Push種子/磁鏈給Deluge
使用前請打開Deluge的「Allow Remote Connections」並重啟生效
使用前需安裝「deluge-client」讓Flexget可以連接到Deluge
pip3 install deluge-client
tasks: Anime: rss: http://RSS-LINK.com/rss.php accept_all: yes deluge: host: 127.0.0.1 port: 58846
例子(3) Transmission專用:
Flexget可以Push種子/磁鏈給Transmission
使用前需安裝「Transmission RPC」讓Flexget可以連接到Transmission
pip3 install transmissionrpc
tasks: Anime: rss: http://RSS-LINK.com/rss.php accept_all: yes transmission: host: 127.0.0.1 port: 9091 username: Transmission用戶名 password: Transmission密碼
例子(4) qBittorrent專用:
Flexget可以直接Push種子/磁鏈給qBittorrent
tasks: Anime: rss: http://RSS-LINK.com/rss.php accept_all: yes qbittorrent: host: 127.0.0.1 port: 8080 username: qBittorrent用戶名 password: qBittorrent密碼
例子(5) rtorrent專用:
建議使用rutorrent內置的rss功能
Flexget可以直接Push種子/磁鏈給rtorrent
方法一 (不安全 慎用): SCGI,SCGI端口根據.rtorrent.rc而定
已知問題: 最大Push數量為10/20顆種子
tasks: Anime: rss: http://RSS-LINK.com/rss.php accept_all: yes rtorrent: uri: scgi://127.0.0.1:5000
方法二: XMLRPC
已知問題: Push大量種子會導致紅種
tasks: Anime: rss: http://RSS-LINK.com/rss.php accept_all: yes rtorrent: uri: http://localhost:80/RPC2 username: Rutorrent用戶名 password: Rutorrent密碼
建議使用監控目錄方案 或 RuTorrent的RSS Plugin。
編輯後可以測試一下:
flexget --test execute
更多進階設置推薦參閱:
https://linkthis.me/2018/02/15/the-note-of-using-flexget/
設置Flexget刷新頻率
我們使用crontab進行工作排程:
crontab -e
如果出現類似以下輸出,建議選擇「/bin/nano」:
no crontab for root - using an empty one Select an editor. To change later, run 'select-editor'. 1. /bin/nano <---- easiest 2. /usr/bin/vim.basic 3. /usr/bin/vim.tiny 4. /bin/ed Choose 1-4 [1]:
輸入以下內容,例如每2分鐘刷新:
*/2 * * * * /usr/local/bin/flexget --cron execute
2分鐘後查看狀態:
flexget status
有問題可以查看日誌:
cat ~/.config/flexget/flexget.log
大大您好,設置Flexget刷新頻率我一直卡在這步驟,一直無法刷新
使用Cron並選擇默認的Nano、例如每10分鐘刷新,
這2個地方我一直不明白,希望大大能夠更仔細地說明,拜託了,感謝!
感謝反饋,已經更新該部分了