QQ音乐API整理

最近准备用vue做个音乐播放器,网上找了找音乐API,看了一圈,还是QQ音乐最合适,这里做个整理

这篇博客已经过时了,下面的不用看了。。。。

歌曲搜索

接口地址

var num = 3,
    name = '王菲',
    urlString = `http://s.music.qq.com/fcgi-bin/music_search_new_platform?t=0&n=${num}&aggr=1&cr=1&loginUin=0&format=json&inCharset=GB2312&outCharset=utf-8&notice=0&platform=jqminiframe.json&needNewCode=0&p=1&catZhida=0&remoteplace=sizer.newclient.next_song&w=${name}`;

调用

//用了个PHP代理解决跨域问题
$.post("proxy.php", {
        urlString
      }, function(data) {
        data = JSON.parse(data)
        data['data']['song']['list'].forEach(
          e => console.log(e['f'])
        )
      })
<?php
$url=$_POST['urlString'];
$res = file_get_contents($url);
echo $res;
?>

注释

num:请求搜索的数量

name:搜索的关键词

歌曲榜单

接口地址

// 新歌榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_newsong.js
// 总榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_all.js

调用

$.ajax({
  type: "get",
  async: false,
  url: "http://music.qq.com/musicbox/shop/v3/data/hit/hit_newsong.js",
  dataType: "jsonp",
  jsonp: "callback",
  jsonpCallback: "JsonCallback",
  scriptCharset: 'GBK',//设置编码,否则会乱码
  success: function(data) {
    console.log(JSON.stringify(data))
  },
  error: function() {
    alert('fail');
  }
});

注释

主要获取的是id(歌曲id)、albumId(图片id)

歌曲地址

接口地址

var id = 101369814,
    src = `http://ws.stream.qqmusic.qq.com/${id}.m4a?fromtag=46`

调用

<audio src="http://ws.stream.qqmusic.qq.com/101369814.m4a?fromtag=46" controls></audio>

注释

没啥好说的。。

歌词地址

接口地址

var id = 101369814,
    txt = `http://music.qq.com/miniportal/static/lyric/${id%100}/${id}.xml`;

调用

//用了个PHP代理解决跨域问题
$.post("proxy.php", {
        txt
      }, function(data) {
        console.log(data)
      })
<?php
$url=$_POST['txt'];
$res = file_get_contents($url);
$s = iconv('gbk','UTF-8',$res);//大坑,一是转编码,二是不能直接iconv输出,得有个变量转接
echo $s;
?>

注释

没啥说的

歌曲图片

接口地址

var image_id = 140820,
    width = 300,
    pic = `http://imgcache.qq.com/music/photo/album_${width}/${image_id%100}/${width}_albumpic_${image_id}_0.jpg`;

调用

<img src="http://imgcache.qq.com/music/photo/album_300/20/300_albumpic_140820_0.jpg" alt="">

注释

image_id:图片id

width:图片尺寸

 

转载地址:https://segmentfault.com/a/1190000007685830

<think>好的,用户想查找与QQ音乐相关的资源或信息,特别是下载使用教程或相关API文档。我需要根据提供的引用内容来整理回答。 首先,引用1提到QQ音乐API的项目地址,使用koa2实现,可能用户需要API的源码或部署方法。引用2说明这是由Rain120开发的开源项目,用于访问QQ音乐资源,比如搜索、播放、下载,这应该能解答API的用途和快速启动方法。引用3提到了歌曲解析API的请求参数,包括api_key和链接,这对具体接口调用有帮助。引用4则是一个Java相关的项目,使用nodejs和koa2,部署到服务器,可能涉及Docker和持续集成,这对开发者来说可能有帮助。 用户的问题分为两部分:下载使用教程和相关API文档。需要将引用中的信息分门别类,整理出教程和API文档的资源。同时,注意引用中的项目地址和说明,可能需要直接给出链接,并说明每个资源的特点,比如开源项目、接口参数等。 另外,需要检查是否有遗漏的信息,比如是否有其他引用内容没被利用。目前四个引用都围绕QQ音乐API,可能没有直接提到官方教程,所以主要依赖这些开源项目的信息。需要指出这些是第三方资源,非官方,但提供了API的实现方法。 最后,生成相关问题时要围绕QQ音乐API的使用、部署、参数等,可能的问题包括如何部署API服务、如何获取API密钥、支持的搜索功能等。</think>### QQ音乐相关资源与API文档整理 #### 1. QQ音乐API开源项目 QQ音乐API是一个第三方开源工具,由开发者Rain120基于Node.js和Koa2框架实现,提供歌曲搜索、播放链接解析、歌词获取等功能[^2][^4]。 - **项目地址**:https://gitcode.com/gh_mirrors/qq/qq-music-api - **功能特点**: - 支持通过API_KEY鉴权调用[^3] - 解析QQ音乐歌曲链接,返回播放地址、歌词、专辑封面等信息 - 提供Docker部署和持续集成支持 #### 2. API快速启动教程 **环境准备**:需安装Node.js、Docker(可选) **接口调用示例**: ```python # 示例:解析歌曲链接 import requests api_key = "YOUR_API_KEY" link = "https://y.qq.com/n/ryqq/songDetail/004Z8Ihr0JIu5s" response = requests.get(f"https://api.example.com/song?api_key={api_key}&link={link}") print(response.json()) # 返回歌曲元数据 ``` #### 3. 下载与使用场景 - **歌曲下载**:通过API获取播放链接后,可结合流媒体下载工具实现(需注意版权限制) - **集成场景**:适用于音乐类App、歌词显示插件、歌单分析工具等[^2] #### 4. 注意事项 - 该项目为非官方接口,稳定性依赖第三方维护[^1] - 需遵守QQ音乐版权政策,禁止商用侵权
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值