Quando se fala em Python, é difícil ignorar o quanto as funcionalidades se espalham e o que você pode conseguir com apenas alguns trechos de código. Hoje, enviar e receber e-mails é a coisa mais relevante, e a automação de e-mail do Python no Microsoft Outlook torna as coisas mais práticas.
Por que gastar momentos intermináveis compilando e-mails em um cliente de e-mail quando você pode deixar o Python fazer isso por você em uma única instância? Se você está intrigado, você deve ler para ver como você pode enviar e-mails automatizados do Python usando o Microsoft Outlook.
Cumprindo alguns pré-requisitos
Considerando as duas principais plataformas mencionadas neste guia, esses são os pré-requisitos para habilitar essa tarefa simples, mas útil. Para começar, baixe e instale o seguinte:
- Microsoft Outlook: Você deve ter o aplicativo MS Outlook instalado e em execução em seu sistema. Você pode usar qualquer domínio de e-mail com o Outlook, pois não há restrições quanto às configurações de e-mail.
- win32com.client: Essa biblioteca de terceiros é essencial para se conectar aos seus aplicativos da Microsoft. Como o Microsoft Outlook é um desses aplicativos, você precisa dessa biblioteca dentro do Python para se conectar ao servidor Exchange do Outlook.
O Microsoft Outlook é um dos clientes de e-mail mais antigos e mais usados, classificado na lista de provedores de e-mail mais populares depois do Gmail e do Yahoo. Neste guia, um endereço do Gmail é configurado no Outlook.
win32com.client é um aspecto integral desse código e você precisa de uma biblioteca totalmente funcional para estabelecer uma conexão entre o Microsoft Outlook e o Python.
Antes de instalar, você pode verificar se win32com já está instalado em sua máquina. Algumas versões do IDE oferecem esse pacote por padrão. Você pode verificar se está disponível com o seguinte comando.
python -m pip mostrar pywin32
Se você receber um erro 'pip' não é reconhecido como um comando interno ou externo ao executar o comando acima, você pode instalar pip no Windows, Mac e Linux, para garantir que as instalações de sua biblioteca sejam contínuas.
Depois de executar o comando acima, se você receber um número de versão, não precisará instalá-lo novamente.
Posteriormente, se você receber a seguinte mensagem de erro, será necessário instalar o win32com biblioteca em seu sistema:
'pywin32'énão reconhecido como um interno ou comando externo, programa operável, ou arquivo em lote.
Abra o prompt e digite o pip comando para instalar a biblioteca a partir da janela do terminal.
python -m pip instalar pywin32
Siga as instruções na tela para concluir o processo. Você pode usar o --mostrar comando pós-instalação para verificar se win32com foi instalado com sucesso em seu sistema.
python -m pip mostrar pywin32
Enviando e-mails do Python usando o Outlook
Uma vez que os pré-requisitos foram atendidos, é hora de começar a escrever o código. Para começar, você precisa importar o win32com.client biblioteca usando o importar declaração.
importar win32com.client
Agora você pode escrever código para conectar o Python e o aplicativo de e-mail da Microsoft, o Outlook.
ol = win32com.client. Despacho('Panorama. Aplicativo')
Onde:
- olá: Nova variável para armazenar a referência de conexão.
- win32com.client: Biblioteca do Windows para estabelecer uma conexão entre Python e Outlook.
- Despacho: Função para criar a conexão.
- Panorama. Aplicativo: pode ser substituído por qualquer nome de aplicativo da Microsoft, conforme necessário.
Em seguida, é necessário definir as dimensões da nova mensagem de e-mail para que o Python entenda onde o conteúdo precisa ser atualizado.
# tamanho do novo e-mail
olmailitem = 0x0
Onde:
- olmailitem: Nova variável para armazenar as dimensões.
- 0x0: Dimensões da nova mensagem de e-mail na memória do Python.
As funções do Python abrem um novo item de e-mail assim que você define as dimensões do corpo do e-mail.
newmail = ol. CreateItem (olmailitem)
Onde:
- novo correio: Nova variável para armazenar a nova referência de e-mail.
- olá: Referência da conexão criada anteriormente entre Python e Outlook.
- CreateItem (olmailitem): Comando para criar um novo rascunho de e-mail.
Como todo e-mail fica incompleto sem uma linha de assunto, você pode defini-lo no código para que o Python o adicione automaticamente antes de enviar o e-mail ao destinatário. Isso ficará visível para o destinatário, portanto, tenha cuidado ao definir o caso e o conteúdo.
newmail. Assunto = 'E-mail de teste'
Onde:
- novo correio:Variável para armazenar a referência do novo item de correspondência.
- Assunto: Isso pode variar, dependendo do que você deseja ter como assunto para seu e-mail.
Você pode adicionar os destinatários pretendidos dentro do Para e CC palavras-chave da seguinte forma:
newmail. Para = '[email protected]'
newmail. CC = '[email protected]'
Onde:
- Para: endereço de e-mail do destinatário principal.
- CC: Destinatários de e-mail copiados.
Com o Python, você pode enviar e-mails para vários destinatários. Adicionar um ponto e vírgula (;) separador entre IDs de e-mail na coluna Para/CC.
Por fim, depois de definir o assunto e os destinatários, você pode adicionar o corpo do e-mail ao novo item de e-mail antes de enviá-lo aos destinatários dentro do Para e CC colunas.
newmail. Corpo= 'Olá, este é um e-mail de teste para mostrar como enviar e-mails do Python e do Outlook.'
Para adicionar anexos ao seu e-mail, você pode usar os seguintes comandos:
anexar = 'C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx'
novo correio.Anexos.Adicionar(anexar)
Como o e-mail está pronto para ser enviado, existem duas opções que você pode usar. Se quiser uma prévia do seu e-mail antes de enviá-lo aos destinatários, você pode usar o Mostrar() comando da seguinte forma:
novo correio.Mostrar()
Você pode usar o Enviar() comando se você quiser enviar o e-mail sem revisá-lo antes.
novo correio.Enviar()
Lembre-se, você não verá uma visualização do e-mail se usar o Enviar comando diretamente. Use este comando com sabedoria se você estiver alterando o conteúdo do corpo do e-mail regularmente. Você pode usar o código Python de uma só vez para importar a biblioteca, estabelecer a conexão e enviar os e-mails rapidamente.
Aqui está o código completo:
importar win32com.client
ol=win32com.client. Despacho("outlook.aplicativo")
olmailitem=0x0#tamanho do novo e-mail
newmail=ol. CreateItem (olmailitem)
newmail. Assunto= 'E-mail de teste'
newmail. Para='[email protected]'
newmail. CC='[email protected]'
newmail. Corpo= 'Olá, este é um e-mail de teste para mostrar como enviar e-mails do Python e do Outlook.'
# attach='C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx'
# novo correio.Anexos.Adicionar(anexar)
# Para exibir o e-mail antes de enviá-lo
#newmail. Mostrar()
novo correio.Enviar()
Benefícios da Automação de E-mail Python
A automação de e-mail Python permite que você envie e-mails diretamente de sua interface Python sem abrir o MS Outlook. Se você é um usuário ávido de Python e não gosta muito de abrir um cliente de e-mail repetidamente para digitar e-mails, pode deixar que a linguagem de programação faça isso por você.
Por que passar horas fazendo tarefas repetitivas, quando você pode enviar e-mails automatizados usando Python com poucas linhas de código?