免费开源的QQ音乐解析工具MCQTSS_QQMusic怎么用?从单曲下载到歌单批量一次学会

发布时间:2026/10/6 20:54:17

免费开源的QQ音乐解析工具MCQTSS_QQMusic怎么用?从单曲下载到歌单批量一次学会 免费开源的QQ音乐解析工具MCQTSS_QQMusic怎么用从单曲下载到歌单批量一次学会【免费下载链接】MCQTSS_QQMusicQQ音乐解析项目地址: https://gitcode.com/gh_mirrors/mc/MCQTSS_QQMusic这篇文章写给所有想把 QQ 音乐搬进自己设备的人MCQTSS_QQMusic 是一款用 Python 编写的开源 QQ 音乐解析工具能帮你把单曲、整张歌单、MV 视频和实时榜单解析成真实可用的下载地址。下面我会按装环境 → 配 Cookie → 逐个功能实操 → 报错排查的顺序把每一步讲透你照着操作就能跑通。先对号入座这三种人最需要它先花十秒钟判断一下你有没有中过下面这些招想存歌但不想反复开会员一首歌想下下来离线听翻遍全网找不到入口就算找到了也是残缺版歌单几十上百首逐首搜索逐首下载50 首歌能磨掉一下午下到一半还容易乱做视频或想收藏 MV找高清现场版素材要在浏览器里来回折腾保存下来的还带各种水印。只要命中一条MCQTSS_QQMusic 就值得你花十分钟试一遍。它免费、轻量核心只有一个Main.py文件装好依赖就能跑Windows、macOS、Linux 上表现一致。一张表看懂它到底能解析什么项目把所有能力都封装在一个QQ_Music类里函数命名直白看一眼就知道能干什么功能对应函数说明搜索音乐search_music/search_music_2返回 MID、ID、专辑、歌手等信息解析单曲下载地址get_music_url用 MID 换回真实播放链接获取专辑信息get_album_info专辑名、发行公司、语言、简介获取歌单get_playlist_info标题、作者、标签、播放量批量取歌单歌曲get_playlist_info_num按偏移量分批拉取剩余歌曲获取歌词get_lyrics返回原始歌词文本解析 MVget_mv_url返回多清晰度下载地址流行指数榜get_toplist_music排名、歌名、歌手、上升趋势推荐歌单 / 个性电台get_recommended_playlist/get_radio_info直接抓取网页内嵌数据对应到仓库里的文件主线逻辑在 Main.py四个 demo 分别是不同场景的标准答案demo.py 是单曲流程、demo_1.py 是歌单批量、demo_mv.py 是 MV 解析、demo_toplist.py 是榜单同步。想用新版搜索接口就看 search_music_new/ 目录。装好环境三条命令让项目跑起来上手门槛很低Python 3.9 起步核心只需要requests一个库。如果你打算用新版搜索接口才需要额外装pyexecjs来运行项目里的 JavaScript 算法。第一步把代码拉到本地git clone https://gitcode.com/gh_mirrors/mc/MCQTSS_QQMusic cd MCQTSS_QQMusic第二步装依赖pip install requests # 需要新版搜索接口时再加一条 pip install pyexecjs第三步验证环境没问题随便import Main不报错就说明核心代码已经就位。到这一步先别急着跑 demo因为还有一个前置动作必须做。没有它寸步难行Cookie 到底怎么填项目绝大多数功能都依赖你的浏览器 Cookie。简单说QQ 音乐的服务器是靠 Cookie 来认人的工具拿着你的 Cookie 去请求才会被当成正常用户放行。获取方法三分钟就能完成浏览器打开 QQ 音乐官网并登录按F12打开开发者工具切到网络Network面板按CtrlR刷新页面在 Fetch/XHR 里随便点开一个请求在请求标头Request Headers里找到Cookie字段右键复制整串内容把复制的内容填进代码里例如QQM._cookies QQM.set_cookie(你复制的Cookie)。上图就是完整的操作现场左边是 QQ 音乐网页右边红框里就是你需要的 Cookie。这里有两个容易忽略的细节一是 Cookie 有有效期失效了重新复制一份就行二是只有绿钻账号的 Cookie 才能解析绿钻歌曲这一点后面在报错部分还会提到。第一单实操搜到歌名换回播放地址工具内置了两套搜索接口老接口search_music和新的 search_music_new/search_music.py 都能用。以demo.py为例流程是搜索 → 拿到身份凭证 → 换下载地址。输入歌名后搜索接口会返回一长串结构化数据里面最关键的是两个字段songmid和songid你可以把它们理解成这首歌在 QQ 音乐体系里的身份证号。拿到 MID 之后把它交给get_music_url工具就会去 CDN 分发服务器换回一条真实可用的播放链接url QQM.get_music_url(search_list[0][songmid])这一步很像拿凭证换钥匙——你手里有 MID 这张凭证接口才愿意把钥匙下载地址交给你。同一份搜索结果里还能顺手拿到专辑 MID丢给get_album_info就能看到专辑名、发行公司、发行时间这些信息把 MID 丢给get_lyrics歌词也一并出来了。如果你更想要无损音质解析出来的链接本身就带有音质谱系从移动端友好的 128kbps到兼顾体积与听感的 320kbps再到高码率无损按需取舍即可。歌单不是一首首下的批量拉取的正确姿势这是项目最值得夸的功能。demo_1.py演示了完整写法你只需要提供歌单 ID比如 URL 里playlist/后面那串数字工具会先抓取歌单的标题、作者、标签、播放量和收藏量再把歌单里的歌曲全部拉出来。有个细节值得注意接口单次返回的数量有限所以源码里用了一个循环像翻页一样按偏移量一批批取完剩余歌曲直到整张歌单清点完毕。参考代码如下ret QQM.get_playlist_info(歌单ID) # 先拿到歌单基本信息和前 10 首 num ret[detail][songnum] for j in range(...): # 按偏移量循环补取 songs QQM.get_playlist_info_num(歌单ID, 偏移量)每首歌的曲名、歌手、专辑信息都会被整理成结构化数据方便你接下载流程或者直接生成一份本地音乐库的目录清单。50 首歌、100 首歌都是同一个循环的事。想要 MV 高清资源一个 vid 就够了MV 的解析逻辑和单曲几乎一样区别是入口参数从 MID 换成了vid。demo_mv.py里已经写好了示例输入 vid调用get_mv_url返回结果里既带 MV 信息歌名、歌手也带下载地址。更贴心的是同一支 MV 会返回多个清晰度档位每个档位都有filetype、文件大小和freeflow_url三个字段。判断标准很简单filetype数值越高代表画质越高你按需挑一条freeflow_url拿去下载就行。做视频的朋友想存现场高清版这条命令就能搞定还自动带出歌曲名和歌手信息方便归档。追榜玩家的福利流行指数榜同步demo_toplist.py一键抓取 QQ 音乐流行指数榜返回结果里包含排名、歌名、歌手以及上升百分比这类趋势数据谁在飙升一目了然。更妙的是榜单条目里直接带着songId和albumMid拿到手就能接解析下载流程。也就是说榜单功能不是让你看看而已而是看完榜单 → 选中想听的 → 立刻解析下载的一条龙。追新歌再也不用等别人搬运了。解析完没地方放配套播放器了解一下如果你不想只当个下载器项目作者还写了一个配套的播放器 MCQTSS Music。从上面截图能看出解析出来的资源被接入了完整的播放体验专辑封面、歌词同步、进度控制、音量调节一应俱全。也就是说搜索、解析、播放、歌词获取是连成一条线的而不是几个孤立脚本。报错别慌常见问题与排查清单新手最容易卡在下面几个地方提前知道能省不少时间问题403 Forbidden原因Cookie 过期了。 解决重新去网页端按前面的步骤复制一份新 Cookie 换上。问题返回 500001 错误码原因提交的数据有问题或 Cookie 失效。 解决先换 Cookie再检查你填的 MID / ID / 歌单 ID 是否抄对。代码里多个函数对此都有防御直接返回Error。问题绿钻歌曲解析失败原因工具解析的是接口权限内的资源普通账号的 Cookie 换不到 VIP 歌曲的地址。 解决用绿钻账号的 Cookie 才能解析绿钻歌曲这是平台权限限制不是 bug。问题搜索接口突然失效原因QQ 音乐旧手机端搜索接口c.y.qq.com/soso/fcgi-bin/search_for_qq_cp已被平台调整。 解决改用项目更新后的新版搜索 search_music_new/search_music.py装好pyexecjs即可。问题提示缺模块解决核心功能装requests就够了用新版搜索接口时补装pyexecjs。原理其实很简单一个接口加一把签名钥匙这套工具的技术内核并不神秘。核心是 QQ 音乐网页端的通用数据接口u.y.qq.com/cgi-bin/musicu.fcg开发者通过浏览器抓包把网页发出的 JSON 请求参数原样捕获下来再在代码里替换成你想要的数据——比如把歌曲 MID 换成目标歌曲的——就能模拟出一次合法的数据请求。上图就是核心思路的现场左边是网页界面右边红框里就是要捕获的 data 数据格式是 JSON。复制下来改改参数就能通过万能接口提交了。至于签名环节Main.py 里有一套get_sign算法对请求参数做 MD5 加变换处理生成动态签名让请求看起来更像真实用户发出的。剩下的推荐歌单、个性电台这类数据则是直接抓取网页 HTML再用正则把内嵌的 JSON 抠出来。写在最后用对工具也守好边界MCQTSS_QQMusic 的价值在于把获取资源这件事的复杂度降到了最低单曲、歌单、MV、榜单一站式解决搜索、解析、播放、元数据整理全链路打通。它本身也是学习接口解析、爬虫与签名算法的活教材拿来研究很有意思。需要说明的是工具免费版权不免费。项目仅供个人学习、研究和技术交流使用请务必尊重原创作者与版权方的合法权益不要把解析内容用于商业用途或二次传播。想获取项目在终端执行git clone https://gitcode.com/gh_mirrors/mc/MCQTSS_QQMusic装好requests新版搜索接口再补一个pyexecjs按 Readme 指引配好 Cookie就能开始你的第一次解析了。愿每一位音乐爱好者都能在规则之内享受技术带来的便利与乐趣。【免费下载链接】MCQTSS_QQMusicQQ音乐解析项目地址: https://gitcode.com/gh_mirrors/mc/MCQTSS_QQMusic创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/7 5:20:18

Spring Boot农村客运系统实战:从设计到部署的完整总结

做农村客运服务系统这个项目,是我过去几个月投入精力最多的一件事。说直白点,这个基于Spring Boot的农村客运服务系统,就是要把农村班线的班次管理、售票订票、车辆调度和站点信息从纸质台账和微信群聊里搬到一个正经的后台系统里来。它解决的…

2026/10/7 5:20:18

PADS VX DDR等长布线实战:蛇形走线与差分绕制技巧

做DDR布线这么多年,我最深的感触是:原理图能画对的人很多,PCB里能把等长做干净的人真不多。尤其是用PADS VX做DDR2、DDR3、DDR4这类存储接口时,蛇形走线几乎是绕不开的工序。地址线、数据线、时钟线,每一组都有等长约束…

2026/10/7 5:20:18

SpringBoot+Vue毕设实战:流浪动物救助平台从0到1全解析

说句实话,每年毕业设计选题季都会看到很多人在同一个问题上纠结:手里拿到的SpringBoot Vue题目,怎么从"会搭框架"变成"能过答辩又讲得明白的系统"。以流浪动物救助平台这类公益向题目为例,乍一看功能不复杂&…

2026/10/7 5:20:18

Spring Boot+Vue农村客运服务系统:从需求拆解到部署实战

先聊个实在话,"农村客运服务系统"听起来不像电商、不像外卖那么热门,但它真做起来,复杂度一点不比城市公共交通低。站点分散、班次不固定、有些跑线司机年纪偏大、购票还停留在上车付现金的阶段,需求一收上来&#xff0…

2026/10/7 5:20:18

地平线征程6上gridsample算子优化与部署实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 5:15:18

安全鞋越穿越滑的真相:从脱模剂残留到橡胶老化全解析

安全鞋越穿越滑?这个问题我在车间做劳保用品巡检时,听到的次数比“这鞋闷不闷脚”还要多。多数人会下意识把原因归结为“鞋底磨光了”,可实际情况要复杂得多——有些鞋明明花纹还挺深,走在湿地上还是像踩了冰;有些新鞋…

2026/10/5 6:32:56

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/6 4:01:51

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/6 17:46:51

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:05:03

ESP32免重刷固件:浏览器直接修改NVS键值实现WiFi配置更新

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:05:03

SAP HANA查询结果导出CSV:避开乱码、性能与权限的实用指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:05:03

数字后端Placement阶段Density与Congestion控制实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑