ส่งอีเมลใน Python

อีเมลอัตโนมัติถูกใช้อย่างแพร่หลายเพื่อส่งการแจ้งเตือนหรือข้อความอื่นๆ ถึงสมาชิก นอกจากนี้ อีเมลต่างๆ จะถูกเรียกใช้ตามการกระทำหรือพฤติกรรมของผู้ใช้ เพื่อใช้งานระบบอัตโนมัติของอีเมล บทความนี้ครอบคลุมวิธีการส่งอีเมลผ่าน SMTP ใน Python นอกจากนี้ เราจะสาธิตวิธีสร้างข้อความอีเมลด้วยข้อความธรรมดาหรือเนื้อหา HTML ตั้งแต่เริ่มต้น

Python Library เพื่อส่งอีเมลผ่าน SMTP

ในการสร้างและส่งอีเมลโดยใช้ SMTP เราจะใช้ Aspose.Email for Python ผ่าน .NET เป็นไลบรารี Python อันทรงพลังที่ให้คุณใช้งานไคลเอนต์อีเมลที่มีคุณสมบัติหลากหลาย คุณสามารถติดตั้ง API จาก PyPI โดยใช้คำสั่งต่อไปนี้

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

หรือคุณสามารถทำตามขั้นตอนด้านล่างสำหรับการติดตั้งด้วยตนเอง

  • ดาวน์โหลดไฟล์ .whl ที่ติดตั้งได้จากส่วน ดาวน์โหลด
  • จากบรรทัดคำสั่ง ใช้คำสั่ง: pip install «FileName> >.whl เพื่อติดตั้ง API
  • ดาวน์โหลดชุดตัวอย่างซอร์สโค้ดทั้งหมดจาก GitHub

ส่งอีเมลผ่าน SMTP ใน Python

ต่อไปนี้เป็นขั้นตอนในการสร้างและส่งอีเมลผ่าน SMTP ใน Python

  • สร้างวัตถุของคลาส MailMessage
  • ตั้งค่าหัวเรื่อง เนื้อความ ผู้ส่ง และที่อยู่ของผู้รับ
  • ตั้งค่า Cc หรือ Bcc (ไม่บังคับ)
  • สร้างไคลเอ็นต์ SMTP ใหม่โดยใช้คลาส SmtpClient และตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ และรหัสผ่าน
  • ตั้งค่าตัวเลือกความปลอดภัย
  • ส่งอีเมลโดยใช้วิธี SmtpClient.send (MailMessage)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างและส่งอีเมลใน Python

# สร้างข้อความอีเมล
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
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# ส่งอีเมล
client.send(eml)

ส่งอีเมลด้วยเนื้อหา HTML ใน Python

ต่อไปนี้เป็นขั้นตอนในการส่งอีเมลด้วยเนื้อหา HTML ใน Python

  • สร้างวัตถุของคลาส MailMessage
  • กำหนดเนื้อหาของอีเมลโดยใช้คุณสมบัติ MailMessage.bodyhtml
  • ตั้งค่าคุณสมบัติ MailMessage.isbodyhtml เป็นจริง
  • กำหนดชื่อเรื่อง ที่อยู่ของผู้ส่ง และผู้รับ
  • ตั้งค่า Cc หรือ Bcc (ไม่บังคับ)
  • สร้างไคลเอ็นต์ SMTP ใหม่โดยใช้คลาส SmtpClient และตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ และรหัสผ่าน
  • ส่งอีเมลโดยใช้วิธี SmtpClient.send (MailMessage)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งอีเมลด้วยเนื้อหา HTML ใน Python

# สร้างข้อความอีเมลด้วยเนื้อหา 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"))

# สร้างไคลเอนต์ SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# ส่งอีเมล
client.send(eml)

รหัส Python เพื่อส่งอีเมลจำนวนมาก

ต่อไปนี้เป็นขั้นตอนในการส่งอีเมลจำนวนมากใน Python

  • สร้างข้อความอีเมลหลายข้อความโดยใช้คลาส MailMessage และตั้งค่าคุณสมบัติ เช่น หัวเรื่อง ผู้รับ เป็นต้น
  • สร้างวัตถุของคลาส MailMessageCollection
  • เพิ่มข้อความอีเมลไปยังคอลเลกชันโดยใช้เมธอด MailMessageCollection.append(MailMessage)
  • สร้างไคลเอ็นต์ SMTP ใหม่โดยใช้คลาส SmtpClient และตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ และรหัสผ่าน
  • ส่งอีเมลโดยใช้เมธอด SmtpClient.send (MailMessageCollection)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งอีเมลจำนวนมากผ่าน SMTP ใน Python

# สร้างข้อความอีเมลหลายฉบับ
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?")

# เพิ่มข้อความในคอลเลกชัน
manyMsg =  MailMessageCollection()
manyMsg.append(message1)
manyMsg.append(message2)
manyMsg.append(message3)

# สร้างไคลเอนต์ SMTP
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

# ส่งอีเมลล์
client.send(manyMsg)

วิธีส่งต่อข้อความอีเมลใน Python

ต่อไปนี้เป็นขั้นตอนในการส่งต่อข้อความอีเมลใน Python

  • โหลดข้อความอีเมลลงในวัตถุโดยใช้เมธอด MailMessage.load(String fileName)
  • กำหนดที่อยู่ของผู้รับ
  • สร้างไคลเอนต์ SMTP โดยใช้คลาส SmtpClient
  • ส่งต่อข้อความโดยใช้เมธอด SmtpClient.forward()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งต่อข้อความอีเมลใน Python

# โหลดข้อความอีเมลที่จะส่งต่อ
eml = MailMessage.load("Message.eml")

# กำหนดผู้รับ
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

# ส่งโดยใช้ไคลเอ็นต์ Smtp
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
client.forward("Recipient1@domain.com", "Recipient2@domain.com", eml)

Python Library สำหรับการส่งอีเมล - รับใบอนุญาตฟรี

คุณอาจได้รับ ใบอนุญาตชั่วคราวฟรี และส่งอีเมลผ่าน SMTP โดยไม่มีข้อจำกัดในการประเมิน

Aspose Email Library สำหรับ Python - การสาธิตสด

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีสร้างและส่งอีเมลผ่าน SMTP ใน Python นอกจากนี้ คุณได้เห็นวิธีการส่งอีเมลจำนวนมากด้วยข้อความธรรมดาหรือเนื้อหา HTML โดยทางโปรแกรม คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ Python email API โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีคำถามหรือข้อสงสัยใดๆ โปรดแจ้งให้เราทราบผ่านทาง ฟอรัม ของเรา

ดูสิ่งนี้ด้วย