ytmdl:从 YouTube 下载歌曲并自动补齐元数据
文章目录ytmdl从 YouTube 下载歌曲并自动补齐元数据ytmdl从 YouTube 下载歌曲并自动补齐元数据ytmdl 是一个 Python 命令行工具专门用来从 YouTube 下载音乐。它和普通下载工具的区别在于下载完成后会自动从 iTunes、Spotify、Gaana 等平台抓取歌曲的元数据包括艺术家、专辑名、发行日期、封面图等信息一并写入音频文件。目前这个项目在 GitHub 上获得了 3500 多个 Star。用 YouTube 下载音乐的人大多遇到过同一个问题下载下来的文件只有音频没有歌曲信息。文件名可能是乱码播放器里显示的是视频标题而不是歌名专辑封面也没有。手动一个个去编辑这些信息很麻烦尤其是批量下载的时候。ytmdl 就是为了解决这个问题而做的。工作原理ytmdl 底层调用 youtube-dl 来获取 YouTube 视频的音频流。下载完成后它会用你输入的歌曲名称去多个元数据源搜索匹配的结果。找到匹配的元数据后自动写入到音频文件的 ID3 标签里。整个过程中用户可以手动选择搜索结果也可以用--quiet参数让工具自动选第一个匹配项。支持的元数据源ytmdl 支持从以下平台获取歌曲信息iTunesSpotifyGaana可以通过配置文件指定使用哪些元数据源也可以通过--itunes-id或--spotify-id参数直接指定 ID 进行精确查找。输出格式默认输出 mp3 格式也支持 m4a 和 opus。可以通过--format参数或配置文件来修改。ytmdl 还支持动态目录结构。比如配置SONG_DIR为/音乐$Album-Artist-Title下载的文件就会自动按「专辑/艺术家/歌名.mp3」的层级存放。播放列表支持除了单首歌曲ytmdl 也能处理 YouTube 播放列表。直接把播放列表的 URL 当作参数传入即可。还可以用--pl-start、--pl-end、--pl-items来指定下载范围比如只下载列表中的第 1、3、5 首。下载播放列表时如果某首歌失败了加--ignore-errors参数可以跳过错误继续下载后面的。安装方式ytmdl 支持多种安装方式。通过 pip 安装pip install ytmdlArch Linux 用户可以从 AUR 安装yay -S ytmdlNixOS 用户nix-env -iA nixos.ytmdlWindows 用户需要先安装 ffmpeg然后用 pip 安装 ytmdl。ffmpeg 的二进制文件从官网下载后把所在目录加到系统 PATH 里就行。安装完成后第一次运行 ytmdl 会自动在~/.config/ytmdl/下生成配置文件。基本用法下载一首歌ytmdl 歌名指定输出目录ytmdl 歌名 -o /path/to/save从指定的 YouTube 链接下载ytmdl --url https://youtube.com/watch?vxxxxx批量下载把歌名写在一个文本文件里一行一首ytmdl --list songs.txt跳过元数据只下载音频ytmdl --skip-meta 歌名手动输入元数据信息ytmdl --manual-meta 歌名配置选项配置文件位于~/.config/ytmdl/config可以修改以下默认值配置项说明默认值SONG_DIR歌曲保存目录当前目录SONG_QUALITY音频质量320kbpsMETADATA_PROVIDERS元数据源全部DEFAULT_FORMAT默认格式mp3ON_META_ERROR元数据写入失败时的处理exitITUNES_COUNTRYiTunes 搜索区域USSPOTIFY_COUNTRYSpotify 搜索区域US其他功能ytmdl 支持音频裁剪。加--trim参数后会用语音和音乐分割引擎识别出歌曲的起止位置去掉开头和结尾的非音乐部分。这个功能在视频包含开场白或结尾杂音时比较实用。工具还提供了日志级别控制通过--level参数可以调整日志详细程度。ytmdl 的开发维护状态正常代码开源在 GitHub 上采用 MIT 协议。或结尾杂音时比较实用。工具还提供了日志级别控制通过--level参数可以调整日志详细程度。ytmdl 的开发维护状态正常代码开源在 GitHub 上采用 MIT 协议。[外链图片转存中…(img-N7uMtsAS-1782450554626)]

相关新闻

WHERE 条件别凭习惯写,常用查询先跑一遍

WHERE 条件别凭习惯写,常用查询先跑一遍

刚换一套数据库&#xff0c;先别急着看复杂语法。日常开发里最先撞上的&#xff0c;往往还是那些普通条件&#xff1a;、<>、like、in、between、is null、order by、limit、group by。这些东西看起来简单&#xff0c;真到迁移 SQL 或排查接口数据时&#xff0c;反而最容…

2026/6/27 11:55:18阅读更多 →
如何快速实现文档下载:30+平台一键下载完全攻略

如何快速实现文档下载:30+平台一键下载完全攻略

如何快速实现文档下载&#xff1a;30平台一键下载完全攻略 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档&#xff0c;但是相关网站浏览体验不好各种广告&#xff0c;各种登录验证&#xff0c;需要很多步骤才能下载文档&#xff0c;该脚本就是为了解决您的…

2026/6/27 11:55:18阅读更多 →
如何轻松导出和分析原神抽卡记录?专业工具使用指南

如何轻松导出和分析原神抽卡记录?专业工具使用指南

如何轻松导出和分析原神抽卡记录&#xff1f;专业工具使用指南 【免费下载链接】genshin-wish-export Easily export the Genshin Impact wish record. 项目地址: https://gitcode.com/GitHub_Trending/ge/genshin-wish-export 还在为记不清自己抽了多少次卡而烦恼吗&am…

2026/6/27 11:50:18阅读更多 →
如何快速获取Steam创意工坊模组:跨平台玩家的终极解决方案

如何快速获取Steam创意工坊模组:跨平台玩家的终极解决方案

如何快速获取Steam创意工坊模组&#xff1a;跨平台玩家的终极解决方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否在GOG或Epic Games Store购买了游戏&#xff0c;却…

2026/6/27 13:30:36阅读更多 →
IDEA AI编程插件能力边界实测(21类开发场景全覆盖):能写Spring Boot但无法生成合规SQL?这份权威能力图谱请收好

IDEA AI编程插件能力边界实测(21类开发场景全覆盖):能写Spring Boot但无法生成合规SQL?这份权威能力图谱请收好

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;IDEA AI编程插件能力边界全景概览 IntelliJ IDEA 集成的 AI 编程插件&#xff08;如 JetBrains AI Assistant、Code With Me AI 扩展、或第三方如 Tabnine、GitHub Copilot 插件&#xff09;并非通用人工智能…

2026/6/27 13:30:36阅读更多 →
鸣潮自动化工具深度解析:5大场景智能解放你的游戏时间

鸣潮自动化工具深度解析:5大场景智能解放你的游戏时间

鸣潮自动化工具深度解析&#xff1a;5大场景智能解放你的游戏时间 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 还在为重复刷声骸…

2026/6/27 13:30:36阅读更多 →
树莓派5 PCIe Gen 3模式解锁指南:原理、风险与实测

树莓派5 PCIe Gen 3模式解锁指南:原理、风险与实测

1. 项目概述&#xff1a;为树莓派5解锁PCIe Gen 3模式最近在折腾树莓派5的PCIe接口&#xff0c;发现官方默认只跑在Gen 2.0的速度上。对于想接高速NVMe SSD或者万兆网卡的朋友来说&#xff0c;Gen 2.0那点带宽&#xff08;理论5 GT/s&#xff0c;约500 MB/s单通道&#xff09;确…

2026/6/27 13:30:36阅读更多 →
WorkshopDL终极指南:跨平台Steam创意工坊下载器的完整技术解析

WorkshopDL终极指南:跨平台Steam创意工坊下载器的完整技术解析

WorkshopDL终极指南&#xff1a;跨平台Steam创意工坊下载器的完整技术解析 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL WorkshopDL是一款专为技术爱好者和开发者设计的开源工…

2026/6/27 13:30:36阅读更多 →
4步出图/4K画质/6倍提速,PiD用像素扩散统一解码与超分辨率输出;SA-3DAO:包含 1000 组真实图像与艺术家手工 3D 网格配对的数据集

4步出图/4K画质/6倍提速,PiD用像素扩散统一解码与超分辨率输出;SA-3DAO:包含 1000 组真实图像与艺术家手工 3D 网格配对的数据集

PiD 是 NVIDIA 发布的一种全新潜空间解码范式&#xff0c;将传统的 VAE 解码过程重新定义为条件像素扩散生成&#xff0c;把解码与超分辨率上采样统一到单一生成模块中。传统潜扩散模型通过 VAE 将潜变量还原为图像&#xff0c;输出分辨率受限&#xff0c;且重建导向的解码器难…

2026/6/27 13:25:35阅读更多 →
【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体 一文搞定到底什么是智能体【人工智能】一文搞定到底什么是智能体一. LM&#xff0c;WorkFlow&#xff0c;Agent分别有什么么不同二. Agent的思考过程是怎样的三. Agent的五个核心部分1&#xff09;LLM2&#xff09;Prompt3&#xff09;Me…

2026/6/27 11:20:40阅读更多 →
嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

1. 嵌入式GUI控件&#xff1a;从原理到实战的深度解析在嵌入式系统开发中&#xff0c;图形用户界面&#xff08;GUI&#xff09;的设计与实现往往是项目从“能用”到“好用”的关键一跃。不同于资源充沛的PC或移动平台&#xff0c;嵌入式设备的GUI需要在有限的CPU性能、内存空间…

2026/6/27 5:46:02阅读更多 →
Google AI Studio 300美元额度的真相与实战指南

Google AI Studio 300美元额度的真相与实战指南

1. 这300美金不是“送钱”&#xff0c;而是Google埋下的第一道技术门槛 你看到标题里那个醒目的“$300美金”时&#xff0c;第一反应可能是&#xff1a;又一个免费额度&#xff1f;领完就完事&#xff1f;我亲手试过——这300美金根本不是红包&#xff0c;而是一张入场券&…

2026/6/27 11:20:39阅读更多 →
10分钟AI语音克隆与实时变声:Retrieval-based-Voice-Conversion-WebUI完整指南

10分钟AI语音克隆与实时变声:Retrieval-based-Voice-Conversion-WebUI完整指南

10分钟AI语音克隆与实时变声&#xff1a;Retrieval-based-Voice-Conversion-WebUI完整指南 【免费下载链接】Retrieval-based-Voice-Conversion-WebUI Easily train a good VC model with voice data < 10 mins! 项目地址: https://gitcode.com/GitHub_Trending/re/Retrie…

2026/6/27 0:04:03阅读更多 →
Layerdivider:3分钟AI智能分层,彻底告别手动抠图时代

Layerdivider:3分钟AI智能分层,彻底告别手动抠图时代

Layerdivider&#xff1a;3分钟AI智能分层&#xff0c;彻底告别手动抠图时代 【免费下载链接】layerdivider A tool to divide a single illustration into a layered structure. 项目地址: https://gitcode.com/gh_mirrors/la/layerdivider 还在为复杂的图像分层工作烦…

2026/6/27 0:04:03阅读更多 →
Tomcat中X-Frame-Options配置实战:防御点击劫持的四种方法与最佳实践

Tomcat中X-Frame-Options配置实战:防御点击劫持的四种方法与最佳实践

1. 项目概述&#xff1a;为什么X-Frame-Options是Web安全的“防盗门”&#xff1f;最近在排查一个老项目的安全审计报告时&#xff0c;又被提到了“点击劫持”风险&#xff0c;矛头直指缺失的X-Frame-Options响应头。这已经不是第一次了&#xff0c;很多开发团队&#xff0c;尤…

2026/6/27 0:04:03阅读更多 →