From a655624054eff8ecd8f163cd30421a7908078ceb Mon Sep 17 00:00:00 2001 From: huangxd- <649924757@qq.com> Date: Sun, 28 Sep 2025 23:05:50 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=88=B7=E6=96=B0=E7=BB=BC=E8=89=BA?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E8=AF=8D=202.=20readme=E5=A2=9E=E5=8A=A0watc?= =?UTF-8?q?htower=E8=87=AA=E5=8A=A8=E6=9B=B4=E6=96=B0yaml=E7=A4=BA?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 38 +++++++++++++++++++++++++++++--------- danmu_api/worker.js | 4 ++-- 2 files changed, 31 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 98063f0..d1d5a29 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,10 @@ LogVar 弹幕 API 服务器 [![GitHub](https://img.shields.io/badge/-GitHub-181717?logo=github)](https://github.com/huangxd-/damnu_api) +![GitHub forks](https://img.shields.io/github/forks/huangxd-/danmu_api) +![GitHub Repo stars](https://img.shields.io/github/stars/huangxd-/danmu_api) ![GitHub License](https://img.shields.io/github/license/huangxd-/danmu_api) +![Docker Image Version](https://img.shields.io/docker/v/logvar/danmu-api?sort=semver) ![Docker Pulls](https://img.shields.io/docker/pulls/logvar/danmu-api) [![telegram](https://img.shields.io/static/v1?label=telegram&message=telegram_channel&color=blue)](https://t.me/logvar_danmu_channel) [![telegram](https://img.shields.io/static/v1?label=telegram&message=telegram_group&color=blue)](https://t.me/logvar_danmu_group) @@ -83,9 +86,9 @@ LogVar 弹幕 API 服务器 2. **运行容器**: ```bash - docker run -d -p 9321:9321 --name danmu-api -e TOKEN=your_token_here danmu-api + docker run -d -p 9321:9321 --name danmu-api -e TOKEN=87654321 danmu-api ``` - - 使用`-e TOKEN=your_token_here`设置`TOKEN`环境变量,覆盖Dockerfile中的默认值。 + - 使用`-e TOKEN=87654321`设置`TOKEN`环境变量,覆盖Dockerfile中的默认值。 3. **测试 API**: 使用 `http://{ip}:9321/{TOKEN}` 访问上述 API 接口。 @@ -98,9 +101,9 @@ LogVar 弹幕 API 服务器 2. **运行容器**: ```bash - docker run -d -p 9321:9321 --name danmu-api -e TOKEN=your_token_here logvar/danmu-api:latest + docker run -d -p 9321:9321 --name danmu-api -e TOKEN=87654321 logvar/danmu-api:latest ``` - - 使用`-e TOKEN=your_token_here`设置`TOKEN`环境变量。 + - 使用`-e TOKEN=87654321`设置`TOKEN`环境变量。 ```yaml services: @@ -110,10 +113,27 @@ LogVar 弹幕 API 服务器 ports: - "9321:9321" environment: - - TOKEN=your_token_here # 请将your_token_here 替换为实际的 Token 值 + - TOKEN=87654321 # 请将 87654321 替换为你想自定义的 Token 值 restart: unless-stopped # 可选配置,容器退出时自动重启(非必需,可根据需求删除) ``` - 或使用docker compose部署。 + ```yaml + services: + watchtower: + image: containrrr/watchtower + container_name: watchtower-gx + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - TZ=Asia/Shanghai # 保持时区正确 + command: + - --cleanup # 更新后清理旧镜像 + - --interval # 间隔参数 + - "12600" # 30分钟(1800秒),适合测试 + - danmu-api # 监控的目标容器名 + ``` + - 可以使用watchtower监控有新版本自动更新。 3. **测试 API**: 使用 `http://{ip}:9321/{TOKEN}` 访问上述 API 接口。 @@ -189,7 +209,7 @@ Settings > Functions > Advanced Setting > Function Region 切换为 Hong Kong, > 注意: > -> ~~小幻在填写API的时候需要在API后面加上`/api/v2`,如`http://192.168.1.7:9321/87654321/api/v2`~~ +> ~~小幻在填写API的时候需要在API后面加上/api/v2,如http://192.168.1.7:9321/87654321/api/v2~~ > > (已对小幻做兼容,`/api/v2`可加可不加都可以正确处理) > @@ -201,7 +221,7 @@ Settings > Functions > Advanced Setting > Function Region 切换为 Hong Kong, | TOKEN | 【可选】自定义用户token,不填默认为`87654321` | | OTHER_SERVER | 【可选】兜底第三方弹幕服务器,不填默认为`https://api.danmu.icu` | | VOD_SERVER | 【可选】vod查询站点,不填默认为`https://www.caiji.cyou` | -| BILIBILI_COOKIE | 【可选】b站cookie(填入后能抓取完整弹幕),如 `buvid3=E2BCA ... eao6; theme-avatar-tip-show=SHOWED`,请自行通过浏览器或抓包工具抓取 | +| BILIBILI_COOKIE | 【可选】b站cookie(填入后能抓取完整弹幕),如 `buvid3=E2BCA ... eao6; theme-avatar-tip-show=SHOWED`,请自行通过浏览器或抓包工具抓取,热心网友测试后,实际最少只需取 `SESSDATA=xxxx` 字段 | | YOUKU_CONCURRENCY | 【可选】youku弹幕请求并发数,用于加快youku弹幕请求速度,不填默认为`8`,最高`16` | | SOURCE_ORDER | 【可选】源排序,用于按源对返回资源的排序(注意:先后顺序会影响自动匹配最终的返回),默认是`vod,360,renren`,表示vod数据排在最前,renren数据排在最后,示例:`360,renren`:只返回360数据和renren数据,且360数据靠前 | | PLATFORM_ORDER | 【可选】自动匹配优选平台,按顺序优先返回指定平台弹幕,默认为空,即返回第一个满足条件的平台,示例:`bilibili1,qq`,表示如果有b站的播放源,则优先返回b站的弹幕,否则就返回腾讯的弹幕,两者都没有,则返回第一个满足条件的平台;当前可选择的平台字段有 `qiyi, bilibili1, imgo, youku, qq, renren` | @@ -210,7 +230,7 @@ Settings > Functions > Advanced Setting > Function Region 切换为 Hong Kong, ```regex # EPISODE_TITLE_FILTER 默认值 -(特别|惊喜|纳凉)?企划|合伙人手记|超前|速览|vlog|reaction|纯享|加更|抢先|抢鲜|预告|花絮|特辑|彩蛋|专访|幕后|直播|未播|衍生|番外|会员|片花|精华|看点|速看|解读|影评|解说|吐槽|盘点|拍摄花絮|制作花絮|幕后花絮|未播花絮|独家花絮|花絮特辑|先导预告|终极预告|正式预告|官方预告|彩蛋片段|删减片段|未播片段|番外彩蛋|精彩片段|精彩看点|精彩回顾|精彩集锦|看点解析|看点预告|NG镜头|NG花絮|番外篇|番外特辑|制作特辑|拍摄特辑|幕后特辑|导演特辑|演员特辑|片尾曲|插曲|主题曲|背景音乐|OST|音乐MV|歌曲MV|前季回顾|剧情回顾|往期回顾|内容总结|剧情盘点|精选合集|剪辑合集|混剪视频|独家专访|演员访谈|导演访谈|主创访谈|媒体采访|发布会采访|抢先看|抢先版|试看版|短剧|精编|会员版|Plus|独家版|特别版|短片|合唱|陪看|MV|高清正片|发布会|.{2,}篇|观察室|上班那点事儿|周top|赛段|直拍|REACTION|VLOG|全纪录 +(特别|惊喜|纳凉)?企划|合伙人手记|超前|速览|vlog|reaction|纯享|加更|抢先|抢鲜|预告|花絮|特辑|彩蛋|专访|幕后|直播|未播|衍生|番外|会员|片花|精华|看点|速看|解读|影评|解说|吐槽|盘点|拍摄花絮|制作花絮|幕后花絮|未播花絮|独家花絮|花絮特辑|先导预告|终极预告|正式预告|官方预告|彩蛋片段|删减片段|未播片段|番外彩蛋|精彩片段|精彩看点|精彩回顾|精彩集锦|看点解析|看点预告|NG镜头|NG花絮|番外篇|番外特辑|制作特辑|拍摄特辑|幕后特辑|导演特辑|演员特辑|片尾曲|插曲|主题曲|背景音乐|OST|音乐MV|歌曲MV|前季回顾|剧情回顾|往期回顾|内容总结|剧情盘点|精选合集|剪辑合集|混剪视频|独家专访|演员访谈|导演访谈|主创访谈|媒体采访|发布会采访|抢先看|抢先版|试看版|短剧|精编|会员版|Plus|独家版|特别版|短片|合唱|陪看|MV|高清正片|发布会|.{2,}篇|观察室|上班那点事儿|周top|赛段|直拍|REACTION|VLOG|全纪录|开播|先导|总宣|展演 ``` ```regex @@ -255,7 +275,7 @@ danmu_api/ - `/api/logs` 中的 JSON 日志会格式化显示,带缩进以提高可读性。 - 确保 `package.json` 中包含 `node-fetch` 依赖。 - 一键部署需要将项目推送到公开的 Git 仓库(如 GitHub),并更新按钮中的仓库地址。 -- 运行 Docker 容器时,需通过 `-e TOKEN=your_token_here` 传递 `TOKEN` 环境变量。 +- 运行 Docker 容器时,需通过 `-e TOKEN=87654321` 传递 `TOKEN` 环境变量。 - cloudflare貌似被哔风控了。 - 如果想更换兜底第三方弹幕服务器,请添加环境变量`OTHER_SERVER`,示例`https://api.danmu.icu`。 - 如果想更换vod站点,请添加环境变量`VOD_SERVER`,示例`https://www.caiji.cyou`。 diff --git a/danmu_api/worker.js b/danmu_api/worker.js index e55c4d2..1729352 100644 --- a/danmu_api/worker.js +++ b/danmu_api/worker.js @@ -1,6 +1,6 @@ // 全局状态(Cloudflare 和 Vercel 都可能重用实例) // ⚠️ 不是持久化存储,每次冷启动会丢失 -const VERSION = "1.1.4"; +const VERSION = "1.1.5"; let animes = []; let episodeIds = []; let episodeNum = 10001; // 全局变量,用于自增 ID @@ -137,7 +137,7 @@ const DEFAULT_EPISODE_TITLE_FILTER = "(特别|惊喜|纳凉)?企划|合伙人手 "NG镜头|NG花絮|番外篇|番外特辑|制作特辑|拍摄特辑|幕后特辑|导演特辑|演员特辑|片尾曲|插曲|主题曲|背景音乐|OST|音乐MV|歌曲MV|前季回顾|" + "剧情回顾|往期回顾|内容总结|剧情盘点|精选合集|剪辑合集|混剪视频|独家专访|演员访谈|导演访谈|主创访谈|媒体采访|发布会采访|抢先看|抢先版|" + "试看版|短剧|精编|会员版|Plus|独家版|特别版|短片|合唱|陪看|MV|高清正片|发布会|.{2,}篇|观察室|上班那点事儿|周top|赛段|直拍|REACTION|" + - "VLOG|全纪录"; // 默认 剧集标题正则过滤 + "VLOG|全纪录|开播|先导|总宣|展演"; // 默认 剧集标题正则过滤 let episodeTitleFilter; // 这里既支持 Cloudflare env,也支持 Node process.env