Extraer Consultas de Busqueda mediante la API de WMT

Publicado el 11 de marzo del 2014 by Lino UruñuelaErrioxa

Hace tiempo que no escribo con frecuencia, pero eso está cambiando!
Para motivarme voy a comenzar una serie de post donde explicar cómo usar distintas APIs de Google, y hoy vamos a comenzar con la API de Webmaster Tools, vamos a recoger los datos de las consultas de búsqueda de nuestro site y lo meteremos en una base de datos para poder luego manejarlos a nuestro antojo.

Los datos que vemos en la herramienta para webmasters, en la opción de Consultas de Búsqueda tenemos las KWs por las que nuestro site ha sido mostrado en los resultados de Google (OJO, mostrados, no que entren). Estas KWs puede ser una muy buena fuente de información para varias cosas, por ejemplo

  • KW Research
    Cada vez está más complicado hacer un buen KW Research debido al famoso Not Provided y a que los principales navegadores y sistemas operativos miran más por la privacidad de sus usuarios y no envían el referer completo como antes. Por ello, cualquier fuente de palabras y términos que podamos obtener será bienvenido. El histórico de estos datos en WMT es de tres meses, anterior a ese periodo no puedes ver más, por lo que hace muy útil y funcional tener guardados esos datos con nuestros propios medios.

  • Cálculo de visitas Not Provided
    Sabiendo las impresiones que han causado cada KW y sabiendo la landing a la cual llegaron estos usuarios podrías asignar un valor a cada landing para la kw not provied (esto será otro post..).

  • Vigiliar cambios en los rankings para cada búsqueda
    El cómo calcula Google el dato de posición media es un poco confuso, aunque parezca claro el nombre de la columna de ese dato "Posición media" no sabemos en base a que varía esa posición, podemos suponer que depende de la localización del usuario que hace la búsqueda, el dispositivo que use, el idioma, etc... pero no lo tenemos claro, pero sí nos puede servir como una alerta si vemos que cae la posición media.

 

Para guardar estos datos tenemos dos opciones, o vamos descargando los datos día a día exportándolos en un excel o usamos la API.

Digo que descargamos los datos día a día porque así son mucho más fiables y más completos, si descargas los últimos 3 meses de una vez tenemos un cierto límite. Y es que si te descargas los datos día a día vemos que obtenemos más KWs que si lo hacemos en un periodo mayor. Posiblemente Google esté sampleando los datos y te ofrece al igual que en Analytics una muestra de datos. Por eso yo recomiendo recoger estos datos día a día.

Si queremos obtenerlos día a día y guardarlos de una forma que luego nos pueda ser útil lo ideal es usar la API y guardar estos datos en una base de datos, yo lo hago con MySql. Para ello lo primero que vamos a hacer es crear una tabla donde recogerlos

 CREATE TABLE WMT_Consulta_Busquedas (
  cod_wmt int(11) NOT NULL AUTO_INCREMENT,
  wmt_kw varchar(245) COLLATE utf8_spanish_ci DEFAULT NULL,
  impresiones int(11) DEFAULT NULL,
  clicks int(11) DEFAULT NULL,
  CTR varchar(45) COLLATE utf8_spanish_ci DEFAULT NULL,
  rank varchar(45) COLLATE utf8_spanish_ci DEFAULT NULL,
  cambioClicks varchar(45) COLLATE utf8_spanish_ci DEFAULT NULL,
  cambioRank varchar(45) COLLATE utf8_spanish_ci DEFAULT NULL,
  fecha varchar(45) COLLATE utf8_spanish_ci DEFAULT NULL,
  PRIMARY KEY (cod_wmt)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci


Ya tenemos la tabla en nuestra BBDD, ahora hay que llenarla!!

Yo he usado esta clase para PHP y si no usáis PHP aquí tenéis la documentación, seguro que buscando se encuentra fácilmente ejemplos para todos los lenguajes de programación más comunes, phyton, php, java, etc

Yo he creado dos ficheros, uno llamado consultas-busqueda.php y otro gwtdata.v2.php (podéis descargarlos desde aquí) donde el primero en la primera líneaincluye al segundo. Lo hago así porque se puede cambiar fácilmente los datos de acceso a las webs que quieres.

Al abrir consultas-busqueda.php veremos en las primeras líneas las variables a cambiar con nuestros datos



        $email = "EmailAccesoAnalytics@gmail.com"; //email de acceso a analytics
        $password = "******";  //contrasena de acceso a analytics
        $website = "http://www.tudominio.com/"; //tu dominio


        $_SESSION["tablaConsultaBusqueda"] = "WMT_Consulta_Busquedas"; //tabla
        $FechaHoy = date("Y-m-d");
        $FechaInicial = date("Y-m-d",strtotime('-1 day',strtotime($FechaHoy)));
        $FechaFinal = date("Y-m-d",strtotime('-3 month',strtotime($FechaInicial)));


        mysql_connect("localhost","user","password"); //datos de la BBDD
        mysql_select_db("nombreBBDD"); //nombre de la BBDD


Cambiando estas líneas con vuestros datos el script descargará un excel con todas las consultas de búsqueda por día y las  introducirá en vuestra BBDD.

Y hasta aquí el primer post de la serie de posts sobre APIs útiles para el SEO. Pronto la segunda!!

 

 


Comentarios

Javier Lorentehace Hace más de 3 años y 253 días

El que no pude descargar desde hace tiempo es el de errores de rastreo :-(

Alberto Romerohace Hace más de 3 años y 253 días

Hola,

Yo utilice este método con xamp más el php en una carpeta en local ejecutaba el php y todo ok se descargaban los datos.

pero con no me dejaba descargar todos los tipos de consultas que se pueden obtener de WGT.

no recuerdo cual era la que no me descargaba si top_pages, top_querys, etc...

¿tu puedes descargar todos los tipos de datos?

Saludos!

Errioxahace Hace más de 3 años y 252 días

@Alberto la verdad es que no he probado, los errores los miro con los logs del server :)

Deja un comentario


Posts anteriores en WebmasterTools


Space Needle
Publicado por Lino Uruñuela el 21 de agosto del 2015 El oto día Google anunció lo que muchos SEOs veníamos pidiendo desde hace años, una API decente para acceder a los datos que nos da Google Search Console. Anteriormente se hacía la extracción

Seguir leyendo
  • 0000-00-00 00:00:00

Publicado el 10 de enero del 2014 by Lino Uruñuela Como ayer comenté, en WMT ha habido algún cambio en cuanto a la exactitud de los datos que nos arroja sobre nuestra web, concretamente sobre las Consu

Seguir leyendo
  • 0000-00-00 00:00:00

Publicado el 9 de enero del 2014 by Lino Uruñuela   Ayer cuando me reconecté después de mi mes sabático una de las cosas que hice fue ir a WMT para comprobar si había ocurrido algo en alguno de los sites. Cuando fui a "Consultas de búsqueda&qu

Seguir leyendo

Datos de contacto
  • 637167218
  • wachynaky@gmail.com

Dónde encontrarme

FunnelPunk.com


Blog Seo de Lino Uruñeula
Co-Fundador



Lánzate y pregunta!

Nos gustan los robots, pero no tanto
7 + 3

Últimos posts

Últimos comentarios


Mateo Bohorquez

Hola hermano, lo he intentado y no me funciona. para acotar problemas lo que hize fue usar ejemplo que nos redirige a otra pagina. este:
Post: Ofuscando enlaces para mejorar Link Juice

Juan M.

¿Esto lo has probado en Safari o Firefox? No pilla bien el preload para css
Post: Cómo cargar css y js y no bloquear la carga de contenido

Luis Salazar Jurado

Buenas Lino He hecho un test en mi site: www.seotecnico.com y tras hacer test en Iphone, Chrome y Firefow parece que funciona Sería a
Post: Cómo cargar css y js y no bloquear la carga de contenido

Luis Salazar Jurado

Gracias Lino por avisar. Solo he aplicado las mejoras de CSS y va como un tiro. Debido a que la web en la que lo he implementado cargo
Post: Cómo cargar css y js y no bloquear la carga de contenido

Tomás

...la línea ---?php wp_head()--- Gracias.
Post: Cómo cargar css y js y no bloquear la carga de contenido

Tomás

Hola Lino. En WordPress, ¿de qué manera se podría editar una línea de código CSS y JS para añadir las modificaciones en verde que menc
Post: Cómo cargar css y js y no bloquear la carga de contenido

Juan M.

Para mí, esa forma de cargar los estilos donde todo se ve sin estilo y los carga a los segundos me da una muy mala sensación del site. Tan
Post: Cómo cargar css y js y no bloquear la carga de contenido

Errioxa

@Luis actualizado! Si te da algún problema avisa!
Post: Cómo cargar css y js y no bloquear la carga de contenido

Luis Salazar Jurado

Lo he implementado y va como la seda Espero la actualización que has comentado en Twitter para ver el Javascript, pero solo con el CSS y
Post: Cómo cargar css y js y no bloquear la carga de contenido

Errioxa

@Antonio solo Google sabe si se pasa o no lj con nofollow, en principio la url de destino no se vería beneficiada porque no lo contaría, p
Post: ¿Cómo ejecuta, interpreta e indexa Google el contenido cargado mediante javascript?

Categorias