A função combina leitura de arquivos Excel com automação de teclado para facilitar o envio de e-mails em massa.
pandas.pyautogui para simular cliques e digitação.Essa função é ideal para:
| TITULO | CORPO DE EMAIL | CAMINHO ANEXO | |
|---|---|---|---|
| [email protected] | Relatório Mensal | Prezado cliente... | C:\Documentos\Relatorio.pdf |
| [email protected] | Contrato | Segue anexo... | C:\Documentos\Contrato.pdf |
python
Copy code
import pandas as pd
import pyautogui
import time
def read_excel(file_path):
# Lê o arquivo Excel e retorna um DataFrame
df = pd.read_excel(file_path)
return df
def send_email_via_automation(email, subject, body, attachment_path):
"""
Envia um email usando automação de teclado.
"""
time.sleep(5) # Atraso para abrir o programa de e-mail
# Função para localizar e clicar em imagens na tela
def click_image(image_path):
location = pyautogui.locateCenterOnScreen(image_path, confidence=0.8)
if location:
pyautogui.click(location.x, location.y)
else:
print(f"Imagem {image_path} não encontrada.")
# Clica no botão de novo email
click_image(r'C:\\Users\\Usuario\\Desktop\\enviaremail.png')
time.sleep(3)
# Preenche os campos do email
pyautogui.typewrite(email)
pyautogui.press('tab')
pyautogui.press('tab')
pyautogui.typewrite(subject)
time.sleep(1)
pyautogui.press('tab')
pyautogui.typewrite(body)
# Adiciona um anexo
click_image(r'C:\\Users\\Usuario\\Desktop\\anexar.png')
time.sleep(3)
pyautogui.typewrite(attachment_path)
pyautogui.press('enter')
time.sleep(5)
# Envia o email
pyautogui.hotkey('ctrl', 'enter')
def main():
excel_file_path = r'C:\\Users\\Usuario\\Desktop\\Documentos\\Planilha\\email.xlsx'
df = read_excel(excel_file_path)
for index, row in df.iterrows():
send_email_via_automation(row['Email'], row['TITULO'], row['CORPO DE EMAIL'], row['CAMINHO ANEXO'])
if __name__ == "__main__":
main()