Procesar logs con R Studio

Una de las dificultades con la que nos encontramos al analizar el SEO de clientes que tienen millones de URLs, es que es muy difícil aislar los datos y detectar cuáles son los problemas que hacen que nuestro posicionamiento no mejore.

A veces, identificar que no tenemos etiquetas onpage bien optimizadas, que nos faltan los h1 en algunas páginas, que no tenemos alguna etiqueta canonical bien implementada o que el enlazado interno no es el más adecuado, no nos da la visión completa de por qué google no nos posiciona una determinada keyword o por qué no rastrea una determinada URL.

¿Cómo rastrea Google mi web?

Para conocer de primera mano qué es lo que ve Google y qué está rastreando, es imprescindible analizar las peticiones que Google hace a nuestro site a través de los logs del servidor. De esta forma podemos identificar claramente si existe algún problema de rastreo y si Google está rastreando adecuadamente la URLs que nos interesan o por el contrario está rastreando urls que no son relevantes para SEO.

Proceso para analizar logs con R Studio

Como ya sabéis, en Internet República somos muy fans de R Studio ya que nos permite analizar datos de forma masiva sin tener que tener unos conocimientos técnicos demasiado avanzados. Con unas simples líneas de código y gracias a las librerías que existen podemos procesar datos y analizarlos para scrapear contenido o analizar relaciones entre factores entre otras muchas cosas.

  • Lo primero que tenemos que hacer es tener instalado R Studio junto con el paquete readr que es el que nos va a permitir procesar los logs. Para instalar este paquete solo tendremos que poner la siguiente línea en la consola: install.packages(‘readr’)
  • Ahora seleccionaremos el archivo de logs que creemos procesar. Para ello haremos la siguiente llamada a la consola que hará que se nos abra una ventana donde seleccionar nuestro archivo de logs. Una vez seleccionado el archivo, ejecutaremos esa línea:

File<- file.choose()  elegimos el fichero de logs

  • Ya tenemos nuestro archivo de logs dentro de la herramienta. Para procesar los datos, necesitaremos cargar la librería readr, para ello ejecutamos la siguiente línea library(readr)
  • Para procesar el archivo ejecutaremos la siguiente línea en la consola que nos generará el dataframe con los datos completos a analizaranálisis de logs
  • Con esto tendremos nuestros datos procesados, ahora solo tendríamos que adaptar las columnas que realmente necesitamos trabajar para poder hacer una análisis. Lo primero que debemos hacer es renombrar las columnas, ya que por defecto contarán con una numeración (x1, x2, x3, etc). Para ello, añadiremos los valores renombrados en el vector col_names por ejemplo:

log- read_log(file, skip=0, col_names = c(“IP”, “2”, “3”, “fecha”, “peticion”, “status”, “tamaño1”, “tamaño2”, “referrer”, “useragent”, «11”, “12”))

Renombramos aquellas columnas que nos interesen y al resto podemos mantener la numeración ya que más adelante las eliminaremos.

  • Una vez tenemos renombradas las columnas con los datos que nos interesan, debemos filtrar aquellas que queremos analizar y eliminar el resto. Para ello utilizaremos esta línea que selecciona las columnas que indicamos.

log[, c(«IP»,»fecha»,»peticion»,»status»,»referrer»,»useragent»)]

procesar logs para seo

  • Ya tenemos los datos que necesitamos, solo nos quedaría filtrar por Googlebot para conocer cuáles son las peticiones que hace Google al servidor, para ello solo tendremos que indicar que texto queremos filtrar y en qué columna de datos. Esto lo haremos de la siguiente forma:

Ejecutamos la librería dplyr > library(dplyr)

A continuación ejecutamos la siguiente línea de código:

log.googlebot<-log %>% filter(grepl(«googlebot»,useragent))

 

Con esta regla podríamos filtrar las peticiones a googlebot u otros valores como status 200, redirects, fechas concretas, etc.

  • De esta manera podremos analizar cuáles son las peticiones que Googlebot hace a nuestra web y comprobar si se hacen a urls relevantes para SEO o por el contrario detectamos peticiones que no deben existir y tomar acciones para mejorar el crawl budget.

Como podéis comprobar es algo muy sencillo y solo conociendo algunas líneas de código y librerías podemos procesar una gran cantidad de datos que nos ayuden a entender cómo Google rastrea nuestro site.

 

 

 

 

 

 

 

 

 

Rate this post
The following two tabs change content below.

Laura López

Nací en Málaga y dicen que seseo.
Tags:
, ,