Quando si parla di Python, è difficile trascurare quanto si diffondano le funzionalità e cosa si possa ottenere con pochi pezzi di codice. Oggi, l'invio e la ricezione di e-mail è la cosa più rilevante e l'automazione della posta elettronica di Python in Microsoft Outlook rende le cose più pratiche.
Perché passare infiniti momenti a compilare e-mail su un client di posta quando puoi lasciare che Python lo faccia per te in una singola istanza? Se sei incuriosito, devi continuare a leggere per vedere come puoi inviare e-mail automatizzate da Python usando Microsoft Outlook.
Soddisfare alcuni prerequisiti
Considerando le due piattaforme principali a cui si fa riferimento in questa guida, questi sono i prerequisiti per abilitare questa operazione semplice ma utile. Per iniziare, scarica e installa quanto segue:
- MicrosoftOutlook: Devi avere l'applicazione MS Outlook installata e funzionante sul tuo sistema. Puoi utilizzare qualsiasi dominio di posta elettronica con Outlook, poiché non ha alcuna restrizione relativa alle configurazioni di posta elettronica.
- win32com.client: Questa libreria di terze parti è essenziale per connettersi alle tue applicazioni Microsoft. Poiché Microsoft Outlook è una di queste applicazioni, è necessaria questa libreria all'interno di Python per connettersi al server di scambio di Outlook.
Microsoft Outlook è uno dei client di posta elettronica più vecchi e più utilizzati, che si colloca nell'elenco di provider di posta elettronica più popolari dopo Gmail e Yahoo. In questa guida, un indirizzo Gmail è configurato all'interno di Outlook.
win32com.client è un aspetto integrale di questo codice ed è necessaria una libreria completamente funzionale per stabilire una connessione tra Microsoft Outlook e Python.
Prima dell'installazione, puoi verificare se win32 com è già installato sulla tua macchina. Alcune versioni IDE offrono questo pacchetto per impostazione predefinita. Puoi verificare se è disponibile con il seguente comando.
python -m pip spettacolo pywin32
Se ricevi un errore 'pip' non è riconosciuto come comando interno o esterno durante l'esecuzione del comando precedente, puoi farlo installa pip su Windows, Mac e Linux, per garantire che le installazioni della libreria siano perfette.
Dopo aver eseguito il comando precedente, se ricevi un numero di versione, non è necessario installarlo di nuovo.
Successivamente, se viene visualizzato il seguente messaggio di errore, è necessario installare il file win32 com libreria sul tuo sistema:
'pywin32'Ènon riconosciuto COME un interno O comando esterno, programma eseguibile, O file batch.
Apri il prompt e digita il file pippo comando per installare la libreria dalla finestra del terminale.
python -m pip installare pywin32
Segui le istruzioni sullo schermo per completare il processo. Puoi usare il --spettacolo comando post-installazione per verificare se win32 com è installato con successo sul tuo sistema.
python -m pip spettacolo pywin32
Invio di e-mail da Python utilizzando Outlook
Poiché i prerequisiti sono soddisfatti, è ora di iniziare a scrivere il codice. Per cominciare, devi importare il file win32com.client libreria utilizzando il importare dichiarazione.
importare win32com.client
Ora puoi scrivere codice per connettere Python e l'applicazione di posta elettronica di Microsoft, Outlook.
ol = win32com.client. Spedizione('Veduta. Applicazione')
Dove:
- ol: Nuova variabile per memorizzare il riferimento di connessione.
- win32com.client: Libreria di Windows per stabilire una connessione tra Python e Outlook.
- Spedizione: Funzione per creare la connessione.
- Veduta. Applicazione: può essere sostituito con qualsiasi nome di applicazione Microsoft, come richiesto.
Successivamente, è necessario definire le dimensioni del nuovo messaggio di posta elettronica in modo che Python capisca dove il contenuto deve essere aggiornato.
# dimensione della nuova email
olmailitem = 0x0
Dove:
- olmailitem: Nuova variabile per memorizzare le dimensioni.
- 0x0: dimensioni del nuovo messaggio di posta elettronica nella memoria di Python.
Le funzioni di Python aprono un nuovo elemento email, non appena si definiscono le dimensioni del corpo dell'email.
nuova posta = ol. CreateItem (olmailitem)
Dove:
- newmail: Nuova variabile per memorizzare il nuovo riferimento email.
- ol: Riferimento della connessione precedentemente creata tra Python e Outlook.
- CreateItem (olmailitem): Comando per creare una nuova bozza di email.
Poiché ogni email è incompleta senza una riga dell'oggetto, puoi definirla all'interno del codice in modo che Python la aggiunga automaticamente prima di inviare l'email al destinatario. Questo sarà visibile al destinatario, quindi fai attenzione a come definisci il caso e il contenuto.
newmail. Soggetto = "Posta di prova"
Dove:
- newmail:Variabile per memorizzare il nuovo riferimento dell'elemento di posta.
- Soggetto: Questo può variare, a seconda di cosa desideri avere come oggetto per la tua email.
È possibile aggiungere i destinatari previsti all'interno del file A E CC parole chiave come segue:
newmail. A = '[email protected]'
newmail. CC = '[email protected]'
Dove:
- A: indirizzo email del destinatario principale.
- CC: destinatari di posta elettronica copiati.
Con Python, puoi inviare e-mail a più destinatari. Aggiungere un punto e virgola (;) separatore tra gli ID e-mail all'interno della colonna A/CC.
Infine, una volta definiti l'oggetto e i destinatari, è possibile aggiungere il corpo dell'email al nuovo elemento di posta prima di inviarlo ai destinatari all'interno del A E CC colonne.
newmail. Corpo= "Ciao, questa è un'e-mail di prova per mostrare come inviare e-mail da Python e Outlook."
Per aggiungere allegati alla tua email, puoi utilizzare i seguenti comandi:
allegare = 'C:\\Utenti\\admin\\Desktop\\Python\\Sample.xlsx'
newmail.Allegati.Aggiungere(allegare)
Poiché l'e-mail è pronta per essere inviata, ci sono due opzioni che puoi utilizzare. Se desideri un'anteprima della tua email prima di inviarla ai destinatari, puoi utilizzare il Schermo() comando come segue:
newmail.Schermo()
Puoi usare il Inviare() comando se si desidera inviare l'e-mail senza rivederla in anticipo.
newmail.Inviare()
Ricorda, non vedrai un'anteprima dell'email se usi il Inviare comandare direttamente. Utilizzare questo comando con saggezza se si modifica regolarmente il contenuto del corpo dell'e-mail. Puoi utilizzare il codice Python in una volta sola per importare la libreria, stabilire la connessione e inviare rapidamente le e-mail.
Ecco il codice completo:
importare win32com.client
ol=win32com.client. Spedizione("prospettiva.applicazione")
olmailitem=0x0#size della nuova email
newmail=ol. CreateItem (olmailitem)
newmail. Oggetto= "Posta di prova"
newmail. A='[email protected]'
newmail. CC='[email protected]'
newmail. Corpo= "Ciao, questa è un'e-mail di prova per mostrare come inviare e-mail da Python e Outlook."
# attach='C:\\Utenti\\admin\\Desktop\\Python\\Sample.xlsx'
# newmail.Allegati.Aggiungere(allegare)
# Per visualizzare la mail prima di inviarla
# nuova posta. Schermo()
newmail.Inviare()
Vantaggi dell'automazione della posta elettronica di Python
L'automazione della posta elettronica Python ti consente di inviare e-mail direttamente dalla tua interfaccia Python senza aprire MS Outlook. Se sei un avido utente di Python e non sei troppo entusiasta di aprire ripetutamente un client di posta elettronica per digitare le e-mail, puoi lasciare che il linguaggio di programmazione lo faccia per te.
Perché passare ore a svolgere attività ripetitive, quando puoi inviare e-mail automatizzate utilizzando Python con poche righe di codice?