网站制作学习网ASP→正文:asp查询pr代码
字体:

asp查询pr代码

ASP 2009/10/13 8:22:59  点击:不统计

一直用其它站长工具查询google的pr值,从网络搜集并整理了一下asp查询pr值的代码,实验并成功的用asp实现了查询pr代码如下:
<%@LANGUAGE="JAVASCRIPT"%>  
<title>Google PR值查询 asp程序</title>  
<%
function hexdec(str)  
{
return parseInt(str,16);  
}
function zeroFill(a,b)  
{
var z = hexdec(80000000);  
if (z & a)  
{
a = a>>1;  
a &= ~z;  
a |= 0x40000000;  
a = a>>(b-1);  
}
else  
{
a = a >> b;  
}
return (a);  
}
function mix(a,b,c)  
{
a -= b; a -= c; a ^= (zeroFill(c,13));  
b -= c; b -= a; b ^= (a<<8);  
c -= a; c -= b; c ^= (zeroFill(b,13));  
a -= b; a -= c; a ^= (zeroFill(c,12));  
b -= c; b -= a; b ^= (a<<16);  
c -= a; c -= b; c ^= (zeroFill(b,5));  
a -= b; a -= c; a ^= (zeroFill(c,3));  
b -= c; b -= a; b ^= (a<<10);  
c -= a; c -= b; c ^= (zeroFill(b,15));  
var ret = new Array((a),(b),(c));  
return ret;  
}
function GoogleCH(url,length)  
{
var init = 0xE6359A60;  
if (arguments.length == 1)  
length = url.length;     
var a = 0x9E3779B9;  
var b = 0x9E3779B9;  
var c = 0xE6359A60;  
var k = 0;  
var len = length;  
var mixo = new Array();  
while(len >= 12)  
{
a += (url[k+0] +(url[k+1]<<8) +(url[k+2]<<16) +(url[k+3]<<24));  
b += (url[k+4] +(url[k+5]<<8) +(url[k+6]<<16) +(url[k+7]<<24));  
c += (url[k+8] +(url[k+9]<<8) +(url[k+10]<<16)+(url[k+11]<<24));  
mixo = mix(a,b,c);  
a = mixo[0]; b = mixo[1]; c = mixo[2];  
k += 12;  
len -= 12;  
}
c += length;  
switch(len)  
{
case 11:  
c += url[k+10]<<24;  
case 10:  
c+=url[k+9]<<16;  
case 9 :  
c+=url[k+8]<<8;  
case 8 :  
b+=(url[k+7]<<24);  
case 7 :  
b+=(url[k+6]<<16);  
case 6 :  
b+=(url[k+5]<<8);  
case 5 :  
b+=(url[k+4]);  
case 4 :  
a+=(url[k+3]<<24);  
case 3 :  
a+=(url[k+2]<<16);  
case 2 :  
a+=(url[k+1]<<8);  
case 1 :  
a+=(url[k+0]);  
}
mixo = mix(a,b,c);
if (mixo[2] < 0)
return (0x100000000 + mixo[2]);  
else
return mixo[2];  
}
function strord(s)  
{
var re = new Array();  
for(i=0;i<s.length;i++)  
{  
re[i] = s.charCodeAt(i);  
}
return re;  
}
//来源于网络,www.foras p.cn
function c32to8bit(arr32)   
{  
var arr8 = new Array();   
for(i=0;i<arr32.length;i++)   
{  
for (bitOrder=i*4;bitOrder<=i*4+3;bitOrder++)   
{  
arr8[bitOrder]=arr32[i]&255;  
arr32[i]=zeroFill(arr32[i], 8);  
}  
}  
return arr8;  
}  

function myfmod(x,y)  
{  
var i = Math.floor(x/y);  
return (x - i*y);  
}  

//来源于网络,www.forasp.c n
function GoogleNewCh(ch)  
{  
ch = (((ch/7) << 2) | ((myfmod(ch,13))&7));  

prbuf = new Array();  
prbuf[0] = ch;  
for(i = 1; i < 20; i++) {  
prbuf[i] = prbuf[i-1]-9;  
}  
ch = GoogleCH(c32to8bit(prbuf), 80);  
return ch;  

}  
function URLencode(sStr)  
{  
return encodeURIComponent(sStr).replace(/\+/g,"%2B").replace(/\//g,"%2F");  
}  

function getGoogleHostInfo(url){  
var reqgr = "info:" + url;  
var reqgre = "info:" + URLencode(url);  
//Response.Write(reqgr+"<br>"+reqgre);   来源于网络,www.fo rasp.cn
gch = GoogleCH(strord(reqgr));  
gch = "6" + GoogleNewCh(gch);  

var querystring = "http://toolbarqueries.google.com/search?client=navclient-auto&ch=" + gch + "&ie=UTF-8&oe=UTF-8&features=Rank:FVN&q=" + reqgre;  
//Response.Write(querystring);  来源于网络,www.forasp.cn
var objXMLHTTP, xml;  
xml = Server.CreateObject("Microsoft.XMLHTTP");  
xml.Open("GET", querystring, false);  
xml.setRequestHeader( "User-Agent", "Mozilla/4.0 (compatible; GoogleToolbar 2.0.114-big; Windows XP 5.1)" );  
xml.send();  
return xml.responseText;  
}  
function getPageRank(temp){  
var foo = temp.match(/Rank_.*?:.*?:(\d+)/i);  
var pr = (foo) ? foo[1] : "";  
return pr;  
}  

function getDirectory(temp){  
var  foo = temp.match(/FVN_.*?:.*?:(?:Top\/)?([^\s]+)/i);  
var cat = (foo) ? foo[1] : "";  
if(cat!="")cat="http://directory.google.com/Top/"+cat  
return cat;  
}  
//来源于网络,www.forasp.cn
var site;  
site="www.baidu.com"; //输入站点名 
if(site!="undefined"){  
var google=getGoogleHostInfo(site);  
var pagerank=getPageRank(google);  
var directory=getDirectory(google);  
Response.Write("PageRank:"+pagerank+"<br>");  
Response.Write("PageRank:<img src=\"images/pr"+pagerank+".png\" alt=\"PageRank:"+pagerank+"\"><br>");  
Response.Write("Site:"+site+"<br>");  
if(directory!="")Response.Write("Site:<a href="+directory+">"+directory+"</a><br>");  
}  
%>  
 

·上一篇:asp防十六进制注入 >>    ·下一篇:asp上传图片到数据库 >>
推荐文章
最新文章