Este script de Python está diseñado para extraer métricas de rendimiento web, específicamente Core Web Vitals, de una lista de URL utilizando la API de Google PageSpeed Insights. Utiliza la biblioteca aiohttp
para solicitudes HTTP asincrónicas y asyncio
para manejar la concurrencia. Luego, las métricas extraídas se procesan y guardan en un archivo de Excel para su posterior análisis.
Lista de URL : el script comienza con una lista predefinida de URL para analizar. Puede personalizar esta lista agregando o eliminando URL en la variable url_list
.
Configuración de API : se establecen parámetros de configuración clave, que incluyen:
category
: La categoría de rendimiento para el análisis.today
: la fecha actual en el formato "dd-mm-aaaa".locale
: La localidad para el análisis (por ejemplo, 'br' para Brasil).key
: Su clave API, que puede obtener de la API PageSpeed Insights de Google. Extracción de datos API : el script define una función asincrónica webcorevitals
para realizar solicitudes API para cada URL, tanto para dispositivos 'móviles' como 'de escritorio'. Extrae varias métricas de rendimiento, como el retraso de la primera entrada (FID), la interacción con la siguiente pintura (INP), el tiempo hasta el primer byte (TTFB), la primera pintura con contenido (FCP), el índice de velocidad (SI), la pintura con contenido más grande (LCP). , tiempo de interacción (TTI), tiempo total de bloqueo (TBT), cambio de diseño acumulativo (CLS), tamaño total de página y puntuación de rendimiento general.
Transformación de datos : los datos extraídos se transforman y procesan para garantizar la coherencia y los tipos de datos adecuados.
Creación de DataFrame : se crea un Pandas DataFrame para organizar las métricas extraídas. El DataFrame está estructurado con columnas para Fecha, URL, Puntuación, FCP, SI, LCP, TTI, TBT, CLS, Tamaño en MB y Dispositivo.
Ejecución concurrente : el script utiliza asyncio para ejecutar solicitudes API simultáneamente para todas las URL y dispositivos, lo que acelera significativamente el proceso de extracción de datos.
Salida de Excel : el DataFrame final se concatena a partir de todas las solicitudes y se guarda como un archivo de Excel llamado 'output.xlsx' en el mismo directorio que el script.
Instalar dependencias : asegúrese de tener instaladas las bibliotecas de Python necesarias. Puedes instalarlos usando pip:
pip install aiohttp asyncio pandas
Clave API : obtenga una clave API de la API PageSpeed Insights de Google y reemplace la variable key
en el script con su clave.
Personalizar lista de URL : personalice la lista de URL para analizar modificando la variable url_list
en el script.
Ejecute el script : Ejecute el script usando Python:
python lighthouse.py
Salida : una vez que el script finaliza la ejecución, encontrará un archivo de Excel llamado 'output.xlsx' que contiene las métricas de rendimiento web extraídas en el mismo directorio que el script.
Por ejemplo:
Fecha | URL | Puntaje | FCP | SI | LCP | ITT | OTC | CLS | Tamaño (MB) | Dispositivo |
---|---|---|---|---|---|---|---|---|---|---|
2023-09-25 | https://www.google.com | 76 | 2 | 3.2 | 2 | 8.5 | 910 | 0.014 | 1.123100281 | móvil |
2023-09-25 | https://www.google.com | 92 | 0,4 | 0,8 | 0,6 | 1.9 | 220 | 0.007 | 1.246808052 | de oficina |
Si desea contribuir, abra un número o envíeme un correo electrónico a [email protected]. Si no, solo dame una estrella.