Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wordpress-seo domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vinascript/html/wp-includes/functions.php on line 6114
Sử dụng SMTP để gửi email trong Python - VinaScript

Latest Post

Triển khai dự án PHP, Mysql với Nginx trên Docker Tìm hiểu về HTML – Ưu điểm, nhược điểm và cách hoạt động của HTML

Trong Python, chúng ta có thể sử dụng thư viện smtplib như một công cụ hỗ trợ việc gửi email thông qua giao thức SMTP. Thư viện này giúp chúng ta tạo ra một SMTP Client, cho phép kết nối và truyền thông tin email đến một địa chỉ email khác trên Internet. Điều này giúp tương tác với máy chủ SMTP để thực hiện quy trình gửi email một cách dễ dàng và hiệu quả.

Cài đặt thư viện smtplib

Sử dụng trình quản lý package/module PIP của Python để cài đặt.

# Python 2
pip install smtplib

# Python 3
pip3 install smtplib

Gửi email sử dụng SMTP

Đoạn script Python dưới đây sẽ thực hiện gửi email bằng giao thức SMTP từ 1 SMTP Server

#! /usr/bin/python3
import sys
from smtplib import SMTP_SSL as SMTP       # this invokes the secure SMTP protocol (port 465, uses SSL)
# from smtplib import SMTP                  # use this for standard SMTP protocol   (port 25, no encryption)
# old version
# from email.MIMEText import MIMEText
from email.mime.text import MIMEText

SMTP_Host = 'smtp.gmail.com'
sender = 'testmail@vinasupport.com'
receivers = ['user@gmail.com']
username = "testmail@vinasupport.com"
password = "your_password"

# typical values for text_subtype are plain, html, xml
text_subtype = 'plain'

content = """
Test SMTTP Python script
"""

subject = "Sent from vinasupport.com"

try:
    msg = MIMEText(content, text_subtype)
    msg['Subject'] = subject
    msg['From'] = sender  # some SMTP servers will do this automatically, not all

    conn = SMTP(SMTP_Host)
    conn.set_debuglevel(False)
    conn.login(username, password)
    try:
        conn.sendmail(sender, receivers, msg.as_string())
    finally:
        conn.quit()
except Exception as error:
    print(error)

Một số lỗi thường gặp

Nếu gặp lỗi khi sử dụng tài khoản Gmail

SMTPAuthenticationError (535, ‘5.7.8 Username and Password not accepted. Learn more atn5.7.8 http://support.google.com/mail/bin/answer.py?answer=14257 sh5sm32272477pbc.21 – gsmtp’)

Nguyên nhân là do Google chặn ko cho sử dụng script/app để gửi email. Các bạn truy cập tài khoản Gmail sử dụng và kích hoạt nó lên.

Vào địa chỉ: https://myaccount.google.com/lesssecureapps

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *