HiFiNi - 音乐磁场 | 无损音乐下载|高清 MV|FLAC|MP3 高品质音乐免费下载试听网站
https://hifiti.com/
歌词下载
https://www.8lrc.com/
Mp3tag 编辑器
下载并安装 Mp3tag
从官网 https://www.mp3tag.de 下载最新版本,安装后启动软件。
导入音频文件
将需要添加歌词的 MP3 文件拖入软件界面,或通过菜单栏的“文件 → 添加目录”批量导入。
添加歌词字段
右键选中文件,选择“扩展标签”(Extended Tags)。
点击“添加字段”(Add Field),输入字段名 UNSYNCEDLYRICS(此为通用歌词标签字段)。
在“值”(Value)栏粘贴 LRC 格式歌词文本,或点击“从文件导入”选择已下载的 LRC 文件。
保存修改
完成编辑后,点击工具栏的“保存”按钮(或按 Ctrl+S),歌词即嵌入音频文件。
注意事项
歌词格式 :需确保 LRC 文件时间轴格式正确(如[00:00.00]歌词),否则可能无法同步显示。
musicdl 下载器
- 安装
1 2 3 4 5 6 7 8
| # from pip pip install musicdl # from github repo method-1 pip install git+https://github.com/CharlesPikachu/musicdl.git@master # from github repo method-2 git clone https://github.com/CharlesPikachu/musicdl.git cd musicdl python setup.py install
|
- 歌单下载
1 2 3 4 5 6
| musicdl -p "https://music.163.com/#/playlist?id=3039971654" -m NeteaseMusicClient musicdl -p "https://y.qq.com/n/ryqq_v2/playlist/8740590963" -m QQMusicClient musicdl -p "https://www.kuwo.cn/playlist_detail/2358858706" -m KuwoMusicClient musicdl -p "https://www.kugou.com/yy/special/single/3280341.html" -m KugouMusicClient musicdl -p "https://music.91q.com/songlist/309319" -m QianqianMusicClient musicdl -p "https://music.migu.cn/v5/#/playlist?playlistId=228114498&playlistType=ordinary" -m MiguMusicClient
|
- 图形界面
1
| python D:/workspace-git/musicdl/examples/musicdlgui/musicdlgui.py
|
- 去除数字id
例子:恍惚 - 29790409.mp3
在文件所在文件夹中,按住 Shift 键右键点击空白处,选择“在此处打开 PowerShell 窗口”,输入:
1
| Get-ChildItem -Include "*.mp3", "*.flac", "*.wav", "*.m4a", "*.ogg", "*.aac", "*.wma" -File | Rename-Item -NewName { ($_.Name -replace ' - \d+\.', '.') -replace '-\d+\.', '.' -replace ' -\d+\.', '.' }
|
YesPlayMusic 登录问题解决
1.登陆网易云网页版
https://music.163.com/
确保登陆成功
2.在网易云网页版界面按下你键盘的F12按钮,找到 Network/网络 界面,不同浏览器不一样,但都一定会有

3.在网络请求中任选一个weblog开头的请求(有些请求是其他域的,cookie不一样),在标头中往下拉找到cookie
4.复制标头中的cookie(有些长,复制完整的值)
5.找一个记事本软件,把下面这个脚本复制进去,再将你的cookie替换脚本内第四行的占位符(别把单引号替换了)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| (async () => { const newCookieString = `请替换这里`;
console.log("🚿 [0] 清空可写 Cookie …"); const currentCookies = document.cookie.split(";").filter(Boolean); if (currentCookies.length === 0) { console.log("⚪ 当前无可清除 Cookie。"); } else { for (const kv of currentCookies) { const name = kv.split("=")[0].trim(); document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/`; console.log("🗑️ 删除:", name); } console.log("✅ Cookie 清除完成(HttpOnly Cookie 不可移除)。"); }
console.log("📥 [1] 写入新 Cookie …"); const maxAgeSeconds = 60*60*24*15; for (const cookie of newCookieString.split(";")) { const c = cookie.trim(); if (!c) continue;
const [key, ...rest] = c.split("="); const value = rest.join("="); if (!key || !value) continue;
const encoded = `${key}=${encodeURIComponent(value)}; path=/; max-age=${maxAgeSeconds}`; document.cookie = encoded; console.log("🍪 写入持久 Cookie:", encoded);
localStorage.setItem(`cookie-${key}`, value); console.log(`💾 localStorage 写入: cookie-${key} = ${value}`); } console.log("✅ 新 Cookie 写入完成。");
console.log("🌐 [2] 正在请求 /api/user/account …"); let payload; try { const res = await fetch("/api/user/account", { credentials: "include" }); payload = await res.json(); console.log("📦 返回数据:", payload); } catch (e) { console.error("❌ 请求失败:", e); return; } if (payload.code !== 200 || !payload.profile) { console.error("❌ 响应异常:", payload); return; } const profile = payload.profile; console.log(`✅ 获取成功,昵称: ${profile.nickname}`);
console.log("📂 [3] 读取 localStorage.data …"); let oldData; try { oldData = JSON.parse(localStorage.getItem("data") || "{}"); console.log("📄 当前 data:", oldData); } catch { console.warn("⚠️ 当前 data 解析失败,将重置为空对象。"); oldData = {}; }
const newData = { ...oldData, user: profile, loginMode: "account" };
try { localStorage.setItem("data", JSON.stringify(newData)); console.log("✅ [4] 新 data 写入完成:", newData); } catch (e) { console.error("❌ localStorage 写入失败:", e); return; }
console.log("🏠 正在跳转到首页 …"); setTimeout(() => { location.href = "/"; }, 1000); })();
|
6.再次复制修改好后的完整脚本
7.打开你的yesplaymusic
8.点击键盘上的F12,同样找到控制台界面,将这个超长脚本复制进去,脚本会自动处理cookie localStorage等信息

9.1s后自动刷新界面,登陆成功~
