GitHub开源地址: https://github.com/awordx/openlist-rename-strm

使用说明

最新更新
v4.84

  • 添加封面自动更新功能(代码来源:Akimio521 ),可以根据cron定时为媒体库生成精美封面
    在这里插入图片描述

⚠️ 注意事项

  • 本项目适用于 Alist 挂载网盘的增量更新重命名,支持手动刷新网页完成新增文件的命名。
  • 支持 全量重命名.strm 文件生成
  • 命名不可还原,建议先在小规模文件夹上测试确认无误后,再批量操作。

📌 1.项目功能概述

本项目可对挂载到 Alist 的 电影、剧集、动漫资源 进行以下操作:

  • 自动重命名文件
  • 自动生成适配 Emby 的 .strm 文件
  • 支持以下网盘:115、阿里云盘、天翼云盘等

🎬 1.1 电影处理流程

  1. 自动清理无效视频文件

    • 仅保留体积最大的视频(主文件)和字幕文件。
    • 多余小视频将自动删除。
  2. 字幕重命名

    • 字幕文件重命名为与视频相同的文件名。
  3. 生成 .strm 文件

    • 支持 Emby 直链读取。
    • 字幕文件下载至本地,供 Emby 识别。
  4. 网盘电影被删除后

    • 程序会自动删除本地对应 .strm 文件夹。
    • 同步刷新 Emby 媒体库。

📺 1.2 剧集 / 动漫处理流程

  1. 新增剧集检测与自动命名

    • 手动访问网页触发重命名。
    • 剧集的目录命名需规范,避免带有年份、广告等干扰信息(例如:火影忍者√,火影忍者(猪猪字幕组1080)×)。
  2. 目录结构要求(命名前后应一致)

    • 顶层为剧集名目录,其下包含 Season 文件夹(支持 Specials)。
    • Season 文件夹内:
      • 保留有效视频和字幕文件;
      • 删除小于 20MB 的视频(视为垃圾);
      • 删除 .tar.txt 等非媒体类文件。
      • 非剧集类例如:OVA不进行命名
  3. 字幕重命名与下载

    • 与视频同目录的字幕会命名为和视频相同的名字;
    • 字幕下载至本地供 Emby 读取。
  4. 视频与字幕 .strm 文件生成


📁1.3目录结构示例

/Media/
├── Movies/
│   └── 阿凡达/
│       ├── Avatar.mkv          
│       └── Avatar.zh.srt       #命名后的字幕,程序运行会自动下载
└── Shows/
    └── 权力的游戏/
        ├── Season 01/
        │   ├── S01E01.mkv
        │   └── S01E01.zh.srt
        └── Season 02/
            └── S02E01.mkv

📦 2. 安装方式

推荐使用 docker-compose 进行部署,示例如下(部署之前需要仔细填写config.ini文件):

version: '3.5'
services:
  alist-rename:
    image: crpi-zutrieltt9z6q9p7.cn-shanghai.personal.cr.aliyuncs.com/awordx/open_alist_strm_rename:latest
    container_name: alist-rename
    ports:
      - "5050:5050"   # Web API 端口
    volumes:
      - /volume1/docker/alist_rename/data:/usr/local/data             # 存储媒体名称映射字典
      - /volume1/docker/alist_rename/config:/usr/local/config         # 存放配置文件(需先配置 config.ini)
      - /volume3/影视资源/alist_strm:/alist_strm                      # STRM 文件输出路径
    environment:
      - restart_update=False
    restart: always

🚀 3. 使用说明

⚠️ 注意事项(首次运行)

首次运行程序时,请特别注意 config.ini 配置文件中的 restart_update 参数:

  • 若配置为:

    restart_update = False
    

    程序将在第一次刷新时对所有监控的 Alist 文件夹进行全量重命名操作,请谨慎使用(可能会出发网盘风控问题,但是如果在设置关闭is_use_asyncio,则会大大降低风控概率,但是速度也会相应降低)。

  • 如果您仅希望进行增量更新(即只处理新增加的文件),请将该参数设置为:

    restart_update = True
    

默认值为 True,即默认启用增量更新模式,推荐首次运行时保持默认设置以避免误处理全部内容。

🔗 3.1 启动访问

安装完成后,通过浏览器访问宿主机的端口进行刷新操作:

http://192.168.8.106:5050/stream

若自上次刷新以来未检测到文件变动,将显示如下页面:
在这里插入图片描述

🎬 3.2 新增电影处理示例

当 115 网盘中新增一部电影,如《诡才之道》,应手动清除广告等无效信息,仅保留真实片名。例如:

  • 原始文件夹(含广告信息):
    在这里插入图片描述

  • 修改后的文件夹:
    在这里插入图片描述

文件夹中的内容会根据配置进行清理与处理。访问以下地址可生成 .strm 文件:

http://192.168.8.106:5050/stream

处理结果示意图:
在这里插入图片描述

此时在 /volume3/影视资源/alist_strm/电影/诡才之道/ 目录下将生成对应的 .strm 文件。Emby 可直接读取该直链,无需触发 115 网盘风控,刮削速度也大幅提升。
在这里插入图片描述
刮削速度非常快。

动漫资源处理流程与此相同,但目录结构必须符合 1.3 中的规范要求。

  • 示例截图:

在这里插入图片描述

若在网盘中删除电影资源,刷新网页后会自动同步删除对应 .strm 文件和目录:

在这里插入图片描述


📺 3.3 剧集命名示例

处理完成后的剧集目录示意图如下:

在这里插入图片描述
此时emby就会自动刷新媒体库,生成剧集剧照:
在这里插入图片描述

若剧集名称中原本已包含 SxxExx 格式(如 S01E03),将跳过命名处理。


🛠️ 3.4 手动重命名指定目录

若希望手动对某个剧集或文件夹进行重命名与 .strm 生成,可访问:

http://192.168.8.106:5050/stream?tvpath=/115_15TB/火影

注意:此处的路径 /115_15TB/火影 是 Alist 中挂载网盘的路径,而不是本地 NAS 路径。且该目录下必须包含 Season 文件夹。


🔢 3.5 手动重命名 + 集数偏移功能

如需对集数编号进行偏移(如从 S01E05 开始命名),可使用:

http://192.168.8.106:5050/stream?tvpath=/115_15TB/火影&offset=5

说明:

  • 原始文件:15.mp4 → 默认命名为 S01E15.mp4
  • 加入 offset=5 后 → 命名为 S01E10.mp4

🚫 3.6 排除不处理的目录

如果 Season 文件夹内包含名为 not_check 的子文件夹,则该目录会被忽略,不执行重命名与 .strm 生成。


4.更新日志

v4.83

  • 添加在网址栏输入offset

v4.81

  • 修复名称删除添加问题
  • 修复gpt命名出错情况以及删除移动出错情况

v4.79

  • 新增ai命名,修复异步速度慢以及异步移动问题

v4.76

  • 修复修改文件夹二次检测问题

v4.75

  • 可以添加单独视频文件

v4.74

  • 添加offset参数,减去的集数为正值

v4.73

  • 新增异步移动、删除、重命名功能

v4.6

  • 新增网页刷新功能

v4.5

  • 剧集和电影命名可以中断,下次可以继续命名

v4.0

  • 剧集命名更具有鲁棒性
  • 去除对文件名剔除操作,加快速度
  • 添加对文件夹修改时间的检测,但是只能检测到文件夹下一级文件的改动例如刷新了剧集目录,电影检测正常,剧集只能检测到Season的改动,不能检测到Season下文件的改动
  • 添加对字幕hash的校验,如果字幕文件更改则重新生成新的字幕
  • Seasonx内的垃圾文件(zip,tar)以及文件夹可以自动删除
  • 可以对s1,S1,season1,Season1命名,文件夹内的special可以不用删除

v3.5

  • 剧集文件夹中含有Specials则不对文件进行重命名操作,但仍然会生成strm操作

  • 网页端可以选择刷新的媒体库(代码实现了,但是网页脚本还没实现)

  • (115account_check)新增账号检测功能,每两小时检测一下115的cookies是否还有效果,会产生日志名字为account_check.log
    v3.4

  • 网页刷新更加清晰,并且生成带时间的日志文件,

  • 将run_scripts.py的配置集成到config.ini文件中

v3.2

  • 如果Season文件夹内含有not_check文件夹,则不进行重命名以及strm生成

v3.1

  • 增加了新增剧集检测
    v3.0
  • 支持创建strm,输入本地文件夹,以及115的文件夹,就可以将115文件夹的视频strm创建到本地,字幕图片之类的会直接下载下来
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐