Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Menghantar Lampiran E-mel Dengan Mudah Menggunakan smtplib Python?

Bagaimanakah Saya Boleh Menghantar Lampiran E-mel Dengan Mudah Menggunakan smtplib Python?

DDD
Lepaskan: 2024-12-11 19:57:10
asal
779 orang telah melayarinya

How Can I Easily Send Email Attachments Using Python's smtplib?

Menge-mel Lampiran Menggunakan Python: Menjelaskan dan Memudahkan

Menghantar lampiran e-mel menggunakan smtplib Python boleh mencabar, terutamanya untuk pemula. Untuk memberikan penjelasan yang lebih mudah diakses, kami meneroka pendekatan yang komprehensif.

Pertimbangkan coretan kod berikut:

import smtplib
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import COMMASPACE, formatdate

def send_mail(send_from, send_to, subject, text, files=None,
              server="127.0.0.1"):
    assert isinstance(send_to, list)

    msg = MIMEMultipart()
    msg['From'] = send_from
    msg['To'] = COMMASPACE.join(send_to)
    msg['Date'] = formatdate(localtime=True)
    msg['Subject'] = subject

    msg.attach(MIMEText(text))

    for f in files or []:
        with open(f, "rb") as fil:
            part = MIMEApplication(
                fil.read(),
                Name=basename(f)
            )
        # After the file is closed
        part['Content-Disposition'] = 'attachment; filename="%s"' % basename(f)
        msg.attach(part)


    smtp = smtplib.SMTP(server)
    smtp.sendmail(send_from, send_to, msg.as_string())
    smtp.close()
Salin selepas log masuk

Memecahkan kod:

  • Kami mencipta objek mesej MIMEMultipart untuk e-mel.
  • Kami menyatakan pengirim, penerima, tarikh, subjek dan teks e-mel.
  • Kami menyediakan setiap lampiran dengan membaca kandungannya dan menetapkan namanya.
  • Kami menambah lampiran pada mesej MIMEMultipart.
  • Kami mencipta sambungan pelayan SMTP dan hantar e-mel.

Pendekatan ini memberikan pemahaman yang jelas tentang langkah-langkah yang perlu terlibat dalam menghantar e-mel dengan lampiran.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghantar Lampiran E-mel Dengan Mudah Menggunakan smtplib Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan