1个不稳定版本
0.1.0 | 2023年4月20日 |
---|
#345 in 视频
11MB
307 行
ytb-downloader
关于本项目
A Rust库,用于从YouTube下载视频,可选择所有可用格式。
(返回顶部)
入门
将 ytb-downloader
添加到 Cargo.toml 并导入它
use ytb-downloader::*;
注意,该库使用异步/等待,因此
tokio = { version = "1.27.0", features = ["macros", "rt-multi-thread", "fs"] }
也需要。以下是 ytb-downloader
所需的 Tokio 功能,但您可以添加更多,如果需要的话。
(返回顶部)
用法
以下示例使用 error_chain 进行错误处理,这就是为什么 Result 也没有错误类型参数。
使用 download_video!
宏下载视频
#[macro_use] extern crate ytb_downloader;
use ytb_downloader::*;
use errors::*;
[tokio::main]
async fn main() -> Result<()> {
let source = get_available_sources("https://www.youtube.com/watch?v=pqhfyrW_BEA").await?
.into_iter().next().unwrap();
const OUTPUT_FILE: &str = "download.m4a";
download_video!(&source, OUTPUT_FILE).await;
Ok(())
}
使用实际函数调用下载视频
use ytb_downloader::*;
use errors::*;
[tokio::main]
async fn main() -> Result<()> {
let source = get_available_sources("https://www.youtube.com/watch?v=pqhfyrW_BEA").await?
.into_iter().next().unwrap();
const OUTPUT_FILE: &str = "download.m4a";
download_video(&source, OUTPUT_FILE, None).await;
Ok(())
}
以10240字节的大小块下载视频
use ytb_downloader::*;
use errors::*;
[tokio::main]
async fn main() -> Result<()> {
let source = get_available_sources("https://www.youtube.com/watch?v=pqhfyrW_BEA").await?
.into_iter().next().unwrap();
const OUTPUT_FILE: &str = "download.m4a";
download_video(&source, OUTPUT_FILE, Some(10240)).await;
Ok(())
}
(返回顶部)
贡献
您提供的任何贡献都将被 高度赞赏。
如果您有改进此项目的建议,请fork仓库并创建一个pull request。您也可以简单地打开一个带有“增强”标签的问题。
- fork项目
- 创建您的功能分支 (
git checkout -b feature/AmazingFeature
) - 提交您的更改 (
git commit -m 'Add some AmazingFeature'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 打开一个Pull Request
(返回顶部)
许可证
在MIT许可证下分发。更多信息请参阅 LICENSE.txt
(返回顶部)
联系方式
Pavlos Smith - paulsmith4561+at+gmail.com
(返回顶部)
依赖项
~11–27MB
~397K SLoC