目標
自動下載新番種子 種子自動加入 Transmission 下載隊列 新番文件自動重命名到 Plex 兼容格式 通過 Plex AniDB agent 自動獲取新番相關信息
總結:基於 FlexGet 和 Transmission 的全自動追番方案
實現方法
通過 FlexGet 讀取 RSS,自動下載種子文件,通過正則自動剔除無效字符 通過 FlexGet 的 transmissionrpc 插件自動將種子傳送到 Transmission Transmission 下載完成後觸發腳本,自動將種子重命名為 Plex 可識別格式 通過 Plex 的第三方插件 Hama.bundle 自動獲取新番相關訊息
配料表
裝有 macOS 的電腦一部 Plex Transmission FlexGet
配置 FlexGet(2021 版)
最新版本配置採用 FlexGet 內置的 manipulate 方法,對 RSS 直接修改為符合 Plex 查詢標準的文件名,避免了使用 Transmission 調用外掛腳本的方案,下面的正則可根據實際場景進行修改:
bangumi:
template: torrent
manipulate:
- title:
# remove underscores
replace:
regexp: '_'
format: ''
- title:
replace:
regexp: '★'
format: ''
- title:
extract: '^[\[【].*?[\]】](.*)'
- title:
replace:
regexp: '【'
format: '['
- title:
replace:
regexp: '】'
format: ']'
- title:
replace:
regexp: '】'
format: ']'
- title:
replace:
regexp: '(?:\[|【)(简体|簡體|繁体|繁體|简日双语|繁日雙語|GB|BIG5|MP4)(?:\]|】)'
format: ''
- title:
replace:
regexp: '(?:\[|【|第)(\d\d)(?:\]|】|話|话)'
# format: 's01e\1'
format: '\1'
- title:
# replace `][` to ` ` (space)
replace:
regexp: '\]\['
format: ' '
- title:
# remove leftover brackets
replace:
regexp: '[\[\]【】]'
format: ' '
- title:
replace:
regexp: '(?:.*字幕 (?: 组|組))'
format: ''
- title:
replace:
regexp: '\[(?:.+? 月新? 番)'
format: ''
set:
path: /Volumes/Gizur/Downloads/Anime/{{ series_name }}
content_filename: '{{ series_name }} - {{ series_id|pad(2) }}'
magnetization_timeout: 45
series:
- スーパーカブ:
alternate_name: 本田小狼與我 Super Cub
- ダイナ莊びより:
alternate_name: 恐龍日和
- 回復術士のやり直し 〜即死魔法とスキルコピーの超越ヒール〜:
配置 FlexGet(2013 版,無需再看)
FlexGet 的安裝方法和自動運行請參考參考 官方文檔 ,寫的很詳細
配置文件如下,要點在於 presets.global.transmission.path
,為了能讓 Plex 識別和方便管理,每一個動畫 要分別放在相應命名的目錄 。其中 {{task}}
對應的就是 tasks
下的新番標題:
presets:
global:
accept_all: true
transmission:
host: localhost
port: 9091
addpaused: No
ratio: 0.01
removewhendone: Yes
path: "/Volumes/Backups HD/Anime/{{task}}/"
tasks:
WHITE ALBUM2:
rss: http://bt.ktxp.com/rss-search-%E6%BE%84%E7%A9%BA%E5%AD%A6%E5%9B%AD+%E7%99%BD%E8%89%B2%E7%9B%B8%E7%B0%BF+2+MP4+720p.xml
アウトブレイク・カンパニー:
rss: http://bt.ktxp.com/rss-search-%E6%BE%84%E7%A9%BA%E5%AD%A6%E5%9B%AD+%E8%90%8C%E8%90%8C%E4%BE%B5%E7%95%A5%E8%80%85+MP4+720p.xml
ガリレイドンナ:
rss: http://bt.ktxp.com/rss-search-%E6%BE%84%E7%A9%BA%E5%AD%A6%E5%9B%AD+%E4%BC%BD%E5%88%A9%E7%95%A5%E5%B0%91%E5%A5%B3+%E7%AE%80%E4%BD%93+MP4+720p.xml
キルラキル:
rss: http://bt.ktxp.com/rss-search-%E6%A5%B5%E5%BD%B1%E5%AD%97%E5%B9%95%E7%A4%BE+Kill+La+Kill+BIG5+MP4+720p.xml
京騒戯画:
rss: http://bt.ktxp.com/rss-search-WOLF+%E4%BA%AC%E9%AA%9A%E6%88%8F%E7%94%BB+GB+720P+MP4.xml
凪のあすから:
rss: http://bt.ktxp.com/rss-search-%E5%8B%95%E6%BC%AB%E5%9C%8B+%E4%BE%86%E8%87%AA%E9%A2%A8%E5%B9%B3%E6%B5%AA%E9%9D%9C%E7%9A%84%E6%98%8E%E5%A4%A9+720P+%E7%B9%81%E9%AB%94+MP4.xml
境界の彼方:
rss: http://bt.ktxp.com/rss-search-%E6%BE%84%E7%A9%BA%E5%AD%A6%E5%9B%AD+%E5%A2%83%E7%95%8C%E7%9A%84%E5%BD%BC%E6%96%B9+%E7%AE%80%E4%BD%93+MP4+720p.xml
夜桜四重奏 ~ハナノウタ~:
rss: http://bt.ktxp.com/rss-search-%E6%A5%B5%E5%BD%B1%E5%AD%97%E5%B9%95%E7%A4%BE+%E5%A4%9C%E6%AB%BB%E5%9B%9B%E9%87%8D%E5%A5%
配置 Transmission
如果使用了 2021 版的方案,請略過本段
Transmission 本身不需要進行過多配置,為了避免下載隊列越來越多,記得勾選下載完成後從隊列刪除這個選項。下面是其對應的 post-process 腳本:
#!/bin/sh
# Search all subdirectories
# Use rename -n for dry-run
cd /Volumes/Backups\ HD/Anime
find . -name '*.mp4' -print0 | xargs -0 /usr/local/bin/rename -f 's/\[(.*)\]\[(.*)\]\[(\d{2})\].*$/$2 - $3\.mp4/'
上述腳本會通過正則將 [Fansub][Title][Episode]*.mp4
這樣的格式替換為 Plex 可識別的 Title - Episode.mp4
格式,例如 [WOLF&HYSUB][Kyousougiga][00][GB][720P][MP4].mp4
就會被替換為 Kyousougiga - 00.mp4
配置 Plex w/ Hama Agent
注意! ,已棄用 AniDB agent,改為 Hama Agent 。詳情請訪問最新文章:Hama (HTTP Anidb Metadata Agent) and Plex Media Server – 2014-04-09
訪問 Plex 論壇 下載 AniDB agent 并安裝 ,通過 Plex 的 web 界面進行管理即可
完成配置後可通過下列指令進行 dry run 測試:
flexget -c ~/.flexget/config.yml --test execute
以下是效果圖: