一个功能完整的网易云音乐 API PHP 实现,支持获取音乐播放链接、歌曲详情、歌词、搜索、歌单和专辑信息等功能。
- 🎵 音乐播放链接获取 - 支持多种音质(标准、高品质、无损、Hi-Res等)
- 🔍 音乐搜索 - 支持关键词搜索歌曲
- 📝 歌词获取 - 支持普通歌词、翻译歌词、罗马音歌词
- 📀 歌曲详情 - 获取歌曲完整信息
- 📋 歌单解析 - 获取歌单详情及所有歌曲列表
- 💿 专辑解析 - 获取专辑详情及所有歌曲列表
- 🍪 Cookie 支持 - 支持登录状态获取更多权限
- 🔐 加密请求 - 使用网易云官方加密算法
- PHP 7.0 或更高版本
- cURL 扩展
- OpenSSL 扩展
git clone https://github.com/Suxiaoqinx/Neteaseflc_php.git
cd Neteaseflc_php创建 cookie.txt 文件并添加你的网易云音乐 Cookie:
MUSIC_U=......;os=pc;appver=8.9.75; ...
<?php
require_once 'getMusicapi.php';
// 创建 API 实例
$api = new NeteaseMusicAPI();
// 加载 Cookie(可选)
$cookies = $api->loadCookieFromFile('cookie.txt');
// 获取音乐播放链接
$musicUrl = $api->getMusicUrl('1315196858', 'standard', $cookies);
echo json_encode($musicUrl, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
?>$api = new NeteaseMusicAPI($cookies = []);$result = $api->getMusicUrl($id, $level = 'standard', $cookies = []);参数:
$id(string|array): 歌曲ID,支持单个ID或多个ID数组$level(string): 音质等级standard: 标准音质exhigh: 极高音质lossless: 无损音质hires: Hi-Res音质jyeffect: 高清环绕声sky: 沉浸环绕声jymaster: 超清母带
$cookies(array): Cookie数组
示例:
// 单个歌曲
$result = $api->getMusicUrl('1315196858', 'lossless', $cookies);
// 多个歌曲
$result = $api->getMusicUrl(['1315196858', '119667185'], 'standard', $cookies);$result = $api->getSearchMusic($keywords, $limit = 10, $offset = 0, $cookies = []);参数:
$keywords(string): 搜索关键词$limit(int): 每页数量$offset(int): 偏移量$cookies(array): Cookie数组
$result = $api->getSongDetail($id, $cookies = []);$result = $api->getLyric($id, $cookies = []);$result = $api->getPlaylistDetail($playlistId, $cookies = []);$result = $api->getAlbumDetail($albumId, $cookies = []);// 从文件加载 Cookie
$cookies = $api->loadCookieFromFile('cookie.txt');
// 设置 Cookie
$api->setCookies($cookies);
// 获取当前 Cookie
$currentCookies = $api->getCookies();Neteaseflc_php/
├── getMusicapi.php # 核心 API 类
├── getMusicUrl.php # 获取音乐链接示例
├── getSearchMusic.php # 搜索音乐示例
├── getSongDetail.php # 获取歌曲详情示例
├── getLyric.php # 获取歌词示例
├── getPlaylistDetail.php # 获取歌单详情示例
├── getAlbumDetail.php # 获取专辑详情示例
├── cookie.txt # Cookie 配置文件
└── README.md # 项目说明文档
<?php
require_once 'getMusicapi.php';
$api = new NeteaseMusicAPI();
$cookies = $api->loadCookieFromFile('cookie.txt');
// 获取无损音质
$result = $api->getMusicUrl('1315196858', 'lossless', $cookies);
foreach ($result['data'] as $song) {
echo "歌曲ID: " . $song['id'] . "\n";
echo "播放链接: " . $song['url'] . "\n";
echo "音质: " . $song['level'] . "\n";
echo "比特率: " . $song['br'] . "\n";
echo "文件大小: " . $song['size'] . "\n";
}
?><?php
require_once 'getMusicapi.php';
$api = new NeteaseMusicAPI();
$cookies = $api->loadCookieFromFile('cookie.txt');
$result = $api->getSearchMusic('薛之谦', 20, 0, $cookies);
echo "搜索结果总数: " . $result['total'] . "\n";
foreach ($result['songs'] as $song) {
echo "歌曲: " . $song['name'] . " - " . $song['artists'] . "\n";
echo "专辑: " . $song['album'] . "\n";
echo "ID: " . $song['id'] . "\n\n";
}
?><?php
require_once 'getMusicapi.php';
$api = new NeteaseMusicAPI();
$cookies = $api->loadCookieFromFile('cookie.txt');
$result = $api->getLyric('1315196858', $cookies);
echo "原文歌词:\n" . $result['lrc']['lyric'] . "\n";
echo "翻译歌词:\n" . $result['tlyric']['lyric'] . "\n";
?>- Cookie 获取:部分功能需要登录状态,请从浏览器开发者工具中获取 Cookie
- 请求频率:请合理控制请求频率,避免被服务器限制
- 版权声明:本项目仅供学习交流使用,请尊重音乐版权
- 稳定性:网易云音乐 API 可能会发生变化,如遇问题请及时更新
欢迎提交 Issue 和 Pull Request 来改进这个项目!
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- 苏晓晴 - www.toubiec.cn
感谢网易云音乐提供的优质音乐服务,本项目仅用于技术学习和交流。
⭐ 如果这个项目对你有帮助,请给它一个 Star!