Automação de envio de e-mails em massa via Outlook com Python. Inclui versões via interface gráfica (PyAutoGUI) e backend (Win32com) para demonstrar técnicas de RPA.
"Se é repetitivo, pode ser automatizado."
Este repositório é um exemplo prático de como aplico Python no meu cotidiano profissional.
No meu trabalho atual, sempre busco identificar processos manuais, repetitivos e sujeitos a falha humana para transformá-los em fluxos automatizados e eficientes. Esta solução foi desenvolvida para resolver um gargalo real: o envio manual de centenas de certificados de treinamento, um a um.
O que antes consumia horas da equipe, agora é executado em minutos, garantindo padronização e permitindo que o time foque em tarefas mais estratégicas.
O script lê uma base de dados em Excel contendo nomes e e-mails de colaboradores, localiza os certificados (PDF) correspondentes em uma pasta local e realiza o envio personalizado via Outlook.
O projeto conta com duas abordagens para demonstrar versatilidade técnica:
- Versão Backend (
win32com): Conecta-se diretamente à API do Outlook. É a versão mais robusta, rápida e roda em segundo plano. - Versão Visual (
pyautogui): Simula a interação humana (cliques e digitação). Útil para demonstrar conhecimentos em RPA visual ou para casos onde o acesso via API é restrito.
- Python 3
- Pandas: Para manipulação e leitura da base de dados (ETL básico).
- PyWin32 (win32com): Para automação nativa do Microsoft Outlook.
- PyAutoGUI: Para automação de interface gráfica (controle de mouse/teclado).
- OS/Pathlib: Para manipulação inteligente de arquivos e diretórios do sistema.
-
Pré-requisitos:
- Ter o Python instalado.
- Instalar as bibliotecas:
pip install pandas pywin32 pyautogui openpyxl - Ter o Microsoft Outlook (Desktop) instalado e logado.
-
Configuração:
- Coloque os arquivos PDF na pasta indicada no script.
- Atualize a planilha
Nomes.xlsxcom os dados dos destinatários. - Execute o script
automacao_backend.py(recomendado).
** Nota:** Os dados (nomes e e-mails) presentes na planilha deste repositório são fictícios, servindo apenas para demonstração da funcionalidade do código.
Desenvolvido por Ygor Reis Gorni Apaixonado por Dados, People Analytics e Eficiência Operacional.