1 个不稳定版本
0.9.0 | 2024 年 4 月 14 日 |
---|
#141 in 视频
52KB
1K SLoC
youtube-dl-rs
注意:这个库的名称有点误导,它目前不支持 youtube-dl
,因为其开发似乎最近进展很慢,但它支持 yt-dlp
,在某些方面与 youtube-dl
分歧,但发展得更多。
运行 yt-dlp 并解析其 JSON 输出。示例
use youtube_dl::YoutubeDl;
let output = YoutubeDl::new("https://www.youtube.com/watch?v=VFbhKZFzbzk")
.socket_timeout("15")
.run()
.unwrap();
let title = output.into_single_video().unwrap().title;
println!("Video title: {}", title);
或者,如果你想使其异步运行(启用功能 tokio
)
let output = YoutubeDl::new("https://www.youtube.com/watch?v=VFbhKZFzbzk")
.socket_timeout("15")
.run_async()
.await?;
let title = output.into_single_video().unwrap().title;
println!("Video title: {}", title);
Ok(())
功能标志
- tokio:启用
run
、run_raw
和download_to
方法的async
变体。 - downloader-native-tls / downloader-rustls-tls:启用
download_yt_dlp
方法以及YoutubeDlFetcher
结构体,使用给定的 TLS 后端下载yt-dlp
可执行文件。
依赖关系
~0.8–13MB
~158K SLoC