Obtener el PageRank de Google usando sólo javascript (II)

En el post anterior básicamente conté que esto de hacer peticiones cross-domain tiene muuuuchos problemas y que aún con los problemas que hay hoy iba a poner la solución para obtener el PageRank usando sólo javascript.

Claramente os tomé el pelo ;p

Que noooooooo!! A ver, todo lo que conté ayer es verdad. No se puede obtener el valor de las peticiones cross-domain a no ser que se usen algunos trucos (lo del proxy PHP, …), por lo que estrictamente hablando el código que obtiene el PageRank sigue sin saber cual es el Page Rank, sin embargo, sí puede mostrar ese PageRank adecuadamente, y eso es lo que hace el script.

Por no andarme con rodeos, a continuación teneis un iframe donde podeis poner la web que querais y os mostrará su PageRank. Os prometo que sólo utiliza javascript (mas abajo el código).

Ver la demo en una ventana nueva

Básicamente lo que hace el script es calcular una serie de checksums de la página web introducida, actualizar unos campos en un formulario y enviar ese mismo formulario usando GET, y cargando el resultado devuelto por Google en un iframe. Ese iframe no se puede manipular de ninguna de las maneras, y si en vez de usar lo del iframe, se hace con AJAX, el resultado es el mismo.

El truco, hack, chapuza o como lo querais llamar, es que el PageRank aparece después de una cadena (que por los tests realizados es “Rank_1:1:”). Lo que hace el script es calcular (mas o menos) donde estará el número de PR en esa cadena y mueve el iframe para que sólo salga ese último número.

Debo reconocer que hacer esto con javascript es bastante chapuza, aunque la ventaja es que se sigue viendo el PR de una web, y todas las peticiones a Google corren a cargo de los propios navegadores web. Tampoco descarto que algunas personas puedan tener algún problema al visualizar el PR en su navegador, en tal caso el script necesitaría algunas adaptaciones y sois totalmente libres de hacerlas.

A continuación teneis el código de getpagerank.js, el script que calcula los checksums y obtiene el Page Rank de Google. Podeis echar un vistazo al código de pagerank.html para ver como funciona todo.

Finalmente, por si alguien quiere embeder la página en su web, el código es el siguiente



Bueno, ¿Que os ha parecido? ¿os ha gustado? ¿estais decepcionados? ¿lo veis demasiado chapuza?


Proximamente en CodigoManso explicaré como hacer peticiones cross-domain con javascript y pasar información de unos servidores a otros (esto ya no será en plan chapuza, lo prometo).

Trackback URL

, ,

192 Comments on "Obtener el PageRank de Google usando sólo javascript (II)"

  1. Abhinav Singh
    22/01/2009 at 8:21 am Permalink

    Nice but do you know it’s kind of illegal to get PR information like this?

  2. Pau Sanchez
    22/01/2009 at 8:54 am Permalink

    Really? Uhm… I didn’t know it was illegal.
    Could you provide a link from Google for reading more about this?

  3. Felipe
    25/01/2009 at 12:01 am Permalink

    Hola,
    Este script es un trabajo fenomenal. Me parece increíble que puedan hacerse estas cosas con javascript. En mi caso, el único problema es que me aparece el iframe delante del PageRank en Internet Explorer. En Firexfox funciona perfectamente. ¿Habrá alguna manera de esconder el iframe en el Explorer?

    Saludos y enhorabuena por tu trabajo.

  4. Pau Sanchez
    25/01/2009 at 5:00 am Permalink

    El caso es que yo lo he probado en FF3, Opera, Safari 3.1 en Windows, y IE7. Y he adaptado un poco la posición de la cadena devuelta por Google según el navegador para que saliera bien en todos ellos. Obviamente era posible y probable que según la configuración del ordenador de cada uno no salga bien.

    Si le echas un vistazo al código HTML de la demo (en este enlace), verás el siguiente fragmento de código:

    var topadd = 0, leftadd = 0;
    if ($.browser.msie) { topadd = 2; leftadd = 12; }
    else if ($.browser.mozilla) { topadd = 0; leftadd = 7; }
    else if ($.browser.opera) { topadd = -3; leftadd = 4; }
    else if ($.browser.safari) { topadd = 0; leftadd = 8; }

    Básicamente el código de arriba es para saber cuanto tiene que desplazar el iframe donde sale el PageRank para que salga perfectamente, según cada navegador. Puedes tratar de cambiar el topadd y el leftadd para el IE hasta que se vea bien, o si se te ocurre alguna otra forma de hacerlo, bienvenida sea, porque esta, todo sea dicho, es un poco chapuza ;)

    Un saludo y gracias por el comentario.

  5. Bronco
    04/04/2009 at 5:40 pm Permalink

    hey thx a lot for this solution!!! I think i will integrate it in my site! until today I didn’t know a reliable solution for getting the actual PR of websites. This is for the most webmaster a really important information. (not for all :-) ) . it’s only for me an indicator not more. hey and for those who say it’s illegal ,.. are you stupid robots without brain? do you really think everything google does was right? brave sheep do your job and eat gras and don’t disturb us anymore.

    again thx for this great chance to struggle the force of google and his approach don’t be evil.

    bronco.

  6. Kelvin72
    22/10/2009 at 1:22 pm Permalink

    And it also helps these young people understand some of the ways they might improve their community. ,

  7. Mark63
    22/10/2009 at 1:28 pm Permalink

    Mass Effect and a simple game like pong or snake, but they are all games. ,

  8. Dan
    28/02/2010 at 3:22 am Permalink

    Hola,
    Este script es un trabajo excelente. Me parece fantástico que puedan hacerse este tipo de cosas con javascript. En mi caso, ya lo uso en mi sitio y trabaja perfectamente.

    Saludos y enhorabuena por tu trabajo.

  9. Dan
    28/02/2010 at 5:47 am Permalink

    Hola,
    Este script es un trabajo excelente. Me parece fantástico que puedan hacerse este tipo de cosas con javascript. En mi caso, ya lo uso en mi sitio y trabaja perfectamente.
    service webmaster SEO
    usuarios de este sitio que deseen ver como trabaja el código de manso pueden seguir el enlace anterior.
    Saludos y enhorabuena por tu trabajo.

  10. Pau Sanchez
    06/03/2010 at 12:04 am Permalink

    Gracias

  11. Dan
    08/03/2010 at 12:50 am Permalink

    Amigo mio nada tienes que agradecer tu trabajo es bueno, sigue haciendo cosas como esta, y si quieres en mi web siempre habrá un espacio para tus programas, solo envíame un correo con tu ultima novedad y lo publicaré en mi web.

  12. Hugo
    04/09/2010 at 9:35 am Permalink

    Excelente trabajo, no cabe duda que te gusta lo que haces.

    Saludos cordiales

  13. Antonio
    27/12/2010 at 3:41 pm Permalink

    Este javascript es una maravilla. Justo lo que estaba buscando. Enhorabuena

Hi Stranger, leave a comment:

ALLOWED XHTML TAGS:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Subscribe to Comments