案例一

#!/usr/bin/env python3.6
# -*- coding=utf-8 -*-
import smtplib
from email.mime.text import MIMEText
_user = "648613081@qq.com" #发送账户
_pwd  = "这里改成你的授权码" #发送账户的授权码
_to   = "648613081@qq.com" #接收账户
msg = MIMEText("this is a email from python,ha ha ha ...") #邮件内容
msg["Subject"] = "这里是主题"  #邮件主题
msg["From"] = _user
msg["To"] = _to
try:
    s = smtplib.SMTP_SSL("smtp.qq.com", 465) #邮件服务器,端口
    s.login(_user, _pwd)
    s.sendmail(_user, _to, msg.as_string())
    s.quit()
    print ("发送成功")
except (s.smtplib.SMTPException, e):
    print ("发送失败")

案例二

#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import os,sys
reload(sys)
sys.setdefaultencoding('utf8')
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from  subprocess import *
def sendqqmail(username,password,mailfrom,mailto,subject,content):
     #邮箱的smtp填写在这里
    gserver = 'smtp.qq.com'
    #qq邮箱的端口号为465
    gport = 25
    try:
        msg = MIMEText(unicode(content).encode('utf-8'))
        msg['from'] = mailfrom
        msg['to'] = mailto
        msg['Reply-To'] = mailfrom
        msg['Subject'] = subject
        #ssl连接,把下面改为smtp = smtplib.SMTP_SSL(gserver, gport)
        smtp = smtplib.SMTP(gserver, gport)
        smtp.set_debuglevel(0)
        smtp.ehlo()
        smtp.login(username,password)
        smtp.sendmail(mailfrom, mailto, msg.as_string())
        smtp.close()
    except Exception,err:
        print "Send mail failed. Error: %s" % err
def main():
    to=sys.argv[1]
    subject=sys.argv[2]
    content=sys.argv[3]
##定义邮箱的账号和密码,你需要修改成你自己的账号和密码(请不要把真实的用户名和密码放到网上公开,否则你会死的很惨)
    sendqqmail('1234567@qq.com','aaaaaaaaaa','1234567@qq.com',to,subject,content)
if __name__ == "__main__":
    main()
     
     
#####脚本使用说明######
#1. 首先定义好脚本中的邮箱账号和密码
#2. 脚本执行命令为:python mail.py 目标邮箱 "邮件主题" "邮件内容"
#3. 更改其他邮箱后缀,只需要更改gserver = 'smtp.139.com',把邮箱的smtp开启就可以了
#4.  gport = 25 为端口,qq邮箱的端口为465
#5.  如有ssl连接,代码部分为smtp = smtplib.SMTP_SSL(gserver, gport),在原基础加_SSL