Já comentei no meu Blog sobre o GTmetrix para fazer análise de performance em sites. Você passa uma url e ele te retorna informações como tempo de carregamento, tamanho da página, pontuação no PageSpeed e Yslow e outras informações importantes.

Pois bem, quando você precisa analisar apenas 1 site é fácil usar a interface Web. Porém existem casos, como o meu, onde é preciso analisar mais de 20 sites várias vezes por semana e montar Dashboards para consolidar essas informações.

Pensando em automatizar essa tarefa, encontrei uma biblioteca em python que utilizava a API do GTmetrix para fazer essa análise.

O problema é que ela está desatualizada desde 2013, então resolvi atualizar e implementar algumas mudanças que são necessárias pra o meu contexto.

Segue a atualização que eu fiz, já com um exemplo de uso.

Por favor tentem usar o README e me deem feedback ;)

Em resumo minhas necessidades foram:

  • usar um json para passar a lista de urls
  • gravar um arquivo texto com os resultados dos testes.

Depois que esse arquivo é gerado, nós usamos o trio Kibana + Elasticsearch + Logstash para ler os resultados e atualizar os dashboards.

Espero que gostem :)