时光荏苒,从我写下《AutoBangumi:自动追番,解放双手》一文至今,已两年有余。作为一款专注于自动下载订阅番剧的工具,AutoBangumi(AB)能够通过 RSS 订阅下载最新的番剧,并按照媒体程序的标准重命名视频文件;对于同时订阅了多个字幕组的番剧,它还能在重命名后以覆盖旧文件的方式实现简单的洗版。相比手动下载和重命名,确实是要方便得多。

然而,经过这八个季度的连续使用,我可以负责任地说,如果只是简单地追番,AB 提供的功能是足够的,可另一个事实是,目前的 AB 还算不上实现了「全自动追番」的所有基础功能。

例如,有时为了能第一时间观看最新一集,我会选择订阅 ANI 的 RSS 源;但一般情况下,我更倾向订阅 Nekomoe Kissaten、LoliHouse 或其他字幕组的简繁日内封字幕的资源,观看这些字幕显示效果更佳的版本。ANI 下载的是版权方 .mp4 格式繁体字幕的资源,字幕组通常是 .mkv 格式(少数为 .mp4 格式),而最后我只会保存字幕组的资源——这就涉及到「洗版」,即用质量更优的版本现存版本。AB 只能通过覆盖同名文件的方式进行洗版,这要求视频名称和格式完全一致。显然,对于格式不同的情况,AB 就无能为力了。我曾尝试过使用 MoviePilot 进行追番,但程序本身不支持 BT 资源不说,洗版相关的功能也并非为番剧而设计,断断续续测试了一个月后,还是用回了 AB。因此每隔一段时间,我都得手动删除通过 ANI 订阅下载的资源。

另一个让我颇为头疼的问题是「剧集偏移」。AB 一直无法实现剧集偏移相关的功能,即当某部番剧剧集的编号与实际发布顺序不一致时,重命名时需要加减「偏移量」来校正,以匹配视频元数据库。例如,《关于我转生变成史莱姆这档事》采用了连续编号的策略,虽然现在播放的是第 3 季,但第 1 集的编号却是第 49 集。为了正确重命名为 关于我转生变成史莱姆这档事 S03E01 ,需要在重命名前减去「48」。对于这类存在剧集偏移的番剧,我只能手动重命名。

总而言之,AB 在洗版和剧集偏移方面的功能缺失,使得在追番过程中仍需要手动调整订阅。再加上其自身存在的某些久未修复的 bug(例如掉线无法重连),只有在准备看番的时候才能发现,「哦,原来 AB 又挂了」。尽管只是点个重启按钮的小事,但等待下番的工夫,好不容易空出来的时间,就可能白白浪费掉了。

唉,是否有其他工具能帮助我更愉快地追番呢?就在我一筹莫展之际,群友向我推荐了 ANI-RSS

前排提示:
ANI-RSS 更新频繁,本文部分信息可能随时过时,请注意辨别!一切以官方文档和实际体验为准。

关于

ANI-RSS(ASS)是一款基于 蜜柑计划全自动番剧下载工具。

与 AB 一样,ASS 也是通过 RSS 订阅番剧,调用 qBittorrent(另支持 Transmission、Aria2)下载番剧。但 ASS 无需注册蜜柑计划账号,亦无需在蜜柑官网订阅番剧,订阅的所有操作均在程序内进行。另外,ASS 不完全依赖蜜柑计划,使用 DMHY / NYAA 亦可订阅下载,只是综合效果及使用体验,还是蜜柑计划最优。

与 AB 不一样的是,ASS 支持剧集偏移,并且可以自动识别偏移集数;支持配置不同的 RSS 订阅链接并自动洗版;在将番剧文件夹挂载至 ASS 的前提下,可以自动跳过已下载文件;假如设置了做种规则,在完成做种任务后,还可以自动删除种子。再加上简单明了的操作界面、按星期分类的番剧卡片,移动端也能方便订阅(基础设置还是需要在 PC 上准备好),随时随地都能添加新订阅。至于代理、使用 TMDB 的标题、获取年份、Telegram 和 WebHook 通知等等 AB 原有的功能,更是精益求精。

废话不多说,让我们开始吧!

本文主要介绍 ANI-RSS 搭配蜜柑计划及 qBittorrent 的使用方法。

安装

使用群晖 DSM 的小伙伴,可以参考 官方文档 - Container Manager 部署 的步骤,使用面板安装 ASS。这里仅提供使用 Docker Compose 安装 ASS 的详细流程。

安装 Docker 及 Docker Compose 的步骤我就跳过了。实在不会可以参考 AB 一文 [安装 Docker & Docker Compose] 的环节自行研究一番。

首先,创建一个文件夹,比如 ANI-RSS。顺便创建一个 ass、一个 qb 文件夹用于存储数据:

接着,在本地创建一个 compose.yml,复制粘贴以下内容:

services:

  qb:
    image: superng6/qbittorrentee:latest
    container_name: qb
    ports:
      - ${QB_PORT}:${QB_PORT} #qb端口
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - WEBUIPORT=${QB_PORT}
      - TZ=${TZ}
    volumes:
      - ./qb:/config
      - ${Bangumi_Location}:/bangumi #番剧挂载路径
    restart: unless-stopped
    networks:
      - ani-rss


  ani-rss:
    image: wushuo894/ani-rss:latest
    container_name: ani-rss
    ports:
      - ${ASS_PORT}:${ASS_PORT}
    environment:
      - PORT=${ASS_PORT}
      - CONFIG=/config
      - TZ=${TZ}
    volumes:
      - ./ani-rss:/config
      - ${Bangumi_Location}:/bangumi #番剧挂载路径
    restart: unless-stopped
    networks:
      - ani-rss


networks:
  ani-rss: 
    external: true

鉴于 qBittorrent 和 ani-rss 有不少共用变量,因此再创建一个 .env 文件存储这些变量,后续有修改在这个文件中操作就好:

PUID=1026 
PGID=100
TZ=Asia/Shanghai
QB_PORT=8989
ASS_PORT=7789
Bangumi_Location=/volume1/bangumi

上面提供的是群晖的配置。关于 PUIDPGID,DSM 用户默认主账户的 UIDGID 为 1026、100,其他用户需要在终端中使用 id 查看自己所属的 ID。例如:

$ id
uid=1026(mikusa) gid=100(users) groups=100(users),101(administrators),65536(docker)

挂载路径则需要具体到以 /volume 开头,例如 /volume1/bangumi

Windows 用户请将 PUIDPGID 设置为 0,即 PUID=0PGID=0,否则 qbittorrent 可能因为权限不足而无法下载;番剧挂载路径不能直接使用 E:\Bangumi ,需要写为 /E/Bangumi

或者,建议 Windows 用户使用 exe 程序直接运行。release 页面下载 exe 程序运行,同时 qBittorrent 也使用 exe 程序。

然后把 .envcompose.yml 这俩文件上传到 ANI-RSS 文件夹里。

最后,打开终端登录 SSH。建议使用非 root 用户操作

创建一个名为 ani-rss 的网络:

docker network create -d bridge ani-rss

进入 ANI-RSS 文件夹:

cd /volume1/docker/ANI-RSS

持续化启动:

docker compose up -d

配置

qBittorrent

打开 http://localhost:8989 配置 qBittorrent。

qBittorrent 的密码需要在终端中查看,使用以下命令查看容器日志:

docker logs qb

输出如下:

$ docker logs qb   
2024-10-03 18:49:39 - INFO - Configuration updated successfully.
WebUI 将在内部准备不久后启动。请稍等…
[ls.io-init] done.

******** 信息 ********
要控制 qBittorrent,请访问下列地址的 WebUI:http://localhost:8989

WebUI 管理员用户名是:admin
未设置 WebUI 管理员密码。为此会话提供了一个临时密码:y2rSfyj38
你应该在程序首选项中设置你自己的密码

登录 qBittorrent 的用户名即为 admin ,临时密码为 y2rSfyj38

由于 qBittorrent 只是作为下载器,不承担订阅 RSS 的角色,因此:

  • 为不完整的文件添加扩展名,设置默认保存路径到 /banguimi

  • 随机一个连接端口,开启 UPnP 转发

  • 修改一下管理员密码

找个种子测试确保能正常下载,qBittorrent 就能用了。

下面是 ASS 的配置,我就不再新建二级标题了。

登录设置

打开 http://localhost:7789 配置 ASS,ASS 的默认账户密码均为 admin

如果你计划在公网中使用,需要在 设置 -> 登录设置 中修改密码;如果你只想在内网中使用,那么可以开启「IP 白名单」,填写跳过身份验证的 IP,比如 127.0.0.1

下载设置

接着,在下载设置中填写 qBittorrent 的相关信息。如果你完全参照本文安装的 ASS 和 qBittorrent,那么在地址一栏,可以直接使用 qb:8989 登录。

保存位置这里,需要填写容器内部的路径,即 /bangumi

剧场版我暂时用不到,也还没有机会测试,因此留空。但如果后续有订阅剧场版的话,会默认使用上面配置的 番剧保存位置

为了配合洗版,自动删除需要打开。

由于我是媒体程序用户,Plex、emby 不支持二级文件夹,我个人也有强迫症。因此不启用拼音首字母、季度存放。这两个更像是 Windows 纯本地文件夹追番的用户需要的功能。

正常订阅番剧的话,应该是不会一次性下载太多的,因此不做下载数量的限制。如果 NAS性能不足,请设置为 1 或 2,并在 qBittorrent 端关闭做种。

检测死种需要打开。但一般情况下新番是不会存在死种的情况,除非字幕组撤回发布停止做种。

我个人是非常不建议使用 AB 或 ASS 等工具订阅老番的,一是老番的种子随着时间的推移,公网极有可能死种;二是老番在放送过后会发行光碟,字幕组在后期也会校正字幕错误、或优化字幕效果以匹配光碟,你可以选择这些质量更好的资源观看。

修改任务标题一定要开,否则后续使用备用RSS的话会出现各种各样奇奇怪怪的bug。

qb保存路径就保持默认的吧。我至今不知道这个开关是干啥用的,哦我完全懂了.webp

基本设置

全部打开后,可以像本文第一张图片那样展示精美的番剧卡片。

如果你是在追番途中才开始使用 ASS,可以打开「只下载最新集」的开关。

标题添加年份、自动推断剧集偏移、TMDB标题这些都要打开。同名剧集需要靠年份区别、剧集偏移是 ASS 的精髓、TMDB标题对于 emby 用户更是重中之重。

至于全局排除,就算你不设置,ASS 也会默认导入 720\d{1,2}-\d{1,2}(匹配像 1-212-3403-05 等格式的种子)、合集特别篇这些排除规则,所以不用刻意开启它。可以在添加订阅默认规则排除不了的时候,导入一次排除规则。

重命名设置这里,需要开启「自动重命名」,季命名方式根据自己喜欢选择,可以设置为 Season 1S1 ,或者为空。但不建议为空。

重命名模板保持默认,别随便去动它。或者某些同学可能有增加字幕组的需求,可以在末尾加上 -${subgroup}

RSS 开关肯定是要开的,RSS 刷新间隔也保持默认。但这个「自动跳过」需要关闭,否则配合底下「备用 RSS」的时候,会因为已经下载过而不会自动洗版。

其余开关都可以打开,但使用「备用 RSS」有很多注意事项:

  • 首先,不能将 动漫花园 的 RSS 用作备用 RSS,也不能为 动漫花园 的 RSS 配置备用 RSS。
  • 其次,开启「备用 RSS」的同时,需要在下载设置中开启 qBittorrent 的 修改任务标题 功能。并且这个功能对 Transmission 的兼容性不太好,且不支持 aria2。
  • 最后,需要在下载设置中开启 自动删除 ,才会 自动替换 备用 RSS 为主用 RSS 的版本。这需要 ASS 与下载器的映射路径完全一致,否则当备用 RSS 为 .mp4、主用 RSS 为 .mkv 时,无法完成自动删除旧视频。

最后这里可以修改蜜柑计划的地址,比如改成 https://mikanime.tv/ ,或是其他镜像地址。

自动点格子我用不到,我有强迫症一定要自己点。

禁止公网访问可以开启,但前提是出门在外有访问回家的手段。

全局排除

我目前配置了这些,你可以当作参考:

720 繁日双语 JPTC 内嵌 BIG5

或者参考《自用Autobangumi排除规则》针对各个字幕组作详细的排除规则。

代理设置

填写代理的 IP 和端口,启用后测试有正常结果就行。

通知设置

Telegram 新建 Bot 这里需要你自行谷歌搜索相关创建方法,然后依次填入 Token 和 ChatID。

邮件通知请参考 官方文档

WebHook 是我不怎么会用的功能,所以也需要你自行琢磨。

使用

终于,到了使用这一步了!我截了这么多图也有些累了。

配置的过程其实并不复杂,订阅更是十分简单。但在开始订阅之前,还是需要确保一下网络方面畅通无阻。

请测试是否能打开以下网站再开始订阅:

添加订阅

点击右上方添加按钮进行订阅。你可以直接在地址栏内填写蜜柑计划上复制的字幕组 RSS 订阅链接,或者点击右侧的 Mikan 按钮浏览当季番剧列表,选择心仪的字幕组订阅。

你还可以在直接在列表中浏览往期新番,订阅已完结的番剧。但不要订阅太早的番剧,避免种子无人做种下载失败。

另外,在确定订阅前,一定要点击「预览」,查看一下文件夹路径和重命名名称是否无误,再保存订阅。

剧集偏移

那么剧集偏移的情况怎么办呢?这里抓一个典型,本季播出的《Re:从零开始的异世界生活》第三季。RE0 在 TMDB 中只有一季,所以需要设置剧集偏移;虽然是第三季,但这一季的名字其实叫作《Re:从零开始的异世界生活 袭击篇》,与 TMDB 是不匹配的,还需要手动修改文件夹名称。因此,在订阅编辑页面,你需要手动调整剧集标题以及偏移量。

关于正确的标题,有两种做法:

  • 打开 https://www.themoviedb.org/ 搜索后,手动将正确的 Re:从零开始的异世界生活 (2016) 粘贴进标题栏里
  • 删除疑似多余的 袭击篇但不能删除年份,否则刷新后获取不到年份(如果你不需要年份,那么只要获取到正确的标题就行。但鉴于有同名的情况,还是请带上年份)

无论选择哪种方法,都需要点击一次 TMDB 右侧的刷新按钮,获取到正确的标题以及年份,再点击「使用 TMDB」才能获取到正确的标题。

然后调整季度、集数偏移量。不用管自定义下载的内容,我们点击一次预览,只要预览内重命名后的信息是正确的,就可以保存订阅了。

请看 VCR:

ASS 的「自动猜测偏移集数」的功能,是根据当前订阅源的第一集序号推断的。一般情况下没什么问题,不过也有例外。例如《【我推的孩子】》第二季虽然是 12 集开始,但 TMDB 中归类到第一季,且大部分字幕组都没有命名成第一集。因此只要调整季度,无需增加集数偏移。

改成季1,偏移0就行
改成季1,偏移0就行

备用 RSS

在新增订阅时、或是在现有订阅中,均可以添加备用 RSS。

还是《【我推的孩子】》,字幕组更新到了第 22 集,Ani 更新到了 24 集。如果急着看更新的话,可以把 Ani 的 RSS 订阅添加到 备用 RSS 配置中。

添加备用 RSS 的方法和添加主 RSS 一样,直接填写 RSS 链接,或者浏览列表选择一个导入。保存之前预览一下是否能正确抓取,否则需要调整过滤规则。

最后等待 ASS 抓取订阅自动下载即可。后续若主 RSS 有更新,ASS 会自动下载主 RSS 订阅,并删除备用 RSS 的旧版本,完成洗版。

切记要开启自动删除,关闭自动跳过!否则无法洗版!!

其他技巧

误删除本地文件

假如你在正常订阅并正常下载的情况下删除了本地文件,这时候想再在 ASS 中刷新订阅是无法恢复下载的。需要预览中找到对应的种子,然后删除它。

之后再点击刷新订阅,才会重新抓取订阅并推送下载。

程序更新

ASS 支持应用内检测更新,前提是与 github 的连接畅通无阻

Docker 容器点击更新后会自动重启,无需重新拉取容器镜像。

exe 程序点击更新时,也会自动下载最新版本程序文件并自动重启。但目前有一个小问题:不会自动删除本地旧版本程序文件,只得手动删除。

最后

关于 ANI-RSS 的使用方法,目前就是这些内容了。不知经过我的这一番介绍,你是否对 ASS 产生兴趣了呢?虽然 AB 有不少问题,但所谓「长江后浪推前浪」, ASS 多少是踩在巨人的肩膀上,在顺着前辈的思路开发出来的。

嘛,总之快行动起来吧!现在就弃用 AB,投向 ASS 的怀抱,享受 ASS 带来的崭新的愉悦的追番体验吧!

参考