更新记录
v2.8.0.20260109 (2026-01-09)
- 修复API批量重命名后文件被重复重命名的问题
ai_rename.rs中的apply_rename函数现在正确设置ai_renamed = 1标记- 之前该函数只更新
path字段,未设置ai_renamed标记 - 导致通过 API 批量重命名的文件在后续扫描周期中被重复处理
- 修复后,无论通过 API 还是扫描流程重命名的文件都会被正确标记
- 新增API批量重命名时同步重命名子文件夹
- 通过 API 执行批量历史重命名时,单P视频的子文件夹会跟随文件名一起重命名
- 与扫描周期中的 AI 重命名行为保持一致
- 仅在非平铺目录模式(flat_folder=false)且为单P视频时生效
- 目录名冲突时自动追加 bvid 避免覆盖
- 自动更新同目录下其他视频和页面的数据库路径
v2.8.0.20260108-2 (2026-01-08)
- 移除全局设置页面的AI重命名高级选项
- 高级选项(对多P视频/合集/番剧启用AI重命名)现在仅在各视频源的AI重命名设置中单独配置
- 每个视频源可独立控制是否对特殊类型视频启用AI重命名
- 简化全局设置页面,避免全局与视频源设置混淆
- 修复AI批量重命名时扫描计时器仍在运行的问题
- 批量重命名开始前自动暂停扫描任务
- 使用守卫模式确保无论成功、失败还是异常,扫描任务都能被恢复
- 避免重命名过程中扫描任务与重命名操作发生冲突
v2.8.0.20260108 (2026-01-08)
- AI重命名改为批量处理模式
- 每次批量发送10个文件给AI,减少API请求次数
- 同一批次的文件在同一会话中统一命名,保证命名风格一致
- 新视频自动延续历史命名风格:从数据库加载对话历史作为上下文
- 新增
ai_renamed数据库字段追踪重命名状态- page 表新增
ai_renamed字段,记录文件是否已被 AI 重命名 - 替代之前有缺陷的文件名格式检测(YYYY- 开头判断)
- 正确支持多P视频、自定义模板等各种文件命名格式
- 重命名成功后自动标记为 1,后续扫描自动跳过
- page 表新增
- 修复 AI 不遵循用户自定义提示词的问题
- 强化 prompt 指令:明确告诉 AI "严格按照用户指定的命名格式,不要添加格式中未要求的信息"
- 将"命名结构提示"改为"用户指定的命名格式",语义更明确
- 视频信息标注为"仅供参考,只提取格式中需要的字段;如信息缺失可访问API参考链接获取"
- 修复 AI 忽略简单格式(如"BV号+作者")而擅自添加额外信息的问题
- 前端添加提示词写法说明
- 在批量历史重命名对话框、视频源AI设置对话框、全局设置页面、添加视频源页面都添加了提示词写法说明
- 警告用户提示词需具体明确,模糊描述(如"作者")可能被理解为UP主而非歌手
- 说明 AI 会严格遵循格式,列出可用字段(BV号、UP主、标题、歌手、分区、日期等)
- DeepSeek Web 会话长度上限自动处理
- 当 DeepSeek 返回"达到对话长度上限"错误时自动创建新会话
- 当遇到"读取响应体失败"或"error decoding response body"错误时也自动重建会话
- 新会话自动带上之前的命名历史作为上下文,保持命名风格一致
- 解析 SSE 流中的
event: hint错误事件,正确识别会话上限 - 批量重命名和单文件重命名都支持此自动恢复机制
- 移除冗余的一致性检查
- 批量处理模式下不再需要额外的一致性检查
- 避免一致性检查可能产生的误判(如将含详细信息的文件名错误简化)
- 修复共享子文件夹路径问题
- 处理每个文件前重新查询数据库获取最新路径
- 解决同一子文件夹内多个文件因路径变更而被跳过的问题
v2.8.0.20260105-2 (2026-01-05)
- AI 批量历史重命名功能增强
- 修复自定义提示词不生效问题
- 对话框中输入的提示词现在直接传递给 API
- 不再依赖数据库中保存的旧提示词
- 后端日志显示实际使用的提示词,便于调试
- 自动处理重复文件名
- AI 生成相同文件名时自动添加后缀(如
-1、-2) - 避免因目标文件已存在而跳过重命名
- AI 生成相同文件名时自动添加后缀(如
- 新增排序位置信息
- 按发布时间排序后向 AI 提供排序位置(sort_index)
- 支持
s01e001等需要集数编号的命名格式
- 新增番剧历史重命名支持
- 番剧类型视频源现在也支持批量历史重命名
- 优化日志输出
- 跳过原因日志提升为 INFO 级别(文件名相同、目标已存在等)
- 记录实际使用的视频/音频提示词
- 修复自定义提示词不生效问题
v2.8.0.20260105 (2026-01-05)
- WASM 自动下载与更新
- 首次使用时自动从 DeepSeek 网站下载 WASM
- 自动检测版本更新并下载新版本
- 本地缓存到配置目录,无需嵌入到程序中
- Token 过期检测
- 自动检测 DeepSeek Web Token 是否过期或无效
- 检测 HTTP 401、错误码 40100-40103
- 检测错误消息中的 token/unauthorized/expire 等关键词
- 提供友好的错误提示和重新获取 Token 的指引
- Token 过期时异步推送通知到 Server酱/企业微信
- 防重复通知:同一次运行周期内只通知一次
v2.8.0 (2026-01-05)
- 修复 DeepSeek Web SSE 解析丢失字符的问题
- DeepSeek Web API 的 SSE 响应有多种格式,之前只处理了部分
- 保留原有的 V3 直接输出和 response/content 格式支持
- 新增 AI 重命名时子文件夹同步重命名功能
- 单 P 视频的子文件夹会跟随 AI 重命名结果一起重命名
- 仅在非平铺目录模式且非合集 unified 模式时生效
- 目录名冲突时自动追加 bvid 避免覆盖
- 目录重命名失败不影响文件重命名结果
- 新增 DeepSeek Web 免费 API 支持
- 支持使用 chat.deepseek.com 免费 Web API 进行 AI 重命名
- 无需 API Key,只需配置 DeepSeek Web Token
- 会话管理:同一视频源复用会话,通过上下文自动保持命名风格一致
- 支持 R1 深度思考模式(thinking_enabled 选项)
- 纯 Rust WASM POW 求解器
- 使用 wasmtime 直接加载执行 DeepSeek 自定义 WASM 算法
- AI 重命名增强
- DeepSeek Web 模式通过会话上下文自动保持一致性,无需额外的一致性检查
- 完善自动回退机制:AI 调用失败时仅记录警告日志,不影响下载流程
- 错误处理优化:API 错误、POW 验证失败等情况正确返回错误而非空文件名
v2.7.8.20260104-2 (2026-01-04)
- 新增纯音频下载增强选项
- 仅保留M4A模式:在"仅下载音频"模式下,可选择只保留m4a音频文件
- 启用后跳过下载:封面、NFO元数据、弹幕、字幕
- 适合纯音乐收藏场景,减少不必要的文件
- 添加视频源时可设置,已有视频源可在管理页面点击 📄 按钮切换
- 仅保留M4A模式:在"仅下载音频"模式下,可选择只保留m4a音频文件
- 新增平铺目录模式
- 启用后所有文件直接放入视频源根目录,不为每个视频创建子文件夹
- 适合将视频源作为音乐库目录使用
- 添加视频源时可设置,已有视频源可在管理页面点击 🔄 按钮切换
- 前端UI优化
- 添加视频源页面新增"仅保留M4A"和"平铺目录"选项
- 视频源管理页面新增对应的快捷切换按钮
- "仅保留M4A"按钮仅在启用"仅下载音频"模式时显示
v2.7.8.20260104 (2026-01-04)
- 新增AI智能重命名功能
- 支持使用OpenAI兼容API(DeepSeek、OpenAI等)自动优化视频文件名
- 全局配置:系统设置页面可配置API地址、密钥、模型和提示词
- 视频源独立开关:每个视频源可单独启用/禁用AI重命名
- 自定义提示词:每个视频源可设置独立的视频/音频重命名提示词,覆盖全局配置
- 对话上下文:同一视频源的文件使用连续对话,确保命名风格一致
- 对话历史持久化:AI对话记录保存到数据库,重启后保持命名风格
- 侧车文件同步:重命名视频时自动同步重命名关联的nfo/字幕/封面等文件
- 清除缓存功能:支持清除单个视频源或全部AI对话历史
- 修复SQLite数据库并发写入锁冲突问题
- 解决并发处理视频详情时出现 SQLITE_BUSY (code 5) 和 SQLITE_BUSY_SNAPSHOT (code 517) 错误
- 新增
begin_write_transaction()函数,通过立即获取写锁避免快照过期问题 - 原理:事务开始后立即更新
_write_lock表,强制获取写锁,后续并发事务在此等待(利用 busy_timeout) - 移除不再需要的写入信号量和重试机制,代码更简洁
- 保持并发处理能力,不牺牲性能
v2.7.8.20260103 (2026-01-03)
- 首页"最新入库"显示优化
- 番剧入库现在显示系列名称(如"麦克斯奥特曼"),而非通用的"番剧"标签
- 系列名称从
share_copy字段的《》中自动提取 - 布局优化:调整刷新按钮与关闭按钮的间距
- UP主投稿选择性下载性能优化
- 修复选择性下载模式下每次都全量扫描的问题
- 首次扫描:全量扫描以匹配选择的视频列表
- 后续扫描:使用增量扫描,只获取新发布的视频
- 大幅减少扫描时间(如 2837 个视频的UP主,后续扫描只检查最新几页)
v2.7.8.20260102-4 (2026-01-02)
- 新增错误通知推送功能
- 程序运行时发生关键错误会自动推送通知到配置的渠道(Server酱/企业微信)
- 支持以下错误类型的通知:
- 下载失败:视频分页下载失败时通知
- API请求失败:获取视频详情失败时通知(不包括404视频不存在)
- 数据库错误:视频状态更新到数据库失败时通知
- 删除任务失败:视频源或视频删除任务执行失败时通知
- 通知内容包含:错误类型、错误信息、发生时间、相关上下文
- 通知异步发送,不阻塞主流程
v2.7.8.20260102-3 (2026-01-02)
- 多P视频增量下载支持
- 支持仅下载新增的分P,不影响已下载的内容
- 使用 cid(内容ID)判断分P是否已存在,而非 pid(页码)
- UP主删除/重排分P不影响本地已下载文件
- 新增分P自动分配不冲突的本地 pid(从最大值+1开始)
- 适用场景:UP主后续为视频添加新分P时,自动检测并仅下载新增内容
- 单P变多P自动处理
- 检测到单P视频变为多P时,自动更新
single_page字段 - 自动重置视频和原P1的下载状态,触发全部重新下载
- 确保所有分P都下载到正确的多P目录结构中
- 自动发送通知(Server酱/企业微信)提醒用户清理原单P文件
- 通知内容包含:视频名称、BVID链接、新分P数量、原文件路径
- 检测到单P视频变为多P时,自动更新
v2.7.8.20260102-2 (2026-01-02)
- 首页"最新入库"功能优化
- 弹窗形式显示,点击"查看详情"按钮打开
- 入库状态区分三种:成功(绿色)、失败(红色)、已删除(橙色)
- 首页"下载任务状态"显示优化
- 状态显示更明确:已停止 / 扫描中 / 等待中(之前是 运行中 / 未运行)
- 首页"当前监听"显示优化
- 移除冗余的"状态"标签文字
- "空闲监听源"改为更清晰的"未启用"
- "下一次刷新"改为"下次扫描"
- 时间格式统一为 12 小时制(如 08:01:04 PM)
v2.7.8.20260102 (2026-01-02)
- 视频源管理页面新增下载选项切换功能
- 在视频源管理页面为每个视频源添加三个快捷切换按钮:
- 🎵 仅下载音频:启用后仅下载音频流,输出为 M4A 格式(橙色图标表示启用)
- 💬 下载弹幕:控制是否下载弹幕文件(绿色图标表示启用,默认开启)
- 📝 下载字幕:控制是否下载字幕文件(绿色图标表示启用,默认开启)
- 下载选项状态实时显示:仅音频模式、弹幕/字幕下载禁用时会显示状态提示
- 所有视频源类型均支持:收藏夹、合集、UP主投稿、稍后观看、番剧
- 在视频源管理页面为每个视频源添加三个快捷切换按钮:
v2.7.8.20260101 (2026-01-01)
- 新增视频源下载选项
- 仅下载音频模式:每个视频源可单独设置是否仅下载音频
- 启用后只下载音频流,输出为 M4A 格式
- 适合音乐类视频,大幅减少存储空间
- 音频质量跟随用户全局质量设置
- 弹幕/字幕下载开关:每个视频源可单独控制
download_danmaku:是否下载弹幕文件(ASS格式),默认开启download_subtitle:是否下载字幕文件(SRT格式),默认开启
- 所有视频源类型均支持:收藏夹、合集、UP主投稿、稍后观看、番剧
- 添加视频源页面新增下载选项配置区域
- 仅下载音频模式:每个视频源可单独设置是否仅下载音频
v2.7.8.20251222 (2025-12-22)
- 修复 Docker/群晖环境下磁盘空间重复计算问题
- 增加按 total_space 去重,避免 overlay 和 /dev/mapper 指向同一存储时被重复计算
- 修复群晖 NAS 显示磁盘空间翻倍的问题
v2.7.8.2025122102 (2025-12-21)
- 新增联合投稿多演员支持
- 联合投稿视频(合作视频)的 NFO 文件现在包含所有创作团队成员
- 每个成员显示名称、职位(如"UP主"、"合舞")和头像 URL
- 优先级:番剧演员信息 > 联合投稿 staff 信息 > UP主信息
v2.7.8.20251221 (2025-12-21)
- 修复首页磁盘空间显示问题
- 筛选 SSD/HDD 类型的物理磁盘
- 智能去重:Linux 按设备名称(name)去重,Windows 按挂载点(mount_point)去重
- 修复 Linux/Docker 环境下同一设备多个挂载点导致重复计算的问题
- 修复 Windows 环境下卷标重复或为空导致去重失败的问题
- 当无法识别磁盘类型时自动回退到统计所有磁盘
v2.7.8.20251211 (2025-12-11)
- 新增关键词过滤器黑名单/白名单模式选择
- 黑名单模式(默认):匹配任一关键词的视频将被跳过不下载
- 白名单模式:只有匹配任一关键词的视频才会下载,其他跳过
- 添加视频源页面支持选择过滤模式
- 视频源管理页面的关键词过滤器编辑对话框支持切换模式
- 所有视频源类型均支持:合集、收藏夹、UP主投稿、稍后观看、番剧
- 新增添加视频源时设置关键词过滤器功能
- 在添加视频源页面新增可折叠的"关键词过滤器"区域
- 支持在创建视频源时预先配置关键词过滤规则
- 支持正则表达式,实时验证语法正确性
- 匹配任一关键词的视频将被跳过不下载
- 重构关键词过滤器为双列表同时生效模式
- 将黑名单和白名单从互斥模式改为同时生效模式
- 过滤逻辑:
- 如果设置了白名单,视频必须匹配至少一个白名单关键词才会被下载
- 匹配黑名单的视频会被排除(即使通过了白名单)
- 同一关键词不能同时出现在黑名单和白名单中
- 示例:白名单添加"PV",黑名单添加"预告",则下载含"PV"但不含"预告"的视频
- 更新前端关键词过滤对话框,左右并排显示白名单和黑名单
- 更新添加视频源页面,支持同时设置黑名单和白名单
- 所有视频源类型均支持:合集、收藏夹、UP主投稿、稍后观看、番剧
- 关键词过滤器界面优化
- 黑名单/白名单区域改为标签页选择模式,不再同时显示
- 添加视频源页面和视频源管理页面的关键词过滤器均已更新
- 新增关键词大小写敏感设置
- 支持配置关键词匹配时是否区分大小写
- 启用时:ABC 和 abc 被视为不同的关键词
- 禁用时:ABC 和 abc 被视为相同的关键词(忽略大小写匹配)
- 数据库新增
keyword_case_sensitive字段
v2.7.8.20251207 (2025-12-07)
- 修复视频详情页删除后导航跳转异常
- 删除视频后同步更新,避免导航索引计算错误
v2.7.8.20251206 (2025-12-06)
- 修复视频管理
- 修复视频管理页面 第二页显示为第一页内容的bug
v2.7.8.202512054 (2025-12-05)
- 新增"选择历史投稿"功能
- 在视频源管理页面为投稿类型添加"选择历史投稿"按钮
- 点击打开弹窗显示UP主的所有投稿视频
- 自动排除已下载的视频,避免重复选择
- 支持全选、全不选、反选操作
- 支持按标题搜索视频
- 选中后触发下载
v2.7.8.202512053 (2025-12-05)
- 修复添加收藏夹时使用错误ID的问题
- B站API返回
id(完整ID)和fid(短ID)两个字段 - 之前错误使用
fid,导致添加的收藏夹与选择的不一致 - 现在统一使用完整的
id字段
- B站API返回
- 修复"我追的合集/收藏夹"列表类型识别错误的问题
- B站将收藏夹和合集放在同一个列表中
- 根据
type字段区分:type=11是收藏夹,type=21是合集 - 选择收藏夹时自动切换为收藏夹模式添加
- 选择合集时自动切换为合集模式添加
v2.7.8.202512052 (2025-12-05)
- 修复企业微信推送消息超长报错的问题
- 企业微信 markdown 消息限制 4096 字符
- 新增消息截断逻辑,超长内容自动截断并提示
v2.7.8.20251205 (2025-12-05)
- 修复合集视频集数序号错误的问题
- 之前按投稿时间排序确定集数,导致UP主非顺序上传时集数错误
- 现在从B站API获取UP主定义的正确顺序
- 集数序号缓存到数据库
episode_number字段,避免重复请求API - 首次获取时自动更新合集内所有视频的集数
- 扫描合集时自动检测并修复缺失的集数序号
v2.7.7.5.15 (2025-12-04)
- 新增视频详情页跨页导航
- 在标题旁添加上一个/下一个视频跳转按钮
- 显示当前视频在全部视频中的位置(如 21/46)
- 支持跨页导航,到达当前页边界时自动加载上/下一页
- 新增分页跳转功能
- 在视频管理页面分页按钮下方添加页码跳转输入框
- 输入页码(1-N)可直接跳转到指定页
- 支持回车键快速跳转
v2.7.7.5.14 (2025-12-04)
- 新增风控验证推送通知
- 触发B站风控验证时自动推送通知到Server酱或企业微信
- 手动模式:提醒用户访问管理页面 /captcha 完成验证
- 自动模式:提醒正在自动处理验证码
- 通知异步发送,不阻塞验证流程
- 优化视频详情页删除体验
- 删除视频后自动跳转到下一个视频,而非返回首页
- 如果是最后一个视频则跳转到上一个
- 列表为空时返回视频管理页面
v2.7.7.5.13 (2025-12-04)
- 推送通知添加企业微信群机器人
- 新增下拉选择框:无/Server酱/企业微信群机器人
- 根据选择的渠道动态显示对应配置表单
- 只向选中的渠道发送推送通知
- 保留所有渠道配置,可随时切换无需重新配置
- 自动迁移旧配置(优先选择Server酱)
v2.7.7.5.12 (2025-11-20)
- 优化日志输出
- 已删除的番剧季度提供更友好的提示信息
- 网络请求重试过程使用debug级别,减少日志噪音
- 连续请求失败时提示可能为网络问题
- 修复音频流处理
- FLAC/Dolby音频流数据异常时自动回退到普通音频流(132k/64k)
- 确保即使高品质音频不可用也能正常下载视频
- 修复aria2下载器初始化
- 改进权限设置错误处理,自动回退到可用目录
- 修复Docker挂载目录权限限制导致的初始化失败
v2.7.7.5.11 (2025-11-17)
- 新增PWA支持
- 支持将Web管理界面安装为应用程序
- 优化在线播放错误提示
- 修复UP主已删除视频在线播放的错误提示显示
v2.7.7.5.10 (2025-11-08)
- 修复在线播放403错误
- 修复proxy代理请求缺少必要请求头导致部分视频返回403 Forbidden的问题
- 将proxy请求方式从底层
client.request()改为BiliClient::request() - 自动添加正确的User-Agent和Referer请求头
- 与下载器保持完全一致的请求方式,确保播放稳定性
- 解决B站严格防盗链检查视频(如BV1yf19BrExU)的播放问题
v2.7.7.5.8 (2025-11-07)
- 新增Emby封面命名兼容性支持(完整覆盖)
- Season文件夹新增folder.jpg和poster.jpg(Emby优先识别)
- 番剧根目录新增folder.jpg和poster.jpg(无论是否启用Season结构)
- 多P视频根目录新增folder.jpg和poster.jpg(启用Season结构时)
- 合集根目录新增folder.jpg和poster.jpg(启用Season结构时)
- 保留所有Jellyfin命名文件({name}-thumb.jpg、{name}-fanart.jpg、Season01-thumb.jpg等)
- 完全兼容Emby和Jellyfin两种媒体库
- 修复番剧文件夹分离问题(完整修复)
- 在API源头清理空格:从B站API获取番剧标题后立即标准化,确保缓存中存储的就是干净的标题
- 在名称提取时强化清理:正则提取基础系列名称后去除括号前的多余空格
- 修复B站API返回的番剧标题中包含不一致空格导致同系列番剧被分离到不同文件夹的问题
- 覆盖所有代码路径:无论是否启用Season结构,都能正确处理空格
- 确保同系列不同版本(中配、日配等)的番剧使用统一的文件夹名称
- 注意:需要重启程序清空内存缓存后生效,旧数据需要手动合并文件夹
v2.7.7.5.7 (2025-11-07)
- 修复UP主头像与Emby演员匹配问题
- UP主头像文件夹命名改为使用UP主昵称(之前使用UP主ID)
- 使用昵称首字进行文件夹分类(如"恬欣欣" → "恬"文件夹,"Alice" → "A"文件夹)
- 自动处理文件名特殊字符,确保文件系统兼容性
- NFO中actor的role字段改为UP主ID(方便脚本根据ID统一管理,即使UP主改名)
- 修复UP主头像在Emby中无法匹配视频演员信息的问题
- 注意:仅对新下载数据生效,旧数据(ID命名文件夹)需手动迁移
v2.7.7.5.6 (2025-10-09)
- 修复在线播放崩溃问题
- 修复点击在线播放导致程序崩溃的bug
- 增强硬件指纹生成的防御性检查,避免异常视频时长导致panic
- 提升在线播放功能稳定性
v2.7.7.5.5 (2025-10-09)
- 优化日志输出
- 将技术细节日志(API请求/响应、认证流程、下载配置等)改为debug级别
- 减少正常运行时的日志输出,提升可读性
- 保留用户关心的重要提示信息(下载状态、风控验证、充电视频检测等)
- 优化番剧季度编号提取逻辑,确保从番剧系列标题中提取季度信息
v2.7.7.5.4 (2025-10-08)
- 优化默认配置设置
- 合集使用Season文件夹结构默认启用
- 番剧使用统一Season文件夹结构默认启用
- CDN排序功能默认启用
- 风控验证功能默认启用,模式为手动验证(manual)
- 提升新用户初次使用体验
- 优化视频下载逻辑
- 支持重新下载覆盖已存在的文件
- 优化元数据和封面下载管理
v2.7.7.5.3 (2025-10-08)
- 新增空目录自动清理功能
- 删除视频文件夹后自动清理空的父目录
- 提升文件管理整洁性
- 优化番剧系列名称处理
- 新增番剧系列名称标准化功能
- 优化系列名称提取逻辑,确保归并判断准确
- 移除系列名称标准化配置项(功能默认启用)
- 优化番剧Season文件夹管理
- 优化Season文件夹结构使用逻辑
- 正确处理番剧名称提取和排序标题生成
- 调整季度编号提取方式,确保Season文件夹使用正确的季度编号
- 优化season.nfo生成策略
- 新增测试用例以验证系列名称提取准确性
v2.7.7.5.2.1 (2025-09-30)
- 优化番剧视频下载逻辑
- 新增基于season_id判断的下载策略
- 调整fanart选择逻辑,优化封面优先级
- 优化视频下载配置
- 新增视频下载相关配置项,优化默认值设置
v2.7.7.5.2.0 (2025-09-29)
- 新增硬件指纹系统
- 新增硬件指纹模块,提升请求安全性
- 支持硬件指纹持久化管理(会话期间固定)
- 动态生成GPU、WebGL、分辨率等硬件信息
- 新增高端GPU型号支持
- 优化HTTP请求头管理
- 新增标准请求头生成函数,确保请求一致性
- 在视频请求中应用弹幕防挡参数
- 在Aria2下载器中应用新请求头
- 优化视频存在性检查
- 新增视频存在性检查功能
- 优化HTTP 412风控错误处理逻辑
- 确保视频已删除时返回404错误
- 优化错误处理机制
- 新增HTTP 404错误忽略处理
- 新增HTTP 412风控错误检测与处理
- 简化错误分类逻辑,移除充电视频特殊处理
- 提升代码可读性和错误分类准确性
v2.7.7.5.2 (2025-09-28)
- 新增视频源批量添加
- 新增视频源批量添加
- 新增批量删除功能
- 支持批量选择并删除视频源
- 优化批量操作用户体验
v2.7.7.5.1 (2025-09-26)
- 优化视频源添加页面
- 新增已有视频源过滤功能,防止重复添加
- 已添加的视频源显示"已添加"标签并禁用选择
- 支持合集、收藏、UP主投稿、番剧的重复检测
- 优化页面性能,提升用户体验
v2.7.7.5 (2025-09-25)
- 前端视频源页面增强
- 视频源页面现在显示番剧的selected_seasons字段
- 区分显示"主季度ID"和"已选季度ID"
- 优化季度信息的展示格式,提升信息清晰度
- 优化番剧源合并功能
- 合并时自动使用目标源的名称和路径
- 改进合并逻辑,提升用户体验
v2.7.7.4.6 (2025-09-25)
- 新增番剧手动合并功能
- 添加番剧时支持将新番剧合并到已有番剧源
- 适合管理相同系列的多个季度(新季、剧场版等)
- 优化番剧API请求效率
- 智能利用相关季度信息减少API请求次数
v2.7.7.4.5 (2025-09-23)
- 优化验证码自动解决服务配置
- 移除不支持的验证码服务:云码(YunMa)和CapSolver
- 云码平台不支持极验(GeeTest)验证码识别,会导致"缺少参数image"错误
- 简化配置选项,只保留经过验证可用的服务:2Captcha 和 AntiCaptcha
- 更新前后端验证逻辑,避免用户选择不支持的服务
- 修复风控验证页面JSON解析错误
- 修复验证码提交API路由配置错误(GET改为POST)
- 修复前端提交验证结果时的JSON格式问题
- 优化验证码页面与后端的通信协议
v2.7.7.4.4 (2025-09-23)
- 修复暂停/恢复扫描后aria2不自动启动的问题
- 修复暂停扫描任务后恢复时aria2进程无法自动启动的问题
- 优化下载器生命周期管理,确保恢复时创建新的下载器实例
v2.7.7.4.3 (2025-09-22)
- 修复合集视频NFO文件集数显示错误
- 修复合集视频NFO文件中集数始终显示为1的问题
- 现在正确显示实际集数(1, 2, 3, ...)
v2.7.7.4.2 (2025-09-22)
- 修复番剧fanart重复下载问题
- 修复番剧多集并发下载时同一fanart文件被重复下载导致aria2冲突的问题
- 优化番剧共享资源(Series和Season级别图片)下载逻辑
- 通过让第一个集负责下载共享图片,其他集跳过,彻底避免并发冲突
- 消除了"File exists, but a control file(*.aria2) does not exist"错误
- 提升番剧下载效率,减少无效的重复下载尝试
- 统一封面文件命名规则
- 调整封面文件命名规则,统一使用
-thumb.jpg后缀替代之前的-poster.jpg - 优化获取合集封面逻辑,支持分页获取,避免遗漏合集信息
- 提升代码可读性和命名一致性
v2.7.7.4.1 (2025-09-14)
- 修复番剧通知显示问题
- 修复番剧下载后通知显示错误集数信息的问题
- 优化通知系统的番剧集数匹配逻辑,使用ep_id进行精确匹配
- 确保每集番剧都能在通知中正确显示对应的标题和集数信息
v2.7.7.4 (2025-09-14)
- 修复番剧重复BV号导致的下载问题
- 修复攻壳机动队等番剧因所有集数共享同一BV号导致只能下载一集的问题
- 优化数据库唯一索引,将ep_id字段加入唯一约束以支持番剧多集下载
- 新增数据库迁移机制自动更新索引结构
- 修复番剧识别逻辑,正确使用ep_id进行唯一性检查而不仅依赖BV号
- 修复前端"访问B站"功能
- 修复视频详情页面"访问B站"按钮对番剧跳转错误的问题
- 普通视频:跳转到 https://www.bilibili.com/video/{bvid}
- 番剧视频:跳转到 https://www.bilibili.com/bangumi/play/ep{ep_id}
- 确保每集番剧都能正确跳转到对应的B站页面
v2.7.7.3 (2025-09-13)
- 修复登录凭证
- 修复前端配置不生效
v2.7.7.2 (2025-09-13)
- 修复仪表盘视频统计显示错误
- 修复"近七日新增视频"统计数量不准确的问题
v2.7.7.1 (2025-09-12)
- 新增服务器端口配置功能
- 支持在系统设置中配置服务器监听地址和端口
- 默认端口为12345,支持自定义IP和端口
- 端口配置修改后需要重启程序生效
- 添加端口验证和重启提醒功能
- 支持简化输入格式(仅端口号自动转换为0.0.0.0:端口)
- 修复时间处理统一性问题
- 统一所有视频时间存储为北京时间格式,解决UTC和北京时间混用导致的比较混乱
- 修复视频数据存储时间转换逻辑,将API返回的UTC时间正确转换为北京时间存储
- 优化UP主投稿增量获取的时间比较逻辑,确保时间比较的一致性
- 优化增量获取日志文案
- 修复时间格式不一致导致的视频更新检测问题
v2.7.7 (2025-09-12)
- 修复UP主投稿断点续传问题
- 修复删除UP主投稿源后重新添加时仍使用旧断点信息的问题
- 新增断点信息自动清理机制,删除投稿源时同步清理相关断点
- 修复数据库锁定错误,优化断点清理时机
- 确保重新添加投稿源时从第一页开始扫描,避免遗漏视频
- 优化日志系统
- 将断点保存相关日志从info级别调整为debug级别
- 减少生产环境中的日志噪声,提升日志可读性
v2.7.6.107 (2025-09-10)
- 优化风控验证配置表单
- 移除不必要的web端口设置,简化配置界面
- 调整样式和结构,提升用户界面体验
- 简化保存逻辑,优化配置更新流程
- 提升整体用户体验和操作便利性
v2.7.6.106 (2025-09-09)
- 完善风控验证系统
- 移除清除gaia_vtoken缓存的方法,优化风控验证错误处理逻辑
- 简化代码结构,提升可读性和维护性
v2.7.6.105 (2025-09-09)
- 新增风控验证配置
- 支持在配置中启用风控验证功能
- 支持设置验证模式(手动/跳过/自动)和超时时间
- 更新相关API和前端逻辑,提升系统稳定性
v2.7.6.104 (2025-09-09)
- 重构验证码处理逻辑
- 新增验证协调器以管理验证码请求和结果
- 优化风控验证流程,提升处理效率
- 更新相关API以支持新的验证码处理方式
- 提升系统稳定性和用户体验
v2.7.6.103 (2025-09-09)
- 新增风控验证模块
- 支持通过验证码绕过风控限制
- 优化相关请求逻辑,提升成功率
- 更新配置以支持风控功能
- 新增验证码页面和服务器,完善用户体验
v2.7.6.102 (2025-09-09)
- 优化数据库连接和预热逻辑
- 调整代码格式以提升可读性
- 新增调试日志以便于监控数据库预热状态
- 确保数据加载到内存映射的效率和准确性
- 提升数据库操作性能和稳定性
v2.7.6.101 (2025-09-08)
- 增强调试功能
- 在Client中新增调试日志,记录Cookie发送信息
- 包括字段数量、DedeUserID__ckMd5的存在性及完整内容
- 以提升调试效率和问题排查能力
v2.7.6.100 (2025-09-08)
- 优化凭证管理
- 新增buvid4和dedeuserid_ckmd5字段到Credential结构体
- 在相关请求中使用新字段,优化凭证管理逻辑
- 提升登录状态检测的准确性和稳定性
v2.7.6.99 (2025-09-07)
- 优化日志系统
- 调整日志级别,将UP主视频搜索功能中的日志记录从info级别更改为debug级别
- 以减少生产环境中的日志噪声,提升调试效率
v2.7.6.98 (2025-09-07)
- 新增UP主投稿视频搜索功能
- 支持关键词搜索UP主投稿视频
- 更新相关请求结构体和API调用
- 优化前端搜索体验,提升用户操作便利性
v2.7.6.97 (2025-08-22)
- 重构数据库架构,采用内存映射I/O技术
- 移除复杂的内存数据库同步机制,改为直接使用SQLite内存映射
- 启用SQLite WAL模式和内存映射,大幅提升数据库读写性能
- 新增数据库预热功能,启动时自动加载关键数据到内存
- 简化数据库连接逻辑,提升系统稳定性和性能
- 修复手机上传视频的页面名称显示问题
- 修复单P视频页面名称显示为VID_格式、mmexport格式等异常名称的问题
- 单P视频现在统一使用视频标题作为页面名称,确保显示正确
- 不影响多P视频、番剧、合集等其他类型视频的页面名称
- 修复UP主名称显示问题
- 修复批处理日志中UP主显示为数字ID而非友好名称的问题
- 扫描日志现在正确显示UP主中文名称,而非数字ID
- 提升日志可读性,便于用户识别正在处理的UP主
- 修复合集文件夹和文件名安全化问题
- 修复合集统一模式下,文件夹名称包含斜杠等特殊字符导致创建意外子目录的问题
- 修复合集poster和fanart文件名包含斜杠导致创建嵌套文件夹的问题
- 现在合集的文件夹名称、poster和fanart文件名都会进行安全化处理
v2.7.6.96 (2025-08-18)
- 修复全量/增量模式切换导致的数据损坏问题
- 修复从增量模式切换到全量模式时重新下载已存在视频的问题
- 全量模式现在会自动检查并跳过已存在的视频,避免数据覆盖
- 修复全量模式切换导致的CID错误和页面名称错误
- 优化日志信息,清楚显示跳过的视频数量和新视频数量
v2.7.6.95 (2025-08-16)
- 修复UP主增量获取功能问题
- 修复UP主一天上传多个视频时,只下载第一个视频其他视频被跳过的问题
- 现在可以正确下载UP主当天上传的所有新视频
- 优化日志系统
- 日志文件现在按天生成(格式:logs-all-2025-08-16.csv)
- 避免长时间运行程序产生的巨大日志文件
- 自动日志轮转,跨天时自动创建新文件
v2.7.6.94 (2025-08-09)
- 优化移动端界面体验
- 修复视频管理页在手机端排序和筛选功能显示不全的问题
- 改进响应式布局,确保所有控件在小屏幕设备上正常显示
- 优化按钮文字显示,在移动端自动简化以节省空间
- 改进导航逻辑
- 修正视频详情页的面包屑导航,上级页面从主页改为视频管理页
v2.7.6.93 (2025-08-09)
- 修复重命名功能问题
- 修复单P/多P视频重命名时创建重复子目录的问题
- 修复UP主名称中特殊字符显示错误的问题(如等号、引号等现在能正确显示)
- 优化文件路径处理,确保重命名后的目录结构正确
v2.7.6.92 (2025-08-08)
- 修复数据库中page表数据不一致问题
- 自动检测并修复cid不匹配的page记录
- 自动检测并修复video_id错误的page记录
- 自动标记内容已变化的视频为已删除状态
- 自动设置对应源启用下载已删除视频
- 修复完毕后需要手动禁用下载已删除视频
v2.7.6.91 (2025-08-05)
- 优化NFO生成中的UP主信息显示
- 修复GitHub Issue #42:NFO使用UP主昵称导致Jellyfin无法匹配头像的问题
- 现在使用UID作为演员name字段,UP主名称作为role字段
- 无效UID时回退使用昵称,确保兼容性
- 新增Jellyfin字幕显示问题的FAQ文档
- 文档优化:添加Jellyfin字幕渲染设置说明
v2.7.6.9 (2025-08-04)
- 修复合集视频通知显示"未知"的问题
- 为Collection枚举添加title和arc字段,包含视频标题和作者信息
- 更新通知系统,从arc字段中提取UP主名称
- 完善视频信息存储,确保合集视频也有完整的元数据
v2.7.6.8 (2025-08-04)
- 修复合集中多P视频下载失败问题
- 合集统一模式:为多P视频的每个分P添加P01、P02等标识,避免文件名冲突
- 合集分离模式:多P视频使用multi_page_name模板,确保每个分P有唯一文件名
- 完美解决GitHub Issue #35报告的问题
v2.7.6.7 (2025-08-01)
- 优化收藏夹扫描体验
- 智能识别B站API过滤普通视频内的的特殊内容(番剧、纪录片等)调用特殊下载 实现下载而不会400错误
- 改进错误提示,明确说明内容被过滤的原因
- 避免重复扫描被过滤的收藏夹
v2.7.6.6 (2025-07-31)
- 修复视频源删除时的500错误问题
- 重构所有视频源(合集、收藏夹、稍后再看、UP主投稿、番剧)的删除逻辑
- 将"删除视频记录"改为"清空源ID字段",避免删除共享视频时的重复删除错误
- 新增孤立视频检测和清理机制,确保只删除真正无归属的视频
- 增强删除操作的安全边界检查,防止误删其他源的记录
- 修复内存数据库video_source表同步支持,使用season_id作为唯一键
- 优化删除文件逻辑,增加危险路径检测和具体文件夹删除
- 修复配置更新在内存模式下不即时写入主数据库的问题
- ConfigManager的save_config和update_config_item方法现在会立即同步到主数据库
v2.7.6.5 (2025-07-31)
- 充电视频检测系统上线
- 基于API返回的upower字段进行精确充电视频检测
- 新增is_upower_exclusive、is_upower_play、is_upower_preview字段支持
- 移除复杂的87007/87008错误码检测逻辑,提升检测准确性
- 简化错误分类系统,移除过时的充电视频错误处理
- 优化内存数据库连接日志级别,减少繁琐输出
- 清理冗余代码,提升系统性能和可维护性
v2.7.6.4.2 (2025-07-30)
- 修复内存数据库完整同步时误删主数据库记录的严重bug
- 重写sync_table_changes_full方法,基于业务唯一键而非自增ID进行记录匹配
- 防止因内存数据库与主数据库ID不一致导致的数据丢失
- 各表使用其真实唯一约束进行删除判断:
- collection表: s_id + m_id + type
- page表: video_id + pid
- favorite表: f_id
- submission表: upper_id
- config_items表: key_name
- video表: 6字段组合唯一约束
v2.7.6.4.1 (2025-07-30)
- 完全修复内存数据库同步时的UNIQUE约束冲突问题
- 基于数据库真实约束定义重新设计所有表的唯一性检查方法:
- video表: 实现复杂的6字段组合约束检查(collection_id+favorite_id+watch_later_id+submission_id+source_id+bvid,含NULL值处理)
- collection表: 使用s_id+m_id+type组合约束检查
- page表: 使用video_id+pid组合约束检查
- favorite表: 使用f_id单字段约束检查
- submission表: 使用upper_id单字段约束检查
- config_items表: 使用key_name主键约束检查
- 优化内存数据库与主数据库的ID映射处理逻辑
- 增强所有表同步过程的详细调试日志,便于问题追踪
v2.7.6.4 (2025-07-29)
- 修复扫描间隔配置在内存模式下无法即时生效的问题
- 修复ConfigManager所有方法的内存模式兼容性
- 修复5个adapter模块函数的内存优化支持
- 修复utils/model.rs中create_videos的批量操作兼容性
- 移除config_changes表的999条记录限制
- 优化日志级别,将技术细节日志从info降级到debug
- 减少日志输出冗余,提升用户体验
- 修复仪表盘下次运行时间固定显示2小时的问题
v2.7.6.3 (2025-07-29)
- 修复内存模式任务队列状态同步问题
- 修复任务重复执行导致的"合集已存在"错误
- 修复14个数据库操作函数的内存模式兼容性
- 新增任务队列处理完成后的自动同步机制
- 优化任务队列、模型更新、Adapter保存等核心功能
- 修复番剧杜比音频质量ID(30255)识别问题
v2.7.6.2 (2025-07-28)
- 修复番剧源数据持久化问题
- 修复内存数据库长时运行稳定性问题
- 修复"no such table: collection"错误
- 新增内存数据库守护连接机制
- 新增内存数据库自动重建功能
- 新增周期性连接健康检查
- 优化数据库连接池配置
- 优化内存数据库同步日志级别
- 解决内存数据库重复下载问题
- 修复视频源处理顺序
- 修复推送通知时间显示问题
- 修复"no such table: video_source"错误
v2.7.6.1 (2025-07-27)
- 统一时间格式处理
- 优化日志系统性能
- 简化时区配置
- 修复黑暗模式输入框对比度
- 修复稍后再看视频源添加问题
v2.7.6 (2025-07-26)
- 重构Server酱推送通知系统
- 新增文件日志系统
- 修复充电视频误判问题
- 优化试看视频处理
2025-07-24
- 新增扫描源顺序优化
- 新增风控断点续传
- 新增错误视频筛选功能
- 优化黑暗模式适配
2025-07-23
- 修复番剧缓存未生效问题
- 番剧扫描速度提升60倍
2025-07-22
- 新增番剧缓存机制(24小时)
2025-07-21
- 修复QR登录重复生成问题
- 优化登录流程
2025-07-20
- 优化视频元数据获取
- 修复封面图片路径问题
2025-07-19
- 改进错误处理机制
- 优化任务队列性能