首页 > 代码库 > python 发送邮件

python 发送邮件

#!/usr/bin/env python 
#-*-coding:utf-8-*-
import smtplib
from  smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.header import Header
#定义一个字典存储发送和接收,邮箱账号密码主题、内容及编码相关信息
mail_info = {
    "from": "w673004708@163.com",  #发件人
    "to": "673004708@qq.com",    #收件人
    "hostname": "smtp.163.com",   #163 smtp服务器
    "username": "w673004708@163.com", #邮箱账号
    "password": "*********",  #邮箱密码,这个密码为163邮箱授权码,
    "subject": "测试一下发邮件",    #邮件主题
    "mail_text": "我只想测试下邮件能否发送",#邮件内容
    "mail_encoding": "utf-8"      #编码格式
}
#使用MIME格式传送内容
msg=MIMEText(mail_info[‘mail_text‘],"plain",mail_info[‘mail_encoding‘])
#设置邮件主题
msg[‘Subject‘] = Header(mail_info[‘subject‘],mail_info[‘mail_encoding‘])
#设置邮件发件人
msg["from"] = mail_info["from"]
#设置收件人
msg["to"] = mail_info["to"]
#创建一个smtp对象
smtp=SMTP_SSL()
#smtp.set_debuglevel(1)
try:
#连接qq smtp服务器
    smtp.connect(mail_info[‘hostname‘])
#使用账号密码登录邮箱
    smtp.login(mail_info[‘username‘],mail_info[‘password‘])
#发送邮件
    smtp.sendmail(mail_info[‘from‘],mail_info[‘to‘],msg.as_string())
#关闭邮件对象
    smtp.quit()
except smtplib.SMTPAuthenticationError as e:
    print e
else:
    print "发送成功"

注意python的格式,上面的可以直接发送,主题和内容都是固定的


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

下边这个可以传递参数

[root@bogon ~]# python mail.py   今日工作   迁移服务器外加代码上线

发送成功

[root@bogon ~]# 

#!/usr/bin/env python 
#-*-coding:utf-8-*-
import smtplib 
import sys
from  smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.header import Header

#定义一个字典存储发送和接收,邮箱账号密码主题、内容及编码相关信息
subject = sys.argv[1]
content = sys.argv[2]
mail_info = {
    "from": "w673004708@163.com",  #发件人
    "to": "673004708@qq.com",    #收件人
    "hostname": "smtp.163.com",   #qq smtp服务器
    "username": "w673004708@163.com", #邮箱账号
    "password": "******",  #邮箱密码,这个密码为163邮箱授权码,
    "subject": subject,    #邮件主题
    "mail_text": content,#邮件内容
    "mail_encoding": "utf-8"      #编码格式
}
#使用MIME格式传送内容
msg=MIMEText(mail_info[‘mail_text‘],"plain",mail_info[‘mail_encoding‘])
#设置邮件主题
msg[‘Subject‘] = Header(mail_info[‘subject‘],mail_info[‘mail_encoding‘])
#设置邮件发件人
msg["from"] = mail_info["from"]
#设置收件人
msg["to"] = mail_info["to"]
#创建一个smtp对象
smtp=SMTP_SSL()
#smtp.set_debuglevel(1)
try:
#连接qq smtp服务器
    smtp.connect(mail_info[‘hostname‘])
#使用账号密码登录邮箱
    smtp.login(mail_info[‘username‘],mail_info[‘password‘])
#发送邮件
    smtp.sendmail(mail_info[‘from‘],mail_info[‘to‘],msg.as_string())
#关闭邮件对象
    smtp.quit()
except smtplib.SMTPAuthenticationError as e:
    print e
else:
    print "发送成功"


本文出自 “砖家博客” 博客,请务必保留此出处http://wsxxsl.blog.51cto.com/9085838/1954683

python 发送邮件