`
gegewu0825
  • 浏览: 47543 次
社区版块
存档分类
最新评论

使用虾米音乐API 搜索音乐

阅读更多

效果图

 



 

 


使用get方法访问相关页面 返回json数组

 

 

<?php
/**
 * music search action
 * @name music_name
 * @page 
 */

$name=get_input('name','aa');
$name = urlencode($name);
$page=max(1,intval(get_input('page',1)));
$url="http:/"."/www.xiami.com/app/nineteen/search/key/$name/page/$page/size/1?random=1123132112132";
$file_contents = file_get_contents($url);
echo $file_contents;
exit;

  js处理

 

/**
*根据虾米 搜索音乐
*/
elgg.thewire.musicSearch = music_search;
	function music_search(){
        var music_name=$('#music_name');
        var pages=$('#music_page').val();
        if(pages == null){
            pages = 1;
        }
        if(music_name.val()==''){
            alert('请输入需要搜索的歌名');
            music_name.focus();
            return false;
        }
        $('#music_list').html('<span style="color:red"><img src="<?php echo elgg_get_site_url()?>images/loading.gif">正在检索,请稍等...</span>');
        $.ajax({
            type:'post',
            url:elgg.security.addToken('<?php echo elgg_get_site_url()?>action/music/search'),
            data:{name:music_name.val(),page:pages},
            success:function(d){
                //alert(d);
                //	return false;
                d= eval('('+d+')');
                var json=eval(d.results);
                if(json.length>0){
                    var totle = d.total;
                    var num = Math.ceil(totle/8);

                    var phtml = page_html(pages,num);
                    //var phtml='';
                    $('#music_list').html('<ul class="tagB" style="display:block"><div id="add_ajax_favorite_tags" class="music_end"></div><div>'+ phtml +'</div></ul>');

                    for(var i=0; i<json.length; i++)  {
                        json[i].song_name = decodeURIComponent(json[i].song_name).replace(/\+|'|"/g," ");
                        json[i].artist_name = decodeURIComponent(json[i].artist_name).replace(/\+|'|"/g," ");
                        var html='<span onclick="check_music('+json[i].song_id+',\''+decodeURI(json[i].artist_name)+'\',\''+decodeURI(json[i].song_name)+'\')" style="width:100%;cursor:pointer;" onmouseover="$(this).css(\'color\',\'red\');" onmouseout="$(this).css(\'color\',\'\');">'+decodeURI(json[i].song_name)+' ---  '+decodeURI(json[i].artist_name)+'</span>';
                        $('.music_end').append(html+'<br>');
                    }
                }else{
                    $('#music_list').html("未检索到符合条件的歌曲");
                }
            }
        });
};
/**
     * 制作虾米音乐的简单HTML分页代码 page:当前页 num:总页数
     */
    function page_html(page,num){
        page = parseInt(page);
        num = parseInt(num);

        var html = '';
        if(num < 2){
            return '';
        }
        if(page > 1){
            var fpage = page-1;
            html += '<span onclick="changepage('+ fpage +');" style="cursor:pointer;">上一页</span>';
        }
        if(page < num){
            var npage = page+1;
            html += '<span onclick="changepage('+ npage +');" style="cursor:pointer;">下一页</span>';
        }
        return html;
    }

    function changepage(page){
        $('#music_page').val(page);
        music_search();
    }

    //选择音乐
    function check_music(music_id,name,music_name){

        var content = music_name + '--' + name+' [music:'+music_id+']';
        //alert(content);
        var thewire=$('#thewire-textarea').val();
        if(thewire!=''){
            $('#thewire-textarea').val(thewire+content);
        }else{
            $('#thewire-textarea').val(content);
        }
        $("#music_show").hide();
    }


入库之后 查询匹配显示播放器

 

 

/**
 * 解析 音乐
 * @param type $text
 * @return type
 */
function parsemusic($text){
	$text=trim($text);
	$music_pattern='/(\[music:)(\d+)(\])/';
	$musci_html='<div class="feedUserImg"><embed width="257" height="33"wmode="transparent" type="application/x-shockwave-flash"src="http://www.xiami.com/widget/0_${2}/singlePlayer.swf"></embed></div>';
	$text= preg_replace($music_pattern,$musci_html,$text);
	return $text;
}
 

 

 

分享到:
评论

相关推荐

    虾米音乐API

    虾米音乐API是一个供开发者使用的接口,允许他们集成虾米音乐的功能到自己的应用程序或网站中。这个API的主要功能是搜索音乐,它支持实时同步显示搜索结果,并且用户可以直接通过搜索结果进行点播,提升了用户体验。...

    虾米音乐api调用源码

    虾米音乐API调用源码涉及的是通过编程接口与虾米音乐平台进行交互,实现对音乐资源的搜索、播放等功能。API(Application Programming Interface)是软件之间交互的一种方式,允许开发者利用特定的功能来构建自己的...

    虾米音乐嵌入自己的网站

    首先,我们需要了解如何使用虾米音乐的API。通常,这些API会提供搜索、播放、分页等关键功能。在描述中提到的“ajax搜索”意味着我们可以使用Ajax(异步JavaScript和XML)技术来实现实时搜索功能,用户无需刷新页面...

    jQuery+JSONP+artDialog 实现虾米音乐的检索、选取和播放

    在实现检索功能时,用户输入关键词后,jQuery会使用Ajax发送一个GET请求到虾米音乐的搜索API,API返回的JSONP数据包含匹配的音乐信息,如歌曲ID、歌名、歌手等。这些信息可以用来动态更新页面,展示搜索结果。 选取...

    PHP多站合一音乐搜索器源码 支持各大音乐平台API接口.rar

    PHP多站合一音乐搜索器源码 支持各大音乐平台API接口,根据音乐名称、歌手、ID、地址智能搜索,搜索音乐在线试听源码,无后台,上传访问即可使用。 支持音乐平台:网易云音乐 QQ音乐 酷狗音乐 酷我音乐 虾米音乐 ...

    音乐搜索器多站合一音乐搜索解决方案

    麦葱特制多站合一音乐搜索解决方案,支持搜索试听以下网站音乐:网易云音乐 QQ音乐 酷狗音乐 酷我音乐 虾米音乐 百度音乐 一听音乐 咪咕音乐 荔枝FM 蜻蜓FM 喜马拉雅FM 全民K歌 5sing原创 5sing翻唱

    jQuery虾米音乐播放器样式代码

    开发这样一个音乐播放器,除了前端技术,还需要一定的后端支持,如获取虾米音乐的API接口数据,实现歌曲的搜索、播放列表的获取等。同时,考虑到不同浏览器的兼容性和性能优化,开发者还需要关注代码的健壮性和效率...

    C# ASP.NET获取音乐信息(标题,地址,缩略图)

    var musicInfo = await GetMusicInfo("虾米音乐API接口URL"); var songs = JsonConvert.DeserializeObject&lt;List&lt;Song&gt;&gt;(musicInfo); return View(songs); } } ``` 在视图(View)层面,我们可以利用Razor语法来...

    Python-SDMusic多平台音乐搜索下载工具

    4. **虾米音乐**:阿里巴巴旗下的音乐服务,提供高音质音乐和个性化的推荐。 5. **一听音乐**:提供免费在线试听和下载,涵盖多种类型的音乐。 **支持的系统** SDMusic理论上可以在所有操作系统上运行,因为它基于...

    在线全网音乐搭建源码.zip

    这个播放器的独特之处在于它整合了多个主流音乐平台的资源,包括网易云音乐、QQ音乐和虾米音乐。无需数据库,用户可以直接下载并运行此应用,实现一站式音乐搜索和播放体验。 该源码的实现可能基于Web技术,如HTML...

    一款支持多平台音乐播放和搜索的移动音乐iOSAndroidApp

    它整合了多个主流音乐平台,包括网易云音乐、QQ音乐和虾米音乐,使得用户可以在一个应用内享受到多元化的音乐资源,无需在各个平台之间切换。这样的设计极大地提升了用户体验,简化了音乐欣赏的过程。 应用的核心...

    WordPress漂亮的音乐播放器插件Aplayer

    同时,其丰富的API接口使得开发者可以进一步扩展其功能,例如与评论系统集成,实现评论时自动播放相关歌曲。 总结起来,Aplayer是一款集美观、实用和可定制性于一体的WordPress音乐播放器插件。无论你是音乐爱好者...

    vb网页搜索音乐播放器源码

    3. 音乐搜索:实现音乐搜索功能,源码可能使用了特定的音乐搜索引擎API,如虾米音乐、网易云音乐等。开发者需要了解这些API的工作原理,以及如何通过VB调用它们,获取搜索结果。 4. JSON 解析:搜索结果通常以JSON...

    Android 数据抓取实现歌曲在线搜索

    在虾米音乐这样的平台上,官方通常会提供API供开发者使用,这时使用官方API会更加合适,既能保证数据的准确性,也能避免违反相关规定。 总的来说,这个项目涉及到了Android的网络请求、HTML解析、数据抓取、音频...

    全网通音乐 LYPlayer3.1免安装

    全网音乐聚合意味着LYPlayer3.1涵盖了包括但不限于QQ音乐、网易云音乐、酷狗音乐、酷我音乐、虾米音乐等主流音乐平台的资源。这样,用户无需分别下载各个平台的应用,只需一个LYPlayer就能听到各种独家版权的歌曲,...

    音乐播放合集

    "Listen 1"是一款专为此需求设计的音乐播放器,它允许用户一站式搜索并播放来自网易云音乐、虾米音乐和QQ音乐这三大主流音乐平台的歌曲,极大地丰富了用户的曲库,提升了音乐享受的便利性。 Listen 1的核心功能在于...

    折八百返利网音乐台源码html

    5. **链接跳转与API集成**:可能还涉及到与其他音乐服务(如虾米、网易云音乐等)的API集成,允许用户跳转到外部平台查看更多歌曲信息或者进行更复杂的操作。 6. **性能优化**:为了保证“演示网站的速度”,源码...

    豆瓣2虾米-crx插件

    这款插件的核心功能是在用户浏览豆瓣音乐(Douban Music)的专辑页面时,新增一个功能按钮,点击该按钮后,用户可以直接跳转到虾米音乐(Xiami Music)的相关专辑页面,或者在虾米音乐的搜索结果中展示该专辑的信息...

    中国有嘻哈爬虫分享文档-by崔振龙1

    虾米音乐的搜索功能支持按标签(如“hip-hop”)筛选歌曲,且页面URL规则明显,便于爬取。经过预估,虾米音乐提供了大约1万两千首歌曲的可能性。在爬取虾米音乐时,作者同样先抓取URL并进行筛选以去除重复数据,最终...

    在线听音乐 v2.0

    《在线听音乐 v2.0》是一款集合了多个知名音乐平台资源的网页应用,它将虾米音乐、音悦台、豆瓣FM、百度音乐、一听音乐、九酷音乐、多米音乐以及贝瓦音乐等主流音乐服务整合在一个界面中,为用户提供一站式的音乐...

Global site tag (gtag.js) - Google Analytics