10个版本 (6个稳定版)
1.0.8 | 2024年4月21日 |
---|---|
1.0.2 | 2024年4月20日 |
0.2.1 | 2024年4月8日 |
0.1.0 | 2024年4月7日 |
0.0.1 | 2024年4月7日 |
#92 in 视频
用于 rusty_dl_cli
105KB
2K SLoC
rusty_dl
Rusty_dl是一个功能丰富的crate,旨在轻松获取各种内容类型,包括YouTube视频、推文媒体(如视频、图片和gif),以及最终从网络直接获取各种其他媒体。
功能
- 下载YouTube视频
- 下载推文媒体(视频、图片、gif)
- 从网络下载其他媒体(通过URL获取)
待办事项
在库中
- 添加将内容下载到特定目录的功能
- 实现检索下载媒体元数据的功能
- 允许用户指定是否用下划线替换文件名中的空格
- 添加从推文中下载仅图片或仅视频的支持
- 添加从YouTube下载播放列表的支持(仅前100个视频)
- 添加示例
其他
- 创建一个用于从终端轻松下载的CLI
- 开发一个桌面应用程序(使用Tauri ?)
- 构建一个用于从浏览器下载媒体的Web应用程序
开始使用
- 将crate添加到您的项目中
cargo add rusty_dl
- 在同步环境中使用crate
use rusty_dl::prelude::{Downloader, YoutubeDownloader, DownloadError};
const URL: &str = "my_yt_video_link";
fn main() -> Result<(), DownloadError> {
let downloader = YoutubeDownloader::new(URL);
downloader.blocking_download()
}
- 在tokio环境中使用crate
use rusty_dl::prelude::{Downloader, YoutubeDownloader, DownloadError};
const URL: &str = "my_yt_video_link";
#[tokio::main]
async fn main() -> Result<(), DownloadError> {
let downloader = YoutubeDownloader::new(URL);
downloader.download().await
}
此crate还导出了一个TwitterDownloader和一个ResourceDownloader,它们的工作方式与上面展示的相同。
更多内容请查看示例目录
贡献
欢迎贡献!请随意打开问题或提交拉取请求,以帮助改进此库。
许可证
本项目采用MIT许可证。
依赖项
~28–42MB
~696K SLoC