利用XML技术获取域名的世界排名数字
以前總是看到美萍網站的網站導航里面,每隔站點都能夠顯示世界排名數字,不知道是怎么得到的。經過不斷的努力,我終于利用簡單的ASP+XML的方法得到了這個數字。驚喜之余,也拿出來和大家共享吧!相信聰明的您通過修改這個代碼將會把它的功能發揮到極致!在這里我有一個小小的要求,如果您改出來了什么好東東,也給我發一份,好嗎??
<%?
'=========================================================?
' 文件:AlexaRank.asp?
' 功能:返回域名的世界排名數字?
' 時間:2004-06-24?
' 作者:Guidy?
' 版權:iXuEr Studio?
'=========================================================?
' Copyright (C) 2004-2006 114XP.CN All rights reserved.?
' 官方網站:HTTP://www.114xp.cn?
' 技術論壇:HTTP://bbs.114xp.cn?
' 電子信箱:guidy@qq.com.guidy@psysch.com?
'=========================================================?
Server.ScriptTimeOut=120?
On Error Resume Next?
Dim Url?
Url = "www.114xp.cn"?
Response.Write(AlexaRank(Url))?
Response.End()?
'==========================================================?
Function AlexaRank(Url)?
'過濾無用信息,只剩余世界排名?
'此方法是作者認真分析網頁代碼而得出的,所以不保證永久有效?
'如果您還有什么更好的辦法,不妨來告訴我,共同探討嘛~~?
Dim AlexaUrl,RpStr,TempStr?
Dim x,n
RpStr = "</td><td class=""bodyBold"" align=""center"" bgcolor=""#ffffff""><img" '此行不準改動?
AlexaUrl = "http://www.alexa.com/data/details/traffic_details?q=&url=" & Url
TempStr = GetHTTPPage(AlexaUrl)
n = InStr(TempStr,RpStr) - 1?
TempStr = Left(TempStr,n)?
TempStr = StrReverse(TempStr)?
x = InStr(TempStr,">") - 1?
TempStr = Left(TempStr,x)?
TempStr = StrReverse(TempStr)?
AlexaRank = TempStr?
End Function?
'==========================================================?
Function GetHTTPPage(url)?
'利用XML技術來獲取網頁數據?
on Error resume next?
Dim HTTP?
Set HTTP=Server.CreateObject("Microsoft.XMLHTTP")?
HTTP.Open "GET",Url,False?
HTTP.Send()?
If HTTP.ReadyState<>4 then?
exit function?
end If?
GetHTTPPage=Bytes2BSTR(HTTP.ResponseBody)?
Set HTTP=Nothing?
If Err.Number<>0 Then Err.Clear?
End function?
'==========================================================?
Function Bytes2BSTR(vIn)?
'還原網頁數據為文本字符?
Dim StrReturn?
Dim i,ThisCharCode,NextCharCode?
StrReturn = ""?
For i = 1 To LenB(vIn)?
ThisCharCode = AscB(MidB(vIn,i,1))?
If ThisCharCode < &H80 Then?
StrReturn = StrReturn & Chr(ThisCharCode)?
Else?
NextCharCode = AscB(MidB(vIn,i+1,1))?
StrReturn = StrReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))?
i = i + 1?
End If?
Next?
Bytes2BSTR = StrReturn?
End Function?
%>
總結
以上是生活随笔為你收集整理的利用XML技术获取域名的世界排名数字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 企业及时通讯软件源代码销售,功能类似QQ
- 下一篇: 计算机二级基础知识ppt,计算机二级公共