- Neste projeto iremos realizar análise de dados com pandas e automação de processos para executar tarefas rotineiras, ainda criaremos um app em produção com auxilio da biblioteca Tkinter do Python.
- Imagine que voçê é analista de dados de uma empresa que tem 25 filiais espalhadas em todo o Brasil, todos os dias voçê tem que enviar relatórios por e-mail (One Page) para cada gerente de loja e para a diretoria, esse relatório deve conter todo o resumo em uma página (por isso o nome One Page) informando os indicadores e enviando uma planilha com resumo diário de movimentações financeiras.
Devemos também manter um backup diário com histórico de vendas de todas as lojas organizados por dia.
- Faturamento;
- Diversidade de produtos (quantos produtos diferentes foram vendidos naquele período);
- Ticket médio por venda.
- Faturamento por dia = 1000;
- Faturamento por ano = 1650000;
- Quantidade de vendas de produtos por dia = 4;
- Quantidade de vendas de produtos por ano = 120;
- Ticket médio por dia = 500;
- Ticket médio por ano = 500.
Os emails deste projeto serão enviados via "outlook" abaixo a configuração para envio:
import win32com.client as win32
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'dev.daniel.amorim@gmail.com'
# Com copia? (não obrigatório)
mail.CC = 'email@gmail.com'
# Com copia oculta? (não obrigatório)
mail.BCC = 'email@gmail.com'
mail.Subject = 'Email vindo do outlook'
mail.Body = 'texto do email'
# ou mail.HTML.Body = '<p>email em HTML</p>'
# Anexos (pode ser quantos quiser):
attachment = "caminho do arquivo"
mail.Attachments.Add(attachment)
# Envia o email
mail.Send()
Um e-mail pode ser enviado em formato HTML, caso queira enviar uma tabela no corpo do e-mail, basta
pra isso transformar a tabela em HTML da seguinte maneira:
mail.HTMLBody = f'''
Bom dia,
Segue a tabela de pesquisa de preços!
{tabela.to_html(index=False)} #index false exclui a coluna de index
'''
Abaixo a imagem do modelo em produção de disparo de e-mails:
- ENVIAR PARA LOJA: Ao digitar no input o nome da loja dispara e-mail somente para a loja específica;
- ENVIAR PARA TODAS AS LOJAS: Envia para todas as lojas cadastradas de uma vez;
- ENVIAR PARA DIRETORIA: Envia e-mails com resumo das lojas somente para diretoria.
Segue abaixo os exemplos de e-mails enviados: