use python to sendmail
文件形式的邮件view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.text import MIMEText
[*]from email.header import Header
[*]
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msg = MIMEText('你好','plain','utf-8')#中文需参数‘utf-8’,单字节字符不需要
[*]msg['Subject'] = Header(subject, 'utf-8')
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msg.as_string())
[*]smtp.quit()
HTML形式的邮件
view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.text import MIMEText
[*]
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msg = MIMEText('<html><h1>你好</h1></html>','html','utf-8')
[*]
[*]msg['Subject'] = subject
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msg.as_string())
[*]smtp.quit()
带图片的HTML邮件
view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.multipart import MIMEMultipart
[*]from email.mime.text import MIMEText
[*]from email.mime.image import MIMEImage
[*]
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msgRoot = MIMEMultipart('related')
[*]msgRoot['Subject'] = 'test message'
[*]
[*]msgText = MIMEText('<b>Some <i>HTML</i> text</b> and an image.<br><img src="cid:image1"><br>good!','html','utf-8')
[*]msgRoot.attach(msgText)
[*]
[*]fp = open('h:\\python\\1.jpg', 'rb')
[*]msgImage = MIMEImage(fp.read())
[*]fp.close()
[*]
[*]msgImage.add_header('Content-ID', '<image1>')
[*]msgRoot.attach(msgImage)
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msgRoot.as_string())
[*]smtp.quit()
带附件的邮件 view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.multipart import MIMEMultipart
[*]from email.mime.text import MIMEText
[*]from email.mime.image import MIMEImage
[*]
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msgRoot = MIMEMultipart('related')
[*]msgRoot['Subject'] = 'test message'
[*]
[*]#构造附件
[*]att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')
[*]att["Content-Type"] = 'application/octet-stream'
[*]att["Content-Disposition"] = 'attachment; filename="1.jpg"'
[*]msgRoot.attach(att)
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msgRoot.as_string())
[*]smtp.quit()
群邮件
view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.text import MIMEText
[*]
[*]sender = '***'
[*]receiver = ['***','****',……]
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msg = MIMEText('你好','plain','utf-8')
[*]
[*]msg['Subject'] = subject
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msg.as_string())
[*]smtp.quit()
各种元素都包含的邮件
view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.multipart import MIMEMultipart
[*]from email.mime.text import MIMEText
[*]from email.mime.image import MIMEImage
[*]
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]# Create message container - the correct MIME type is multipart/alternative.
[*]msg = MIMEMultipart('alternative')
[*]msg['Subject'] = "Link"
[*]
[*]# Create the body of the message (a plain-text and an HTML version).
[*]text = "Hi!\nHow are you?\nHere is the link you wanted:\nhttp://www.python.org"
[*]html = """\
[*]<html>
[*]<head></head>
[*]<body>
[*] <p>Hi!<br>
[*] How are you?<br>
[*] Here is the <a href="http://www.python.org">link</a> you wanted.
[*] </p>
[*]</body>
[*]</html>
[*]"""
[*]
[*]# Record the MIME types of both parts - text/plain and text/html.
[*]part1 = MIMEText(text, 'plain')
[*]part2 = MIMEText(html, 'html')
[*]
[*]# Attach parts into message container.
[*]# According to RFC 2046, the last part of a multipart message, in this case
[*]# the HTML message, is best and preferred.
[*]msg.attach(part1)
[*]msg.attach(part2)
[*]#构造附件
[*]att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')
[*]att["Content-Type"] = 'application/octet-stream'
[*]att["Content-Disposition"] = 'attachment; filename="1.jpg"'
[*]msg.attach(att)
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msg.as_string())
[*]smtp.quit()
基于SSL的邮件
view plaincopy
[*]#!/usr/bin/env python3
[*]#coding: utf-8
[*]import smtplib
[*]from email.mime.text import MIMEText
[*]from email.header import Header
[*]sender = '***'
[*]receiver = '***'
[*]subject = 'python email test'
[*]smtpserver = 'smtp.163.com'
[*]username = '***'
[*]password = '***'
[*]
[*]msg = MIMEText('你好','plain','utf-8')#中文需参数‘utf-8’,单字节字符不需要
[*]msg['Subject'] = Header(subject, 'utf-8')
[*]
[*]smtp = smtplib.SMTP()
[*]smtp.connect('smtp.163.com')
[*]smtp.ehlo()
[*]smtp.starttls()
[*]smtp.ehlo()
[*]smtp.set_debuglevel(1)
[*]smtp.login(username, password)
[*]smtp.sendmail(sender, receiver, msg.as_string())
[*]smtp.quit()
页:
[1]