Mail: Difference between revisions
Jump to navigation
Jump to search
| Line 8: | Line 8: | ||
Subject: Subject of your mail | Subject: Subject of your mail | ||
email text | email text | ||
</syntaxhighlight> | |||
Python email sender found in [[https://docs.python.org/2/library/email-examples.html|the python docs]] | |||
<syntaxhighlight lang=python> | |||
import smtplib | |||
from email import encoders | |||
from email.message import Message | |||
from email.mime.base import MIMEBase | |||
from email.mime.multipart import MIMEMultipart | |||
from email.mime.text import MIMEText | |||
def main(): | |||
attachement = fileapath | |||
mailto = you@domain.tld | |||
mailsubject = 'What this is about' | |||
mailtext = "Hi,\n\nI'd like to send you an email.\n\nBest Regards\n\nMe." | |||
sendmail(mailto,mailsubject,mailtext,attachment) | |||
return | |||
def sendmail(mailto,mailsubject,mailtext,attachment): | |||
filename = attachment.split('/')[-1] | |||
outer = MIMEMultipart() | |||
outer['Subject'] = mailsubject | |||
outer['To'] = mailto | |||
msg = MIMEText(mailtext,_subtype='plain') | |||
outer.attach(msg) | |||
ctype = 'application/octet-stream' | |||
maintype, subtype = ctype.split('/', 1) | |||
fp = open(attachment, 'rb') | |||
msg = MIMEBase(maintype, subtype) | |||
msg.set_payload(fp.read()) | |||
fp.close() | |||
# Encode the payload using Base64 | |||
encoders.encode_base64(msg) | |||
# Set the filename parameter | |||
msg.add_header('Content-Disposition', 'attachment', filename=filename) | |||
outer.attach(msg) | |||
composed = outer.as_string() | |||
s = smtplib.SMTP('localhost') | |||
s.sendmail('', mailto , composed) | |||
s.quit() | |||
return | |||
main() | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 19:25, 11 September 2018
Sending mail with sendmail
sendmail -t < <messagefile>- Send the email as in <messagefile>
The email headers are in <messagefile>. That should look like:
From: me@mydomain.tld
To: user@domain.tld
Subject: Subject of your mail
email text
Python email sender found in [python docs]
import smtplib
from email import encoders
from email.message import Message
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
def main():
attachement = fileapath
mailto = you@domain.tld
mailsubject = 'What this is about'
mailtext = "Hi,\n\nI'd like to send you an email.\n\nBest Regards\n\nMe."
sendmail(mailto,mailsubject,mailtext,attachment)
return
def sendmail(mailto,mailsubject,mailtext,attachment):
filename = attachment.split('/')[-1]
outer = MIMEMultipart()
outer['Subject'] = mailsubject
outer['To'] = mailto
msg = MIMEText(mailtext,_subtype='plain')
outer.attach(msg)
ctype = 'application/octet-stream'
maintype, subtype = ctype.split('/', 1)
fp = open(attachment, 'rb')
msg = MIMEBase(maintype, subtype)
msg.set_payload(fp.read())
fp.close()
# Encode the payload using Base64
encoders.encode_base64(msg)
# Set the filename parameter
msg.add_header('Content-Disposition', 'attachment', filename=filename)
outer.attach(msg)
composed = outer.as_string()
s = smtplib.SMTP('localhost')
s.sendmail('', mailto , composed)
s.quit()
return
main()