Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

Når man snakker om Python, er det vanskelig å overse hvor langt funksjonalitetene sprer seg og hva du kan oppnå med bare noen få stykker kode. I dag er sending og mottak av e-post det mest relevante, og Pythons e-postautomatisering i Microsoft Outlook gjør ting enklere.

Hvorfor bruke endeløse øyeblikk på å kompilere e-poster på en e-postklient når du kan la Python gjøre det for deg i en enkelt instans? Hvis du er fascinert, må du lese videre for å se hvordan du kan sende automatiserte e-poster fra Python ved hjelp av Microsoft Outlook.

Oppfyller noen få forutsetninger

Tatt i betraktning de to hovedplattformene som det refereres til i denne veiledningen, er dette forutsetningene for å aktivere denne enkle, men nyttige oppgaven. For å komme i gang, last ned og installer følgende:

  • Microsoft Outlook: Du må ha MS Outlook-applikasjonen installert og kjøre på systemet ditt. Du kan bruke hvilket som helst e-postdomene med Outlook, siden det ikke har noen begrensninger angående e-postkonfigurasjoner.
    instagram viewer
  • win32com.client: Dette tredjepartsbiblioteket er viktig for å koble til Microsoft-applikasjonene dine. Siden Microsoft Outlook er en slik applikasjon, trenger du dette biblioteket i Python for å koble til Outlook Exchange-serveren.

Microsoft Outlook er en av de eldste og mest brukte e-postklientene, som rangerer på listen over mest populære e-postleverandører etter Gmail og Yahoo. I denne veiledningen er en Gmail-adresse konfigurert i Outlook.

win32com.client er et integrert aspekt av denne koden, og du trenger et fullt funksjonelt bibliotek for å etablere en forbindelse mellom Microsoft Outlook og Python.

Før du installerer, kan du sjekke om win32com er allerede installert på maskinen din. Noen IDE-versjoner tilbyr denne pakken som standard. Du kan krysssjekke om den er tilgjengelig med følgende kommando.

python -m pip forestilling pywin32

Hvis du får en feil 'pip' gjenkjennes ikke som en intern eller ekstern kommando mens du kjører kommandoen ovenfor, kan du installer pip på Windows, Mac og Linux, for å sikre at bibliotekinstallasjonene dine er sømløse.

Etter å ha kjørt kommandoen ovenfor, hvis du mottar et versjonsnummer, trenger du ikke å installere det på nytt.

Deretter, hvis du får følgende feilmelding, må du installere win32com bibliotek på systemet ditt:

'pywin32'erikke kjente igjen som en intern eller ekstern kommando, operativt program, eller batch-fil.

Åpne ledeteksten og skriv inn pip kommandoen for å installere biblioteket fra terminalvinduet.

python -m pip installere pywin32

Følg instruksjonene på skjermen for å fullføre prosessen. Du kan bruke --forestilling kommando etter installasjon for å bekrefte om win32com er vellykket installert på systemet ditt.

python -m pip forestilling pywin32

Sende e-post fra Python ved hjelp av Outlook

Siden forutsetningene er ivaretatt, er det på tide å begynne å skrive koden. Til å begynne med må du importere win32com.client bibliotek ved å bruke import uttalelse.

import win32com.client

Du kan nå skrive kode for å koble Python og Microsofts e-postapplikasjon, Outlook.

ol = win32com.client. Send ('Outlook. Applikasjon')

Hvor:

  • ol: Ny variabel for å lagre tilkoblingsreferansen.
  • win32com.client: Windows-bibliotek for å etablere en forbindelse mellom Python og Outlook.
  • Utsendelse: Funksjon for å opprette forbindelsen.
  • Outlook. applikasjon: Dette kan erstattes med et hvilket som helst Microsoft-programnavn, etter behov.

Deretter er det nødvendig å definere dimensjonene til den nye e-postmeldingen slik at Python forstår hvor innholdet må oppdateres.

# størrelse på den nye e-posten
olmailitem = 0x0

Hvor:

  • olmailitem: Ny variabel for å lagre dimensjonene.
  • 0x0: Dimensjoner på den nye e-postmeldingen i Pythons minne.

Pythons funksjoner åpner et nytt e-postelement så snart du definerer e-postens hoveddimensjoner.

newmail = ol. CreateItem (olmailitem)

Hvor:

  • ny e-post: Ny variabel for å lagre den nye e-postreferansen.
  • ol: Referanse til den tidligere opprettede forbindelsen mellom Python og Outlook.
  • CreateItem (olmailitem): Kommando for å opprette et nytt e-postutkast.

Siden hver e-post er ufullstendig uten en emnelinje, kan du definere den i koden slik at Python legger den til automatisk før e-posten sendes til mottakeren. Dette vil være synlig for mottakeren, så vær forsiktig med hvordan du definerer saken og innholdet.

ny e-post. Emne = "Testing Mail"

Hvor:

  • ny e-post: Variabel for å lagre den nye postartikkelreferansen.
  • Emne: Dette kan variere, avhengig av hva du ønsker å ha som emne for e-posten din.

Du kan legge til de tiltenkte mottakerne i Til og CC nøkkelord som følger:

ny e-post. Til = '[email protected]'
ny e-post. CC = '[email protected]'

Hvor:

  • Til: Hovedmottakers e-postadresse.
  • CC: Kopierte e-postmottakere.

Med Python kan du sende e-post til flere mottakere. Legg til en semikolon (;) skilletegn mellom e-post-IDer i Til/CC-kolonnen.

Til slutt, når du har definert emnet og mottakerne, kan du legge til e-postteksten i den nye posten før du sender den til mottakerne i Til og CC kolonner.

ny e-post. Body= 'Hei, dette er en test-e-post for å vise frem hvordan du sender e-poster fra Python og Outlook.'

For å legge til vedlegg i e-posten din, kan du bruke følgende kommandoer:

legge ved = 'C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx'
ny e-post.Vedlegg.Legg til(feste)

Siden e-posten er klar til å sendes, er det to alternativer du kan bruke. Hvis du vil ha en forhåndsvisning av e-posten din før du sender den til mottakerne, kan du bruke Vise() kommando som følger:

ny e-post.Vise()

Du kan bruke Sende() kommandoen hvis du vil sende e-posten uten å gå gjennom den på forhånd.

ny e-post.Sende()

Husk at du ikke vil se en forhåndsvisning av e-posten hvis du bruker Sende kommando direkte. Bruk denne kommandoen med omhu hvis du endrer innholdet i e-posten regelmessig. Du kan bruke Python-koden på én gang for å importere biblioteket, etablere tilkoblingen og sende e-postene raskt.

Her er hele koden:

import win32com.client
ol=win32com.client. Send ("outlook.application")
olmailitem=0x0#størrelse på den nye e-posten
newmail=ol. CreateItem (olmailitem)
ny e-post. Emne= "Testing Mail"
ny e-post. Til='[email protected]'
ny e-post. CC='[email protected]'
ny e-post. Body= 'Hei, dette er en test-e-post for å vise frem hvordan du sender e-poster fra Python og Outlook.'
# attach='C:\\Brukere\\admin\\Desktop\\Python\\Sample.xlsx'
# ny e-post.Vedlegg.Legg til(feste)
# For å vise e-posten før du sender den
# ny e-post. Vise()
ny e-post.Sende()

Fordeler med Python Email Automation

Python e-postautomatisering lar deg sende e-post direkte fra Python-grensesnittet uten å åpne MS Outlook. Hvis du er en ivrig bruker av Python og ikke er så opptatt av å åpne en e-postklient gjentatte ganger for å skrive ut e-poster, kan du la programmeringsspråket gjøre det for deg.

Hvorfor bruke timer på å gjøre repeterende oppgaver, når du kan sende automatiserte e-poster med Python med noen få linjer med kode?