python 模拟126邮箱发送邮件

用Python发送126邮件

今天想做个自动化邮件提醒的功能,最近刚好在学习python,都说python那么强大,想试一下python能否搞定,搜一下资料,果真可以,而且又简单通俗易懂

from  email.mail.text import MIMEText
import smtplib

#发件人列表
to_list=["[email protected]", "[email protected]"]
#对于大型的邮件服务器,有反垃圾邮件的功能,必须登录后才能发邮件,如126,163
mail_server="smtp.126.com"         # 126的邮件服务器
mail_login_user="[email protected]"   #必须是真实存在的用户,这里我测试的时候写了自己的126邮箱
mail_passwd="******"               #必须是对应上面用户的正确密码,我126邮箱对应的密码

def send_mail(to_list,sub,content):
    ''' to_list:发给谁 sub:主题 content:内容 send_mail("[email protected]","sub","content") '''
    me=mail_user+"<"+mail_user+">"
    msg = MIMEText(content)
    msg['Subject'] = sub
    msg['From'] = me
    msg['To'] = ";".join(to_list)
    try:
        s = smtplib.SMTP()
        s.connect(mail_host)
        s.login(mail_user,mail_pass)
        s.sendmail(me, to_list, msg.as_string())
        s.close()
        return True
    except Exception, e:
        print str(e)
        return False
if __name__ == '__main__':
    if send_mail(mailto_list,"subject","content"):
        print "发送成功"
    else:

抓包结果

工作中习惯抓包分析了分析问题了,这个也抓包看看,可以看到,python已经把smtp协议封装得相当完美了,python只要几行代码就可以实现发邮件功能。
python 模拟126邮箱发送邮件_第1张图片

进去自己的邮箱看一下,收到邮件了

python 模拟126邮箱发送邮件_第2张图片

你可能感兴趣的:(python)