核心用法
dl 是一个面向本地媒体库构建的智能下载工具,封装了 yt-dlp 能力,支持从 YouTube、Bilibili、X(Twitter) 等主流平台下载视频与音频。用户通过 /dl <url> 或自然语言指令触发,系统自动识别媒体类型并分类存储:视频归入 ~/Movies/ 或 ~/Videos/,音频存入 ~/Music/,播放列表则创建子目录保存。
执行流程标准化:确认请求 → 调用 uv run 执行脚本 → 捕获输出路径 → Telegram 场景下自动推送音频文件。支持自定义输出目录 (-o) 及多来源 Cookie 配置,提升下载成功率。
显著优点
- 零配置开箱即用:依赖
uv管理 Python 脚本,无需手动安装 yt-dlp - 智能分类管理:按视频/音频/播放列表自动归档,契合媒体服务器目录规范
- DLNA 生态整合:设计目标明确指向 Jellyfin、Universal Media Server 等本地流媒体方案,下载内容即时同步至 TV 端播放
- 多平台 Cookie 支持:四层 fallback 机制确保登录态可靠性
- 场景化交付:Telegram 用户可直接接收音频文件,无需额外操作
潜在缺点与局限
- 版权灰色地带:下载受平台 ToS 保护的内容存在法律风险,部分地区明确禁止
- Cookie 管理负担:稳定下载会员/高画质内容需手动维护 cookies.txt
- 依赖外部工具链:需预装
uv,Windows 用户配置成本略高 - 无内置转码:原格式保存,可能需额外工具统一编码供媒体服务器识别
- 平台反制风险:YouTube 等持续更新反爬策略,yt-dlp 需频繁跟进更新
适合人群
- 自建 NAS/媒体服务器的影音爱好者
- 需要离线归档公开教育/知识类内容的用户
- 追求「下载→自动整理→TV 播放」无缝体验的技术用户
- Telegram 重度用户且习惯 Bot 交互方式
常规风险
| 风险类型 | 说明 |
|---------|------|
| 版权合规 | 下载版权保护内容可能触发平台封禁或法律追责 |
| 隐私泄露 | Cookie 文件包含敏感会话信息,需妥善保管权限 |
| 供应链安全 | `uv` 及 yt-dlp 来自 PyPI,存在依赖包投毒理论风险 |
| 文件系统 | 默认写入用户主目录,需确保磁盘空间充足 |
> 建议:仅下载明确允许二次分发的内容,配合 VPN 规避地域限制,定期检查 yt-dlp 更新以应对平台反制。