Diseccionando el sitemap de un medio con GPT y Python

Si alguna vez has querido conocer los secretos que esconde un medio de comunicación(o cualquier sitio con una estrategia de contenidos), estás de suerte. En este artículo, te cuento mi proceso de analítica para extraer todo el jugo de un sitemap con la ayuda de GPT y Python para obtener información valiosa sobre su estrategia de contenidos. Vamos!

¿Qué es un sitemap?

Un sitemap es un archivo XML que contiene una lista de todas las páginas de un sitio web. Este archivo se utiliza para ayudar a los motores de búsqueda a indexar el contenido del sitio y mejorar su posicionamiento en los resultados de búsqueda. Además, también puede ser utilizado por los usuarios para navegar por el sitio y encontrar el contenido que están buscando.

¿Por qué es importante el sitemap de un medio de comunicación?

Un medio de comunicación tiene una gran cantidad de contenido que se actualiza constantemente. Por lo tanto, es muy importante tener una forma de organizar todo ese contenido y hacerlo fácilmente accesible para los usuarios. El sitemap de un medio de comunicación es una herramienta valiosa para lograr esto.

Pero nosotros lo queremos para obtener información sobre el contenido del sitio, como la cantidad de artículos publicados en un período de tiempo determinado o la cantidad de artículos publicados en una categoría específica.

¿Cómo se puede obtener información a partir del sitemap?

Para obtener información a partir del sitemap de un medio de comunicación, se puede utilizar Python, un lenguaje de programación muy popular en el ámbito del análisis de datos y la ciencia de datos. Python tiene una gran cantidad de bibliotecas y herramientas que facilitan la tarea de trabajar con archivos XML y extraer información relevante del sitemap.

Puedes utilizar GPT u otra herramienta para crear el código(yo lo he hecho con la versión gratuita de GPT-3) y a base de copia, pega, error y vuelta a preguntar y corregir con nuestra amiga ia.

Para maquetar este código puedes utilizar perfectamente Google Colab o algun editor de código como Visual Studio Code.

¿Dónde encontrar el sitemap?

Hay varias formas de identificar la URL del sitemap de un medio de comunicación:

  1. Buscar en el archivo robots.txt: El archivo robots.txt es un archivo de texto que se encuentra en la raíz del sitio web y que contiene información sobre qué páginas o secciones del sitio pueden ser rastreadas por los robots de los motores de búsqueda. Si se encuentra un archivo robots.txt en el sitio web, es probable que también se incluya la URL del sitemap.
  2. Usar una herramienta de análisis SEO: Hay varias herramientas de análisis SEO disponibles en línea que pueden escanear un sitio web y proporcionar información sobre la estructura del sitio, incluyendo la URL del sitemap.
  3. Buscar en la barra de direcciones del navegador: Algunos sitios web pueden incluir la URL del sitemap en la barra de direcciones del navegador, por ejemplo, si la URL del sitio es «https://www.ejemplo.com«, la URL del sitemap podría ser «https://www.ejemplo.com/sitemap.xml«.
  4. Realizar una búsqueda en Google: Si se conoce el sitio web y se sabe que tiene un sitemap, se puede realizar una búsqueda en Google utilizando los términos «sitio web nombre sitemap» para encontrar la URL del sitemap.

Paso 1: Descargar el sitemap

Lo primero que necesitamos hacer es descargar el sitemap del medio X. Esto se puede hacer utilizando por ejemplo la biblioteca de Python «requests». En este punto le doy información a GPT sobre la estructura que se puede observar en el sitemap, por ejemplo, si hay un indice que contiene subcarpetas, si hay columnas como se llaman y si hay patrones que puedan servir para crear columnas adicionales al Dataframe como podría ser una categoría contenida en el slug de la url. Toda la información que le puedas dar va a reducir la cantidad de errores y a mejorar la calidad de la analítica.

Paso 2: Extraer la información relevante y crear columnas para almacenar patrones interesantes

Una vez que hemos descargado el sitemap, necesitamos analizarlo para obtener la información que nos interesa. Le pediremos a GPT lo que quiero extraer de las URLS(generalmente enlistadas en la categoria «loc») por ejemplo todas las urls que contengan la categoria /noticias/ y agregarlas al DataFrame como una columna aparte para diferenciar por sección.

GPT trabajó para esto con las librerías de Python:

  • xml.etree.ElementTree: Para analizar el sitemap
  • Requests: para hacer una petición HTTP a cada URL y descargar el contenido de la página
  • BeautifulSoup: para extraer la información que necesitamos.
  • Pandas: para procesar la información y crear un DataFrame nuevo
  • Datetime: para trabajar con fechas

Como resultado obtendremos algo similar a lo que podría ser un excel con todo el contenido del medio organizado por secciones, fechas, prioridades de publicación, etc, etc. Como por ejemplo:

Dataframe resultante de la extracción y análisis del sitemap de un medio de comunicación
Dataframe resultante de la extracción y análisis del sitemap de un medio de comunicación

Paso 3: Analizar los datos y obtener insights

Una vez que tenemos el DataFrame con toda la información y columnas, podemos empezar a analizar los datos y obtener insights interesantes.

En este punto le pido a GPT que me ayude a generar los códigos para responder a preguntas como: ¿Cuántos artículos se han publicado en los últimos 12 meses? ¿Cuál es la categoría más popular? ¿Cuál es el autor con más publicaciones? ¿Hay estacionalidad en la cantidad de publicaciones? ¿Cuales son las temáticas o marcas más relevantes dentro de los contenidos?

Aquí el único limite te lo ponen la cantidad de dudas que tengas.

En este ejemplo le pido a GPT que me genere un código para conocer la frecuencia de contenidos por secciones para este medio especializado en automotor y me arroja:

Articulos por sección
Articulos por sección

Paso 4: Visualizar los resultados

Finalmente, podemos visualizar los resultados obtenidos en el paso anterior para hacerlos más accesibles y fáciles de entender y complementar con la fecha de las publicaciones. Podemos utilizar librerías como matplotlib o seaborn para crear gráficos y visualizaciones interesantes que nos permitan ver de manera clara los insights obtenidos.

En este ejemplo, le pedí un mapa de calor para conocer las publicaciones anuales por categorias y me arroja un gráfico como este:

Mapa de calor de publicaciones de un medio de comunicación
Mapa de calor de publicaciones de un medio de comunicación

En resumen, la extracción y procesamiento de información de un sitemap puede ser una tarea muy útil y poderosa para analizar el contenido de un medio de comunicación o de cualquier sitio con una estrategia de contenidos.

Con las herramientas adecuadas, podemos obtener insights interesantes y tomar decisiones informadas en base a los datos obtenidos. Además, al automatizar este proceso, podemos ahorrar tiempo y descubrir estrategias que funcionan.

Si quieres un video a detalle del proceso les recomiendo seguir a Alan Preiti y sus consejos se SEO y Python que no tienen desperdicio:

¡Salud!

Deja un comentario

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

Scroll al inicio