Este script Python foi projetado para extrair métricas de desempenho da web, especificamente Core Web Vitals, de uma lista de URLs usando a API Google PageSpeed Insights. Ele utiliza a biblioteca aiohttp
para solicitações HTTP assíncronas e asyncio
para lidar com simultaneidade. As métricas extraídas são então processadas e salvas em um arquivo Excel para análise posterior.
Lista de URLs : o script começa com uma lista predefinida de URLs para analisar. Você pode personalizar esta lista adicionando ou removendo URLs na variável url_list
.
Configuração da API : os principais parâmetros de configuração são definidos, incluindo:
category
: a categoria de desempenho para análise.today
: a data atual no formato "dd-mm-aaaa".locale
: O local para análise (por exemplo, 'br' para o Brasil).key
: sua chave de API, que você pode obter na API PageSpeed Insights do Google. Extração de dados de API : o script define uma função assíncrona webcorevitals
para fazer solicitações de API para cada URL, tanto para dispositivos 'móveis' quanto 'desktop'. Ele extrai várias métricas de desempenho, como atraso na primeira entrada (FID), interação com a próxima pintura (INP), tempo até o primeiro byte (TTFB), primeira pintura com conteúdo (FCP), índice de velocidade (SI), pintura com maior conteúdo (LCP) , Tempo de interação (TTI), Tempo total de bloqueio (TBT), Mudança cumulativa de layout (CLS), Tamanho total da página e pontuação geral de desempenho.
Transformação de dados : os dados extraídos são transformados e processados para garantir consistência e tipos de dados adequados.
Criação de DataFrame : Um DataFrame Pandas é criado para organizar as métricas extraídas. O DataFrame é estruturado com colunas para Data, URL, Pontuação, FCP, SI, LCP, TTI, TBT, CLS, Tamanho em MB e Dispositivo.
Execução Simultânea : O script usa asyncio para executar solicitações de API simultaneamente para todos os URLs e dispositivos, acelerando significativamente o processo de extração de dados.
Saída Excel : O DataFrame final é concatenado de todas as solicitações e salvo como um arquivo Excel chamado 'output.xlsx' no mesmo diretório do script.
Instalar dependências : certifique-se de ter as bibliotecas Python necessárias instaladas. Você pode instalá-los usando pip:
pip install aiohttp asyncio pandas
Chave de API : obtenha uma chave de API da API PageSpeed Insights do Google e substitua a variável key
no script pela sua chave.
Personalizar lista de URLs : personalize a lista de URLs a serem analisadas modificando a variável url_list
no script.
Execute o script : Execute o script usando Python:
python lighthouse.py
Saída : assim que o script terminar a execução, você encontrará um arquivo Excel chamado 'output.xlsx' contendo as métricas de desempenho da web extraídas no mesmo diretório do script.
Por exemplo:
Data | URL | Pontuação | FCP | SI | PCL | ITT | TBT | CLS | Tamanho (MB) | Dispositivo |
---|---|---|---|---|---|---|---|---|---|---|
2023-09-25 | https://www.google.com | 76 | 2 | 3.2 | 2 | 8,5 | 910 | 0,014 | 1.123100281 | móvel |
2023-09-25 | https://www.google.com | 92 | 0,4 | 0,8 | 0,6 | 1,9 | 220 | 0,007 | 1.246808052 | área de trabalho |
Se você quiser contribuir, abra uma edição ou envie-me um e-mail [email protected]. Se não, apenas me dê uma estrela.