#download #youtube #automatic #album #metadata #scrape #discogs

bin+lib ytmdl

从 YouTube 下载专辑,并自动用 Discogs 的元数据填充它们

6 个版本

0.3.4 2023 年 10 月 21 日
0.3.3 2023 年 10 月 15 日
0.2.2 2023 年 10 月 4 日

#3 in #discogs

每月 41 次下载

自定义许可证

54KB
1.5K SLoC

ytmdl

Crates.io docs.rs GitHub license

用法

只需运行可执行文件,它应该会弹出 GUI。我建议从控制台运行它以便记录。

第一个屏幕会提示输入 YouTube 播单链接和 Discogs 发行链接。

点击“抓取”按钮将抓取数据,然后带到您可以修改信息的屏幕。Discogs 会转义一些字符(例如,& 变为 &),您可能需要更改,如果有多位艺术家有相同的名字,它将显示为“Artist (3)”之类的。

在此点击“下载”按钮将开始下载。在这个过程中,它不会响应,但会继续在控制台记录(这就是我建议从控制台运行它的原因)。对我来说,这一步大约需要 20 秒才能下载 6 首歌曲的专辑,但有时可能需要更长的时间(我相信如果 YouTube 检测到可疑行为,有时可能会被限制)。

环境变量

  • RUST_LOG:请参阅 env_logger(如果未设置,我已将其默认设置为 ytmdl,这将仅打印此模块的所有日志)
  • YTMDL_OUT_DIR:最终 mp3 文件将放置的目录(默认为您的 下载目录/ytmdl/
  • YTMDL_OVERWRITE:是否应覆盖(默认为 true

要求

安装

版本

请参阅 GitHub 版本

从源代码构建

cargo install ytmdl

cargo install --git https://github.com/Breadinator/ytmdl

待办事项

  • 如果提供了主页面,自动获取特定 Discogs 发行页面
  • 如果无法抓取 Discogs,则仅使用空数据继续操作
  • 抓取特定歌曲(例如,作曲家)的 Discogs 数据
  • 抓取完整的专辑日期(当前解析的 JSON 块中不存在,但存在于网站上)

依赖关系

~32–54MB
~1M SLoC