Skip to content

KinGao294/bilibili-YouTube-SubtitleGrabber

Repository files navigation

🎬 SubtitleGrabber - 视频字幕抓取插件

GitHub release License: MIT GitHub stars GitHub issues

一款功能强大的Chrome浏览器扩展,专门用于一键抓取B站、YouTube等视频平台的字幕内容,支持多种格式导出。

📥 下载安装🚀 快速开始📖 使用文档🤝 参与贡献

✨ 主要功能

  • 🚀 一键抓取:自动识别并抓取视频字幕,无需手动操作
  • 🎯 多平台支持:完美支持B站、YouTube等主流视频平台
  • 📋 多格式导出:支持纯文本、含时间轴、SRT字幕格式
  • 🔍 智能搜索:内置关键词搜索和字幕过滤功能
  • 实时同步:字幕内容随视频播放实时更新
  • 🎨 现代化UI:简洁美观的用户界面,操作便捷

🛠️ 技术架构

  • 架构标准:Chrome Extension Manifest V3
  • 核心技术:Vanilla JavaScript + HTML5 + CSS3
  • 设计模式:组件化架构 + 观察者模式
  • 数据通信:Chrome Extension Message API
  • 存储方案:Chrome Storage API (Session + Local + Sync)

📁 项目结构

SubtitleGrabber/
├── manifest.json                 # 扩展清单文件
├── src/                          
│   ├── popup/                    # 弹窗界面
│   │   ├── popup.html           
│   │   ├── popup.css            
│   │   ├── popup.js             
│   │   └── components/          
│   ├── content/                  # 内容脚本
│   │   ├── platforms/           # 平台适配器
│   │   │   ├── bilibili.js      # B站字幕抓取
│   │   │   ├── youtube.js       # YouTube字幕抓取
│   │   │   └── base.js          # 基础抓取器类
│   │   └── utils/               # 工具函数
│   ├── background/               # 后台服务
│   ├── shared/                   # 共享模块
│   └── assets/                   # 静态资源
├── tests/                        # 测试文件
├── docs/                         # 文档目录
└── tools/                        # 开发工具

📥 安装方式

📦 从GitHub安装(当前推荐方式)

  1. 访问 Releases页面
  2. 下载最新的 SubtitleGrabber-vX.X.X.zip
  3. 解压文件
  4. 在Chrome中加载:
    • 打开 chrome://extensions/
    • 启用"开发者模式"
    • 点击"加载已解压的扩展程序"
    • 选择解压后的文件夹

🚀 快速开始

用户使用

  1. 打开视频页面:访问B站或YouTube
  2. 播放视频:确保视频有字幕显示
  3. 启动插件:点击浏览器工具栏的插件图标
  4. 选择格式:选择所需的导出格式
  5. 一键复制:点击"复制所有"获取字幕

开发环境设置

  1. 克隆项目

    git clone https://github.com/KinGao294/B-.git
    cd B-
  2. 安装依赖

    npm install
  3. 启动开发模式

    npm run dev
  4. 在Chrome中加载插件

    • 打开 chrome://extensions/
    • 启用"开发者模式"
    • 点击"加载已解压的扩展程序"
    • 选择项目的 dist 目录

构建和打包

# 构建生产版本
npm run build

# 打包为zip文件
npm run zip

📖 使用说明

基础使用流程

  1. 打开视频页面:在B站或YouTube观看视频
  2. 启动插件:点击浏览器工具栏中的插件图标
  3. 抓取字幕:插件自动检测并抓取视频字幕
  4. 选择格式:选择所需的导出格式
  5. 一键复制:点击复制按钮,字幕内容自动复制到剪贴板

支持的平台

平台 支持状态 功能特色
🅱️ B站 ✅ 完全支持 支持字幕和弹幕模式
🎥 YouTube ✅ 完全支持 支持自动生成和人工字幕
📺 其他平台 🔄 计划中 根据用户需求逐步添加

导出格式

  • 纯文本格式:直接拼接所有字幕内容
  • 含时间轴格式:保留时间信息,便于定位
  • SRT字幕格式:标准字幕文件,可用于视频制作

🧪 测试

# 运行所有测试
npm test

# 监听模式运行测试
npm run test:watch

# 代码质量检查
npm run lint

# 格式化代码
npm run format

📋 开发计划

v1.0 - MVP版本 ✅

  • B站字幕抓取
  • 基础UI界面
  • 一键复制功能

v1.1 - 完整版本 🔄

  • YouTube字幕抓取
  • 格式选择功能
  • 错误处理优化

v1.2 - 增强版本 📋

  • 搜索过滤功能
  • 导出文件功能
  • UI/UX优化
  • 批量处理功能

🤝 参与贡献

我们欢迎所有形式的贡献!这是一个开源项目,任何人都可以参与改进。

Contributors

🎯 贡献方式

  • 🐛 报告Bug: 创建Issue
  • 💡 功能建议: 提出想法
  • 🔧 代码贡献: 提交 Pull Request
  • 📚 文档改进: 完善使用说明和开发文档
  • 🌍 本地化: 帮助翻译界面到其他语言
  • 支持项目: 给项目加Star,分享给朋友

📖 详细指南

请阅读 贡献指南 了解:

  • 开发环境配置
  • 代码提交规范
  • Pull Request 流程
  • 代码审查标准

💻 开发者快速上手

# 1. Fork 并克隆项目
git clone https://github.com/YOUR_USERNAME/B-.git

# 2. 创建功能分支
git checkout -b feature/awesome-feature

# 3. 开发和测试
npm run dev

# 4. 提交更改
git commit -m "feat: add awesome feature"

# 5. 推送并创建 PR
git push origin feature/awesome-feature

📄 许可证

本项目采用 MIT许可证

🙏 致谢

感谢所有为此项目做出贡献的开发者和用户!

📞 支持与反馈


SubtitleGrabber - 让字幕抓取变得简单高效! 🚀

About

抓取并下载B站及油管视频文案及字幕

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors