用谷歌浏览器轻松下载8box播放器里的mp3
今天在mtime里听到一首大提琴的曲子,十分好听,地址:http://group.mtime.com/justmusic/discussion/1915486/
想把它下载下来。开始我是去翻chrome:cache 谷歌缓存,可以发现找到后另存为一直都无法播放。于是只能按下F12,打开调试界面。
在调试界面里打开“network”标签(此时假设还没有按flash播放器的开始按钮,且已经清楚了缓存)。
然后点击播放器的开始按钮。此时,“network”标签下出现2个网络请求。
显然第一个47684.mp3 就是我要的歌曲。只要等待这个请求全部结束。然后右键菜单选择“open link in new tab“打开该链接,然后在打开的新页面应该是一个mp3的播放界面了,再次右键选择另存为,那么一首mp3 就这么下载完成了。
-----------------------------------------------------------
方法就是这么简单。
倘若你还想研究一下用其他方法下载,例如使用下载工具,或者自己制作的工具来下载。其实也很容易实现。我们来看看这整个获取mp3的请求。
GET /upload/84/47684.mp3?hazel HTTP/1.1
Host: stream.8box.cn
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.865.0 Safari/535.2
Accept: */*
Referer: http://www.8box.com/feed/5C5555_s_94327_/mini.swf
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3
-------------------------------------------------以上为http GET请求
可以看出,http://stream.8box.cn/upload/84/47684.mp3?hazel 这个地址就是mp3所在url。
可是你自己把该地址复制到下载工具那里一定下载不了。原理也很简单,服务器端通过判断所请求的来源是什么来判断是否给你下载,这个主要用到了Referer这个值。
如果有些工具有一个大概叫做“引用页面”的输入框的话,例如qq旋风下载器,把 http://www.8box.com/feed/5C5555_s_94327_/mini.swf这个地址填上去,就能下载。可见服务器端就是通过这个值来确定是否给你下载。