Python hakkında konuşurken, işlevlerin ne kadar yayıldığını ve sadece birkaç parça kodla neler başarabileceğinizi gözden kaçırmak zordur. Günümüzde e-posta göndermek ve almak en alakalı şeydir ve Python’un Microsoft Outlook’taki e-posta otomasyonu işleri daha kolay hale getirir.

Python ile Outlook E-postalarını Otomatikleştirme

Python’un bunu sizin için tek bir örnekte yapmasına izin vermek varken neden bir e-posta istemcisinde e-postaları derlemek için sonsuz dakikalar harcayasınız? İlginizi çektiyse, Microsoft Outlook kullanarak Python’dan otomatik e-postaları nasıl gönderebileceğinizi görmek için okumaya devam etmelisiniz.

Birkaç Ön Koşulu Yerine Getirmek

Bu kılavuzda atıfta bulunulan iki ana platform göz önüne alındığında, bunlar bu basit ama yararlı görevi etkinleştirmek için ön koşullardır. Başlamak için aşağıdakileri indirip yükleyin:

Microsoft Outlook: Sisteminizde MS Outlook uygulamasının yüklü ve çalışır durumda olması gerekir. E-posta yapılandırmalarıyla ilgili herhangi bir kısıtlaması olmadığı için Outlook ile herhangi bir e-posta etki alanını kullanabilirsiniz.

win32com.client: Bu üçüncü taraf kitaplığı, Microsoft uygulamalarınıza bağlanmak için gereklidir. Microsoft Outlook böyle bir uygulama olduğundan, Outlook değişim sunucusuna bağlanmak için Python içindeki bu kitaplığa ihtiyacınız vardır.

Microsoft Outlook, Gmail ve Yahoo’dan sonra en popüler e-posta sağlayıcıları listesinde yer alan en eski ve en yaygın kullanılan e-posta istemcilerinden biridir . Bu kılavuzda, Outlook içinde bir Gmail adresi yapılandırılır.

win32com.client’i yükleme

win32com.client, bu kodun ayrılmaz bir parçasıdır ve Microsoft Outlook ile Python arasında bir bağlantı kurmak için tamamen işlevsel bir kitaplığa ihtiyacınız vardır.

Win32com.client Sürümünü Kontrol Edin

Yüklemeden önce, makinenizde win32com’un kurulu olup olmadığını kontrol edebilirsiniz . Bazı IDE sürümleri bu paketi varsayılan olarak sunar. Aşağıdaki komutla kullanılabilir olup olmadığını çapraz kontrol edebilirsiniz.

python -m pip show pywin32

Yukarıdaki komutu çalıştırırken ‘pip’ is not found as an internal or external command hatası alırsanız , kitaplık kurulumlarınızın sorunsuz olduğundan emin olmak için Windows, Mac ve Linux’a pip yükleyebilirsiniz .

Yukarıdaki komutu çalıştırdıktan sonra, bir sürüm numarası alırsanız yeniden yüklemenize gerek yoktur.

Python doğrulama kodu ile Windows komut istemi

Ardından, aşağıdaki hata mesajını alırsanız, sisteminize win32com kitaplığını yüklemeniz gerekir :

‘pywin32’ is not recognized as an internal or external command, operable program, or batch file.

Win32com Kitaplığının Kurulumu

Bilgi istemini açın ve kitaplığı terminal penceresinden yüklemek için pip komutunu yazın.

python -m pip install pywin32

Python kurulum komutlarıyla Windows komutu

İşlemi tamamlamak için ekrandaki talimatları izleyin. Win32com’un sisteminize başarıyla yüklenip yüklenmediğini doğrulamak için kurulumdan sonra –show komutunu kullanabilirsiniz .

python -m pip show pywin32

Outlook Kullanarak Python’dan E-posta Gönderme

Önkoşullar halledildiğine göre, kodu yazmaya başlamanın zamanı geldi. Başlamak için , import deyimini kullanarak win32com.client kitaplığını içe aktarmanız gerekir.

import win32com.client

Artık Python ile Microsoft’un e-posta uygulaması Outlook’u bağlamak için kod yazabilirsiniz.

ol = win32com.client.Dispatch(‘Outlook.Application’)

Neresi:

ol : Bağlantı referansını saklamak için yeni değişken.

win32com.client : Python ve Outlook arasında bağlantı kurmak için Windows kitaplığı.

Dispatch : Bağlantı oluşturma işlevi.

Outlook.Application : Bu, gerektiği şekilde herhangi bir Microsoft uygulama adıyla değiştirilebilir.

Jupyter Notebook’ta kitaplığı içe aktarmak için Python kodu

Ardından, Python’un içeriğin nerede güncellenmesi gerektiğini anlaması için yeni e-posta iletisinin boyutlarını tanımlamanız gerekir.

# size of the new email

olmailitem = 0x0

Neresi:

olmailitem : Boyutları saklamak için yeni değişken.

0x0 : Python’un belleğindeki yeni e-posta mesajının boyutları.

Python’un işlevleri, e-posta gövde boyutlarını tanımladığınız anda yeni bir e-posta öğesini açar.

newmail = ol.CreateItem(olmailitem)

Neresi:

newmail : Yeni e-posta referansını saklamak için yeni değişken.

ol : Python ve Outlook arasında önceden oluşturulmuş bağlantının referansı.

CreateItem(olmailitem) : Yeni bir e-posta taslağı oluşturma komutu.

Her e-posta konu satırı olmadan eksik olduğundan Python’un e-postayı alıcıya göndermeden önce otomatik olarak eklemesi için bunu kod içinde tanımlayabilirsiniz. Bu, alıcı tarafından görülebilir, bu nedenle vakayı ve içeriği nasıl tanımladığınıza dikkat edin.

newmail.Subject = ‘Testing Mail’

Neresi:

newmail : Yeni posta öğesi referansını saklamak için değişken.

Konu : Bu, e-postanızın konusu olarak ne olmasını istediğinize bağlı olarak değişebilir.

Hedeflenen alıcıları Kime ve Bilgi anahtar sözcükleri içine aşağıdaki gibi ekleyebilirsiniz :

newmail.To = ‘xyz@gmail.com’

newmail.CC = ‘xyz@gmail.com’

Neresi:

Kime : Ana alıcının e-posta adresi.

CC : Kopyalanan e-posta alıcıları.

Python ile birden çok alıcıya e-posta gönderebilirsiniz. Kime/Bilgi sütununda e-posta kimlikleri arasına noktalı virgül (;) ayırıcı ekleyin .

Son olarak, konuyu ve alıcıları tanımladıktan sonra, alıcılara göndermeden önce Kime ve Bilgi sütunlarında e-posta gövdesini yeni posta öğesine ekleyebilirsiniz.

newmail.Body= ‘Hello, this is a test email to showcase how to send emails from Python and Outlook.’

E-postanıza ekler eklemek için aşağıdaki komutları kullanabilirsiniz:

attach = ‘C:\Users\admin\Desktop\Python\Sample.xlsx’

newmail.Attachments.Add(attach)

E-posta gönderilmeye hazır olduğundan, kullanabileceğiniz iki seçenek vardır. E-postanızın alıcılara gönderilmeden önce önizlemesini istiyorsanız, Display() komutunu aşağıdaki gibi kullanabilirsiniz:

newmail.Display()

E-postayı önceden incelemeden göndermek istiyorsanız Send() komutunu kullanabilirsiniz .

newmail.Send()

Unutmayın, doğrudan Gönder komutunu kullanırsanız e-postanın önizlemesini görmezsiniz . E-posta gövde içeriğinizi düzenli olarak değiştiriyorsanız bu komutu akıllıca kullanın. Kütüphaneyi içe aktarmak, bağlantıyı kurmak ve e-postaları hızlı bir şekilde göndermek için Python kodunu tek seferde kullanabilirsiniz.

İşte tam kod:

import win32com.client

ol=win32com.client.Dispatch(“outlook.application”)

olmailitem=0x0 #size of the new email

newmail=ol.CreateItem(olmailitem)

newmail.Subject= ‘Testing Mail’

newmail.To=’xyz@gmail.com’

newmail.CC=’xyz@gmail.com’

newmail.Body= ‘Hello, this is a test email to showcase how to send emails from Python and Outlook.’

# attach=’C:\Users\admin\Desktop\Python\Sample.xlsx’

# newmail.Attachments.Add(attach)

# To display the mail before sending it

# newmail.Display()

newmail.Send()

Python kullanılarak gönderilen Outlook e-posta pasajı

Python E-posta Otomasyonunun Faydaları

Python e-posta otomasyonu, MS Outlook’u açmadan doğrudan Python arabiriminizden e-posta göndermenizi sağlar. Hevesli bir Python kullanıcısıysanız ve e-posta yazmak için bir e-posta istemcisini tekrar tekrar açmaya pek hevesli değilseniz, programlama dilinin bunu sizin için yapmasına izin verebilirsiniz.

Birkaç satır kodla Python kullanarak otomatik e-postalar gönderebilecekken, neden tekrar eden görevleri yapmak için saatler harcayasınız ki?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir