Commit Graph
128 Commits
Author SHA1 Message Date
Elegy233 01fd9e15aa 集成 bangumi-data 项目,开启后提升动画源的检索与匹配速度并解锁隐藏/区域番剧 (#283)
* envs.js:新增 Bangumi Data 加速匹配开关 与 Bangumi Data 缓存有效期 配置

* 新增 Bangumi Data 管理工具,用于下载与管理Bangumi Data数据

感谢 https://github.com/bangumi-data/bangumi-data

* worker.js:参加Bangumi Data 辅助函数用于判断数据更新

* server.js:配合清理 Bangumi Data 关闭时占用的内存

* tmdb-util.js:Bangumi Data 开启时调用它大幅提升获取日语原名速度

实现获取动画日语原名零请求

* animeko.js:Bangumi Data 开启时调用它,节省一次搜索请求

已知问题:缺失imageUrl,问题不大

* bahamut.js:Bangumi Data 开启时调用它,补全别名与类型

Bangumi Data 给的是acg_sn,预期需要是video_sn,因此无法直接应用
https://github.com/bangumi-data/bangumi-data/issues/336

* bilibili.js:Bangumi Data 开启时调用它,补全缺失的隐藏结果与区域结果

实现港澳台番剧与隐藏番剧自由,例如《笨拙之极的上野》

* dandan.js:Bangumi Data 开启时调用它,节省一次搜索请求

弹弹其实当务之急是怎么节省详情接口的请求… 多结果风控错误概率大

* common-util.js:为标题匹配的相似度策略加入一定阻断

防止纯英文搜索时因相似度打乱字符匹配大量结果被放行

* .env.example:更新 Bangumi Data 相关变量

* README.md:更新 Bangumi Data 相关说明

* Enhance comments for USE_BANGUMI_DATA in .env.example

Updated comments to clarify the functionality of USE_BANGUMI_DATA.

* Enhance USE_BANGUMI_DATA description

Updated the description for USE_BANGUMI_DATA to include unlocking hidden/region-specific anime.

* README.md:补全目录

* bangumi-data-util.js:纯内存加载时使用原生 fetch ,并声明压缩头

* bangumi-data-util.js:增加云部署纯内存运行提示

* bangumi-data-util.js:更新配音版本正则

* merge-util.js:标准化正则

* tmdb-util.js:标准化正则

* animeko.js:标准化正则

* README.md:补充文件目录

* bangumi-data-util.js:修复CF部署下载请求被切断导致堵塞

Added download lock mechanism to prevent deadlocks in serverless environments and implemented a timeout for download operations.

* worker.js:透传ctx

* bangumi-data-util.js:调用 ctx.waitUntil 延长 Serverless 生命周期

* bilibili.js:补全md号解析链路

Add handling for media IDs starting with 'md' to fetch episodes.

* server.js:异步初始化 Bangumi Data 缓存,消除首个真实请求遭遇冷启动的等待延迟

* bangumi-data-util.js:双节点同时竞速下载数据,提升下载可用性与速度
2026-04-26 15:26:02 +08:00
huangxd- 5ce27183f1 修改readme 2026-04-11 14:09:08 +08:00
huangxd- 91cff0da83 修改reademe 2026-04-11 14:03:55 +08:00
Elegy233andhuangxd- fe4a96f50b 因 related 接口废弃将合并工具的跨源时间轴对齐功能改回本地算法 (#275)
* merge-util.js:因 related 接口废弃将跨源时间轴对齐功能改回本地算法

天塌了(

* README.md:更新平台列表添加特别感谢栏

* merge-util.js:更新跨源时间轴对齐算法

* dandan-api.js:重写跨源时间轴对齐调用函数

* merge-util.js:精简跨源时间轴对齐算法

* merge-util.js:为弹弹豁免匹配率同时修复缺集导致的集映射错误

修复弹弹因为从零开始的异世界生活第四季因为集刮削错误缺2~4集导致的集映射错误

---------

Co-authored-by: huangxd- <649924757@qq.com>
2026-04-11 14:01:38 +08:00
dyphire 77ecdcf233 跟随弹弹上游 API 变动废弃 related 相关接口功能 (#274) 2026-04-11 13:56:01 +08:00
huangxd- 3495835e7c 新增弹幕时间偏移功能以及环境变量DOUBAN_COOKIE (#276)
* 弹幕偏移支持百分比模式

* 修复偏移配置保存之后不显示源选择的问题

* 增加豆瓣cookie环境变量
2026-04-11 13:55:39 +08:00
Elegy233 59533acfc9 使 match 接口匹配时检查源传入的别名,并优化别名替换相关逻辑 (#271)
* dandan-api.js:使 match 接口匹配时检查别名

* dandan.js:彻底删除内部api别名替换逻辑,因为别名已经传给需要的工具

* tmdb-util.js:全面优化tmdb智能标题替换逻辑

优先选择与用户传入的关键词相同的别名(https://github.com/huangxd-/danmu_api/pull/270 的拓展)

* envs.js:更新集过滤正则与aliases ai提示

* .env.example:更新集过滤正则

* Update README.md
2026-04-03 22:00:20 +08:00
dyphire 9fe76afc85 正确兼容弹弹的 url 弹幕获取接口 (#267) 2026-04-02 22:49:41 +08:00
huangxd- 9bc48f2360 修改小版本号 2026-03-31 22:23:44 +08:00
huangxd- f7fc36f384 更新小版本号 2026-03-30 22:23:12 +08:00
huangxd- ae4f20c9c9 增加爱壹帆源 (#262)
* 增加爱壹帆源

* 修复爱壹帆源自动匹配
2026-03-29 23:53:14 +08:00
huangxd- e74749b3f9 更新小版本 2026-03-25 22:19:37 +08:00
Wo254992andClaude Opus 4.6 b267db281d 新增自定义颜色池功能,CONVERT_COLOR为color时支持自定义颜色 (#243)
- 新增 COLOR_POOL 环境变量,支持自定义弹幕随机颜色池
- 前端新增色轮选色器、随机添加、批量添加弹窗(支持十进制和#hex格式)
- 颜色池样式提取到 components.css.js,JS 中仅保留动态样式
- 不配置时使用默认颜色池,行为与原来一致
- 同步更新 forward-widget、README、.env.example

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 22:39:27 +08:00
huangxd- 8e1487409d 兼容ios环境下WebAssembly不存在的场景,适配peekpili搭建本地服务 (#245) 2026-03-19 22:38:56 +08:00
Celestials316 faa570273f DANMU_OFFSET 支持按来源指定弹幕偏移,重构偏移系统为独立模块,配置界面增加快速添加规则,修复模态框滚动问题 (#241)
* DANMU_OFFSET 支持按来源指定偏移,配置界面增加快速添加规则,修复模态框滚动问题

- DANMU_OFFSET 扩展 @来源 语法,支持针对特定弹幕来源单独设置偏移量
- 查找优先级:带来源规则优先,fallback 到通用规则,层级从集->季->剧名逐级回退
- 配置界面增加"添加规则"按钮,展开快速配置面板(剧名/季/集/来源/偏移秒数)
- 来源列表从后端 ALLOWED_SOURCES 动态加载,支持多选
- 修复所有变量编辑模态框内容过长时顶部无法滚动的问题

* 更新文档:DANMU_OFFSET 补充 @来源 语法说明

- README 功能介绍和环境变量表格补充来源指定格式
- .env.example 补充来源语法注释和示例

* 重构弹幕偏移系统:独立 offset-util 模块,支持合并源按来源分别偏移

- 新建 offset-util.js,集中偏移逻辑(解析/匹配/应用)
- parseOffsetRules 启动时解析一次,缓存到 globals.danmuOffsetRules
- resolveOffset 支持多级路径匹配(集>季>剧)、来源特定/all通配/通用规则优先级
- applyOffset 兼容 p/t/progress/timepoint 多种时间字段格式
- 支持来源别名映射(tencent→qq, iqiyi→qiyi, bilibili→bilibili1)
- 合并源流程:对齐后、合并前按来源分别应用偏移
- 单源流程:convertToDanmakuJson 前应用偏移
- 删除 danmu-util.js 中旧的 parseOffset/getOffset/applyDanmuOffset

* 优化偏移配置界面:inline styles 提取到 CSS,来源标签选中状态改用 class 控制
2026-03-18 23:38:31 +08:00
huangxd- 13fe8519f1 修改小版本号 2026-03-18 23:37:56 +08:00
lilixu3 f04403962f 优化弹幕测试界面的视频时长获取 (#239)
* 优化弹幕测试页时长获取

变更内容:
- 优先从评论接口和源字段提取测试页视频时长
- 补充不同来源时长回退与测试页展示逻辑
- 更新相关文档与测试用例

* 移除测试页时长界面改动

变更内容:
- 删除接口调试页面中附带时长参数与展示逻辑
- 回退测试页说明文档中的时长处理描述
- 保留评论接口时长能力与相关测试用例

* 恢复接口调试页时长参数

变更内容:
- 恢复接口调试页面中的duration参数与时长展示逻辑
- 恢复UI说明文档中的时长处理描述
- 保持评论接口视频时长能力与测试页联动

* 调整测试页时长展示细节

变更内容:让 comment JSON 的 videoDuration 字段固定排在返回体开头
变更内容:接口调试页在 xml 格式下隐藏附带时长开关并在切换时清空该参数
变更内容:版本号更新为 1.17.1
2026-03-18 00:34:24 +08:00
huangxd- c5b7221997 新增记住手动选择结果功能新增支持记住集episode/弹幕时间偏移配置/IP黑名单列表配置 (#231)
* 记住手动选择结果功能新增支持记住集episode,下次自动匹配时会对集进行偏移

* 更新README

* 新增IP黑名单列表配置,通过环境变量IP_BLACKLIST配置

* 增加上次匹配剧标题和本次弹幕获取据标题的匹配,防止两者不对应

* 新增弹幕时间偏移配置

* 补充forward插件相关配置

* 增加打印日志

* 修复findIndexById方法没有引用的问题

* 优化lastSelectMap,支持存储不同季

* 优化extractSeasonNumberFromAnimeTitle中尾部阿拉伯数字(如"某某 2" 或 "某某2",但不超过2位)

* 再次优化尾部阿拉伯数字问题
2026-03-15 12:57:32 +08:00
huangxd- 77879719cb 修复DANMU_OUTPUT_FORMAT默认设置为xml的场景下弹幕测试页获取弹幕提示json解析错误的问题 (#227) 2026-03-11 23:40:51 +08:00
Elegy233 a656308fc2 增加弹弹第三方弹幕源实时拉取功能,用于覆盖掉弹弹服务器内缓存的旧弹幕 (#220)
* dandan.js:增加related接口,实现拉取绑定的第三方数据源

同时传出related接口的偏移值和绑定链接给合并工具的跨源时间轴对齐使用

* dandan-api.js:挂载dandan源传出的相关参数,同时更新源标签的标记方式

* merge-util.js:接收来自dandan源准确的偏移值和链接信息,替换掉低精度计算

* danmu-util.js:基于准确的源标签做更加完美的相关处理

* envs.js:增加弹弹第三方数据源实时拉取开关,默认开启

* systemsettings.js:增加一个默认值为true的变量保持开启状态

* .env.example:增加弹弹第三方数据源实时拉取开关说明

* Add REAL_TIME_PULL_DANDAN option to README

* .env.example:统一弹弹第三方数据源实时拉取说明

* .env.example:将第三方数据源统称为第三方弹幕源

* envs.js:将第三方数据源统称为第三方弹幕源

* README.md:将第三方数据源统称为第三方弹幕源

* merge-util.js:去除已经没有使用的旧函数

* systemsettings.js:REAL_TIME_PULL_DANDAN不再保持true

* dandan.js:related接口根据开关动态请求

只在REAL_TIME_PULL_DANDAN实时拉取开启状态或者启用了MERGE_SOURCE_PAIRS合并功能才请求

* envs.js:实时拉取默认设置为关闭

* .env.example:实时拉取默认设置为关闭

* README.md:实时拉取默认设置为关闭
2026-03-04 22:40:15 +08:00
huangxd- 10b2ca89ae 支持本地redis缓存配置 (#213)
* 弹幕点赞数改成镂空♡显示,数量使用下标数字,并增加环境变量LIKE_SWITCH开关该功能,默认开启

* 增加hanjutv日志打印

* 修改说明

* 支持本地redis缓存配置

* 增加render环境的判断

* Revert "增加render环境的判断"

This reverts commit 952257895a2705debf079485c8558969b46f986a.

* 修改注释

* 修复cloudflare不支持redis包安装的问题

* 修复cloudflare不支持redis包安装的问题
2026-03-01 13:46:28 +08:00
huangxd- e402f1f77c 新增腾讯源/爱奇艺源/优酷源/芒果源/b站源/咪咕源/搜狐源弹幕点赞数显示 (#204)
* 修改搜索接口的titleMatches里的相似度阈值从原先>=80%改为>80%

* 打印hanjutv搜索结果

* 增加 s5 解密后 打印

* 删除hanjutv打印

* 搜狐源增加弹幕点赞数显示

* 芒果源增加弹幕点赞数显示

* 腾讯源/爱奇艺源/优酷源/芒果源/b站源/咪咕源/搜狐源增加弹幕点赞数显示

* 恢复多余的修改
2026-02-27 22:53:05 +08:00
huangxd- 0153ebc929 增加埋堆堆源并增加ai匹配 (#197)
* 增加埋堆堆源

* match自动匹配接口系只能ai匹配功能,需根据自身使用模型配置AI_BASE_URL/AI_MODEL/AI_API_KEY/AI_MATCH_PROMPT四个环境变量

* 增加ai连通性测试按钮

* 优化ai match自动匹配

* hanjutv增加弹幕点赞数显示
2026-02-23 22:27:27 +08:00
huangxd- 6b7588d18e 环境变量ENABLE_EPISODE_FILTER更名为ENABLE_ANIME_EPISODE_FILTER,同时修复ENABLE_EPISODE_FILTER开启的情况下搜索接口返回500的问题 (#191)
* 修复ENABLE_EPISODE_FILTER开启的情况下搜索接口返回500的问题

* 环境变量ENABLE_EPISODE_FILTER更名为ENABLE_ANIME_EPISODE_FILTER
2026-02-13 22:59:35 +08:00
huangxd- 6ea819744c 添加剧名过滤规则环境便来给你ANIME_TITLE_FILTER,用于按正则表达式对剧名进行过滤,适用于过滤一些不需要的剧集 (#190)
* 添加剧名过滤规则环境便来给你ANIME_TITLE_FILTER,用于按正则表达式对剧名进行过滤,适用于过滤一些不需要的剧集,需开启ENABLE_EPISODE_FILTER

* fw插件如果启用了搜索关键字繁转简,则进行转换
2026-02-12 21:30:01 +08:00
huangxd- a6a0babd22 增加环境变量ANIME_TITLE_SIMPLIFIED,在搜索时将繁体剧名标题自动转换为简体,适用于繁体标题搜索 (#187)
* 修复搜索到的标题中带有括号导致自动匹配季不正确的问题

* 增加环境变量ANIME_TITLE_SIMPLIFIED,在搜索时将繁体剧名标题自动转换为简体,适用于繁体标题搜索,默认值:false(不转换)

* 接口调试ui界面上的/api/v2/search/episodes接口增加episode,用于指定集
2026-02-09 23:22:24 +08:00
zcw199604 495665dd8d feat(server): 支持 DANMU_API_PORT 配置主端口 (#185) 2026-02-08 23:17:20 +08:00
huangxd- 2ad2d5fa1a 支持咪咕源并增加请求记录标签页 (#186)
* 增加咪咕源

* 完善咪咕源,包括从豆瓣源获取咪咕弹幕

* 修改弹幕源简介

* EPISODE_TITLE_FILTER环境变量不再应用于剧标题过滤,只对集标题生效

* 增加处理简繁同源场景,比如吃->喫;注意->註意,实际不用转换

* 增加请求历史记录

* 增加请求记录ui界面

* 删除清空记录按钮

* 将请求记录的参数改为请求body体

* 对record.interface进行解码

* 请求参数为空的清空下不显示请求体

* 在没有请求体的情况下虚线也不显示

* 增加todayReqNum全局变量,用于记录今日请求数量

* 在UI界面显示今日请求总数

* 修改README

* 修复云部署的服务配置redis后请求记录还是0的问题
2026-02-08 23:16:26 +08:00
Elegy233 1c1207ae14 合并功能支持填写单源表示合并后仍保留原结果,忽略来自hanjutv的年份因为不准确 (#181)
* envs.js:合并解析支持解析单个源

* merge-util.js:支持填写单源表示合并后仍保留原结果,忽略来自hanjutv的年份因为不准确

* .env.example:更新合并说明

* README.md:更新合并说明

* envs.js:更新合并说明

* common-util.js:引入简易的相似度匹配,解决动画翻译细微不同导致的被过滤

解决使用“相反的你和我”搜索B站获取不到“正相反的你与我”,动画还是事太多了()
2026-02-04 18:11:42 +08:00
Elegy233 2d5a343036 重构server.js为纯ESM,优化esm-shim兼容层逻辑,解决node启动时日志中的警告 (#178)
* esm-shim.js:更改扩展名.js为.cjs强制开启 CommonJS模式

原因: 项目启用了 "type": "module" 后,Node.js 会默认将所有 .js 文件视为 ES Module 解析。然而,兼容层 (shim) 的核心逻辑依赖于 CommonJS 特有的 API(如 require、module._load、Module.prototype._compile)来劫持模块加载。

解决: 通过将扩展名改为 .cjs,显式告知 Node.js 即使在 ESM 项目中,该文件仍需以 CommonJS 模式 加载。这确保了它能在不破坏新架构的前提下,继续为旧版 Node.js 提供兼容性支持。

* esm-shim.cjs:重构并优化,使其更加符合项目整体规范

将原本的脚本式 Shim 重构为符合工程规范的模块,并补充了标准的 JSDoc 注释。

提取了硬编码配置为常量,提升可维护性。

使用闭包隔离了 Shim 的内部逻辑,防止污染全局作用域。

* server.js:重写为 ESM 语法

移除了不再需要的“异步启动检测”逻辑(原生 ESM 支持顶层 await,无需迂回)
API 现代化:将已废弃的 req.connection 替换为 req.socket,将 url.parse 替换为标准的 new URL()。

* package.json:声明"type": "module",正式启用原生 ESM 支持

组合解决日志中的启动警告

* server.js:更新启动提示

* README.md:更新项目结构

* server.js:修复意外的全局覆盖导致不支持流式请求,改为和原版一致的局部引用

http-util.js 里调用的 fetch 是 Node.js 18+ 自带的原生 Fetch,但是重构后不小心强制了node-fetch,实际并无需要

* tmdb-util.js:修复未捕获的Promise拒绝导致进程崩溃退出

嗯?以往怎么没崩草
node:internal/deps/undici/undici:13510
      Error.captureStackTrace(err);
            ^
DOMException [AbortError]: This operation was aborted
    at node:internal/deps/undici/undici:13510:13
    at async httpGet (file:///D:/softwares/danmu_api5.0/0/danmu_api/danmu_api/utils/http-util.js:49:24)
    at async tmdbApiGet (file:///D:/softwares/danmu_api5.0/0/danmu_api/danmu_api/utils/tmdb-util.js:22:22)
    at async searchTmdbTitles (file:///D:/softwares/danmu_api5.0/0/danmu_api/danmu_api/utils/tmdb-util.js:71:22)
    at async executeSearch (file:///D:/softwares/danmu_api5.0/0/danmu_api/danmu_api/utils/tmdb-util.js:354:24)

Node.js v22.18.0
2026-02-04 18:10:58 +08:00
huangxd- 5ad8258d6d 优化西瓜视频源,去除douyin相关接口,国外部署生效 (#177) 2026-02-01 22:20:43 +08:00
Elegy233 e84b3b01df 实现合并源功能的智能结果合并,适配自动匹配优选配置和前端使用 (#167)
* envs.js:为平台排序支持合并源

同时更改MERGE_SOURCE_PAIRS为multi-select,为后续前端更新做准备

* dandan-api.js:更新平台排序相关函数,更改排序配置决定函数适配复杂的合并源场景

应该大概没有删减什么,新的决定函数是命中计数权重算法

* merge-util.js:合并逻辑增加主源轮替功能,实现结果智能合并,不再硬性要求主源

a&b&c&d合并,a无结果拿b、c、d对比合并,b无结果拿c、d……

* components.css.js:增加合并模式相关样式

* systemsettings.js:增加multi-select合并模式相关逻辑

* README.md:更新源合并配置说明

* .env.example:更新源合并相关说明

* animeko.js:增加自动降级服务器地址

* animeko.js:降低相似度阈值到0.6(撤回更改)

* animeko.js:支持剧集翻页、过滤结果前先清洗文本

* merge-util.js:健壮对比函数

1.修复“犬夜叉 超越时代的思念”意外与“犬夜叉”匹配,新增主副标题的结构检测。
2.修复"犬夜叉 超越时代的思念(2001)【动漫】from youku",不能与"犬夜叉 穿越时代的思念(2001)【剧场版】from dandan"匹配,新增主副标题如果匹配上可以无视剧场版标识冲突。
3.新增验证合并覆盖率是否合规,如果成功合并集远远小于总集则视为异常驳回关联。
让我看看还有什么问题.jpg

* animeko.js:得利于清洗文本,过滤使用的相似度阀值可以提高到0.9

* bilibili.js:条目原名也扔给common-util工具对比(修复使用条目原名搜索出来的结果会被过滤掉)

话说我在做animeko源的时候完全忘了有这个工具… 改天重构调用一下吧

* animeko.js:修复清洗文本太极端的问题

* merge-util.js:调整主副标题结构冲突为扣分而不是抛弃,合并覆盖率验证豁免animeko

没想到意外这么快来,"判处勇者刑(2026)【动漫】from bilibili" 与 "判处勇者刑 惩罚勇者9004队刑务纪录(2026)【TV动画】from animeko" 只是翻译问题但是因为主副标题冲突被禁止合并了,然后因为animeko通常包含未放送集数(并且无法获取状态)所以需要豁免合并覆盖率

* README.md:手动同步上游

* merge-util.js:增加季度信息的统一映射

震惊之前竟然没做

* animeko.js:还原更改,挪到新的PR专项优化

* bilibili.js:还原更改,挪到新的PR专项优化

* merge-util.js:全方面优化,支持未匹配上的集也返回

燃尽了,有一点点堆成屎山了之后再重构吧先把逻辑全部做出来确保准确率()感谢“间谍过家家”这个番,几乎全平台有,发现了大量平台差异与季度差异

* merge-util.js:优化集提取正则

* dandan-api.js:修复当评分相同时后遍历到的结果会无条件覆盖先遍历到的结果

* dandan-api.js:去除没匹上就跳过检查集

* dandan-api.js:重新实现,同步修复季匹配错误问题函数

* merge-util.js:支持字母后缀的季度差分,例如小林家的龙女仆S、某科学的超电磁炮S、某科学的超电磁炮T
2026-01-31 22:50:36 +08:00
DemoJameson 66f6ef5836 watchtower镜像改为支持更高docker版本的维护版本 (#176) 2026-01-30 23:04:46 +08:00
huangxd- 6250fa8b58 修复EPISODE_TITLE_FILTER中的正则导致UI界面错位的问题 (#175)
* 删除CONVERT_COLOR_TO_WHITE环境变量,合并保留CONVERT_COLOR

* 删除环境变量DANMU_SIMPLIFIED和DANMU_TRADITIONAL,合并为DANMU_SIMPLIFIED_TRADITIONAL,弹幕简繁体转换设置:default(默认不转换)、simplified(繁转简)、traditional(简转繁)

* 修复EPISODE_TITLE_FILTER中的正则导致UI界面错位的问题

* 删除多余console.log
2026-01-29 23:47:55 +08:00
Elegy233 82c32c7e8a 增加tmdb标题替换相关函数,使通过tmdb原名搜索的结果可以参与自动匹配与合并 (#170)
* tmdb-util.js:增加标题替换相关函数,使调用者可以用别名替换翻译不同的标题

* animeko.js:支持接口回落、支持剧集翻页、提升整体结果准确率

* bahamut.js:调用tmdb的标题替换函数

使通过tmdb原名搜索的结果可以参与自动匹配与合并

* bilibili.js:调用tmdb的标题替换函数、条目原名也扔给common-util工具对比

使通过tmdb原名搜索的结果可以参与自动匹配与合并;修复使用条目原名搜索出来的结果会被过滤掉

* tmdb-util.js:利用新增的季度信息识别剥离搜索关键词中的季度信息

因为tmdb不支持中文的季度信息后缀搜索,“间谍过家家 第二季”会无结果

* envs.js:更新默认的集过滤正则,使用负向零宽断言防误杀一些词

* README.md:更新正则说明

* envs.js:更新集过滤正则

* Modify EPISODE_TITLE_FILTER regex in README

Updated the EPISODE_TITLE_FILTER regex pattern in README.md to include additional terms and improve filtering capabilities.

* envs.js:增加动画会使用的正式|角色|先导PV正则

* Update README.md
2026-01-29 00:19:50 +08:00
huangxd- 6ca1398563 合并弹幕颜色环境变量和繁简字体转换环境变量 (#172)
* 删除CONVERT_COLOR_TO_WHITE环境变量,合并保留CONVERT_COLOR

* 删除环境变量DANMU_SIMPLIFIED和DANMU_TRADITIONAL,合并为DANMU_SIMPLIFIED_TRADITIONAL,弹幕简繁体转换设置:default(默认不转换)、simplified(繁转简)、traditional(简转繁)
2026-01-29 00:19:21 +08:00
huangxd- 4fd7ccf412 增加简体转繁体开关 (#169)
* 增加简体转繁体开关

* 修改readme和小版本号

* 修改readme

* 修改缩进问题
2026-01-27 23:39:31 +08:00
huangxd- 90b15f5379 新增西瓜视频源 (#168)
* 暂时增加xigua源

* 更新xigua源

* 完成西瓜视频的搜索

* 增加西瓜视频源

* 删除西瓜视频test文件
2026-01-26 23:58:48 +08:00
Elegy233 2ea441b55c 允许源合并配置多个副源与主源合并,健壮合并工具对比函数 (#160)
* envs.js:支持解析多个合并副源

* merge-util.js:支持合并多个副源、健壮对比函数

* danmu-util.js:对合并源场景智能去重

解决dandan&bahamut等类似场景下,因为dandan本身聚合了bahamut旧弹幕数据,导致弹幕处理后全屏的无效“×2”

* animeko.js:提高结果过滤阀值,针对多季场景智能返回结果

解决用户搜索“葬送的芙莉莲 第二季”/“葬送的芙莉莲 S2E1”会返回不必要的其他季结果

* README.md:更新合并说明

* .env.example:更新合并说明

* README.md:微调合并说明

* globals.js:更新版本号为1.12.4
2026-01-22 22:50:32 +08:00
huangxd- ac1b7eb9b3 添加Ask DeepWiki徽章 2026-01-22 22:49:22 +08:00
huangxd- 6bb9da783a 接口调试和弹幕推送界面输入框增加回车触发按钮事件 (#157)
* 接口调试和弹幕推送界面输入框增加回车触发按钮事件

* 修改小版本号
2026-01-17 22:05:40 +08:00
huangxd- 4a712c4f45 修改README 2026-01-17 00:06:51 +08:00
huangxd- 3fe044bcb7 添加乐视源 (#155) 2026-01-17 00:03:37 +08:00
Elegy233 937532dfa9 增加Animeko源,增加源合并功能 (#152)
* 新增源合并处理工具

非常多的优化,使不同源的合并进入高可用状态(主要还是动画这块,译名不同和集不一样太多了,动画怎会如此折腾)

* 新增Animeko源

感谢188的鼎力相助感谢Animeko,开源伟大!

* 新增MERGE_SOURCE_PAIRS环境变量并增加相关解析,新增允许animeko源

* 兼容新的源合并相关请求,修复b23.tv相关处理缺少httpGet引用

* 更新文档

* 更新env

* 将源合并从匹配配置挪到源配置

* 更新版本号为1.12.0

* 更新获取弹幕函数,使其更加符合整体规范

* 增加Animeko测试例
2026-01-14 18:24:40 +08:00
huangxd- 94a94bddf0 修改README,增加cookie-butler工具 2026-01-11 23:21:56 +08:00
huangxd- 53e81421a3 删除config.yaml配置支持,后续只支持.env配置文件 2026-01-11 23:10:01 +08:00
huangxd- edb794bfb9 配置优先级调整为:系统环境变量 > .env 文件 > config.yaml 文件 (#140)
* 优化系统配置没权限提醒

* 配置优先级调整为:系统环境变量 > .env 文件 > config.yaml 文件
2026-01-08 23:06:25 +08:00
Elegy233 435e22210a 为bilibili支持解析服务器实现港澳台搜索*2,为云部署支持反向代理 (#139)
* 去除反向代理相关判断,即将迁移至globals.js文件

* 增加反向代理相关判断,为云部署支持反向代理配置

* 增加流式传输方法,增加外部中断控制器

b站app接口无结果会返回高达3.69mb的推荐数据,这是人啊*2
外部中断控制器实现了原始搜索成功真打断tmdb搜索

* 支持外部随时传入的真中断,同时实现并发请求合并

* 去除非必要的点位检查,同时使用新的代理URL构建

* 实现web与app接口的港澳台番剧搜索与获取

目前只能通过万能反代或特定反代开启。实际实现很简单,但因为全网没有一个喂饭教程所以踩了超级超级多的坑,但也是多亏了踩坑现在对于港澳台的兼容非常非常健壮😵*2

* 更新说明

* 更新说明

* 更新文档
2026-01-08 23:02:16 +08:00
huangxd- e4b763a2c8 Revert "为bilibili支持解析服务器 实现港澳台搜索 (App/Web双模) (#129)" (#131)
This reverts commit 762634754e.
2026-01-05 06:59:43 +08:00
huangxd- a7392ee394 增加sohu源 (#130)
* 补充README

* 增加搜狐视频源

* 替换URLSearchParams

* 增加搜狐弹幕分片并发请求

* 修复docker场景不存在.env时自动创建的问题

* 修改版本号

* 修改docker-image构建flow条件

* 修改镜像构建触发条件

* 修复sohu源buildQueryString缺失的问题
2026-01-04 21:32:04 +08:00