#video #youtube #music #api-bindings #command-line

app rustypipe-cli

CLI工具用于RustyPipe - 下载视频并从YouTube / YouTube Music提取数据

1 个不稳定版本

0.2.0 2024年8月18日

#17 in 多媒体

Download history 126/week @ 2024-08-12

126 每月下载量

GPL-3.0 许可证

1MB
27K SLoC

RustyPipe CLI

Current crates.io version License CI status

RustyPipe CLI是一个强大的命令行YouTube客户端。它允许您访问RustyPipe crate的大部分功能:从YouTube获取数据和下载视频。

以下子命令包括

get:获取信息

您可以使用get命令调用任何YouTube实体ID或URL,RustyPipe将获取相关的元数据。它可以获取频道、播放列表、专辑和视频。

用法: rustypipe get UC2TXq_t06Hjdr2g_KdKpHQg

  • -l, --limit 限制获取的项目数量
  • ``-t, --tab` 频道标签(选项:视频、短片、直播、播放列表、信息)
  • -m, --music 使用YouTube音乐API
  • --rss 获取频道的RSS源
  • --comments 获取评论(选项:顶级、最新)
  • --lyrics 获取YTM轨道的歌词
  • --player 在获取视频时获取播放器数据而不是视频详情
  • -c, --client-type 用于获取播放器数据的YT客户端(选项:桌面、电视、电视嵌入、Android、iOS;如果指定了多个客户端,将按顺序尝试)

search:搜索YouTube

使用search命令,您可以在整个YouTube平台上搜索或搜索单个频道。也支持YouTube音乐搜索。

请注意,搜索过滤器仅在搜索YouTube时受支持。在搜索YTM或单个频道时它们没有效果。

用法: rustypipe search "query"

选项

  • -l, --limit 限制获取的项目数量

  • --item-type 根据项目类型过滤结果

  • --length 根据视频长度过滤结果

  • --date 按上传日期筛选结果(选项:小时、天、周、月、年)

  • --order 对搜索结果进行排序(选项:评分、日期、观看次数)

  • --channel 搜索频道视频的频道ID

  • -m, --music 在指定类别中搜索YouTube音乐(选项:全部、歌曲、视频、艺术家、专辑、播放列表-ytm、社区播放列表)

dl:下载视频

下载器可以下载单个视频、播放列表、专辑和频道。可以通过并行下载多个视频来提高性能。

用法: rustypipe dl eRsGyueVLvQ

选项

  • -o--output 下载到指定的目录

  • --output-file 下载到指定的文件

  • --template 下载到由模板确定的路径

  • -r--resolution 视频分辨率(例如:720,1080)。设置为0为仅音频

  • -a--audio 仅下载音频轨道并写入轨道元数据和专辑封面

  • -p--parallel 并行下载的视频数量(默认:8)

  • -m, --music 使用YouTube音乐下载播放列表

  • -l--limit 限制下载视频的数量(默认:1000)

  • -c--client-type 用于获取播放器数据的YT客户端(选项:桌面、电视、电视嵌入、Android、iOS;如果指定了多个客户端,则按顺序尝试)

  • --pot 用于绕过机器人检测的令牌

vdata:获取访客数据

您可以使用vdata命令获取新的访客数据cookie。此功能在测试和重现A/B测试时可能很有用。

全局选项

  • 代理: RustyPipe尊重环境变量HTTP_PROXYHTTPS_PROXYALL_PROXY
  • 日志记录: 您可以使用RUST_LOG环境变量更改日志级别,默认设置为info
  • 访客数据: 可以使用--vdata标志使用自定义访客数据cookie
  • --report

输出格式

默认情况下,CLI以可读的文本格式输出YouTube数据。如果您想存储数据或用脚本处理数据,您应该选择机器可读的输出格式。您可以使用-f, --format标志选择JSON和YAML。

依赖项

~25–44MB
~798K SLoC