├── static ├── nopic.jpg ├── favicon.ico ├── player.swf ├── apple-touch-icon.png ├── style.css └── music.js ├── .editorconfig ├── LICENSE ├── index.php ├── README.md ├── template └── index.php └── core ├── Curl.php └── music.php /static/nopic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YiuChoi/music/master/static/nopic.jpg -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YiuChoi/music/master/static/favicon.ico -------------------------------------------------------------------------------- /static/player.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YiuChoi/music/master/static/player.swf -------------------------------------------------------------------------------- /static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YiuChoi/music/master/static/apple-touch-icon.png -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | charset = utf-8 7 | indent_style = space 8 | indent_size = 4 9 | end_of_line = lf 10 | insert_final_newline = true 11 | trim_trailing_whitespace = true 12 | 13 | [*.md] 14 | insert_final_newline = false 15 | trim_trailing_whitespace = false 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Maicong 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | 7 | * @link https://github.com/maicong/music 8 | * @since 1.2.6 9 | * 10 | */ 11 | 12 | define('MC_CORE', true); 13 | 14 | define('MC_VERSION', '1.2.6'); 15 | 16 | // SoundCloud 客户端 ID,如果失效请更改 17 | define('MC_SC_CLIENT_ID', '2t9loNQH90kzJcsFCODdigxfp325aq4z'); 18 | 19 | // Curl 代理地址,解决翻墙问题。例如:define('MC_PROXY', 'http://10.10.10.10:8123'); 20 | define('MC_PROXY', false); 21 | 22 | // 核心文件目录; 23 | define('MC_CORE_DIR', __DIR__.'/core'); 24 | 25 | // 模版文件目录; 26 | define('MC_TPL_DIR', __DIR__.'/template'); 27 | 28 | // PHP 版本判断 29 | if (version_compare(phpversion(), '5.4', '<')) { 30 | echo sprintf( 31 | '
您的 PHP 版本低于最低要求 5.4,当前版本为 %s', 32 | phpversion() 33 | ); 34 | exit; 35 | } 36 | 37 | // 支持的网站 38 | $music_type_list = array( 39 | 'netease' => '网易', 40 | 'qq' => 'QQ', 41 | 'kugou' => '酷狗', 42 | 'kuwo' => '酷我', 43 | 'xiami' => '虾米', 44 | 'baidu' => '百度', 45 | '1ting' => '一听', 46 | 'migu' => '咪咕', 47 | 'lizhi' => '荔枝', 48 | 'qingting' => '蜻蜓', 49 | 'ximalaya' => '喜马拉雅', 50 | '5sing' => '5sing', 51 | 'soundcloud' => 'SoundCloud' 52 | ); 53 | 54 | require_once(MC_CORE_DIR.'/music.php'); 55 | 56 | if (server('HTTP_X_REQUESTED_WITH') === 'XMLHttpRequest') { 57 | $music_input = trim(post('music_input')); 58 | $music_filter = post('music_filter'); 59 | $music_type = post('music_type'); 60 | $music_valid_patterns = array( 61 | 'name' => '/^.+$/i', 62 | 'id' => '/^[\w\/\|]+$/i', 63 | 'url' => '/^https?:\/\/\S+$/i' 64 | ); 65 | 66 | if (!$music_input || !$music_filter || !$music_type) { 67 | response('', 403, '(°ー°〃) 传入的数据不对啊'); 68 | } 69 | 70 | if ($music_filter !== 'url' && !in_array($music_type, array_keys($music_type_list), true)) { 71 | response('', 403, '(°ー°〃) 目前还不支持这个网站'); 72 | } 73 | 74 | if (!preg_match($music_valid_patterns[$music_filter], $music_input)) { 75 | response('', 403, '(・-・*) 请检查您的输入是否正确'); 76 | } 77 | 78 | switch ($music_filter) { 79 | case 'name': 80 | $music_response = maicong_get_song_by_name($music_input, $music_type); 81 | break; 82 | case 'id': 83 | $music_response = maicong_get_song_by_id($music_input, $music_type); 84 | break; 85 | case 'url': 86 | $music_response = maicong_get_song_by_url($music_input); 87 | break; 88 | } 89 | 90 | if (empty($music_response)) { 91 | response('', 404, 'ㄟ( ▔, ▔ )ㄏ 没有找到相关信息'); 92 | } 93 | 94 | response($music_response, 200, ''); 95 | } 96 | 97 | include_once(MC_TPL_DIR.'/index.php'); 98 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 麦葱特制多站合一音乐搜索解决方案 2 | 3 | ## (๑•̀ㅂ•́)و✧ 4 | 5 | 目前支持搜索试听以下网站音乐: 6 | 7 | > [网易云音乐](http://music.163.com/) 8 | > [QQ 音乐](http://y.qq.com/) 9 | > [酷狗音乐](http://www.kugou.com/) 10 | > [酷我音乐](http://www.kuwo.cn/) 11 | > [虾米音乐](http://www.xiami.com/) 12 | > [百度音乐](http://music.baidu.com/) 13 | > [一听音乐](http://www.1ting.com/) 14 | > [咪咕音乐](http://music.migu.cn/) 15 | > [荔枝 FM](http://www.lizhi.fm/) 16 | > [蜻蜓 FM](http://www.qingting.fm/) 17 | > [喜马拉雅 FM](http://www.ximalaya.com/) 18 | > [5sing 原创音乐](http://5sing.kugou.com/) 19 | > [SoundCloud](https://soundcloud.com/) 20 | 21 | 数据调用的是各音频网站 JSON 接口! 22 | 23 | 问我怎么来的?噗,抓包发现的。。。 24 | 25 | 有的接口并不是开放的 API 接口,随时可能失效,所以本项目相关代码仅供参考。 26 | 27 | [点击下载源代码](https://github.com/maicong/music/archive/master.zip) 28 | 29 | ## Demo / 演示 30 | 31 | [http://music.2333.me/](http://music.2333.me/ "音乐搜索器") 32 | 33 | 如果获取失败什么的,可以到 [我的博客](https://maicong.me/msg) 留言告诉我。 34 | 35 | ## Changelog / 更新日志 36 | 37 | - 2017.08.03 `v1.2.6` 更新页脚和注释 38 | - 2017.08.03 `v1.2.6` 增加低版本提示,优化 蜻蜓 FM 的 songid 代码 39 | - 2017.08.01 `v1.2.5` 增加对 喜马拉雅 FM 的支持,修复 url 无法获取问题 40 | - 2017.07.26 `v1.2.4` 优化代码兼容性 41 | - 2017.07.24 `v1.2.3` 优化目录结构和模版 42 | - 2017.07.20 `v1.2.2` 优化回调代码 43 | - 2017.07.20 `v1.2.1` 更新正则匹配规则 44 | - 2017.07.19 `v1.2.0` 修复正则表达式问题 45 | - 2017.07.19 `v1.1.9` 增加对蜻蜓 FM 的支持 (resolve [#6](https://github.com/maicong/music/issues/6)) 46 | - 2017.07.10 `v1.1.8` 修复 api 请求接口问题 47 | - 2017.07.05 `v1.1.7` 增加对 荔枝 FM 的支持 48 | - 2017.06.26 `v1.1.6` 修复数组写法兼容性 49 | - 2017.05.19 `v1.1.5` 修复 网易云音乐 音乐链接失效问题 50 | - 2017.04.28 `v1.1.4` 更新 QQ 音乐 API 接口,优化代码 51 | - 2017.04.21 `v1.1.3` 优化代码和播放器视觉 52 | - 2017.04.20 `v1.1.2` 更新音乐地址匹配规则 53 | - 2017.03.24 `v1.1.1` 移除对天天动听的支持,修复无法获取咪咕音乐的问题,更新 SoundCloud client_id 54 | - 2017.03.23 `v1.1.0` 更新外链资源地址,优化代码 55 | - 2015.06.15 `v1.0.4` 增加对 SoundCloud 的支持,增加代理支持,修复音乐名称识别问题,优化代码 56 | - 2015.06.13 `v1.0.3` 增加对 天天动听、咪咕 的支持 57 | - 2015.06.12 `v1.0.2` 增加对 5sing 的支持 (开源发布) 58 | - 2015.06.12 `v1.0.1` 代码优化 + BUG修复 59 | - 2015.06.10 `v1.0.0` 音乐搜索器上线 60 | 61 | ## Help / 数据获取失败解决方案 62 | 63 | 方案1: 64 | 65 | ``` 66 | 修改 index.php 文件里的 MC_PROXY 为您的代理地址 67 | 将 core/music.php 里需要代理的 URL 'proxy' => false 改为 'proxy' => true 68 | ``` 69 | 70 | 方案2: 71 | 72 | ``` 73 | 在 music.php 里查找 setTimeout,将其后面的数值 20 改为更大。 74 | 在 static/music.js 里查找 data: post_data,将其上面的数值 30000 改为更大。 75 | ``` 76 | 77 | 方案3: 78 | 79 | ``` 80 | 服务器要支持 curl。 81 | 更换服务器,选择延迟更低的服务器。 82 | ``` 83 | 84 | ## License / 开源协议 85 | 86 | ``` 87 | The MIT License (MIT) 88 | 89 | Copyright (c) 2015 Maicong 90 | 91 | Permission is hereby granted, free of charge, to any person obtaining a copy 92 | of this software and associated documentation files (the "Software"), to deal 93 | in the Software without restriction, including without limitation the rights 94 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 95 | copies of the Software, and to permit persons to whom the Software is 96 | furnished to do so, subject to the following conditions: 97 | 98 | The above copyright notice and this permission notice shall be included in all 99 | copies or substantial portions of the Software. 100 | 101 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 102 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 103 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 104 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 105 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 106 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 107 | SOFTWARE. 108 | ``` 109 | -------------------------------------------------------------------------------- /static/style.css: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * 音乐搜索器 - CSS 文件 4 | * 5 | * @author MaiCong 6 | * @link https://github.com/maicong/music 7 | * @since 1.1.9 8 | * 9 | */ 10 | 11 | html { 12 | font-family: -apple-system, BlinkMacSystemFont, "San Francisco", 13 | "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", "WenQuanYi Micro Hei", 14 | "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", 15 | "Droid Sans", "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif, 16 | "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 17 | height: 100%; 18 | -webkit-text-size-adjust: 100%; 19 | -moz-text-size-adjust: 100%; 20 | -ms-text-size-adjust: 100%; 21 | text-size-adjust: 100%; 22 | } 23 | body { 24 | margin: 0; 25 | -webkit-tap-highlight-color: transparent; 26 | -webkit-font-smoothing: subpixel-antialiased; 27 | } 28 | a { 29 | -webkit-transition: all .3s; 30 | -moz-transition: all .3s; 31 | -ms-transition: all .3s; 32 | -o-transition: all .3s; 33 | transition: all .3s; 34 | } 35 | .about { 36 | background: #fff; 37 | color: #7f8c8d; 38 | height: 100%; 39 | min-height: 500px; 40 | } 41 | .about-color { 42 | color: #34495e; 43 | } 44 | .about-title { 45 | font-size: 180%; 46 | text-align: center; 47 | } 48 | .main { 49 | margin: 60px 0; 50 | } 51 | .am-alert { 52 | display: none; 53 | } 54 | .music-tabs > li > a { 55 | padding: 0.5em 1em; 56 | cursor: pointer; 57 | } 58 | .music-tips { 59 | line-height: 1.5; 60 | overflow: hidden; 61 | } 62 | .music-tips .more { 63 | height: 30px; 64 | line-height: 30px; 65 | text-align: center; 66 | font-size: 14px; 67 | color: #666; 68 | background: #eee; 69 | cursor: pointer; 70 | } 71 | .music-tips blockquote { 72 | font-family: Menlo, Monaco, Consolas, "Courier New", monospace; 73 | font-size: 13px; 74 | } 75 | .music-tips p:nth-child(5) ~ p { 76 | display: none; 77 | } 78 | .music-tips p span { 79 | display: inline-block; 80 | min-width: 50px; 81 | } 82 | .music-tips p b { 83 | font-weight: 500; 84 | color: #c7254e; 85 | } 86 | .music-main { 87 | display: none; 88 | } 89 | .music-main input { 90 | text-overflow: ellipsis; 91 | } 92 | .music-main input:focus, 93 | .music-main input:hover { 94 | background: #eee; 95 | border-color: #ccc; 96 | color: #222; 97 | } 98 | .music-type .am-radio-inline, 99 | .music-type label { 100 | color: #7f8c8d; 101 | } 102 | .music-type .am-icon-unchecked, 103 | .music-type .am-icon-checked { 104 | color: #0e90d2; 105 | } 106 | .mejs-container { 107 | min-width: 100%; 108 | } 109 | .am-popup-bd { 110 | height: 100%; 111 | } 112 | .footer { 113 | position: relative; 114 | left: 0; 115 | bottom: 0; 116 | width: 100%; 117 | overflow: hidden; 118 | } 119 | .footer p { 120 | color: #7f8c8d; 121 | margin: 0; 122 | padding: 15px; 123 | text-align: center; 124 | background: #2d3e50; 125 | } 126 | .footer p a { 127 | color: #7f8c8d; 128 | } 129 | .footer p a:hover { 130 | color: #bbb; 131 | } 132 | .audio-player { 133 | position: relative; 134 | width: 100%; 135 | background-color: #eee; 136 | border: 1px solid #ccc; 137 | } 138 | .audio-player .amazingaudioplayer-audios { 139 | display: none; 140 | } 141 | .audio-player .amazingaudioplayer-image { 142 | display: block; 143 | position: absolute; 144 | top: 8px; 145 | left: 12px; 146 | margin: 4px; 147 | width: 100px; 148 | height: 100px; 149 | overflow: hidden; 150 | background: #ddd; 151 | border: 1px solid #ddd; 152 | border-radius: 5px; 153 | } 154 | .audio-player .amazingaudioplayer-image img { 155 | max-width: 100%; 156 | height: auto; 157 | vertical-align: middle; 158 | } 159 | .audio-player .amazingaudioplayer-text { 160 | display: block; 161 | position: relative; 162 | top: 12px; 163 | padding: 0 12px 0 136px; 164 | overflow: hidden; 165 | } 166 | .audio-player .amazingaudioplayer-title { 167 | display: block; 168 | color: #333; 169 | font-size: 16px; 170 | min-height: 26px; 171 | white-space: nowrap; 172 | text-overflow: ellipsis; 173 | overflow: hidden; 174 | } 175 | .audio-player .amazingaudioplayer-info { 176 | display: block; 177 | color: #666; 178 | font-size: 12px; 179 | min-height: 20px; 180 | white-space: nowrap; 181 | text-overflow: ellipsis; 182 | overflow: hidden; 183 | } 184 | .audio-player .amazingaudioplayer-bar { 185 | position: relative; 186 | height: 135px; 187 | } 188 | .audio-player .amazingaudioplayer-icon { 189 | display: block; 190 | cursor: pointer; 191 | width: 32px; 192 | height: 32px; 193 | line-height: 32px; 194 | font-size: 12px; 195 | color: #888; 196 | text-align: center; 197 | background-color: #ccc; 198 | border: 1px solid #bbb; 199 | border-radius: 50%; 200 | transition: all .2s; 201 | -webkit-transition: all .2s; 202 | -moz-transition: all .2s; 203 | -ms-transition: all .2s; 204 | -o-transition: all .2s; 205 | -webkit-user-select: none; 206 | -moz-user-select: none; 207 | user-select: none; 208 | } 209 | .audio-player .amazingaudioplayer-icon:hover, 210 | .audio-player .amazingaudioplayer-icon:active { 211 | color: #555; 212 | transition: all .2s; 213 | -webkit-transition: all .2s; 214 | -moz-transition: all .2s; 215 | -ms-transition: all .2s; 216 | -o-transition: all .2s; 217 | } 218 | .audio-player .amazingaudioplayer-bar .display-block { 219 | color: #666; 220 | } 221 | .audio-player .amazingaudioplayer-playpause { 222 | position: absolute; 223 | left: 175px; 224 | top: 32px; 225 | } 226 | .audio-player .amazingaudioplayer-play { 227 | position: relative; 228 | } 229 | .audio-player .amazingaudioplayer-pause { 230 | position: relative; 231 | } 232 | .audio-player .amazingaudioplayer-prev { 233 | position: absolute; 234 | left: 135px; 235 | top: 32px; 236 | } 237 | .audio-player .amazingaudioplayer-next { 238 | position: absolute; 239 | left: 215px; 240 | top: 32px; 241 | } 242 | .audio-player .amazingaudioplayer-loop { 243 | position: absolute; 244 | top: 32px; 245 | right: 12px; 246 | } 247 | .audio-player .amazingaudioplayer-volume { 248 | position: absolute; 249 | top: 32px; 250 | right: 53px; 251 | } 252 | .audio-player .amazingaudioplayer-volume:hover .amazingaudioplayer-icon { 253 | color: #555; 254 | } 255 | .audio-player .amazingaudioplayer-progress { 256 | display: block; 257 | position: absolute; 258 | left: 12px; 259 | right: 12px; 260 | top: 100px; 261 | height: 8px; 262 | margin: 8px 4px; 263 | background-color: #e5e5e5; 264 | cursor: pointer; 265 | overflow: hidden; 266 | } 267 | .audio-player .amazingaudioplayer-progress-loaded { 268 | display: block; 269 | position: absolute; 270 | left: 0; 271 | top: 0; 272 | height: 100%; 273 | background-color: #ccc; 274 | border-radius: 4px; 275 | } 276 | .audio-player .amazingaudioplayer-progress-played { 277 | display: block; 278 | position: absolute; 279 | left: 0; 280 | top: 0; 281 | height: 100%; 282 | background-color: #999; 283 | border-radius: 4px; 284 | } 285 | .audio-player .amazingaudioplayer-time { 286 | position: relative; 287 | top: 80px; 288 | left: 12px; 289 | color: #555; 290 | font-size: 12px; 291 | line-height: 24px; 292 | margin: 0 4px; 293 | } 294 | .audio-player .amazingaudioplayer-volume-bar { 295 | display: none; 296 | position: absolute; 297 | left: 3px; 298 | bottom: 100%; 299 | width: 8px; 300 | height: 35px; 301 | padding: 8px; 302 | margin-bottom: 5px; 303 | background-color: #ccc; 304 | border: 1px solid #bbb; 305 | border-radius: 4px; 306 | -webkit-box-sizing: content-box; 307 | -moz-box-sizing: content-box; 308 | box-sizing: content-box; 309 | -webkit-user-select: none; 310 | -moz-user-select: none; 311 | user-select: none; 312 | } 313 | .audio-player .amazingaudioplayer-volume-bar-adjust { 314 | position: relative; 315 | display: block; 316 | width: 100%; 317 | height: 100%; 318 | cursor: pointer; 319 | background-color: #aaa; 320 | } 321 | .audio-player .amazingaudioplayer-volume-bar-adjust-active { 322 | position: absolute; 323 | display: block; 324 | left: 0; 325 | bottom: 0; 326 | width: 100%; 327 | height: 60%; 328 | background-color: #555; 329 | } 330 | .audio-player .amazingaudioplayer-tracklist { 331 | display: block; 332 | width: 100%; 333 | } 334 | .audio-player .amazingaudioplayer-tracklist-container { 335 | display: block; 336 | position: relative; 337 | padding: 12px; 338 | border-top: 1px solid #ccc; 339 | } 340 | .audio-player .amazingaudioplayer-tracks-wrapper { 341 | position: relative; 342 | overflow: hidden; 343 | } 344 | .audio-player .amazingaudioplayer-tracks { 345 | display: block; 346 | position: relative; 347 | list-style-type: none; 348 | margin: 0; 349 | padding: 0; 350 | } 351 | .audio-player .amazingaudioplayer-track-item { 352 | position: relative; 353 | cursor: pointer; 354 | white-space: nowrap; 355 | color: #555; 356 | font-size: 12px; 357 | line-height: 20px; 358 | padding-right: 35%; 359 | text-overflow: ellipsis; 360 | overflow: hidden; 361 | } 362 | .audio-player .amazingaudioplayer-track-item span { 363 | position: absolute; 364 | top: 0; 365 | right: 0; 366 | max-width: 30%; 367 | text-overflow: ellipsis; 368 | overflow: hidden; 369 | } 370 | .audio-player .amazingaudioplayer-track-item-active { 371 | font-weight: 700; 372 | } 373 | .audio-player .amazingaudioplayer-track-item-duration { 374 | position: absolute; 375 | top: 0; 376 | right: 0; 377 | } 378 | .audio-player .display-none { 379 | display: none; 380 | } 381 | .audio-player .display-block { 382 | display: block; 383 | } 384 | -------------------------------------------------------------------------------- /template/index.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 |
麦葱特制多站合一音乐搜索解决方案
57 |123 | 标红 为 音乐 ID,下划线 表示 音乐地址 124 |
125 |126 |128 |蜻蜓 FM 的 音乐 ID 需要使用
127 || (管道符)组合,例如158696|5266259
129 | 网易:http://music.163.com/#/song?id=25906124 130 |
131 |132 | QQ:http://y.qq.com/n/yqq/song/002B2EAA3brD5b.html 133 |
134 |135 | 酷狗:http://m.kugou.com/play/info/08228af3cb404e8a4e7e9871bf543ff6 136 |
137 |138 | 酷我:http://www.kuwo.cn/yinyue/382425/ 139 |
140 |141 | 虾米:http://www.xiami.com/song/2113248 142 |
143 |144 | 百度:http://music.baidu.com/song/556113 145 |
146 |147 | 一听:http://www.1ting.com/player/b6/player_220513.html 148 |
149 |150 | 咪咕:http://music.migu.cn/#/song/1002531572/P7Z1Y1L1N1/3/001002C 151 |
152 |153 | 荔枝:http://www.lizhi.fm/1947925/2498707770886461446 154 |
155 |156 | 蜻蜓:http://www.qingting.fm/channels/158696/programs/5266259 157 |
158 |159 | 喜马拉雅:http://www.ximalaya.com/51701370/sound/24755731 160 |
161 |162 | 5sing:http://5sing.kugou.com/yc/1089684.html 163 |
164 |165 | SoundCloud (ID):soundcloud://sounds:197401418 (请查看源码) 166 |
167 |168 | SoundCloud (地址):https://soundcloud.com/user2953945/tr-n-d-ch-t-n-eason-chan-kh-ng 169 |
170 |本站音频文件来自各网站接口,本站不会修改任何音频文件
182 |音频版权来自各网站,本站只提供数据查询服务,不提供任何音频存储和贩卖服务
183 |