查看歌曲播放列表的html,对每一首歌曲,具体的播放的 html 代码如下:

实际的地址是:在加亮部分的后面加上后缀.mp3 后即为文件真实地址 http://222.168.102.102//i/0903/68728218.mp3 ,下载时需要给服务器发送 www.yobo.com 的引用信息,否则返回 20K 左右的无效文件。
Opera浏览器下可以利用UserJs(用户脚本) Firefox浏览器下可以利用GreaseMonkey插件,加入自己的用户脚本,要实现加入一个下载mp3的链接并不难。这里顺便解释一下什么是GreaseMonkey?
greasemonkey 使你可以向任何网页添加DHTML语句(用户脚本)来改变它们的显示方式。就像CSS可以让你接管网页的样式,而用户脚本(User Script)则可以让你轻易地控制网页设计与交互的任何方面。GREASEMONKEY由GOOGLE员工Aaron Boodman编写,在FIREFOX上首先盛行,是一个不可或缺的插件。IE下相对应的GreaseMonkey插件是Trixie,下载Trixie安装以后,你的IE也就支持Greasemonkey了,这两个插件都涉及javascript管理。
点击进入Greasemonkey下载页面 http://greasemonkey.mozdev.org/
点击进入Trixie下载地址 http://www.bhelpuri.net/Trixie/TrixieSetup.msi
IE下的Trixie插件功能还是蛮强大的,基本可以匹敌Opera下的UserJs了,并且有脚本管理的界面,下载安装后把以下脚本文件放入C:/Program Files/Bhelpuri/Trixie/Scripts/文件夹下,
// @name YOBO mp3 download
// @namespace http://www.bhelpuri.net/Trixie
// @description Creates a link to download yobo mp3
// @include http://www.yobo.com/*
// @auther 代码乱了
// ==/UserScript==
( function ()
{
var es = document.body.getElementsByTagName( " a " );
for ( var i = 0 ;i < es.length;i ++ )
{
o = es[i];
if (o.getAttribute( ' className ' ) == " controllink " || o.getAttribute( ' className ' ) == " songctrl " )
{
if (o.tag)
{
continue ;
}
o.tag = " fixed " ;
var u = o.getAttribute( ' onclick ' ).toString().replace( / (yobo_play_lite | yobo_play_song)( ' /, '' ).replace(/',.*/, '' )+ ' .mp3 ' ;
u=u.replace(/ | |function anonymous()|{|}/g, '' );
var elem=document.createElement("a");
elem.href=u;
elem.innerText="涓嬭浇 ";
elem.style.dispaly= ' inline - block ' ;
elem.style.textDecoration= ' none ' ;
//o.parentElement.parentNode.childNodes[2].appendChild(elem);
o.parentElement.parentNode.childNodes[2].insertBefore(elem,o.parentElement.parentNode.childNodes[2].childNodes[0]);
}
}
}
)();
打开IE,点击“工具-Trixie Option”打开Trixie的设置界面,在我们的脚本YOBO mp3 download上打上勾,便可以使用了
从打开YOBO的排行榜,看到的前后效果应该是
测试环境:IE6+Windows XP
IE7下测试通过
本文相关的代码下载