- 🔍 关键词搜索:快速搜索歌曲,支持歌名、歌手名
- 📥 高音质下载:支持 标准 / 极高 / 无损 / Hi-Res 四种音质
- 🔐 短信验证码登录:安全便捷的登录方式,自动保存 Cookie
- 🎨 终端 UI:基于 ratatui 的现代化终端界面
- ⚡ 异步下载:带进度条的文件下载,实时显示下载状态
- 💾 自动保存:登录信息自动保存到本地,无需重复登录
- Rust 1.70 或更高版本
- Cargo(Rust 包管理器)
# 克隆仓库
git clone https://github.com/Y-ASLant/NetEasyDownload.git
cd NetEasyDownload
# 构建项目
cargo build --release
# 运行
cargo run --release# 直接运行(首次使用需要登录)
cargo run --release# Windows PowerShell
$env:NETEASYDOWNLOAD_COOKIE='你的cookie'
$env:NETEASYDOWNLOAD_LEVEL='hires'
cargo run --release
# Linux/macOS
export NETEASYDOWNLOAD_COOKIE='你的cookie'
export NETEASYDOWNLOAD_LEVEL='hires'
cargo run --release| 变量 | 说明 | 默认值 |
|---|---|---|
NETEASYDOWNLOAD_COOKIE |
网易云登录 Cookie(可选) | 无 |
NETEASYDOWNLOAD_LEVEL |
默认音质等级 | hires |
兼容性说明:当前版本仍兼容旧变量名 CLOUDX_COOKIE / CLOUDX_LEVEL。
音质等级:
standard:标准音质(128kbps)exhigh:极高音质(320kbps)lossless:无损音质(FLAC)hires:Hi-Res 高解析度音质
- 启动程序:首次运行会进入登录界面
- 输入手机号:输入 11 位手机号,按
Enter发送验证码 - 输入验证码:收到短信后输入验证码,按
Enter完成登录 - 自动保存:登录成功后 Cookie 自动保存到
.neteasydownload_cookie文件
| 按键 | 功能 |
|---|---|
Enter |
搜索歌曲 |
↑ / ↓ |
选择歌曲 |
d |
下载选中的歌曲 |
1 |
切换到标准音质 |
2 |
切换到极高音质 |
3 |
切换到无损音质 |
4 |
切换到 Hi-Res 音质 |
q |
退出程序 |
- 在输入框输入歌曲名或歌手名
- 按
Enter开始搜索 - 使用
↑/↓键选择歌曲 - 按
d键下载选中的歌曲
- 下载的文件保存在当前运行目录的
downloads/目录 - 文件名格式:
歌曲名-歌手名.扩展名 - 支持下载进度显示
- 自动过滤文件名中的非法字符
src/main.rs # 应用入口、事件循环、任务调度
src/client.rs # HTTP 客户端,封装网易云 API
src/models.rs # 应用状态与数据模型
src/crypto.rs # 网易云 eapi 接口加密
src/ui.rs # ratatui 终端界面渲染
- ratatui:终端 UI 框架
- crossterm:跨平台终端控制
- reqwest:HTTP 客户端
- aes + ecb:AES-128-ECB 加密
- serde_json:JSON 解析
- anyhow:错误处理
本项目使用网易云音乐的 eapi 接口:
- 请求和响应均使用 AES-128-ECB 加密
- 加密密钥:
e82ckenh8dichen8 - 需要模拟网易云桌面客户端的 User-Agent
- 登录接口需要特定的设备指纹信息
A: 部分高音质歌曲(极高/无损/Hi-Res)需要登录后才能下载。登录后可以获取更完整的音乐资源。
A: Cookie 保存在程序所在目录下的 .neteasydownload_cookie 文件中。优先级:环境变量 > 文件 > 未设置。当前也兼容读取旧的 .cloudx_cookie 文件。
A: 可能的原因:
- 歌曲需要 VIP 权限
- 歌曲在当前地区不可用
- 网络连接问题
- Cookie 已过期(重新登录即可)
A: 当前版本专注于音频下载,暂不支持歌词、封面、标签等功能。
A: 当前版本仅支持单曲下载,歌单批量下载功能计划在后续版本中添加。
- 歌词下载和嵌入
- 封面下载和嵌入
- 歌单批量下载
- 下载历史记录
- 配置文件支持
- 多线程并发下载
本项目仅供学习交流使用,请勿用于商业用途。
本项目仅供学习和研究使用,请勿用于非法用途。使用本工具下载的音乐文件仅供个人学习使用,请支持正版音乐。
- ratatui - 优秀的终端 UI 框架
- NeteaseCloudMusicApi - 网易云音乐 API 参考