Tuesday, April 18, 2017

怎样批量下载虾米音乐收藏歌曲,批量提取豆瓣电台红心歌曲名称

批量下载虾米音乐

0人收藏此文章, 我要收藏发表于10个月前(2012-12-02 19:13) , 已有173次阅读 ,共1个评论
相信有很多朋友都在使用虾米听歌,某日想把收藏的歌曲下到手机里面,但是在虾米下载需虾币,囧。
于是google搜索方案之,发现一个不错的软件。 iDown——专门用于下载网络在线视频,在线音乐的小工具。
 

挺好用的一个小软件,直接把歌曲的地址复制到输入框,确定就开始下歌了。但是收藏的歌曲有上百首,一次拷贝一首,打开一个歌曲页面,拷贝地址出来,要死人的,重复的工作坚决要交给机器来做,于是写了一个js小脚本,用来在虾米收藏list页上抓取歌曲页面的地址。
因为虾米js库使用的jquery,所以直接用jquery写的脚本。
var arr = [];
$('.song_name a:nth-child(odd)').each(function(){
    arr.push(decodeURI(this.href))
});
console.log(arr.toString().replace(/\,/g,'\n'));
var arr = [];
$('.song_name a:nth-child(odd)').each(function(){
    arr.push(decodeURI(this.href));
});
console.log(arr.toString().replace(/\,/g,'\n'));
脚本使用条件:带有命令控制台的浏览器,Firefox(装firebug),chrome,ie9等浏览器。

firefox使用方法:
按F12打开firebug页面,选中控制台Tab。
 
在下面输入框中输入上面命令,ctrl+回车,就会在上面输出当前页,歌曲的地址,拷贝出来扔到iDown的批量添加任务中去。
chrome和IE同理。chrome中输入命令的是‘console’面板。ie是‘控制台’面板。








1。登陆豆瓣
3。按f12代码区选最右那个标签   或者   点击右上角> 工具 > javascript console
4。粘贴下列代码(注意把第一个6换成你的红心歌曲的总页数)
var tpage = 6;
var page = 1;
var n = 0;
var songNum=0;
$("div.copyright").html("");
for(page=1;page<=tpage;page++) {
    n = (page - 1) * 9;
    var url = "http://douban.fm/mine?start=" + n + "&type=liked";
    $.ajax({
        type:"GET"
        ,url:url
        ,async:false
        ,dataType:"html"
        , success:function(html){
            songNum+=$(html).find("div.song_info").length;
            $(html).find("div.song_info").each(function(s) {
                var d = "";
                d=$(this).find("p.song_title").first().text()+"-"+
                                $(this).find("p.performer").first().text()+"-"+
                                $(this).find("p.source>a").first().text()+"<br>";
$("div.copyright").html($("div.copyright").html()+d);
            });
$("div.copyright").html($("div.copyright").html()+"此页面收集到歌曲:"+$(html).find("div.song_info").length+"<br/><br/>");
        }
    });
}

按回车

5。稍等一下,下拉页面,歌曲清单就出来了

No comments:

Post a Comment