哔哩哔哩点歌

先搜索获取歌曲列表,再根据序号获取对应歌曲链接

API 文档

  • 接口地址: https://apicx.asia/api/bilibili-audio
  • 返回格式: JOSN
  • 请求方式: GET
  • 请求示例: https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1

请求参数说明:

名称 必填 类型 说明
token string 登录获取token
wordstringword
pageintpage
nintn

返回参数说明:

名称 类型 说明
code integer 返回的状态码
data object 返回的数据/数据对象
msg string 返回的消息
time string 请求时间
data.codenumbercode
data.msgstringmsg
data.data.selected_nnumberselected_n
data.data.video_info.titlestringtitle
data.data.video_info.artiststringartist
data.data.video_info.duration_strstringduration_str
data.data.video_info.publish_datestringpublish_date
data.data.video_info.cover_urlstringcover_url
data.data.video_info.video_urlstringvideo_url
data.data.audio_m4s_download_urlstringaudio_m4s_download_url
data.data.suggested_filenamestringsuggested_filename
data.data.suggested_mp3_filenamestringsuggested_mp3_filename
data.data.proxy_domainstringproxy_domain
data.data.usage_tips[]stringusage_tips

返回示例:

{
  "code": 200,
  "msg": "操作成功!",
  "time": "2026-01-08 20:22:35",
  "api_source": "API官网:apicx.asia",
  "data": {
    "code": 2,
    "msg": "音频链接获取成功",
    "data": {
      "selected_n": 1,
      "video_info": {
        "title": "【神专】|《范特西》|歌单分享|歌曲推荐|40min",
        "artist": "Mu_yIE",
        "duration_str": "39:30",
        "publish_date": "2026-01-08",
        "cover_url": "https://i0.hdslb.com/bfs/archive/20a8b935e5957ed1c86559461938b56a0b935f72.jpg",
        "video_url": "https://www.bilibili.com/video/BV1n1iSBaEJE"
      },
      "audio_m4s_download_url": "https://music-proxy.gdstudio.org/https://upos-sz-mirrorcosov.bilivideo.com/upgcxcode/13/31/35256403113/35256403113-1-30216.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&platform=pc&gen=playurlv3&os=cosovbv&og=hw&trid=a807f89597d44784aa24cbc0ae9ecacu&nbs=1&oi=2598247074&mid=0&deadline=1767882155&uipk=5&upsig=1b977cf0a0238d3560a040ee0211b7b4&uparams=e,platform,gen,os,og,trid,nbs,oi,mid,deadline,uipk&bvc=vod&nettype=0&bw=65600&qn_dyeid=6edae188ea0457f700276f05695fa18b&agrr=0&buvid=&build=0&dl=0&f=u_0_0&orderid=0,2",
      "suggested_filename": "Mu_yIE - 【神专】|《范特西》|歌单分享|歌曲推荐|40min.m4s",
      "suggested_mp3_filename": "Mu_yIE - 【神专】|《范特西》|歌单分享|歌曲推荐|40min.mp3",
      "proxy_domain": "https://music-proxy.gdstudio.org",
      "usage_tips": [
        "直接下载后,QQ音乐/网易云音乐/酷狗音乐打开(大部分能识别)",
        "若无法播放,推荐使用 VLC 播放器打开",
        "本质是 M4S 原生数据,仅修改后缀(比如下载文件.m4s替换.mp3),无音质损失"
      ]
    }
  },
  "cached_time": "2026-01-08 20:22:35"
}

错误码格式说明:

名称 类型 说明
200 string 返回状态码(成功)
500 string 返回的状态码(失败)

代码示例:


<?php
// 初始化cURL会话
$ch = curl_init();
// 设置请求URL,用户中心获取token,自行替换其他参数
curl_setopt($ch, CURLOPT_URL, "https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1");
// 设置请求头
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: YOUR_TOKEN'
));
// 返回响应而不是直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 执行请求并获取响应
$response = curl_exec($ch);
// 关闭cURL会话
curl_close($ch);
// 将响应解析为JSON格式
$data = json_decode($response, true);
// 输出JSON数据
print_r($data);
?>
            

import requests

# 设置请求URL和头部,用户中心获取token,自行替换其他参数
url = "https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1"
headers = {
    'Authorization': 'YOUR_TOKEN'
}

# 发送GET请求
response = requests.get(url, headers=headers)
# 将响应解析为JSON格式
data = response.json()
# 输出JSON数据
print(data)
            

// 发送GET请求,用户中心获取token,自行替换其他参数
fetch("https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1", {
    method: "GET",
    headers: {
        "Authorization": "YOUR_TOKEN"
    }
})
.then(response => response.json()) // 将响应解析为JSON格式
.then(data => console.log(data)) // 输出JSON数据
.catch(error => console.error('Error:', error));
            

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;

public class Main {
    public static void main(String[] args) throws Exception {
        // 创建URL对象,用户中心获取token,自行替换其他参数
        URL url = new URL("https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1");
        // 打开连接
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        // 设置请求方法
        conn.setRequestMethod("GET");
        // 设置请求头
        conn.setRequestProperty("Authorization", "YOUR_TOKEN");

        // 读取响应
        BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String inputLine;
        StringBuffer content = new StringBuffer();
        while ((inputLine = in.readLine()) != null) {
            content.append(inputLine);
        }
        in.close();
        // 输出JSON数据
        System.out.println(content.toString());
    }
}
            

using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        using (HttpClient client = new HttpClient()) {
            // 设置请求头
            client.DefaultRequestHeaders.Add("Authorization", "YOUR_TOKEN");
            // 发送GET请求,用户中心获取token,自行替换其他参数
            HttpResponseMessage response = await client.GetAsync("https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1");
            // 将响应解析为字符串
            string responseBody = await response.Content.ReadAsStringAsync();
            // 输出JSON数据
            Console.WriteLine(responseBody);
        }
    }
}
            

require 'net/http'
require 'uri'

# 创建URI对象,用户中心获取token,自行替换其他参数
uri = URI.parse("https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1")
# 创建GET请求
request = Net::HTTP::Get.new(uri)
# 设置请求头
request["Authorization"] = "YOUR_TOKEN"

# 发送请求并获取响应
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
  http.request(request)
end

# 输出JSON数据
puts response.body
            

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    client := &http.Client{}
    // 创建GET请求,用户中心获取token,自行替换其他参数
    req, err := http.NewRequest("GET", "https://apicx.asia/api/bilibili-audio?word=周杰伦&page=1&n=1", nil)
    if err != nil {
        panic(err)
    }
    // 设置请求头
    req.Header.Add("Authorization", "YOUR_TOKEN")

    // 发送请求并获取响应
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    // 读取响应体
    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }
    // 输出JSON数据
    fmt.Println(string(body))
}