CoolFace
Apppublic

coqiancheng/danmu

sourceHugging Facemitupdated 1y agoView on Hugging Face
0likes
App README

danmaku

用于解析转换各大视频网站(芒果TV,腾讯视频,优酷视频,爱奇艺视频,哔哩哔哩)弹幕

依赖

  • —chai: 断言库
  • —mocha: 测试框架
  • —ejs: 模板引擎
  • —express: web框架

运行此项目

sh
npm install # 安装依赖
npm run dev # 本地运行
npm run test # 单元测试

部署

部署到 Hugging Face Spaces

  1. 1.在 Hugging Face Spaces 创建新的 Space
  2. 2.选择 Docker SDK
  3. 3.克隆 Space 仓库并复制项目文件
  4. 4.推送代码即可自动部署

详细步骤请参考 DEPLOY.md

部署到fly.io

sh
curl -L https://fly.io/install.sh | sh #linux
iwr https://fly.io/install.ps1 -useb | iex #windows
export FLYCTL_INSTALL="/home/codespace/.fly"
export PATH="$FLYCTL_INSTALL/bin:$PATH"
flyctl auth login
flyctl deploy

性能提升

相比于旧版的Python项目,Node对于异步并发的处理能力更强。 Express框架的性能也比Python的Django要好很多。

数据库和统计功能

新增功能

  • —✅ 自动数据库初始化
  • —✅ 访问统计(今日、昨日、月度访问量)
  • —✅ 热榜生成(昨日下载热榜)
  • —✅ 定时任务自动更新统计数据

数据库表结构

  • —Access: 访问记录表
  • —Error: 错误记录表
  • —videoinfo: 视频信息表
  • —AccessStatistics: 访问统计表
  • —YesterdayHotlist: 昨日热榜表

定时任务

  • —每10分钟更新访问统计
  • —每天凌晨1点生成昨日热榜

管理接口

  • —GET /update-stats - 手动更新统计数据
  • —GET /generate-hotlist - 手动生成热榜
  • —GET /stats - 查看当前统计状态
  • —GET /delete - 删除三个月前的记录

测试

sh
node test-db.js  # 测试数据库功能

fly.io常用命令

sh
flyctl logs
flyctl status
flyctl scale count 0
flyctl regions add sea
flyctl regions remove hkg
flyctl config env
flyctl secrets set DEBUG=true
flyctl ssh console
flyctl checks list
flyctl ssh sftp get /app/db/danmaku.db

Node常用工具

bash
npm outdated
npm update