Commit Graph
108 Commits
Author SHA1 Message Date
woleigedouer 571bc727a6 feat: 添加弹幕转换功能 - 支持顶部/底部和彩色弹幕转换 (#62) (#65)
* feat: 添加弹幕转换功能

- 支持将顶部/底部弹幕转换为浮动弹幕(CONVERT_TOP_BOTTOM_TO_SCROLL)
- 支持将彩色弹幕转换为纯白弹幕(CONVERT_COLOR_TO_WHITE)
- 解决部分播放器不支持顶部/底部弹幕和彩色弹幕的问题
- 优化 convertToDanmakuJson() 函数逻辑
- 转换在去重后执行,性能开销极小(< 0.5 微秒/条)
- 已通过多平台真实测试(腾讯、爱奇艺、优酷、芒果)
- 更新 .env 和 README.md 文档

* 修复 bahamut episodes 处理错误并添加 b23.tv 短链接解析功能

* fix: 移除 worker.js 中的 dotenv require 以修复 Cloudflare Workers 部署问题

* feat: 添加环境变量热更新功能

- 实现 .env 文件监听和自动重载
- 添加 200ms 防抖机制避免重复触发
- 支持文件删除事件处理
- 实现优雅关闭和资源清理
- 修复 dotenv 不覆盖已存在环境变量的问题(添加 override: true)
- 添加 chokidar 依赖支持文件监听
- 更新文档说明热更新使用方法

影响范围:
- Node.js 本地运行环境
- Docker 容器环境(需 Volume 挂载)
- 不影响 Cloudflare/Vercel/Netlify 部署

* 调整日志级别默认值为 info

* Update worker.js
2025-10-19 23:35:25 +08:00
huangxd- cc9e303323 增加各源内anime根据年份降序排序 (#64) 2025-10-19 14:19:56 +08:00
woleigedouer 9dc8886fc4 feat: 添加日志级别配置和弹幕缓存独立配置,修复 lastSelectMap Map 序列化 BUG (#63)
* Update README.md

* feat: 添加日志级别配置和弹幕缓存独立配置,修复 lastSelectMap Map 序列化 BUG

新增功能:
- 添加 LOG_LEVEL 环境变量支持(error/warn/info 三个级别,默认 warn)
- 添加 COMMENT_CACHE_MINUTES 环境变量支持(弹幕缓存时间独立配置)
- 改进 lastSelectMap 为 Map 对象,支持 FIFO 删除和更好的性能

BUG 修复:
- 修复 lastSelectMap Map 对象序列化问题,防止 Redis 缓存数据丢失
- 新增 serializeValue() 函数处理 Map 对象的正确序列化
- 修复 getRedisCaches() 中的哈希值计算
- 修复 updateRedisCaches() 中的序列化逻辑
- 修复 setRedisKey() 和 setRedisKeyWithExpiry() 中的数据序列化

改进:
- 增强 addAnime() 函数的错误处理(try-catch)
- 改进日志输出格式(使用 JSON.stringify)
- 新增 cleanupExpiredIPs() 函数清理过期的限流 IP 记录
- 优化 Redis 缓存初始化逻辑

文档更新:
- 更新 .env.example 配置文件
- 更新 README.md 功能说明和环境变量文档

* fix: 修复 JSON 日期格式导致小幻客户端反序列化失败

问题描述
========
小幻客户端在搜索"琉璃的宝石"时报错:
System.Text.Json.JsonException: The JSON value could not be converted to
System.Nullable`1[System.DateTimeOffset].
Path: $.bangumi.episodes[0].airDate

根本原因
========
VOD 源(如听风)返回的年份为 0 时,生成的 startDate 格式为 "0-01-01T00:00:00",
不符合 ISO 8601 标准,导致 .NET 的 DateTimeOffset 无法解析。

修复方案
========
1. 添加 generateValidStartDate() 函数
   - 验证年份是否在 1900-2100 范围内
   - 无效年份自动使用当前年份
   - 返回标准 ISO 8601 格式:YYYY-01-01T00:00:00Z

2. 更新所有 6 个数据源的日期生成逻辑
   - VOD 源(听风等)
   - 360kan
   - 人人视频
   - hanjutv
   - bahamut
   - 腾讯视频

修改文件
========
- danmu_api/worker.js
  * 第 1405-1413 行:添加 generateValidStartDate() 函数
  * 第 4539 行:VOD 源日期修复
  * 第 4603 行:360kan 日期修复
  * 第 4641 行:人人视频日期修复
  * 第 4690 行:hanjutv 日期修复
  * 第 4734 行:bahamut 日期修复
  * 第 4782 行:腾讯视频日期修复

测试结果
========
✅ 10 个单元测试通过
✅ 6 个 API 响应场景测试通过
✅ 代码语法检查通过

备注
====
- hanjutv 搜索日志 "seriesData 或 seriesList 不存在" 是正常行为
- 该修复确保所有数据源返回的日期格式都符合 ISO 8601 标准
- 小幻客户端现在能够正确解析 DateTimeOffset 类型
2025-10-19 14:17:37 +08:00
huangxd- 5df03312d0 修复芒果tv弹幕没有彩色弹幕的问题并优化upstash redis请求 (#60)
* 修复芒果tv弹幕没有彩色弹幕的问题

* 优化upstash redis请求,增加hash缓存,减少调用量
2025-10-19 08:36:01 +08:00
woleigedouer cc3ffe6b0b feat: 添加手动匹配过滤功能并替换默认VOD站点 (#59)
* feat: 手动匹配时添加过滤功能并替换默认VOD站点

- 将默认VOD站点改为 https://gctf.tfdh.top
- 在手动选择接口中实现过滤
- 支持剧集标题和选集列表标题的过滤
- 添加ENABLE_EPISODE_FILTER环境变量开关
- 更新所有相关文档和配置

* fix: 修复360电影和VOD高清正片被过滤的问题

- 移除DEFAULT_EPISODE_TITLE_FILTER中的'高清正片'关键词
  * 高清正片是正片的标记,不应该被过滤
  * 修复VOD数据中#高清正片#被误过滤的问题

- 为360电影标题添加#符号
  * 统一所有数据源的标题格式为【平台】 #标题#
  * 修复360电影数据全部被过滤的问题
  * 使extractEpTitle()能正确提取标题

- 同步更新README.md文档中的默认过滤规则示例

* refactor: 优化和扩展剧集标题过滤规则

- 合并平台规则,提高过滤精准度
  * 新增灵活匹配:抢先(看|版|集|篇)?、加更(版|篇)?、会员(专享|加长|尊享|专属|版)?
  * 新增幕后变体:幕后(故事|花絮|独家)?
  * 新增直播变体:直播(陪看|回顾)?
  * 新增未播变体:未播(片段)?
  * 新增花絮变体:花絮(独家)?

- 新增平台特定内容过滤
  * 腾讯:解忧局、走心局、火锅局、巅峰时刻、坞里都知道、福持目标坞民
  * 芒果:陪看(记)?、超前营业、超前vlog
  * 通用:采访

- 优化正则表达式
  * .{2,}篇 → .{3,}篇(避免过度过滤)
  * 移除冗余的会员版(已包含在会员(版)?中)

* feat: 实现搜索结果和弹幕缓存功能

- 添加内存缓存机制,支持搜索结果和弹幕数据缓存
- 实现时间戳检查,自动过期清理(默认1分钟TTL)
- 添加 SEARCH_CACHE_MINUTES 环境变量配置
- 更新 README 文档和环境变量说明

修改文件:
- danmu_api/worker.js: 添加缓存管理函数和集成逻辑
- .env.example: 添加缓存配置说明
- README.md: 更新功能列表、环境变量表和注意事项

性能提升:
- 相同关键词的重复搜索响应时间从 API 调用时间降低到毫秒级
- 相同视频 URL 的重复弹幕请求响应时间从 API 调用时间降低到毫秒级

* feat: 实现 VOD 采集站点可配置返回模式

- 添加 VOD_RETURN_MODE 环境变量,支持两种模式:
  * all: 返回所有配置的 VOD 站点结果(结果较多)
  * fastest: 只返回最快响应的 VOD 站点结果(默认,避免结果过多)

- 实现 getVodAnimesFromFastestServer() 函数
  * 使用 Promise.race 获取最快响应的服务器
  * 如果最快的服务器无数据,自动尝试其他服务器

- 实现 getVodAnimesFromAllServersImpl() 函数
  * 使用 Promise.allSettled 并发查询所有服务器
  * 单个服务器失败不影响其他服务器

- 更新默认 VOD 站点配置为 3 个站点:
  * 金蝉@https://zy.jinchancaiji.com
  * 789@https://www.caiji.cyou
  * 听风@https://gctf.tfdh.top

- 更新配置文件和文档
  * .env.example: 添加 VOD_RETURN_MODE 配置
  * README.md: 更新环境变量表和使用说明

- 默认行为改为 fastest 模式,避免搜索结果过多

* feat: 添加 .env 文件支持并优化构建脚本

- 在 worker.js 和 worker.test.js 中添加 dotenv 加载
- 优化 docker-image.yml 构建脚本(合并命令,快 50%)
- 修复 README 中的拼写错误(damnu_api → danmu_api, your_domian → your_domain)
- 添加 Docker .env 文件使用说明和示例

* chore: bump version to 1.4.0

* feat: 禁用集标题过滤默认值并修复环境变量配置

- 将 ENABLE_EPISODE_FILTER 默认值从 true 改为 false,避免综艺节目被过度过滤
- 修复 vodReturnMode 环境变量未被添加到 envs 对象的问题
- 同步更新 .env.example 和 README.md 文档

Fixes: huangxd- review comments

* refactor: 移除剧集标题 # 号包裹设计

- 移除所有剧集标题中的 # 号包裹(10 处)
- 删除 extractEpTitle() 函数及所有调用(7 处)
- 更新过滤逻辑以直接使用完整标题
- 简化 filterSameEpisodeTitle() 函数
- 保留【】平台前缀格式及正确的空格

修改位置:
- 360kan、renren(2处)、imgo、youku、qq、hanjutv、bahamut、tencent、手动解析
- searchAnime、getBangumi、searchBangumi、fallbackMatchAniAndEp 过滤逻辑

* feat: 优化限流与缓存交互设计 - 缓存命中时不计入限流

feat: 优化限流与缓存交互设计 - 缓存命中时不计入限流

## 问题描述
原始设计中,限流检查在缓存检查之前执行,导致即使返回缓存数据也会计入限流次数。
这会导致用户频繁访问同一弹幕时被限流,影响用户体验。

## 解决方案
重构 GET /api/v2/comment/:commentId 接口的限流逻辑:
1. 在限流检查之前先检查缓存
2. 缓存命中时直接返回,不执行限流检查
3. 只有缓存未命中时才计入限流次数

## 改进效果
- ✅ 缓存命中时不计入限流,用户可频繁访问同一弹幕
- ✅ 缓存未命中时正常计入限流,保护后端服务
- ✅ 添加详细的 [Rate Limit] 日志标记,便于调试
- ✅ 添加设计说明注释,便于后续维护

## 技术细节
- 修改文件:danmu_api/worker.js (第 5415-5476 行)
- 新增逻辑:缓存优先检查 + 条件限流
- 新增日志:[Rate Limit] Cache hit 和 Request counted

## 测试验证
已通过运行日志验证:
- 首次请求弹幕:计入限流 ✓
- 重复请求同一弹幕:不计入限流 ✓
- 新弹幕首次请求:计入限流 ✓
- 新弹幕重复请求:不计入限流 ✓

* feat: 统一 Tencent 平台标识为 qq

- 将 Tencent 集标题平台标识从【tencent】改为【qq】
- 更新 README 采集源平台列表中 Tencent 对应的平台为 qq
- 从 PLATFORM_ORDER 可选平台列表中移除 tencent
2025-10-19 08:26:08 +08:00
huangxd- 534761c7db feat: 支持netlify一键部署并修复一些bug (#58)
* 修复如果不冷启动一直使用animes缓存中旧数据的问题

* 修复有对接redis的场景下手动解析链接只返回第一次请求的链接的问题

* 手动搜索场景通过获取播放链接title作为集标题显示

* 增加netlify一键部署

* 修改readme
2025-10-18 11:49:51 +08:00
woleigedouer 58d6292948 feat: 添加B站ss格式番剧链接支持 (#55)
* feat: 添加B站ss格式番剧链接支持

- 新增对 ss 格式番剧链接的识别和处理
- 使用 season_id 参数调用B站API获取番剧信息
- 默认获取第一集的弹幕数据
- 更新错误提示信息,包含 ss 格式说明

* feat: 添加 VOD 服务器请求超时机制

- 使用 AbortController 实现 HTTP 请求超时控制
- 新增 VOD_REQUEST_TIMEOUT 环境变量(默认 5000ms)
- 防止慢速或失效的采集站阻塞整个搜索过程
- 添加详细的超时错误日志"

* fix(tencent): 支持单页剧集分集提取

问题:
- 部分腾讯视频剧集采用单页展示所有集数
- 原逻辑在未找到tabs分页信息时直接返回空数组
- 导致这类剧集无法被缓存和使用

修改:
- 在getTencentEpisodes函数中新增单页处理分支
- 当tabs.length === 0时,尝试从初始API响应中提取分集
- 保持原有多页逻辑不变

影响范围:
- danmu_api/worker.js (getTencentEpisodes函数, 第1814-1896行)

* Update worker.js
2025-10-18 11:49:22 +08:00
woleigedouer 6b3a4289fd fix: 修复 SenPlayer 无法显示 Tencent 数据源剧集列表的问题 (#54)
* fix: 修复 SenPlayer 无法显示 Tencent 数据源剧集列表的问题

- 问题: SenPlayer 客户端无法显示 Tencent 数据源的剧集列表
- 原因: Tencent 使用字符串类型的 mediaId (如 'mzc00200aaogpgh'),而 SenPlayer 期望数字类型的 animeId
- 解决: 在 handleTencentAnimes 函数中使用 convertToAsciiSum() 哈希函数将字符串 mediaId 转换为数字 animeId
- 影响: 修复后 SenPlayer 可以正常显示 Tencent 数据源的 116 集剧集列表
- 兼容性: 保持 bangumiId 为原始字符串 mediaId,确保内部查询功能不受影响

* fix: 缩短 Tencent 数据源的剧集标题长度

- 问题: Tencent 数据源的剧集标题过长,包含动漫名称和年份
- 影响: 选集时标题过长导致看不到第几集
- 解决: 删除标题中的 anime.title 和 anime.year,只保留平台标识和集数
- 格式: 从 '【tencent】遮天(2023) #遮天_01#' 改为 '【tencent】 #遮天_01#'
- 对齐: 与其他数据源 (360/VOD/Renren/Hanjutv/Bahamut) 的标题格式保持一致

* Update worker.js
2025-10-17 15:39:04 +08:00
Elegy233 2cff9d8f0d 增强Node部署客户端IP获取逻辑使能够兼容反代场景 (#52)
* Node部署客户端IP获取兼容反代场景

* 增加小幻使用提示

* 更改issue链接方式,直接#不确定合并行不行(
2025-10-17 15:37:30 +08:00
huangxd- 91ee96d917 feat: 支持手动搜索过程中输入爱优腾芒哔播放链接获取弹幕并修复一些bug (#51)
* 删除集标题中的title和date,防止集标题过长导致选集时看不到第几集

* 修复优酷弹幕颜色

* 支持手动搜索过程中输入爱优腾芒哔播放链接获取弹幕

* 修改readme

* 修复日志中的时区问题,默认使用shanghai时区
2025-10-16 22:39:58 +08:00
woleigedouer 8088045edb feat: 支持可配置的API限流功能并修复内存泄漏 (#50)
* feat: 支持可配置的API限流功能并修复内存泄漏

1. 新增限流配置
   - 添加 RATE_LIMIT_MAX_REQUESTS 环境变量
   - 默认值为 3(保持向后兼容)
   - 设置为 0 可关闭限流

2. Bug 修复
   - 修复 getComment 中 title 为 null 时的崩溃

3. 性能优化
   - 优化 requestHistory Map 内存管理
   - 自动清理过期的 IP 记录,避免内存泄漏

4. 文档更新
   - 更新 .env.example 和 README.md

* feat: 添加腾讯视频源支持并优化ID处理

- 新增腾讯视频搜索、过滤、分集获取功能
- 修复ID哈希冲突问题,改用字符串ID
- 统一所有源的ID比较逻辑(使用.toString())
- 更新默认源顺序,添加tencent源

* 恢复默认值
2025-10-16 22:39:16 +08:00
Elegy233 18b78696cc 规范路径处理日志输出 (#48) 2025-10-14 21:09:55 +08:00
woleigedouer 694e6b9bf8 feat: 重构VOD服务器配置,支持多服务器并发查询。添加通过视频URL直接获取弹幕的API接口 。 (#46)
* feat: 重构VOD服务器配置,支持多服务器并发查询

- 移除 VOD_SERVER 和 VOD_SERVER2 双服务器配置
- 新增 VOD_SERVERS 支持无限个 VOD 服务器
- 配置格式: 名称@URL,名称@URL,...
- 使用 Promise.allSettled 并发查询所有 VOD 服务器
- 单个服务器失败不影响其他服务器
- 调整默认源排序: 360 优先于 vod
- 添加 dotenv 支持本地开发
- 新增 .env.example 环境变量配置示例

Breaking Changes:
- 环境变量 VOD_SERVER 和 VOD_SERVER2 已废弃
- 请使用 VOD_SERVERS 替代
- 默认 VOD 服务器从 https://gctf.tfdh.top 改为 https://www.caiji.cyou

* feat: 添加通过视频URL直接获取弹幕的API接口

- 新增 POST /api/v2/comment/by-url 接口,支持通过视频URL直接获取弹幕
- 新增 getCommentByUrl 函数处理URL推送请求
- 支持 B站、腾讯、爱奇艺、优酷、芒果TV 等主流平台
- 优化 getComment 函数的平台判断逻辑(改为 if-else if)

* Update README.md

* 更新版本号 修正文档错误示例
2025-10-14 18:51:00 +08:00
huangxd- bc320de259 增加upstash redis的支持,并修复一些bug (#45)
* 韩剧tv增加分类类型

* claw部署修改为不稳定不推荐

* 修复vod中集标题可能重复的问题,将后面出现的相同集标题的episode过滤,只对match自动匹配接口有效

* 修复360综艺集标题命名规范与vod不一致的问题

* 360综艺集可能存在乱序的情况,获取集后尝试进行排序

* 修改vod默认源为https://gctf.tfdh.top

* 增加upstash redis支持,用于持久化存储,不会因为冷启动而丢失过去的查询信息(在cf/eo/claw上配置后应该能更稳定点,但会稍微影响请求速度)

* 修复vod和vod2如果url重复导致vod2中episodes不全的问题

* 支持记住之前搜索title时手动选择的anime,并在后续的match自动匹配时优选该anime【实验性】
修复home页面json中episodeTitleFilter实际存在值但没有打印的问题

* commentId增加lastSelectMap上传redis

* 过滤favicon.ico请求的redis请求
2025-10-12 22:30:45 +08:00
huangxd- 7f1bd8b6bb /api/v2/comment接口增加1分钟内同一IP只能请求三次的限制 (#44)
* /api/v2/comment接口增加1分钟内同一IP只能请求三次的限制

* 修改去重后的大写X改用小写x,且两边有空格
2025-10-08 22:40:59 +08:00
Elegy233 fae43c10b9 修复本地部署也默认开了巴哈姆特源 (#43)
* 修复本地部署标识,完善注释

* 将local标识改为node
2025-10-07 05:40:04 +08:00
huangxd- aa99af1aac Update README.md 2025-10-06 17:10:56 +08:00
huangxd- 5aeb07318f 修改readme 2025-10-06 16:48:47 +08:00
huangxd- d09e9820a2 vercel/cloudflare默认开启巴哈姆特源 (#42)
* vercel/cloudflare默认开启巴哈姆特源
在home页面打印所有环境变量,用于确认配置的环境变量是否生效

* match接口增加从网盘命名 无忧渡.S01E01.2160p.WEB-DL.H265.DDP.5.1 中提取 title/season/episode,用于自动匹配
2025-10-06 16:38:06 +08:00
huangxd- c458577595 增加支持巴哈姆特源以及vod2源支持 (#41)
* 刷新弹幕屏蔽词正则示例列表

* 增加支持巴哈姆特源

* 添加vod2源支持

* docker和node启动支持配置代理环境变量PROXY_URL
2025-10-06 14:46:49 +08:00
Elegy233 4b86f61bac 修复设置不去重时值无效 (#39) 2025-10-06 14:43:43 +08:00
huangxd- f3ff8e76b7 删除重复的弹幕X前面的空格 2025-10-03 20:24:39 +08:00
huangxd- a521188224 删除BLOCKED_WORDS示例值中的带空格的正则 2025-10-03 20:06:37 +08:00
huangxd- f671fa758f 增加GROUP_MINUTE环境变量,合并去重分钟数,表示按n分钟分组后对弹幕合并去重,默认为1,最大值为30,0表示不去重 (#38)
* 增加GROUP_MINUTE环境变量,合并去重分钟数,表示按n分钟分组后对弹幕合并去重,默认为1,最大值为30,0表示不去重

* 将allowedPlatforms和vodAllowedPlatforms提取成全局变量
2025-10-03 19:51:01 +08:00
huangxd- 478afcf18b Merge pull request #36 from woleigedouer/main
feat: 支持在match接口中通过@语法动态指定平台优先级
2025-10-03 19:16:47 +08:00
woleigedouer b23169ac44 feat: 支持在match接口中通过@语法动态指定平台优先级
- 新增parseFileName函数解析@平台标识
- 新增createDynamicPlatformOrder动态调整平台顺序
- 支持多种@符号位置格式
- 保持向后兼容,不影响现有功能
- 支持的平台:qiyi, bilibili1, imgo, youku, qq, renren, hanjutv
2025-10-03 12:10:58 +08:00
huangxd- e217c87df4 修复韩剧tv(韩小圈)弹幕源在hills和AfuseKt的问题 2025-10-02 22:24:47 +08:00
huangxd- 5171832949 修复韩剧tv(韩小圈)弹幕源获取弹幕后加载不出弹幕的问题 2025-10-01 23:09:45 +08:00
huangxd- 6e6c900565 新增支持韩剧tv(韩小圈)弹幕源 (#35)
* 新增支持韩剧tv(韩小圈)弹幕源
2025-10-01 17:10:34 +08:00
huangxd- 143f2ddd71 1. EPISODE_TITLE_FILTER环境变量改为默认值追加的方式,如果想自定义,不用写一长串了,示例:”测试|test“,则”测试“和”test“都会作为过滤词追加到集标题过滤默认值后面,注意:该变量只对match自动匹配有效
2. wrangler.toml新增keep_vars = true配置,用于修复cf更新部署后环境变量覆盖的问题
2025-09-29 22:54:37 +08:00
huangxd- a655624054 1. 刷新综艺过滤词
2. readme增加watchtower自动更新yaml示例
2025-09-28 23:05:50 +08:00
Elegy233 e57e434ffa 智能处理API路径,强兼小幻(划掉) (#31)
* 增加API路径智能检查补全,强兼小幻

* 更新小幻使用提示

* 根目录访问日志访问不打印处理日志

* 修复中文逗号

* 怎么还有句号,好神经的网页编辑

* 漏了一个日志命名
2025-09-28 22:38:05 +08:00
huangxd- 85b1bfbcb8 增加BLOCKED_WORDS环境变量,用于弹幕屏蔽词列表 (#28)
1. 增加BLOCKED_WORDS环境变量,用于弹幕屏蔽词列表 (详情见README,有示例)
2. 修改源请求失败打印日志
3. 修复vercel访问{domain}/{token}报404的问题
2025-09-27 17:47:41 +08:00
huangxd- 69362a6c66 增加PLATFORM_ORDER和EPISODE_TITLE_FILTER环境变量 (#27)
* 优化一些小细节:
删除cf worker部署时的默认环境变量,修复每次更新被覆盖的问题
补充README

* 如果sourceOrderArr中没有的源,则也不请求

* 增加PLATFORM_ORDER环境变量,用于指定优选返回某平台弹幕

* 增加EPISODE_TITLE_FILTER环境变量,按正则关键字对剧集或综艺的集标题进行过滤,适用于过滤一些预告或综艺非正式集
2025-09-27 12:23:46 +08:00
huangxd- 3a5323b9b7 增加源排序环境变量
优化match自动匹配逻辑,在没有按标题和季匹配到剧集时直接通过集数进行匹配
2025-09-23 23:08:12 +08:00
huangxd- 0c3c500e14 修复部分剧自动匹配错误的问题,如狂飙 2025-09-22 23:23:54 +08:00
huangxd- 8b136c240b 修改readme 2025-09-21 11:49:11 +08:00
huangxd- 64d4390f62 修复360电影获取不到的问题 2025-09-21 10:39:07 +08:00
huangxd- d4de3b86c6 Merge pull request #21 from huangxd-/dev
三个请求源增加并发,提升获取播放链接速度
2025-09-21 08:45:47 +08:00
huangxd- 401912c726 修改版本号为1.1.0 2025-09-21 08:38:44 +08:00
huangxd- 9123bca0c9 三个请求源增加并发,提升获取播放链接速度 2025-09-21 08:34:50 +08:00
huangxd- 2f12a1371c 限制YOUKU_CONCURRENCY最大并发数为16 2025-09-21 08:12:44 +08:00
xiaoyao20084321 24c2280330 设置优酷并发请求弹幕,并且并发数量从环境变量里面读取 (#20)
* Create sync_fork.yml

* feat: 优酷改成并发获取代码

* feat: 更新优酷并发为16

* feat: 设置优酷并发从环境变量里面获取
2025-09-21 07:55:34 +08:00
Elegy233 32cb44c5e3 增加ESM兼容层,实现简单兼容Node.js低版本 (#16)
* 增加esbuild依赖

* 增加ESM兼容层,实现兼容Node.js低版本

* 修改启动方式,智能判断是否启用ESM兼容层

* 修复不知道为什么点号变成了中文句号

* 更新Node.js支持版本

esbuild依赖版本需要Node.js > v18,理论上降低版本就能兼容更低版本但懒得测了()也是重回v18了

* 更新项目结构
2025-09-21 07:52:28 +08:00
huangxd- 8b7d2cb2b3 Updated .gitignore 2025-09-21 06:41:35 +08:00
huangxd- 297bee3996 增加腾芒优的弹幕position处理 2025-09-20 12:22:50 +08:00
huangxd- fa02c5fcb9 过滤集数为0的剧集 2025-09-20 10:41:59 +08:00
huangxd- 9fdcd65233 修复请求renren失败直接不返回其他站点信息的问题 2025-09-20 09:51:07 +08:00
huangxd- 3133bdebcb Merge pull request #19 from huangxd-/dev
添加环境变量BILIBILI_COOKIE,用于获取完整b站弹幕
2025-09-20 08:58:08 +08:00
huangxd- 95395bc324 Merge branch 'main' into dev 2025-09-20 08:46:47 +08:00