Cara Mengirim Email Memakai Python

Cara Mengirim Email Menggunakan Python



 



Python memiliki modul bawaan yaitu smtplib dan modul email yang memiliki kegunaan untuk mengirim email. Kita akan menggunakan modul ini untuk mengirimkan pesan dari ekun email kita ke alamat email seseorang menggunakan Python. Dalam hal ini kita menggunakan referensi gmail. Untuk email dari provider lain, tinggal kita sesuaikan saja alamat server emailnya.







Email Tanpa Lampiran



Gmail memiliki fitur keamanan baru bernama “less secure apps”. Anda harus mengubahnya terlebih dahulu dari OFF ke ON pada akun gmail Anda untuk mengizinkan aplikasi Python mengakses email Anda.



Berikut source code Python untuk mengirim email tanpa lampiran.



import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

fromaddr = "ALAMAT EMAIL PENGIRIM"
toaddr = "ALAMAT EMAIL PENERIMA"
msg = MIMEMultipart()
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "JUDUL PESAN"

body = "ISI PESAN"
msg.attach(MIMEText(body, 'plain'))

server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromaddr, "PASSWORD EMAIL PENGIRIM")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()


Silahkan sesuaikan isi dari baris 5, 6, 10, 12, dan 17 sesuai dengan yang seharusnya. Ganti semua yang ditulis dalam huruf besar. Cobalah isi baris 5, dan 6 keduanya dengan  alamat email milik Anda sendiri supaya Anda mampu mengecek apakah pesannya sukses terkirim atau tidak. Setelah selesai, jalankan aktivitas dan periksa kotak masuk alamat email penerima.





Email Dengan Lampiran



Seringkali kita memiliki lampiran yang harus dikirimkan via email. Python mampu melampirkan berkas bersama dengan email yang akan Anda kirim. Sebelumnya Anda harus memastikan settingan “less secure apps” di akun gmail Anda sudah di ON kan.



Berikut source untuk mengirim email dengan lampiran di Python.



import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders

fromaddr = "ALAMAT EMAIL PENGIRIM"
toaddr = "ALAMAT EMAIL PENERIMA"

msg = MIMEMultipart()

msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "JUDUL PESAN"

body = "ISI PESAN"

msg.attach(MIMEText(body, 'plain'))

# Lampiran, sesuaikan nama filename dengan nama di attachment
filename = "NAMA FILE"
attachment = open("PATH KE FILE", "rb")

part = MIMEBase('application', 'octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', "attachment; filename= %s" % filename)

msg.attach(part)

server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromaddr, "PASSWORD EMAIL PENGIRIM")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()


Sesuaikan isi dari baris ke 7, 8, 14, 16, 21, 22, dan 33. Untuk nama file lampiran pada baris ke 21, harus sama dengan nama file pada baris ke 22 agar file tidak corrupt. Misalnya, baris ke 21 isinya dibuat filename = "mydoc.docx" dan baris ke 22 dibuat attachment = open("D:\\dokumenku\\mydoc.docx", "rb"). Setelah selesai, silahkan coba aktivitas Anda apakah sudah mampu mengirimkan email.



Contoh di atas hanyalah dasar pengiriman email di Python. Program tersebut tentu saja mampu dikembangkan. Misalnya, alamat email, password, dan pesannya dibuat dengan meminta input user dan bukan di hard coding pada kode program. Juga mampu dibuatkan Graphical User Interface (GUI) nya menggunakan aplikasi pembuat GUI di Python menyerupai tkinter, wxpython, pyqt, dan lain sebagainya.



Bila ada pertanyaan, silahkan ditinggalkan di kolom komentar.



Popular posts from this blog

Subitems Listview Berwarna Selang Seling

Source Code Aplikasi Tagihan Internet Memakai Php