Kirim Email dengan Python

Email otomatis banyak digunakan untuk mengirim notifikasi atau pesan lain ke pelanggan. Selain itu, berbagai email dipicu berdasarkan tindakan atau perilaku pengguna. Untuk menerapkan otomatisasi email, artikel ini membahas cara mengirim email melalui SMTP dengan Python. Selain itu, kami akan mendemonstrasikan cara membuat pesan email dengan teks biasa atau badan HTML dari awal.

Perpustakaan Python untuk Mengirim Email melalui SMTP

Untuk membuat dan mengirim email menggunakan SMTP, kami akan menggunakan Aspose.Email for Python via .NET. Ini adalah perpustakaan Python yang kuat yang memungkinkan Anda mengimplementasikan klien email kaya fitur. Anda dapat menginstal API dari PyPI menggunakan perintah berikut.

pip install Aspose.Email-for-Python-via-NET

Atau, Anda dapat mengikuti langkah-langkah di bawah ini untuk instalasi manual.

  • Download file .whl yang dapat diinstal dari bagian downloads.
  • Dari baris perintah, gunakan perintah: pip install «FileName> >.whl untuk menginstal API.
  • Unduh paket lengkap contoh kode sumber dari GitHub.

Kirim Email melalui SMTP dengan Python

Berikut langkah-langkah membuat dan mengirim email melalui SMTP dengan Python.

  • Buat objek kelas MailMessage.
  • Tetapkan subjek, isi, alamat pengirim, dan penerima.
  • Tetapkan Cc atau Bcc (opsional).
  • Buat klien SMTP baru menggunakan kelas SmtpClient dan atur host, port, nama pengguna, dan kata sandi.
  • Tetapkan opsi keamanan.
  • Kirim email menggunakan metode SmtpClient.send(MailMessage).

Contoh kode berikut menunjukkan cara membuat dan mengirim email dengan Python.

# Buat pesan email
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"))

# Buat Klien SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Mengirim email
client.send(eml)

Kirim Email dengan Badan HTML dengan Python

Berikut ini adalah langkah-langkah mengirim email dengan badan HTML dengan Python.

  • Buat objek kelas MailMessage.
  • Tetapkan badan email menggunakan properti MailMessage.bodyhtml.
  • Setel properti MailMessage.isbodyhtml ke true.
  • Tetapkan subjek, alamat pengirim, dan alamat penerima.
  • Tetapkan Cc atau Bcc (opsional).
  • Buat klien SMTP baru menggunakan kelas SmtpClient dan atur host, port, nama pengguna, dan kata sandi.
  • Kirim email menggunakan metode SmtpClient.send(MailMessage).

Contoh kode berikut menunjukkan cara mengirim email dengan badan HTML dengan Python.

# Buat pesan email dengan badan HTML
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"))

# Buat Klien SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Mengirim email
client.send(eml)

Kode Python untuk Mengirim Email Massal

Berikut ini adalah langkah-langkah mengirim email massal dengan Python.

  • Buat beberapa pesan email menggunakan kelas MailMessage dan atur propertinya, seperti subjek, penerima, dll.
  • Buat objek kelas MailMessageCollection.
  • Tambahkan pesan email ke koleksi menggunakan metode MailMessageCollection.append(MailMessage).
  • Buat klien SMTP baru menggunakan kelas SmtpClient dan atur host, port, nama pengguna, dan kata sandi.
  • Kirim email menggunakan metode SmtpClient.send(MailMessageCollection).

Contoh kode berikut menunjukkan cara mengirim email massal melalui SMTP dengan Python.

# Buat beberapa pesan email
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?")

# Tambahkan pesan ke koleksi
manyMsg =  MailMessageCollection()
manyMsg.append(message1)
manyMsg.append(message2)
manyMsg.append(message3)

# Buat Klien SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# Mengirim email
client.send(manyMsg)

Cara Meneruskan Pesan Email dengan Python

Berikut ini adalah langkah-langkah untuk meneruskan pesan email dengan Python.

  • Muat pesan email ke objek menggunakan metode MailMessage.load(String fileName).
  • Tetapkan alamat penerima.
  • Buat klien SMTP menggunakan kelas SmtpClient.
  • Teruskan pesan menggunakan metode SmtpClient.forward().

Contoh kode berikut menunjukkan cara meneruskan pesan email dengan Python.

# Muat pesan email untuk diteruskan
eml = MailMessage.load("Message.eml")

# Tetapkan penerima
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# Kirim menggunakan Klien Smtp
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
client.forward("Recipient1@domain.com", "Recipient2@domain.com", eml)

Perpustakaan Python untuk Mengirim Email - Dapatkan Lisensi Gratis

Anda bisa mendapatkan Lisensi Sementara Gratis dan mengirim email melalui SMTP tanpa batasan evaluasi.

Aspose Perpustakaan Email untuk Python - Demo Langsung

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara membuat dan mengirim email melalui SMTP dengan Python. Selain itu, Anda telah melihat cara mengirim email massal dengan teks biasa atau badan HTML secara terprogram. Anda dapat mempelajari lebih lanjut tentang API email Python menggunakan dokumentasi. Jika Anda memiliki pertanyaan atau permintaan, jangan ragu untuk memberi tahu kami melalui forum kami.

Lihat juga