网学网ASP编辑为广大网友搜集整理了:[asp]阿里西西的alexa采集效果代码绩等信息,祝愿广大网友取得需要的信息,参考学习。
我想这个系统现在在网上或源码站几乎是没有可用的
程序。 提供
下载的都是以前的老版本,ALEXA官方在他们的页面做了混淆代码防采集后,那些以前的ALEXA排名查询系统都已经无法再使用了。 网上除了一些知名(有钱的主)能提供(通过收费接口)的排名查询和我看到的webmasterhome.cn免费接口的查询功能系统外,个人站长基本没几个再能提供ALEXA排名
查询服务。
开源发布的这个版本经过我一段时间的使用和完善,已经做到无错,速度相对也比较快。为了这个系统,也曾有黑客威胁过自己,并招来两天猛烈的DDOS攻击。
<%
Dim domain,Url,Url1,strPage,StrPage1
Dim xmldom,SD,SITE,dimg
domain = request.QueryString("url")
if domain = "" then domain = "jb51.net"
If Not iswww(domain) Then
response.write "<script>alert(''您输入的网址无效,请重新输入!'')</script>"
domain = "jb51.net"
End if
host = "jb51.net"
if left(domain,7)="http://" then
domain=right(domain,len(domain)-7)
end if
if instr(domain,"/")<>0 then
domain=left(domain,instr(domain,"/")-1)
end if
on error resume Next
Function iswww(strng)
iswww = false
Dim regEx, Match
Set regEx = New RegExp
regEx.Pattern = "^\w+((-\w+)|(\.\w+))*[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z]+$"
regEx.IgnoreCase = True
Set Match = regEx.Execute(strng)
if match.count then iswww= true
End Function
Function GetPage(Path)
t = GetBody(Path)
GetPage=BytesToBstr(t,"UTF-8")
End function
Function GetPage2(Path)
t = GetBody(Path)
GetPage2=BytesToBstr(t,"GB2312")
End function
Function GetBody(url)
on error resume next
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "Get", url, False, "", ""
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function
function fget(str)
select case trim(str)
case ""
fget = "--"
case else
fget = str
end select
end function
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Function FixStr(ByVal str, ByVal start, ByVal last, ByVal n)
Dim strTemp
On Error Resume Next
If InStr(str, start) > 0 Then
Select Case n
Case 0
strTemp = Right(str, Len(str) - InStr(str, start) - Len(start) + 1)
strTemp = Left(strTemp, InStr(strTemp, last) - 1)
Case Else
strTemp = Right(str, Len(str) - InStr(str, start) + 1)
strTemp = Left(strTemp, InStr(strTemp, last) + Len(last) - 1)
End Select
Else
strTemp = ""
End If
FixStr = strTemp
End Function
Function Comma(str)
If Not(IsNumeric(str)) Or str = 0 Then
Result = 0
ElseIf Len(Fix(str)) < 4 Then
Result = str
Else
Pos = Instr(1,str,".")
If Pos > 0 Then
Dec = Mid(str,Pos)
End if
Res = StrReverse(Fix(str))
LoopCount = 1
While