asp google pr查询代码
程序员文章站
2022-08-05 20:54:19
复制代码 代码如下:<%@language="javascript"%> google pr值查询 asp程序
<%@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.jb51.net
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. pqshow .com
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.jb51.net
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.jb51.net
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.jb51.net
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>");
}
%>
将上面的代码保存为pr.asp运行即可,如果想要传参,可以将
site="www.baidu.com"; //输入站点名
替换为
site=request.querystring("url"); //输入站点名
复制代码 代码如下:
<%@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.jb51.net
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. pqshow .com
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.jb51.net
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.jb51.net
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.jb51.net
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>");
}
%>
将上面的代码保存为pr.asp运行即可,如果想要传参,可以将
site="www.baidu.com"; //输入站点名
替换为
site=request.querystring("url"); //输入站点名
上一篇: JS短路表达式&&和||的代码实例
下一篇: ASP操作数据库的类