Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

B站字幕分析器 Skill

一个智能的B站视频字幕分析工具,能够根据用户需求自动完成从关键词生成到内容分析的全流程工作。

功能特性

🎯 智能关键词生成

  • 基于用户需求自动生成精准搜索关键词
  • 支持多维度关键词扩展
  • 智能过滤无关词汇

🔍 视频搜索与筛选

  • 使用B站官方API搜索相关视频
  • 按综合排序算法获取最相关结果
  • 支持指定搜索数量

📥 智能字幕下载

  • 优先下载中文字幕
  • 支持多语言字幕备选机制
  • 自动保存字幕文件

📊 内容分析与报告生成

  • 基于需求内容和字幕生成结构化报告
  • 支持多种报告格式(选购指南、研究报告等)
  • 智能提取关键信息和洞察

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 配置B站登录凭证

编辑 config.py 文件,填入您的B站登录凭证:

# 您的B站登录凭证
SESSDATA = "您的SESSDATA"
BILI_JCT = "您的BILI_JCT"
DEDE_USER_ID = "您的用户ID"

3. 使用方法

命令行使用

# 基本用法
python run.py "如何选购笔记本电脑"

# 自定义搜索参数
python run.py "人工智能发展趋势" -k 5 -v 4

# 指定输出目录
python run.py "Python学习教程" -o my_output

参数说明

  • demand (必需): 用户需求描述
  • -k, --keywords: 最大关键词数量,默认5个
  • -v, --videos: 每个关键词搜索的视频数量,默认3个
  • -o, --output: 输出目录,默认'output'

编程使用

from run import BilibiliSubtitleAnalyzer

# 创建分析器
analyzer = BilibiliSubtitleAnalyzer()

# 执行分析
results = analyzer.analyze(
    "如何选购笔记本电脑",
    videos_per_keyword=3,
    max_keywords=5
)

# 打印总结
analyzer.print_summary(results)

输出文件

分析完成后会生成以下文件:

  • subtitles/: 字幕文件目录
    • {BV号}_{语言}.txt: 下载的字幕文件
  • reports/: 报告文件目录
    • {需求主题}_分析报告_{时间戳}.md: 生成的分析报告
  • output/: 其他输出文件

报告格式

选购指南报告

# 选购指南分析报告

## 报告概述
- 生成时间: 2024-01-01 10:00:00
- 用户需求: 如何选购笔记本电脑
- 分析来源: 8个相关视频

## 关键选购要点
- 注意CPU性能和核心数
- 内存建议16GB以上
- 固态硬盘比机械硬盘更快
- ...

## 市场洞察
- 内容较为丰富,提供了详细的信息
- 内容与用户需求高度相关
- ...

## 选购建议
- 建议对比多个产品的性能和价格
- 考虑实际使用需求和预算
- ...

研究报告格式

# 研究报告分析

## 报告概述
- 生成时间: 2024-01-01 10:00:00
- 研究主题: 人工智能发展趋势
- 数据来源: 10个相关视频

## 研究关键发现
- AI技术正在向多模态发展
- 大语言模型成为研究热点
- ...

## 分析洞察
- 内容结构清晰,便于理解
- 信息时效性较好
- ...

## 研究建议
- 建议关注行业最新动态
- 结合多个来源进行综合分析
- ...

模块说明

keyword_generator.py

  • 智能关键词生成
  • 需求类型分析
  • 关键词扩展和优化

video_searcher.py

  • B站视频搜索
  • 搜索结果去重
  • 搜索统计和报告

subtitle_downloader.py

  • 智能字幕下载
  • 多语言支持
  • 下载状态监控

content_analyzer.py

  • 内容分析和提取
  • 报告模板生成
  • 洞察和建议生成

config.py

  • 配置管理
  • 参数验证
  • 性能调优

配置选项

搜索配置

DEFAULT_SEARCH_CONFIG = {
    'videos_per_keyword': 3,      # 每个关键词搜索的视频数量
    'max_keywords': 5,            # 最大关键词数量
    'search_timeout': 10,         # 搜索超时时间(秒)
    'retry_attempts': 3,          # 重试次数
}

下载配置

DOWNLOAD_CONFIG = {
    'output_dir': 'subtitles',     # 字幕输出目录
    'preferred_languages': ['中文', '中文(中国)', '中文(简体)', '中文(繁體)'],
    'fallback_languages': ['English', '英文'],
    'timeout': 15,                 # 下载超时时间(秒)
}

使用示例

示例1:选购指南

python run.py "如何选购智能手机" -k 4 -v 3

示例2:学习教程

python run.py "Python编程入门教程" -v 5

示例3:研究报告

python run.py "区块链技术发展趋势" -k 6 -v 4 -o blockchain_report

注意事项

  1. API限制: B站API有请求频率限制,请合理控制搜索数量
  2. 登录凭证: 需要有效的B站登录凭证,过期需要更新
  3. 网络环境: 确保稳定的网络连接
  4. 字幕可用性: 不是所有视频都有字幕,成功率可能受影响
  5. 内容质量: 分析结果依赖于视频内容的质量和相关性

故障排除

常见问题

  1. 搜索失败

    • 检查网络连接
    • 验证登录凭证是否有效
    • 降低搜索频率
  2. 字幕下载失败

    • 视频可能没有字幕
    • 检查网络连接
    • 尝试重新运行
  3. 配置错误

    • 运行 python config.py 验证配置
    • 检查文件权限

日志查看

启用日志后,可以在控制台查看详细的操作日志:

# 在config.py中启用日志
OUTPUT_CONFIG = {
    'enable_logging': True,
    'log_level': 'INFO',
}

扩展开发

添加新的报告模板

content_analyzer.py 中添加新的报告生成函数:

def _generate_custom_report(self, user_demand, key_points, insights, recommendations, search_data):
    # 自定义报告逻辑
    return "自定义报告内容"

自定义关键词生成

修改 keyword_generator.py 中的关键词扩展逻辑:

# 添加新的同义词
self.synonym_dict = {
    '电脑': ['计算机', 'PC', '台式机', '笔记本'],
    # 添加新的映射
}

许可证

本项目基于 MIT 许可证开源。

贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目!

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages