之前用了一个私人的api,没用到1个月就没了,实在烦恼~无意间通过wireshark抓到网易云音乐,然后解析了一下就Okay。解包里有mp3url,就okay了。然后通过加载就okay。

至于歌词部分是被加密了的。。实在找不到方法解密。就又调用了一个酷狗音乐的歌词api。

一.请求搜索歌曲:

QNetworkAccessManager*manger=newQNetworkAccessManager;

    QNetworkRequest *request=new QNetworkRequest;
    request->setUrl(QUrl(http://music.163.com/api/search/pc));
    request->setRawHeader("Cookie","os=pc");
    request->setRawHeader("Host","music.163.com");
    request->setRawHeader("MUSIC_U","5339640232");
    request->setRawHeader("Referer",http://music.163.com/);
    manger->post(*request,"offset=0&total=true&limit=100&type=1&s="+byt);
    connect(manger,SIGNAL(finished(QNetworkReply*)),this,SLOT(workfinished(QNetworkReply*)));

二.处理返回内容:

QJsonDocument doc=QJsonDocument::fromJson(byt);
QJsonObject obj0=doc.object();
QJsonObject obj1=obj0.value("result").toObject();
QJsonArray arry=obj1.value("songs").toArray();
int arrycount=arry.count();
for(int i=0;i<arrycount;i++)
{
QJsonObject obj2=arry.at(i).toObject();
 QString songname=obj2.value("name").toString();//获取音乐名字
QJsonArray arry1=obj2.value("artists").toArray();
QJsonObject obj3=arry1.at(0).toObject();
QString author= obj3.value("name").toString();//获取歌手名字

connect(addnetplaybtn,SIGNAL(clicked()),this,SLOT(addplaynetListslot()));
connect(downbtn,SIGNAL(clicked()),this,SLOT(downloadnetsong()));
  }

powered by:小乌龟在大乌龟背上



Qt/C++ 网易云api 在线播放音乐相关推荐

  1. 基于Qt模仿网易云音乐播放器

    基于Qt模仿网易云音乐界面,目前只实现了部分界面,后续继续完善改造. 部分代码: #ifndef MYSQLDATAMGR_H #define MYSQLDATAMGR_H#include <Q ...

  2. 基于开源网易云API+Flutter写的一款音乐播放器

    历时2个多月,基于开源网易云API的一款使用Flutter开发的桌面音乐程序终于完成了它的第一个版本v1.0.0

  3. 基于开源网易云API+Flutter写的一款音乐播放器(二)

    历时2个多月,基于开源网易云API的一款使用Flutter开发的桌面音乐程序终于完成了它的第一个版本v1.0.0

  4. 网易云API Golang版开发历程

    网易云API Golang版开发历程 原项目(node.js) 网易云音乐 API 本项目 (golang) 网易云音乐 API api文档 请不要用于商业用途 想法的开始 事情的开始还是一开始在B站 ...

  5. 基于qt实现网易云界面轮播效果实现

    基于qt实现网易云音乐的轮播效果 网易云轮播效果 前言 其实主要是想做点记录吧,本人比较喜欢音乐,所以在上周决定在搭建一个网易云的界面框架,不做不知道,做了才发现qt还有很多的框架是自己不太熟悉的. ...

  6. 网易云api及 asrsea 加密参数文档

    网易云api及 asrsea 加密参数文档 detail /weapi/v3/song/detail?csrf_token=bd0c8c8504a92cd653d53a7dd1c01ba4 " ...

  7. html网易云客堂,网易云课堂 HTML5 播放器样式调整

    网易云课堂 HTML5 播放器样式调整是一款由作者黄盐分享的一个浏览器扩展插件.通过脚本用户可以配合[视频站启用html5播放器使用],播放器不会出现滚动条,并且有控制按钮,有需要的用户欢迎下载使用体 ...

  8. 微信小程序讲解ppt(内附ppt资源及网易云api案例)

    超详细微信小程序讲解ppt文档,点我去下载 使用网易云api制作案例 ppt概览图如下: 小程序图片:

  9. Android实现在线播放音乐

    Android实现在线播放音乐 2014年3月10日 hello,小伙伴们,3月份珊珊来迟的第一篇博客,最近小巫在找工作,加上又生病了,就没有太多精力去写博客了.今天拖着病发表一篇之前已经实现的在线播 ...

  10. 调用Nodejs版网易云API时,遇到code:-462报错解决方案

    在今年(2023)四月份,我在调用基于Nodejs版网易云API时,突然出现了下面这个报错: 很明显,网易云在调用API时需要我们进行账户验证,我很自然想到可能是需要登录.那么查阅API文档,我们可以 ...

最新文章

  1. Datawhale第四期组队学习团队成员
  2. JNI调用c++函数,该函数的参数是结构体(——对象的传递)
  3. 页面是可以这样设计的
  4. 【自动驾驶】33.【图像坐标系】 到 【像素坐标系】 的度量单位变换、【英寸】、【感光芯片】
  5. 为什么机器学习工程师用PyTorch的多于TensorFlow?
  6. 简单的Android对文件进行读写操作
  7. mybatis----#与$区别
  8. Android中BroadCast与Activity之间的通信
  9. python求最小公倍数_python求最大公约数和最小公倍数的简单方法
  10. vuex 源码分析_Vuex框架原理与源码分析
  11. 《天天数学》连载44:二月十三日
  12. switch全部游戏列表_敢把游戏当教材,免费提供给学生!EA今年将推出7款NS作品!...
  13. 时隔25年重访 Linus:流量时代的“技术大师”
  14. java案例代码10--购物车案例--重要
  15. 招聘笔试行测题之图形推理题解题思路汇总
  16. 替代 NetMeeting 的多人屏幕共享工具
  17. ISO14001认证用处有哪些?
  18. 几款前端IDE工具:Sublime、Atom、VSCode比较
  19. 软件工程(软件维护)
  20. QT入门学习(一):什么是QT

热门文章

  1. node koa2 mysql_Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站
  2. 电子发票中数字签名的提取解析教程
  3. 微pe工具箱 系统安装教程_微PE工具箱《U盘给电脑装GHOST系统》教程
  4. 数据结构PTA期末复习题集
  5. java三大框架介绍
  6. 扫雷游戏网页版_梦幻西游出网页版,王者出新英雄阿古朵,谁在杀死国产游戏的创新...
  7. R语言从入门到精通Day2之【R语言软件下载与安装】
  8. 禅智听书《精进:如何成为一个很厉害的人》
  9. 快速下载谷歌云盘大文件的5种方法
  10. python实现自动打电话软件_电销自动打电话app