I’m trying to send myself email from my own Linux machine, via SMPT. I’ve written the following Python program:
#!/usr/bin/env python3
# Import smtplib for the actual sending function
import smtplib
# Import the email modules we’ll need
from email.mime.text import MIMEText
# Open a plain text file for reading. For this example, assume that
# the text file contains only ASCII characters.
with open(“test.txt”) as fp:
# Create a text/plain message
msg = MIMEText(fp.read())
# me == the sender’s email address
# you == the recipient’s email address
msg[‘Subject’] = “Test”
msg[‘From’] = “simberg@interglobal.org”
msg[‘To’] = “simberg@interglobal.org”
# Send the message via our own SMTP server.
s = smtplib.SMTP(‘localhost’)
print(“s has been opened”)
s.send_message(msg)
print(“after send_message”)
s.quit()
print(“End script”)
It runs with no errors, prints the statements to the terminal, but no email appears. How do I diagnose this?
[Update a while later]
Thanks for the help in comments. Still haven’t solved it, but the need for the application that I needed it for has gone away. Nonetheless, it would be good in general to know how to email from a Python script.