Blog de marketing digital y SEO

Posicionamiento web: Google Ranking Checker

COMPARTIR
Califica esta publicación

Uno de las tareas SEO que cualquier empresa tendría que hacer es monitorizar el posicionamiento web de sus proyectos. Os quiero presentar este script, que se encarga de monitorizar los SERPS de Google, de manera que puede notificarnos en que posición estamos para una determinada keyword.

El script es muy simple, consta de un único archivo y para configurarlo tan solo debemos especificarle la keyword a comprobar y la url de nuestra página web.


Lo interesante de este script SEO es que se puede modificar de manera muy simple y hacer –por ejemplo- que compruebe múltiples keywords para un dominio o que nos llegue al correo de manera periódica las posiciones que tenemos.

El único requisito es que tengas instalada la librería Curl con soporte PHP en el servidor donde ejecutarás el programa (la mayoría de hostings ya lo tienen).

Configuración de Google Ranking Checker:

  • Para configurarlo editamos las variables que están en las lineas 3 y 4 con nuestra url y keyword.
  • Es importante que pongamos una barra final a nuestro dominio.
  • Si tenemos problemas con las peticiones o queremos ver como quedan los resultados podemos descomentar la línea 43 (//print_r($matches[1]);).
  • *Si vas a hacer muchas peticiones se recomienda que uses proxys (Curl tiene una opción para eso) ya que Google baneará tu ip si pasas de un número de peticiones al día, bloqueando el acceso para que no hagas más peticiones.
  • Con un poco de imaginación a parte del posicionamiento web se pueden monitarizar más cosas 🙂 Que lo disfrutéis.

Script PHP: Monitorizar posicionamiento web

<?php
$mi_web = "http://www.google.es/";
$keyword_buscar = "buscador";
function peticion($url, $referer, $agent, $timeout) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_REFERER, $referer);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    $result["EXE"] = curl_exec($ch);
    $result["INF"] = curl_getinfo($ch);
    $result["ERR"] = curl_error($ch);
    curl_close($ch);
    return $result;
}
$url = "http://www.google.com/search?hl=es&as_q=".urlencode($keyword_buscar)."&as_epq=&as_oq=&as_eq=&lr=&as_filetype=&ft=i&as_sitesearch=&as_qdr=all&as_rights=&as_occt=any&cr=&as_nlo=&as_nhi=&safe=images&num=100";
$result = peticion($url, "http://www.google.com/", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8", 5);
//print_r($result["INF"]);
//print_r($result["ERR"]);
if (empty($result['ERR'])) {
    // Comprobamos si hay captcha...
    preg_match_all("@<h3\s*class=\"r\">\s*<a[^<>]*href=\"([^<>]*)\"[^<>]*>(.*)</a>\s*</h3>

@siU", $result["EXE"], $matches);
    $i = 1;
    foreach( $matches[1] as $direccion ){
		if( $direccion == $mi_web ){
			echo "<strong>Posicionamiento WEB:</strong>\n";
			echo "La web $mi_web está en la posición $i\n";
			die();
		}
		$i++;
	}
//print_r($matches[1]);
echo "La web $mi_web no se ha encontrado en los SERPS por la keyword $keyword_buscar";
} else {
    //Si hay problemas con la peticion (timeout, url incorrecta...) iremos aqui
}
?>
newsletter 16 comentarios

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  • Me gusta 🙂 Pero diría que la mejor manera de comprobar el posicionamiento para palabras claves es analizar el LOG de tu servidor. Google pasa la posicion exacta de cada busqueda para cada usuario con cada visita en los parametros de la URL.
    Mirando el log puedes saber la posicion, el tipo de busqueda (imagen, web, places..) del cual ha venido la visita.
    Ya que con universal Search, Google+, resultados personalizados y todo el tinglao creo que es la manera mas efectiva para averiguar posicionamientos (o mejor dicho: una media de la posicion) de cada palabra.
    No se si me explico 🙂 Saludos al equipo de SEOCOM

    • Hola David,
      Gracias por comentar.
      No hemos puesto el código porque es «la mejor» manera de comprobar el posicionamiento web de un site, sino porque es el inicio de una programación que te puede ayudar en tus tareas SEO.
      Como decía Victor, mas abajo, se puede comprobar la posición de la competencia, pero mucho más. Solo has de utilizar la imaginación para que te alerte si algo cambia en los sites de la competencia o cosas peores «mejores» 🙂
      Sergi es un experto en este campo. Un pieza indispensable de nuestro equipo SEO.

  • Jorge

    Hola, tiene un pequeño margen de error para la posición exacta por keywords, sin embargo, es excelente, pues me sirve para verificar si un sitio dónde he colocado un enlace, se ha indexado buscando la url exacta.

  • Mil gracias por el codigo…
    Se me habia inutilizado mi antiguo script (hacia mucho que no lo usaba) y gracias a este he visto los nuevos parametros que pasarle a la busqueda y lo que ayuda hacerte pasar por firefox.
    gracias!

  • Pablo Alberto

    Muchisimas gracias, justamente algo asi estaba buscando, alguna herramienta sencilla donde se pueda dar seguimiento a una palabra en especifica, a demas de realizar las busqueda acostumbradas directamente en los motores de busqueda.
    Excelente articulo, por cierto lo encontre en google, en breve lo pondre en practica

  • Hola
    Me olvidaba comentar que puedes usar esto entre unas pocas veces hasta mas de 100 consultas. Todo depende de cuanto tiempo dejes entre consulta y consulta, con lo que si te montas un pequeño script que lo haga en tiempo aleatorio, podrás usarlo tantas veces como quieras.

  • La meta de este blog post era enseñar algo a un género de usuarios que prosigue rellenando la casilla de las keyword tal y como si fueran a conseguir posicionar solo por redactar ahí.

  • Valuable information. Fortunate me I found your web site by accident, and I am surprised why this twist of fate didn’t happened in advance! I bookmarked it.

  • Este paso es opcional, especialmente si ha apuntado el nombre del dominio a la dirección IP de su servidor
    virtual privado.

  • Genial! has comentado una entrada totalmente buena.
    Gracias! y muchas felicidades por tu aportación :P.

  • He estado en internet on line más de 4 horas, pero nunca encontré un post tan interesante como el tuyo.
    Sin lugar a dudas genial y vale la pena, al menos para mí.
    Mi opinión, si todos los propietarios de blogs o bloggers hicieran un buen contenido para la web sería más útil para todos.
    Yo no quería resistirme de comentarlo. Perfectamente
    Voy enseguida a anotarme su rss.
    Igual podría escribir los próximos artículos refiriéndose a esta entrada.
    Yo deseo leer más cosas sobre este post!|
    ¡WoW! me encanta el diseño/tema de esta web. Es simple, pero efectiva.
    Muchas veces es muy difícil para lograr ese «equilibrio perfecto»
    entre usabilidad amigable y aspecto visual. Debo decir que tiene hecho un excelente
    trabajo con esto. También el blog carga muy rápido para mí en Chrome.
    Excelente Blog!

Mejora tu posicionamiento web

Empieza hoy