Ce script Python est conçu pour extraire des mesures de performances Web, en particulier Core Web Vitals, à partir d'une liste d'URL à l'aide de l'API Google PageSpeed Insights. Il utilise la bibliothèque aiohttp
pour les requêtes HTTP asynchrones et asyncio
pour gérer la concurrence. Les métriques extraites sont ensuite traitées et enregistrées dans un fichier Excel pour une analyse plus approfondie.
Liste d'URL : Le script démarre avec une liste prédéfinie d'URL à analyser. Vous pouvez personnaliser cette liste en ajoutant ou en supprimant des URL dans la variable url_list
.
Configuration de l'API : les paramètres de configuration clés sont définis, notamment :
category
: La catégorie de performances pour l’analyse.today
: la date actuelle au format "jj-mm-aaaa".locale
: La locale pour l'analyse (par exemple, 'br' pour le Brésil).key
: Votre clé API, que vous pouvez obtenir à partir de l'API PageSpeed Insights de Google. Extraction de données API : Le script définit une fonction asynchrone webcorevitals
pour effectuer des requêtes API pour chaque URL, à la fois pour les appareils « mobiles » et « de bureau ». Il extrait diverses mesures de performances, telles que le délai de première entrée (FID), l'interaction avec le prochain dessin (INP), le temps jusqu'au premier octet (TTFB), le premier dessin de contenu (FCP), l'indice de vitesse (SI), le plus grand dessin de contenu (LCP). , le temps d'interactivité (TTI), le temps de blocage total (TBT), le décalage de mise en page cumulé (CLS), la taille totale de la page et le score de performance global.
Transformation des données : les données extraites sont transformées et traitées pour garantir la cohérence et les types de données appropriés.
Création DataFrame : Un Pandas DataFrame est créé pour organiser les métriques extraites. Le DataFrame est structuré avec des colonnes pour Date, URL, Score, FCP, SI, LCP, TTI, TBT, CLS, Taille en Mo et Appareil.
Exécution simultanée : le script utilise asyncio pour exécuter des requêtes API simultanément pour toutes les URL et tous les appareils, accélérant considérablement le processus d'extraction des données.
Sortie Excel : le DataFrame final est concaténé de toutes les requêtes et enregistré sous forme de fichier Excel nommé « output.xlsx » dans le même répertoire que le script.
Dépendances d'installation : assurez-vous que les bibliothèques Python requises sont installées. Vous pouvez les installer en utilisant pip :
pip install aiohttp asyncio pandas
Clé API : obtenez une clé API auprès de l'API PageSpeed Insights de Google et remplacez la variable key
dans le script par votre clé.
Personnaliser la liste d'URL : Personnalisez la liste des URL à analyser en modifiant la variable url_list
dans le script.
Exécuter le script : Exécutez le script en utilisant Python :
python lighthouse.py
Sortie : Une fois l'exécution du script terminée, vous trouverez un fichier Excel nommé « output.xlsx » contenant les mesures de performances Web extraites dans le même répertoire que le script.
Par exemple:
Date | URL | Score | FCP | SI | PCL | ITT | OTC | CLS | Taille (Mo) | Appareil |
---|---|---|---|---|---|---|---|---|---|---|
2023-09-25 | https://www.google.com | 76 | 2 | 3.2 | 2 | 8.5 | 910 | 0,014 | 1.123100281 | mobile |
2023-09-25 | https://www.google.com | 92 | 0,4 | 0,8 | 0,6 | 1.9 | 220 | 0,007 | 1.246808052 | ordinateur de bureau |
Si vous souhaitez contribuer, veuillez ouvrir un numéro ou envoyez-moi un e-mail à [email protected]. Sinon, donnez-moi simplement une étoile.