Sometimes, we want to send an email with Gmail as provider using Python.
In this article, we’ll look at how to send an email with Gmail as provider using Python.
How to send an email with Gmail as provider using Python?
To send an email with Gmail as provider using Python, we can use smtplib.
For instance, we write
def send_email(user, pwd, recipient, subject, body):
import smtplib
FROM = user
TO = recipient if isinstance(recipient, list) else [recipient]
SUBJECT = subject
TEXT = body
message = """From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
try:
server = smtplib.SMTP("smtp.gmail.com", 587)
server.ehlo()
server.starttls()
server.login(user, pwd)
server.sendmail(FROM, TO, message)
server.close()
print('successfully sent the mail')
except:
print("failed to send mail")
to create the message message by putting the FROM, TO , SUBJECT and TEXT into the string.
Then we call smptlib.SMTP to connect to the server.
And then we call login to log in.
We call sendmail to send the message.
And then we call close to close the connection.
Conclusion
To send an email with Gmail as provider using Python, we can use smtplib.
One reply on “How to send an email with Gmail as provider using Python?”
Sorry but now, since may 30 2022, you must connect to google stmp with oauth2 🙁
this code give us “smtplib.SMTPAuthenticationError: (535, b’5.7.8 Username and Password not accepted. … ‘)