当前位置: 首页 > news >正文

B站bilibili视频转文字字幕下载方法

本文将讲述介绍一种使用本地工具如何快速的下载B站的字幕为本地文本文件的方法。

通常获取B站字幕需要在浏览器中安装第三方插件,通过插件获取字幕。随着大模型,生成式AI,ChatGPT的应用,B站也提供了AI小助手对视频的内容进行总结以及字幕的生成。但是B站没有提供直接下载文本字幕的功能,因此本文介绍一下如何将AI小助手生成的文本字幕下载到本地。

AI字幕小助手

bilibili提供的AI小助手生成的字幕,如下:
在这里插入图片描述
点击AI小助手,即能够实时在线观看字幕,但是不支持字幕的下载。需要注意的是,由于字幕采用的是AI自动生成的,因此对于口音问题可能会有些许的错误。

下载JSON

B站的字幕采用的是JSON格式进行存储,因此首先需要下载该JSON文件。使用F12或者右键->检查进入开发者页面,点击AI助手之后,通过查看Network选项中response的内容,找到AI字幕的HTTP请求页面如下:
在这里插入图片描述
右键复制该字幕请求的URL,进入对应的HTTP Request响应内容界面,如下:
在这里插入图片描述
右键将页面内容另存为为json文件,或者直接拷贝页面内容。

查看JSON

通过cyberchef查看这是一个标准的json文件:
在这里插入图片描述
cyberchef是一款每一位程序员以及未来数字世界的公民都应该掌握的强大的工具,关于cyberchef的更多有意思和价值的功能,参考我的专栏《Cyberchef 从入门到精通教程》,这里。

如何将Json文件中指定的字段提取出来了呢,在之前的专栏文章中有三种方法,分别为在线网站,命令行JQ,以及编写python程序,这些方式存在如下的问题:

  • 在线网站的问题多为个人网站,不稳定,有的时候无法访问,有的时候无法正常解析数据,数据传到云端容易泄露等等。
  • 命令行JQ需要对应的环境,例如linux环境,还需要熟悉JQ的命令使用。
  • python同样需要对应的开发环境,以及别写对应的代码等。

因此如下将通过cyberchef的一些操作,将content内容字段的字幕信息提取出来的,这是一种在本地运行,简单易行,更为实用的方法。

生成正则

首先要用正则匹配content内容字段,相信正则匹配是很多小伙伴头都疼的问题,但是有了生成式AI,这个问题就变简单很多,如下使用chatgpt生成对应的正则:
在这里插入图片描述
可以看到对应的正则看似正确,还有对应的解释,如何验证呢?使用cyberchef的regular expression字段即可。

Json字段提取

将chatgpt生成的正则填入到regular expression的操作之中,如下:
在这里插入图片描述
可以看到所有的引号之间的字段都会被匹配上,因此将正则修改,如下:
在这里插入图片描述
Json文件的content字段内容之前有个冒号,因此这样只会匹配content字段的内容,输出格式选择提取匹配的字段内容,然后将文件另存为文本文件,即可得到字幕文件。

更简单的方法

可以看到上述为了得到content内容字段,需要编写正则表达式,虽然通过chatgpt降低了编写正则的难度,但是让然需要熟悉正则的语法。能不能让cyberchef直接解析json文件并提取对应的字段内容呢,答案是可以的,如下:
在这里插入图片描述
关于cyberchef这个简单的操作,显然不用编写复杂正则了。目前先保持神秘,更多的关于这个操作详见文章,这里。

本文为CSDN村中少年原创文章,未经允许不得转载,博主链接这里。

http://www.lryc.cn/news/505420.html

相关文章:

  • vue CSS 自定义宽高 翻页 剥离 效果
  • uniapp使用百度地图配置了key,但是显示Map key not configured
  • Leetcode42-环形链表
  • C语言进阶(2) ---- 指针的进阶
  • 使用Python筛选图片
  • GESP CCF python五级编程等级考试认证真题 2024年12月
  • URL的概念与格式
  • 【Elasticsearch】高亮搜索:从原理到Web呈现
  • samout llm解码 幻觉更低更稳定
  • 单片机:实现多任务处理(附带源码)
  • 负载均衡oj项目:介绍
  • 剑指Offer 03比特位计数
  • 多音轨视频使用FFmpeg删除不要音轨方法
  • elasticsearch 使用enrich processor填充数据
  • VMProtect:软件保护与安全的全面解决方案
  • Web 毕设篇-适合小白、初级入门练手的 Spring Boot Web 毕业设计项目:教室信息管理系统(前后端源码 + 数据库 sql 脚本)
  • 第十二篇:linux下socket本地套接字通讯
  • Spring Boot 2.1.7 数据源自动加载过程详解
  • 【Vue.js 3.0】provide 、inject 函数详解
  • JVM(Java虚拟机)的虚拟机栈
  • Elasticsearch02-安装7.x
  • iPhone恢复技巧:如何从 iPhone 恢复丢失的照片
  • vba批量化调整word的图和图表标题
  • 【Flutter_Web】Flutter编译Web第二篇(webview篇):flutter_inappwebview如何改造方法,变成web之后数据如何交互
  • 【C语言的奥秘11】指针知识点总结(续)
  • excel 列名是数据表 的字段名 ,单元格的值 是数据表对应字段的值,生成sql插入语句
  • AI Agent与MEME:技术与文化融合驱动Web3创新
  • IO的入门
  • 构建一个rust生产应用读书笔记四(实战1)
  • SpringCloudAlibaba | Sentinel从基础到进阶