当前位置: 首页 > 图文教程 > 网络编程 > AJAX技术 > [asp]天枫AJAX百度音乐即时听附下载

AJAX技术
自己动手封装的 ajax
Ajax 对象 包含post和get两种异步传输方式
Ajax 超时检查脚本
AJAX 简介及入门实例
ajax 开发守则 10条说明
Ajax 返回字符串的过滤实现代码
Ajax 程序开发中常见问题
AJAX 验证框架13个
ajax 入门基础之 XMLHttpRequest对象总结
基于AJAX的分页类实现代码
如何在Asp.net中使用HtmlArea编辑器
使用 jQuery 简化 Ajax 开发
ASP.NET 与 Ajax 的实现方式
AJAX技术介绍
Ajax程序设计入门
学习Ajax教程,详细了解Get与Post
关于Ajax responseText 的一点阐述
ajax中文乱码解决方法
AJAX中文问题总结
AJAX无刷新更新数据

AJAX技术 中的 [asp]天枫AJAX百度音乐即时听附下载


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-13   浏览: 46 ::
收藏到网摘: n/a

输入歌名自动会自动联想歌名
读取音乐地址时,背景变暗不可操作
同步LRC歌词显示,
用户可自己进行扩展,整合音乐站
按此在新窗口浏览图片
按此在新窗口浏览图片
按此在新窗口浏览图片
mp3.asp
复制代码 代码如下:

<%@ language="vbscript" CodePage="936"%>
<%
response.charset="gb2312"
set regex = New regexp
regex.IgnoreCase=True
regex.Global=True
songname=unescape(query("songname"))
Select Case query("s")
case"geturl":echo geturl(songname)
case"suggest":echo suggest()
End select
Function geturl(songname)
page=ajax("http://mp3.baidu.com/m?f=ms&tn=baidump3&ct=134217728&lf=&rn=&word="&songname&"&lm=0","","","")
regex.Pattern="(http)\S+\.(mp3)"
Set urls= regex.execute(page)
'For i=0 To urls.count-1
'geturl=geturl&(mp3url(urls(i))&"<br/>")
'Next
Randomize
i=Int(rnd()*urls.count)
If Len(urls(i))<30 Then i=Int(rnd()*urls.count)
url=mp3url(urls(i))
geturl="<div>"&mplay(url)&"<a href="""&url&""">点击鼠标右键-目标另存为下载歌曲<a></div>"
Getlrc(songname)
End Function
Function mp3url(url)
page=ajax("http://box.zhangmen.baidu.com/m?gate=1&ct=134217728&tn=baidumt,&word=mp3,"&url&"&lm=16777216","","","")
regex.Pattern="(http)\S+\.(mp3)"
Set urls= regex.execute(page)
If urls.count>0 Then mp3url=urls(2)
End Function
Function mplay(fileUrl)
echo"<object classid=""CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"" codebase=""http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"" align=""baseline"" standby=""Loading Microsoft Windows Media Player components..."" type=""application/x-oleobject"" id=""mediaPlayerObj"" style=""width:300px;height:64px;border:1px solid #CCCCCC"">"
echo"<param name=""url"" value='"&fileUrl&"'>"
echo"<param name=""rate"" value=""10"">"
echo"<param name=""balance"" value=""0"">"
echo"<param name=""currentPosition"" value=""0"">"
echo"<param name=""playCount"" value=""1"">"
echo"<param name=""autoStart"" value=""-1"">"
echo"<param name=""volume"" value=""60"">"
echo"<param name=""currentMarker"" value=""0"">"
echo"<param name=""invokeURLs"" value=""-1"">"
echo"<param name=""stretchToFit"" value=""-1"">"
echo"<param name=""windowlessVideo"" value=""0"">"
echo"<param name=""enabled"" value=""-1"">"
echo"<param name=""enableContextMenu"" value=""0"">"
echo"<param name=""fullScreen"" value=""0"">"
echo"<param name=""enableErrorDialogs"" value=""0"">"
echo"<embed src="""&fileUrl&""" align=""baseline"" type=""application/x-mplayer2"" pluginspage="""" id=""mediaPlayerObj"" showcontrols=""1"" showpositioncontrols=""0"" showaudiocontrols=""1"" showtracker=""1"" showdisplay=""0"" showstatusbar=""1"" autosize=""0"" showgotobar=""0"" showcaptioning=""0"" autostart=""1"" autorewind=""0"" animationatstart=""0"" transparentatstart=""0"" allowscan=""1"" enablecontextmenu=""1"" clicktoplay=""0"" defaultframe=""datawindow"" invokeurls=""0"" style=""width:300px;height:68px;border:1px solid #FF0000""></embed>"
echo"</object>"
End Function
Sub Getlrc(songname)
echo"<div id=""lrcxx"" style=""display:none""></div>"
echo"<span id=""lrcdata"">"
echo"<!--"
page=ajax("http://mp3.baidu.com/m?tn=baidump3lyric&word="&songname&"&ct=150994944&lm=-1&lf=3","","","")
If InStr(page,"抱歉,没有找到")>0 Then
echo "没有找到歌词"
lrcurl=""
else
regex.Pattern="(http://)\S+\.(lrc)"
set lrcs=regex.Execute(page)
lrcurl=lrcs(0)
If lrcs.count>0 Then
echo ajax(lrcurl,"","","")
Else
echo "没有找到歌词"
End If
End if
echo"-->"
echo"</span>"
echo"<div id=""bkk"">"
echo"<div id=""lrcstart"">歌词:<a href="""&lrcurl&""" target=""new"">点击下载LRC歌词</a></div>"
echo"<div id=""lrcollbox"">"
echo"<table id=""lrcoll"" style=""position:relative;top:30px;width:100%;text-align:center"">"
echo"<tr><td><div id=""lrcwt1""></div></td></tr>"
echo"<tr><td><div id=""lrcwt2""></div></td></tr>"
echo"<tr><td><div id=""lrcwt3""></div></td></tr>"
echo"<tr><td class=""kong"">"
echo"<table border=""0"" cellspacing=""0"" cellpadding=""0"">"
echo"<tr><td nowrap height=""30""><span id=""lrcbox"" style=""width:0;""></span></td></tr>"
echo"<tr style=""position:relative; top: -30px; z-index:6;""><td nowrap height=""30""><span id=""lrcbc"" style=""overflow:hidden; width:0;""></span></td>"
echo"</tr>"
echo"</table>"
echo"</td></tr>"
echo"<tr style=""position:relative; top: -30px;""><td><div id=""lrcwt4""></div></td></tr>"
echo"<tr style=""position:relative; top: -30px;""><td><div id=""lrcwt5""></div></td></tr>"
echo"</table>"
echo"</div>"
echo"</div>"
End Sub
Function Suggest()
If Trim(query("songname"))<>"" then
songname=Replace((query("songname")),"!","%")
'Suggest=ajax("http://mp3.sogou.com/suggest/suggest.jsp?key="&escape(query("songname"))&"&asc=1","","","UTF-8")
Suggest=ajax("http://music.soso.com/wh.php?"&songname,"","","")
End if
End Function
Function Query(byval var)
Query = request.form(var)
if Query = "" then Query = request(var)
End Function
Function Echo(byval str)
response.write str
End Function

Public Function AJAX(url,method,data,bm)
If method="" Then method="get"
If bm="" Then bm="gb2312"
dim http
Set http=Server.createobject("Microsoft.XMLHTTP")
Http.open method,url,false
if LCase(method)="post" then
Http.setrequestheader "content-length",len(data)
Http.setrequestheader "content-type","application/x-www-form-urlencoded"
end if
Http.send(data)
if Http.readystate=4 and Http.status=200 then
AJAX=bytesToBSTR(Http.responseBody,"GB2312")
end If
set http=nothing
End function
Public Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("ADODB"+"."+"Stream")
with objstream
.Type = 1
.Mode =3
.Open
.Write body
.Position = 0
.Type = 2
.Charset = Cset
BytesToBstr = .ReadText
.Close
end with
set objstream = nothing
End Function
Set regex=Nothing
%>

在线演示http://www.ruanchen.com/"/downtools/demo/mp4/mp4.rar">本地下载