Skip to content

一键获取喜马拉雅免费音频的下载地址,chrome插件

Notifications You must be signed in to change notification settings

Moefuru/ximalaya-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ximalaya-plugin

喜马拉雅下载助手,又称喜马小助手,是一个能一键获取喜马拉雅免费音频的下载地址的chrome插件

使用方法

1.下载插件安装包,拖进chrome浏览器的扩展程序内,这个操作需要打开chrome的开发者模式。安装完成之后应该是这样的:

2.无需特殊设置,打开喜马拉雅网站,进入某个专辑,点击某个声音查看进入明细页面,比如:

http://www.ximalaya.com/7712455/sound/2272558

注意URL里面的sound单词,这个在后面的插件原理里面会讲

你会发现多出来两个链接**“下载32kps音频”** “下载64kps音频”,点击链接下载音频即可,是不是很简单...

这里要注意的是 (1)下载后的文件格式为.m4a(一般的PC播放器都可以播放) (2)32kps的音频可能只有24kps,这个是喜马的问题 (3)下载的文件名是一串乱码,最好自己改一下名字

插件原理

记得我上面说到的声音明细页面URL中的sound吗,后面跟着的数字就是这个声音在喜马拉雅上面的唯一ID。

喜马拉雅在播放声音前会请求一个URL,比如: http://www.ximalaya.com/tracks/2272558.json 获取一个包涵音频文件实际地址的json:

{
    "id": 2272558,
    "play_path_64": "http://audio.xmcdn.com/group10/M08/35/72/wKgDZ1WVCBiSqUiVAKza8osLTaA696.m4a",
    "play_path_32": "http://audio.xmcdn.com/group10/M08/35/6A/wKgDaVWVCC_hoDuwAEH7lqBPx3k059.m4a",
    "play_path": "http://audio.xmcdn.com/group10/M08/35/72/wKgDZ1WVCBiSqUiVAKza8osLTaA696.m4a",
    "duration": 1400,
    "title": "银河帝国1_基地_08",
    "nickname": "大屁股老鼠哈哈笑",
    "uid": 7712455,
    "waveform": "group4/M02/0C/E7/wKgDtFMlI3qysDNYAAAKbDrnGSU1990.js",
    "upload_id": "u_2639732",
    "cover_url": "http://fdfs.xmcdn.com/group4/M01/0C/ED/wKgDs1MlI7-x71uZAAGl7WuFCDY006.jpg",
    "cover_url_142": "http://fdfs.xmcdn.com/group4/M01/0C/ED/wKgDs1MlI7-x71uZAAGl7WuFCDY006_web_large.jpg",
    "formatted_created_at": "3月16日 12:08",
    "is_favorited": false,
    "play_count": 32701,
    "comments_count": 36,
    "shares_count": 0,
    "favorites_count": 92,
    "album_id": 244444,
    "album_title": "阿西莫夫_基地(银河帝国基地系列第一部)",
    "intro": "长篇科幻小说,基地,阿西莫夫[美]著,叶李华译,连载中...,播讲:哈哈笑。",
    "have_more_intro": false,
    "time_until_now": "3年前",
    "category_name": "book",
    "category_title": "有声书",
    "played_secs": null,
    "is_paid": false,
    "is_free": null,
    "price": null,
    "discounted_price": null
}

其中的play_path_64 play_path_32 就是64kps和32kps音频的实际服务器存放地址

然后事情就简单了,在chrome插件中注入一段js,根据这个id请求到实际地址,然后添加下载的链接即可

核心代码:

console.log("inject success!");

//音频Id
var track_id = $(".shareLink").attr("track_id");

console.log("track_id="+track_id);

var dataUrl = "http://www.ximalaya.com/tracks/"+track_id+".json";

$.get(dataUrl, function(result){
	var href32 =  result.play_path_32; 
	var href64 =  result.play_path_64;
	//增加按钮
	$('.sound_bottom .fr').append("<a class='forwardBtn link1 down32' download href='"+href32+"'>下载32kps音频</a>")
	.append("<a class='forwardBtn link1 down64' download href='"+href64+"'> 下载64kps音频</a>");
});

开发背景

1.用了喜马好几年了,最近的广告越来越烦人,比如“XX老道勾引小妖精”这种声音广告特别烦人,而且即使不是在线听,缓存到手机,在联通网络的情况下还是会插播广告

2.所在company封网络,ximalya.com还有music.163.com都无法打开,让在线听歌也成了问题

基于以上两点,就花了点时间写出这个插件,可以提前将喜欢的有声读物下载到电脑上或者拷入手机

希望对您的生活和学习有帮助,enjoy~

很惭愧,只做了些微小的工作,您的支持将鼓励我继续努力创作!/斜眼笑

About

一键获取喜马拉雅免费音频的下载地址,chrome插件

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 59.5%
  • CSS 21.9%
  • HTML 18.6%