Otomatik e-postalar, abonelere bildirim veya başka mesajlar göndermek için yaygın olarak kullanılır. Ayrıca, kullanıcıların eylemlerine veya davranışlarına göre çeşitli e-postalar tetiklenir. Bu makale, e-posta otomasyonunu uygulamak için Python’da SMTP aracılığıyla e-postaların nasıl gönderileceğini kapsar. Ek olarak, sıfırdan düz metin veya HTML gövdeli bir e-posta iletisinin nasıl oluşturulacağını göstereceğiz.
- E-posta Göndermek için Python Kitaplığı - Ücretsiz İndirme
- Python’da E-posta Oluşturma ve Gönderme
- Python’da HTML Gövdeli E-postalar Gönderme
- Toplu E-posta Gönder
- Bir E-posta Mesajını Yönlendirin
SMTP Yoluyla E-posta Göndermek İçin Python Kitaplığı
SMTP kullanarak e-posta oluşturmak ve göndermek için Aspose.Email for Python via .NET kullanacağız. Zengin özelliklere sahip e-posta istemcilerini uygulamanıza izin veren güçlü bir Python kitaplığıdır. Aşağıdaki komutu kullanarak API’yi PyPI‘den yükleyebilirsiniz.
pip install Aspose.Email-for-Python-via-NET
Veya manuel kurulum için aşağıdaki adımları takip edebilirsiniz.
- İndirilenler bölümünden yüklenebilir .whl dosyasını indirin.
- Komut satırından şu komutu kullanın: pip install «FileName> >.whl API’yi yüklemek için.
- GitHub’tan eksiksiz bir kaynak kodu örnekleri paketi indirin.
Python’da SMTP aracılığıyla E-posta Gönderme
Python’da SMTP aracılığıyla bir e-posta oluşturma ve gönderme adımları aşağıdadır.
- MailMessage sınıfından bir nesne oluşturun.
- Konu, gövde, gönderenin ve alıcının adreslerini ayarlayın.
- Cc veya Bcc’yi ayarlayın (isteğe bağlı).
- SmtpClient sınıfını kullanarak yeni bir SMTP istemcisi oluşturun ve ana bilgisayarı, bağlantı noktasını, kullanıcı adını ve parolayı ayarlayın.
- Güvenlik seçeneklerini ayarlayın.
- SmtpClient.send(MailMessage) yöntemini kullanarak e-posta gönderin.
Aşağıdaki kod örneği, Python’da e-postaların nasıl oluşturulacağını ve gönderileceğini gösterir.
# E-posta mesajı oluştur
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.body = "This is plain text body."
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))
# SMTP İstemcisi Oluştur
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
# Eposta gönder
client.send(eml)
Python’da HTML Gövdeli E-postalar Gönderme
Python’da HTML gövdeli e-posta gönderme adımları aşağıdadır.
- MailMessage sınıfından bir nesne oluşturun.
- MailMessage.bodyhtml özelliğini kullanarak e-postanın gövdesini ayarlayın.
- MailMessage.isbodyhtml özelliğini true olarak ayarlayın.
- Konu, gönderenin ve alıcının adreslerini atayın.
- Cc veya Bcc’yi ayarlayın (isteğe bağlı).
- SmtpClient sınıfını kullanarak yeni bir SMTP istemcisi oluşturun ve ana bilgisayarı, bağlantı noktasını, kullanıcı adını ve parolayı ayarlayın.
- SmtpClient.send(MailMessage) yöntemini kullanarak e-posta gönderin.
Aşağıdaki kod örneği, Python’da HTML gövdesiyle e-postaların nasıl gönderileceğini gösterir.
# HTML gövdesiyle e-posta iletisi oluştur
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.is_body_html = True
eml.html_body = "<html><body>This is the <b>HTML</b>body</body></html>"
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))
# SMTP İstemcisi Oluştur
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
# Eposta gönder
client.send(eml)
Toplu E-posta Göndermek için Python Kodu
Python’da toplu e-posta gönderme adımları aşağıdadır.
- MailMessage sınıfını kullanarak birden fazla e-posta mesajı oluşturun ve bunların konu, alıcılar vb. özelliklerini ayarlayın.
- MailMessageCollection sınıfından bir nesne oluşturun.
- MailMessageCollection.append(MailMessage) yöntemini kullanarak koleksiyona e-posta mesajları ekleyin.
- SmtpClient sınıfını kullanarak yeni bir SMTP istemcisi oluşturun ve ana bilgisayarı, bağlantı noktasını, kullanıcı adını ve parolayı ayarlayın.
- SmtpClient.send(MailMessageCollection) yöntemini kullanarak e-posta gönderin.
Aşağıdaki kod örneği, Python’da SMTP aracılığıyla toplu e-postaların nasıl gönderileceğini gösterir.
# Birden fazla e-posta mesajı oluşturun
message1 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message1, how are you?")
message2 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message2, how are you?")
message3 = MailMessage("from@gmail.com", "to@gmail.com", "Sending Bulk Emails using Aspose.Email", "message3, how are you?")
# Koleksiyona mesaj ekle
manyMsg = MailMessageCollection()
manyMsg.append(message1)
manyMsg.append(message2)
manyMsg.append(message3)
# SMTP İstemcisi Oluştur
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
# Mailleri gönder
client.send(manyMsg)
Python’da Bir E-posta Mesajı Nasıl İletilir?
Python’da bir e-posta mesajını iletmek için gereken adımlar aşağıdadır.
- MailMessage.load(String fileName) yöntemini kullanarak e-posta mesajını bir nesneye yükleyin.
- Alıcının adresini ayarlayın.
- SmtpClient sınıfını kullanarak bir SMTP istemcisi oluşturun.
- İletiyi SmtpClient.forward() yöntemini kullanarak iletin.
Aşağıdaki kod örneği, Python’da bir e-posta iletisinin nasıl iletileceğini gösterir.
# Yönlendirilecek e-posta mesajını yükle
eml = MailMessage.load("Message.eml")
# Alıcıyı ayarla
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))
# Smtp İstemcisi kullanarak gönder
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
client.forward("Recipient1@domain.com", "Recipient2@domain.com", eml)
E-posta Göndermek için Python Kitaplığı - Ücretsiz Lisans Alın
Ücretsiz Geçici Lisans alabilir ve değerlendirme sınırlamaları olmadan SMTP yoluyla e-posta gönderebilirsiniz.
Aspose Email Library for Python - Canlı Demo
Çözüm
Bu yazıda, Python’da SMTP aracılığıyla e-posta oluşturmayı ve göndermeyi öğrendiniz. Ayrıca, programlı olarak düz metin veya HTML gövdesi ile toplu e-postaların nasıl gönderileceğini gördünüz. Belgeleri kullanarak Python e-posta API’si hakkında daha fazlasını keşfedebilirsiniz. Herhangi bir sorunuz veya sorunuz olması durumunda forumumuz aracılığıyla bize bildirmekten çekinmeyin.