SKILL.md
蜜柑番剧更新监测#
能做什么:监测蜜柑计划(mikanime.tv)上预设番剧的最新一集,发现更新就给出带中文字幕的磁力链接;也可以随时搜索任意番剧的最新带字幕资源。
- 带脚本:是(纯 Python 标准库,仅额外依赖系统 curl)
- 联不联网:联网(蜜柑官方 RSS + episode 页面)
- 写不写文件:会读写同目录下的
mikan_watch_config.json(预设番剧列表)和mikan_watch_state.json(已推送条目去重状态)
用法#
python3 mikan_watcher.py --check # 巡检预设番剧,发现新集输出磁力
python3 mikan_watcher.py --search "番剧名" # 即时搜索某番剧最新带中文字幕磁力
python3 mikan_watcher.py --list # 列出预设番剧
python3 mikan_watcher.py --add "番剧名" # 添加预设番剧
python3 mikan_watcher.py --remove "番剧名" # 移除预设番剧
python3 mikan_watcher.py --dry-run # 与 --check/--search 同用:只打印不推送
预设番剧写在同目录 mikan_watch_config.json:{"shows": ["番剧名1", "番剧名2"]},也可以直接用 --add / --remove 维护。
机制说明#
- 数据源:蜜柑官方 RSS
https://mikanime.tv/RSS/Search?searchstr=<关键词>,返回最新条目(标题 / guid / episode 链接 / pubDate / torrent)。 - 中文字幕过滤:标题命中「简体 / 简繁 / 双语 / 中文 / 字幕」等关键词才入选;「生肉 / raw / 无字幕」直接淘汰。
- 集数识别:自动从标题提取集数(
- 04、[04]、EP04、第4话、合集01-12等格式都认),按「最新一集」判断更新,只推最新集里综合质量最高的最多 2 条(简中优先、1080p 优先、内封内嵌加分、招募 / SP / 总集篇降权)。 - 磁力获取:从 episode 页抓完整 magnet;拿不到时用 episode id(btih)兜底构造。
- 去重:
mikan_watch_state.json记录每个番剧已确认的集数和已推送的 guid,重复运行不会重复推送。
通知(可选)#
默认只输出到终端。设置以下环境变量后,结果会推送到 OneBot 兼容网关(如 NapCat / Lagrange 的 HTTP API):
export ONE_BOT_URL="http://127.0.0.1:3000/send_private_msg"
export ONE_BOT_TOKEN="你的网关访问令牌"
export QQ_USER_ID="接收通知的 QQ 号"
不设置也能用,只是不推送。
定时巡检#
用 cron 即可,例如每天中午 12 点巡检一次:
0 12 * * * cd /path/to/mikan-anime-watcher && python3 mikan_watcher.py --check >> mikan_watcher.log 2>&1
隐私与安全#
- 本技能不含任何密钥或账号凭据;推送凭据只通过环境变量注入,不会写进任何文件。
- 联网目标仅为 mikanime.tv(蜜柑计划)官方域名。
用途与依赖
作者没写,这些是平台读文件后整理的,以文件为准。
使用示例
请求:帮我看看《孤独摇滚》有没有新一集带中文字幕的,有的话把磁力发我
预期
执行 python3 mikan_watcher.py --search "孤独摇滚":先请求 https://mikanime.tv/RSS/Search?searchstr=孤独摇滚 拿到最新条目,过滤掉生肉 / raw / 无字幕,仅保留标题含简体 / 简繁 / 双语 / 中文 / 字幕的条目,提取集数取最大的一集,再按简中优先、1080p 优先、内封内嵌加分、招募 / SP / 总集篇降权排序,最多取 2 条。随后访问对应 episode 页面抓完整 magnet(抓不到则用 episode id 拼 btih)。终端输出类似: 【孤独摇滚】最新带中文字幕: ・[字幕组] 孤独摇滚 - 04 [1080p][简体] 磁力:magnet:?xt=urn:btih:... 若已配置 ONE_BOT_TOKEN 与 QQ_USER_ID,同一条消息会推送到设定的 QQ;加 --dry-run 则只打印不推送。
- 适用场景
- 想知道自己追的番有没有更新到新一集、要中文字幕磁力
- 按关键词即时搜索某部番最新一集的中文字幕资源
- 维护一份长期订阅的番剧名单(添加 / 移除 / 列出)
- 配合 cron 每天定时巡检并把更新推送到 QQ
- 避免重复收到同一集的通知(已推送记录去重)
- 输入
- 要查询或订阅的番剧名称(--search / --add / --remove 的参数)
- 需要长期巡检的预设番剧列表(可直接写 mikan_watch_config.json,或用 --add 维护)
- 可选:环境变量 ONE_BOT_URL(OneBot HTTP 接口地址,默认 http://127.0.0.1:3000/send_private_msg)
- 可选:环境变量 ONE_BOT_TOKEN(网关访问令牌)与 QQ_USER_ID(接收通知的 QQ 号)
- 可选:是否加 --dry-run 只打印不推送
- 输出
- 终端输出的番剧更新报告,含标题与磁力链接
- 即时搜索结果(最多 2 条最新一集中文字幕版本及其磁力)
- 未找到时的提示文本(如「暂时没找到带中文字幕的更新」)
- 更新 / 新建的 mikan_watch_config.json(预设番剧列表)
- 更新 / 新建的 mikan_watch_state.json(已确认集数与已推送 guid 的去重状态)
- 配置后通过 OneBot 网关发出的 QQ 私聊消息
- 运行环境
- Python 3(脚本只用标准库,但通过 subprocess 调用系统 curl 发请求)
- 依赖
- curl(系统命令行工具,脚本用它做 HTTP GET 和 POST)

