// ==UserScript== // @name ximalaya-download // @namespace https://greasyfork.org/zh-CN/users/135090 // @match https://www.ximalaya.com/album/* // @exclude https://www.ximalaya.com/zhubo/* // @grant none // @version 1.3.6 // @author eaudouce // @license BSD // @description 喜马拉雅音乐下载 // @run-at document-end // @downloadURL none // ==/UserScript== (function() { "use strict"; function init(){ var array=document.querySelectorAll(".text>a:first-child"); array.forEach(function(a){ var n=a.href.split("/").length-1; var id = a.href.split("/")[n]; var url = "https://www.ximalaya.com/revision/play/v1/audio?ptype=1&id="+id; /*api-101 var url="http://www.ximalaya.com/tracks/"+id+".json"; */ /*api-102 var url="https://m.ximalaya.com/m-revision/page/track/queryTrackPage/"+id */ var murl="http://mobile.ximalaya.com/v1/track/baseInfo?device=iPhone&trackId="+id; var result; var src; var parent=a.parentNode; var div = document.createElement("div"); parent.insertBefore(div,a); div.innerHTML="..."; var xhr = new XMLHttpRequest(); xhr.open("GET",url, true); xhr.onload = function () { if (xhr.readyState === xhr.DONE) { if (xhr.status === 200) { result=xhr.responseText; src=JSON.parse(result).data.src; //src=JSON.parse(result).play_path;//api-101 //src=JSON.parse(result).data.trackDetailInfo.trackInfo.playPath;//api-102 //msrc=JSON.parse(result).playUrl32; if (src === undefined) { div.innerHTML="无法解析VIP内容"; }else{ console.log(src); div.innerHTML="下载"; } } } }; xhr.send(null); }); } setTimeout(init, 2000); })();