› Get Google Chrome
› Vimium · 在 Chrome 里使用 vim 快捷键
itopmy
V2EX  ›  Chrome

如何在 chrome 插件中获取 youtube 视频的字幕

  •  
  •   itopmy · Jul 3, 2025 · 3502 views
    This topic created in 493 days ago, the information mentioned may be changed or developed.

    如何在 chrome 插件中获取 youtube 视频的字幕

    有一些 python 的库,没法在 chrome 插件中使用,而且在云端使用容易被封 ip 地址。

    所以想从用户的浏览器端来获取 youtube 视频的字幕。youtube 视频播放页面,本身是可以请求字幕的。看起来是请求这个地址: https://www.youtube.com/youtubei/v1/get_transcript?prettyPrint=false 。但是有一个 params 不知道咋构造出来的。

    --data-raw '{"context":{"client":{"clientName":"WEB","clientVersion":"2.20250526.00.00"}},"params":"CgtiZFNxNGI2RnFxVRISQ2dOaGMzSVNBbVZ1R2dBJTNEGAEqM2VuZ2FnZW1lbnQtcGFuZWwtc2VhcmNoYWJsZS10cmFuc2NyaXB0LXNlYXJjaC1wYW5lbDABOAFAAQ%3D%3D"}'

    有类似的 chrome 插件也是通过请求这个地址获取的字幕,不过对应的 js 代码混淆了。https://chromewebstore.google.com/detail/youtube-summary-chatgpt-b/cdjifpfganmhoojfclednjdnnpooaojb?hl=en-US&utm_source=ext_sidebar

    有谁做过类似的需求?

    10 replies  •  2025-07-06 08:29:54 +08:00
    winterx
    winterx
    Jul 3, 2025
    1
    楼主可以抓一下沉浸式翻译看看他怎么实现的
    user1284
    user1284
    Jul 3, 2025
    2
    好多插件翻译功能都能做到, 给我狠狠逆向他们的插件, 然后带我一起学学
    M4ster
    M4ster
    Jul 3, 2025
    3
    F12 看了下,在 Network 中 https://www.youtube.com/api/timedtext 相关的请求是与字幕有关的。
    其中的查询参数可能要自己研究下怎么计算,在 GitHub 上搜了下有许多相关项目,OP 可以参考下。
    https://github.com/search?q=youtube.com%2Fapi%2Ftimedtext&ref=opensearch&type=code
    iOCZS
    iOCZS
    Jul 3, 2025
    4
    应该可以拦截请求。。。。
    itopmy
    itopmy
    OP
    Jul 3, 2025
    5
    @M4ster 视频下面有一个 more ,点开后,有一个 show transcript ,点击后的请求就是 https://www.youtube.com/youtubei/v1/get_transcript?prettyPrint=false ,确实就是不知道它的参数是咋构造的。特别是 params 那个 base64 编码。

    https://www.youtube.com/api/timedtext 这个感觉是比较早的接口了。
    itopmy
    itopmy
    OP
    Jul 3, 2025
    6
    @iOCZS 不想拦截请求,就是想用户观看视频时,后台拿到字幕,然后让 AI 加工一下。字幕在用户端获取。现在有好多视频 summary 的插件,都是同样的套路。
    AvilCore
    AvilCore
    Jul 3, 2025❤️1
    7
    有做好的轮子干嘛自己造呢
    https://github.com/LuanRT/YouTube.js/pull/500
    dark495
    dark495
    Jul 3, 2025
    8
    iOCZS
    iOCZS
    Jul 4, 2025
    9
    @dark495
    @itopmy 我记得 Chrome 插件原生就提供拦截请求的能力,有个双语字幕就是基于这个原理实现的
    dark495
    dark495
    Jul 6, 2025
    10
    @iOCZS mv3 没有这个能力了,chrome 禁止了 mv2
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   582 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:59 · PVG 02:59 · LAX 10:59 · JFK 13:59
    ♥ Do have faith in what you're doing.