Sign inSign up

haoqi7/stream

By haoqi7

•Updated 5 months ago

多平台视频下载

Image
Web servers
0

8.0K

haoqi7/stream repository overview

⁠🌟 项目简介

StreamVault(原名:spirit)是一个视频资源管理与下载平台,支持多平台视频解析和下载,提供便捷的资源管理功能。

⁠✨ 主要特性

⁠🚀 核心功能
  • 🎥 视频链接解析与直链获取
  • ⬇️ 多种下载方式支持(HTTP、Aria2)
  • 📚 哔哩哔哩收藏夹下载与监控
  • ❤️ 抖音作品与喜欢列表下载与监控
  • 📋 NFO元数据生成
  • 💾 视频资源缓存管理
  • 📢 下载完成Webhook通知(支持企业微信群机器人/钉钉(没测试)/飞书)
⁠📝 已计划内容
  • 📸 图文类模块 单独拿出一个模块来处理
  • - 🏠 主页投稿类监控(已完成)
  • 🔄 同步到115网盘(非open api) 或者123盘
  • 🔄 监控类型优化
  • ⚡ 应用瘦身及http下载 高可用低占用
  • 🔧 yt-dlp内置更新方式
⁠🎯 平台支持

状态说明:

  • ✅ 支持
  • ❌ 不支持
  • 🤔 考虑中
  • 🔨 开发中
  • 🚀 未来会做
平台单链接收藏/作品/主页下载类型备注
抖音✅✅HTTP/Aria2
哔哩哔哩✅✅HTTP/Aria2
YouTube✅🔨仅支持yt-dlpdocker版自带 避免产生过多ts文件 还需要合并 麻烦
Twitter✅🔨仅支持yt-dlp未来可支持其他 避免产生过多ts文件 还需要合并 麻烦
Instagram✅🤔仅支持yt-dlp未来可支持其他 避免产生过多ts文件 还需要合并 麻烦
TikTok🔨🤔
快手✅🤔HTTP/Aria2未测试Aria2,同时如果出现captcha 自行去APP或web验证后在测试 本处不处理captcha
微博🤔🤔
红薯🤔🤔
通用平台✅❌仅支持yt-dlpdocker版自带 不接受issues 具体支持地址参考yt-dlp仓库
⁠💻 技术栈
  • 🛠️ 后端:Spring Boot 2.7.x + JPA + SQLite
  • 📱 前端:UniApp(支持小程序、APP等多端)
  • 🐳 容器化:Docker多架构支持(AMD64/ARM64)

⁠🔧 部署指南

⁠🐳 Docker部署(推荐)
# 拉取镜像
docker pull qingfeng2336/stream-vault

# 运行容器
docker run --name stream-vault -d -p 28083:28081 \
  -v d:/home/spirit:/app \
  -v d:/home/spirit/tmp:/tmp \
  qingfeng2336/stream-vault

Docker Hub⁠ | 使用文档⁠

⁠🚀 快速开始
  1. 🔗 访问 http://your-ip:28081/admin/login⁠
  2. 🔑 使用默认账号密码登录
  3. ⚙️ 在设置中删除admin并重新新建账号
  4. 🎉 开始使用
⁠📦 手动部署
  • 要求:Java 1.8+
  • 详细部署文档待完善

⁠📸 功能展示

[待补充项目截图]

⁠📝 更新日志

查看 更新日志⁠ 了解详细更新内容。

⁠📱 客户端使用

⁠🔗 访问方式
⁠📱 移动端支持
  • 🤖 Android APP
  • 💬 微信小程序(开发者模式)
  • 🌍 其他UniApp支持的平台

⁠🔌 API接口

⁠📤 推送接口
POST http://ip:port/api/processingVideos
参数:
- token: 后台设置的token
- video: 链接或分享口令
⁠📋 获取视频列表
POST http://ip:port/api/findVideos
参数:
- token: 后台设置的token(必填)
- pageNo: 页数(必填)
- pageSize: 每页数量(必填)
- videodesc: 视频描述(选填)
- videoname: 视频名称(选填)
- videoplatform: 视频平台(选填)
⁠📝 书签提交方式
javascript:(function(){
    var token = "你的token";  
    var url = window.location.href; 
    fetch("http://ip:port/api/processingVideos", {
        method: "POST",
        headers: { "Content-Type": "application/x-www-form-urlencoded" },
        body: "token=" + encodeURIComponent(token) + "&video=" + encodeURIComponent(url)
    }).then(response => response.json())
      .then(data => alert("请求成功: " + JSON.stringify(data)))
      .catch(error => alert("请求失败: " + error));
})();

⚠️ 注意: 通过接口获取的视频播放链接或缩略图,访问时需追加 ?apptoken=xxxx 参数,否则无法访问。

⁠🙏 致谢

项目参考及使用了以下优秀的开源项目:

⁠📄 许可证

MIT License

Tag summary

Content type

Image

Digest

sha256:5cc107d43…

Size

430.1 MB

Last updated

5 months ago

docker pull haoqi7/stream