Postado em em 31 de janeiro de 2022

Hoje eu quero te mostrar mais um case prático em Python, hoje vamos ver cobranças automáticas por e-mail com Python!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Case Prático em Python

Hoje eu vou abordar mais um case prático em Python, mas dessa vez vamos falar sobre cobranças automáticas por e-mail!

Você provavelmente já deve ter feito esse controle de forma manual, olhando cada pessoa e enviando e-mail uma a uma não é mesmo? Hoje você vai aprender a fazer isso de forma automática.

Cobranças Automáticas com Python

A ideia dessa aula é te mostrar como você vai fazer para mandar e-mail de cobrança para uma lista de clientes de forma automática sem que você tenha que enviar um por um.

Isso vai facilitar e te economizar muito, mas muito tempo mesmo nessa sua atividade.

Agora vamos ao código! Antes de mais nada é importante informar que para esse projeto nós vamos utilizar o Jupyter (editor de Python).

E vamos utilizar a biblioteca pandas, biblioteca datetime e a biblioteca pywin32. O pandas é uma biblioteca para análise de dados, o date time é uma biblioteca que te permite trabalhar com tempo e trazer data e hora atual!

Por fim, a biblioteca pywin32 vai permitir com que você utilize alguns comandos do Windows, então vai nos ajudar no envio dos e-mails.

Instalando e Importando as bibliotecas
Instalando e Importando as bibliotecas

O primeiro passo é a instalação da biblioteca pywin32, pois ela não vem instalada no Jupyter. Em seguida vamos importar as 3 bibliotecas para podermos utilizá-las.

Lendo o arquivo em Excel
Lendo o arquivo em Excel

Em seguida vamos fazer a leitura do arquivo em Excel, que é o nosso arquivo de clientes com as informações de e-mails.

Essa leitura será feita com o comando pd.read_excel do pandas. Logo em seguida vamos mostrar a tabela e vamos mostrar também as informações dessa tabela.

Essas informações vão permitir com que você veja um resumo da tabela com as colunas, quantidade de informações vazias e o tipo de dado de cada coluna.

Verificando a data atual
Verificando a data atual

Aqui nós vamos verificar a data atual, isso vai servir para nossa análise.

A ideia é mandar os e-mails de cobrança para os clientes que estão com o pagamento em aberto e que a data de pagamento já tenha passado.

Sabendo disso nós vamos ajustar a nossa tabela de devedores para ter apenas as pessoas que estão dentro dessa descrição.

Cobranças Automáticas por e-mail com Python
Filtrando os clientes devedores

Aqui vamos ter uma tabela apenas com as pessoas que estão com o status em aberto e que a data de pagamento já passou.

Com isso nós já temos a lista de pessoas as quais vamos mandar o e-mail, então já vou te ensinar como enviar e-mail com Python.

Cobranças Automáticas por e-mail com Python
Estrutura para envio de e-mail com o Outlook

Nessa primeira parte nós vamos abrir a aplicação do Outlook no seu computador para que o e-mail seja enviado.

Em seguida vamos informar de qual e-mail enviaremos para os clientes, nesse caso pode ser o seu pessoal caso trabalhe com ele ou o e-mail da empresa.

Na parte que você está vendo em verde é a estrutura de como o e-mail será construído, ele precisa dessas informações para que possamos formatá-lo.

Esse é apenas um modelo, logo abaixo vou te mostrar as informações já preenchidas.

Por fim, para terminar esse bloco de código, nós temos os dados dessas pessoas, então estamos colocando em uma variável as informações de cada um dos devedores.

Nós vamos inserir o valor em aberto, a data prevista para pagamento, o e-mail e a NF. Isso tudo será necessário, pois vamos utilizar essas informações para compor o nosso e-mail.

Assim teremos um e-mail mais completo e detalhado para o cliente.

Cobranças Automáticas por e-mail com Python
Enviando o e-mail para os clientes devedores

Nessa parte nós vamos preencher as informações do e-mail que vimos anteriormente com os dados reais de cada cliente e a mensagem que será enviada.

Além disso vamos utilizar a estrutura de repetição for para passar por todos os dados dos clientes, assim vamos conseguir mandar e-mails para todos eles.

Aqui estamos pegando as informações que temos dentro da nossa variável de dados. Então vamos pegar o destinatário, a NF, o prazo de pagamento (nessa parte vamos alterar o formato da data para o formato brasileiro) e pegaremos o valor.

Com essas informações já conseguiremos compor o e-mail. Então vamos colocar o assunto do e-mail e colocar as informações do destinatário no seu devido campo.

Feito isso nós vamos poder escrever o e-mail que cada cliente vai visualizar. Como você deve saber, as informações de cada um deles são diferentes.

Então vamos utilizar as variáveis que estamos pegando da variável dados, assim como fizemos no início do código.

Isso vai fazer com que cada e-mail tenha um texto padrão, mas as variáveis serão diferentes para cada um deles.

Então as informações importantes como NF, prazo e o valor serão diferentes para cada um desses clientes.

Então o texto fica por sua conta, se precisar inserir um link, e-mail de contato ou qualquer outra informação fique à vontade.

Agora nós podemos executar o código e ver a mágica acontecer.

IMPORTANTE: É sempre importante que você faça um teste no seu código antes de rodar ele de forma definitiva, pois pode verificar se tem algum bug ou outro problema. Aqui não é diferente, ainda mais que está mandando e-mails para outras pessoas, então pode começar com menos clientes e colocando seu e-mail como destinatário para verificar se está recebendo.

Caixa de entrada com os e-mails enviados
Caixa de entrada com os e-mails enviados

Agora você vai poder verificar os e-mails chegando na sua caixa de entrada, assim vai poder verificar se está tudo correto e depois é só aplicar para o seu trabalho fazendo os seus ajustes!

Conclusão das Cobranças Automáticas por e-mail

Nessa aula eu te mostrei mais um case prático em Python como fazer cobranças automáticas por e-mail de forma muito eficiente.

Assim você vai ganhar muito tempo e vai poder focar em outras atividades na sua empresa!

Caso utilize esse código é sempre bom lembrar de alterar todos os dados que precisa para inserir os seus e testar antes de rodar o código pra valer!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso gratuito?