Contador de visitas com Flask

Capa do artigo


Hoje vamos ver como podemos fazer um simples contador de visitas com Flask. Nele vamos usar cookies para armazenar o valor de nosso contador.

Antes de tudo instalaremos nossa biblioteca com o seguinte comando:

pip install Flask

Agora vamos criar um arquivo chamado flask_visit_counter.py e adicionar o seguinte código nele:

Começamos importando nossa classe Flask e algumas coisinhas que vão nos ser útil.

Instanciamos nossa classe Flask à variável app.

Na linha 6 criamos uma função que aqui dei o nomeei de visit_counter e decoramos com um método do nosso app que vai chamar nossa função sempre que acessarmos nosso projeto via navegador.

Na linha 7 criamos uma variável que nos vai ser bastante importante. Vamos agora pegar o cookie de nome visit, converter pra inteiro e somar um — para saber como funciona a função getattr clique aqui.

Criamos uma variável msg de string multilinha, um html simples que dentro de uma tag h1 que mostra o número de visitas desse usuário, e pluraliza se for maior que dois.

Agora criamos outra variável e atribuímos make_response à ela, passando nossa mensagem.

Chamamos o método set_cookie passando o nome do cookie e seu valor, que aqui convertemos para string. Agora retornamos nossa variável res

Para o caminho /reset fazemos algo similar ao caminho raiz, porém dessa vez apenas setamos o mesmo cookie com um zero, e no terceiro parâmetro passamos um 0 no tipo inteiro; aqui dizemos que esse cookie só vai valer por 0 segundos, assim o apagando assim que é “atualizado”.

Agora rodamos nosso mini projeto na linha 26.

Tudo entendido até agora?

Por fim basta a gente acessar nosso terminal e rodar o seguinte comando

python flask_visit_counter.py

OBS: se você tiver mais de uma versão do Python instalada em sua máquina, use “python3” no lugar de “python”.

Agora é só ir no navegador, acessar http://localhost:4000/ e ser feliz.

Oh, será que deu pra entender bem? Espero nos vermos novamente.

Leituras recomendadas

Comentários

Postagens mais visitadas deste blog

Criando uma aplicação gráfica Python com TKinter

POO, o que é? É realmente tão difícil?

Baixando vídeo do YouTube com Python