9 个版本

0.3.2 2023 年 4 月 16 日
0.3.1 2023 年 4 月 16 日
0.2.4 2023 年 4 月 15 日
0.1.1 2023 年 4 月 15 日

#2519 in 解析实现

MIT 许可证

44KB
338

YouTube 脚本

检索任何 YouTube 视频的脚本。

文档

安装

cargo安装 youtube-transcript

用法

作为命令行

以文本格式 / JSON 格式渲染脚本。默认为文本。

youtube-transcript https://www.youtube.com/watch?v=RcYjXbSJBN8

start at: 639ms for duration 2s
welcome back
==========


start at: 2s for duration 4s
here we go again great to see you and
==========
...
...

对于 JSON

youtube-transcript --format json https://www.youtube.com/watch?v=RcYjXbSJBN8

{
  "transcripts": [
    {
      "text": "Hey, how's it going Dave 2d here?",
      "start": {
        "secs": 0,
        "nanos": 0
      },
      "duration": {
        "secs": 1,
        "nanos": 539999962
      }
    },
    {
      "text": "This is a Microsoft Surface go and when they first announced it I was interested in it",
      "start": {
        "secs": 1,
        "nanos": 539999962
      },
      "duration": {
        "secs": 4,
        "nanos": 159999847
      }
    }
    ...
    ...
  ]
}
...
...

作为库

youtube-transcript 是一个异步库,以下是在应用程序中使用它的示例

let link:&str="https://www.youtube.com/watch?v=RcYjXbSJBN8";

# Create a youtube instance from builder.
let youtube_loader:Youtube = YoutubeBuilder::default().build();

# Get the transcript by loading youtube url.
let transcript:Transcript=youtube_loader.transcript(link).await?;

其他工具

灵感来自:youtube-transcript-api

依赖关系

~8–23MB
~310K SLoC