Recopilé y clasifiqué el código para consultar el valor pr en asp desde Internet. Experimenté y usé asp con éxito para consultar el valor pr, y la prueba pasó. Copie el código de código de la siguiente manera:
<%@LANGUAGE=JAVASCRIPT%>
<title>Programa asp de consulta de valor de relaciones públicas de Google</title>
<%
función hexdec(cadena)
{
devolver parseInt(cadena,16);
}
función relleno cero(a,b)
{
varz = hexdec(80000000);
si (z y a)
{
a = a>>1;
a &= ~z;
un |= 0x40000000;
a = a>>(b-1);
}
demás
{
a = a >> b;
}
retorno(a);
}
mezcla de funciones (a,b,c)
{
a -= b; a -= c; a ^= (relleno cero(c,13));
segundo -= c; segundo -= a; segundo ^= (a<<8);
c -= a; c -= b; c ^= (relleno cero(b,13));
a -= b; a -= c; a ^= (relleno cero(c,12));
segundo -= c; segundo -= a; segundo ^= (a<<16);
c -= a; c -= b; c ^= (relleno cero(b,5));
a -= b; a -= c; a ^= (relleno cero(c,3));
segundo -= c; segundo -= a; segundo ^= (a<<10);
c -= a; c -= b; c ^= (relleno cero(b,15));
var ret = nueva matriz ((a), (b), (c));
volver atrás;
}
función GoogleCH(url,longitud)
{
inicio var = 0xE6359A60;
si (argumentos. longitud == 1)
longitud = URL.longitud;
var a = 0x9E3779B9;
var b = 0x9E3779B9;
var c = 0xE6359A60;
var k = 0;
var len = longitud;
var mixo = nueva matriz();
mientras(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 = mezclar(a,b,c);
a = mixo[0]; b = mixo[1]; c = mixo[2];
k+= 12;
longitud -= 12;
}
c += longitud;
interruptor (len)
{
caso 11:
c += URL[k+10]<<24;
caso 10:
c+=url[k+9]<<16;
caso 9:
c+=url[k+8]<<8;
caso 8:
b+=(url[k+7]<<24);
caso 7:
b+=(url[k+6]<<16);
caso 6:
b+=(url[k+5]<<8);
caso 5:
b+=(url[k+4]);
caso 4:
a+=(url[k+3]<<24);
caso 3:
a+=(url[k+2]<<16);
caso 2:
a+=(url[k+1]<<8);
caso 1:
a+=(url[k+0]);
}
mixo = mezclar(a,b,c);
si (mixo[2] < 0)
retorno (0x100000000 + mixo[2]);
demás
devolver mixo[2];
}
función(es)
{
var re = nueva matriz();
para(i=0;i<s.length;i++)
{
re[i] = s.charCodeAt(i);
}
regresar re;
}
//Obtenido de Internet, www.vevb.com
función c32to8bit(arr32)
{
var arr8 = nueva matriz();
para(i=0;i<arr32.length;i++)
{
para (ordenbit=i*4;ordenbit<=i*4+3;ordenbit++)
{
arr8[bitOrder]=arr32[i]&255;
arr32[i]=ceroRelleno(arr32[i], 8);
}
}
devolver arr8;
}
función myfmod(x,y)
{
var i = Math.floor(x/y);
retorno (x - i*y);
}
//Desde Internet, www.pqshow.com
función GoogleNewCh(ch)
{
ch = (((ch/7) << 2) | ((myfmod(ch,13))&7));
prbuf = nueva matriz();
prbuf[0] = canal;
para(yo = 1; yo < 20; yo++) {
prbuf[i] = prbuf[i-1]-9;
}
ch = GoogleCH(c32to8bit(prbuf), 80);
devolver cap;
}
función URLcodificar(sStr)
{
devolver encodeURIComponent(sStr).replace(//+/g,%2B).replace(////g,%2F);
}
función getGoogleHostInfo(url){
var reqgr = información: + URL;
var reqgre = información: + URLencode(url);
//Response.Write(reqgr+<br>+reqgre Desde Internet, www.vevb.com);
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); Desde Internet, www.vevb.com
var objXMLHTTP, xml;
xml = Servidor.CreateObject(Microsoft.XMLHTTP);
xml.Open(GET, cadena de consulta, falso);
xml.setRequestHeader( User-Agent, Mozilla/4.0 (compatible; GoogleToolbar 2.0.114-big; Windows XP 5.1) );
xml.enviar();
devolver xml.responseText;
}
función getPageRank(temp){
var foo = temp.match(/Rank_.*?:.*?:(/d+)/i);
var pr = (foo) ? foo[1] : ;
volver pr;
}
función obtenerDirectorio(temp){
var foo = temp.match(/FVN_.*?:.*?:(?:Top//)?([^/s]+)/i);
var gato = (foo) ? foo[1] : ;
if(cat!=)cat=http://directory.google.com/Top/+cat
gato de regreso;
}
//Obtenido de Internet, www.vevb.com
sitio var;
site=www.baidu.com; //Ingrese el nombre del sitio
si(sitio!=indefinido){
var google=getGoogleHostInfo(sitio);
var pagerank=getPageRank(google);
var directorio=getDirectorio(google);
Response.Write(PageRank:+pagerank+<br>);
Response.Write(PageRank:<img src=/images/pr+pagerank+.png/ />Response.Write(Site:+site+<br>);
if(directorio!=)Response.Write(Sitio:<a href=+directorio+>+directorio+</a><br>);
}
%>
Simplemente guarde el código anterior como pr.asp y ejecútelo. Si desea pasar parámetros, puede hacerlo.
site=www.baidu.com; //Ingrese el nombre del sitio
Reemplazar con
site=Request.QueryString(url); //Ingrese el nombre del sitio