码迷,mamicode.com
首页 > 其他好文 > 详细

SSL连接形式发送邮件

时间:2019-01-16 00:17:16      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:host   python   ssl   参数   sendmail   发送   epo   信息   header   

用QQ邮箱给自己发送文本邮件:

简单的邮件传输协议SMTP,用于在邮件服务器之间发送电子邮件

Python提供了smtplib模块,使用该模块可以进行接收发送邮件和监听这样一个过程

格式为:

import smptlib

smpt_object = smptlib.SMPT(host,port,local_hostname)

host:运行SMTP服务器的主机

port:主机端口

local_hostname:如果在本地运行,则指定localhost

SMTP对象下有一个sendmail()方法,该方法用于执行邮件发送工作;有三个参数 from_addr, to_addrs, msg,分别为发件人、收件人和发送的信息

from smtplib import SMTP_SSL
from email.mime.text import  MIMEText
from email.header import Header

def senreport():
    #QQ邮箱的SMTP服务器地址
    host_server = "smtp.qq.com"
    # 发件人QQ邮箱
    sender = "发件人"
    # 授权码
    pwd = "授权码"
    # 收件人
    receiver = "收件人"

    # 邮件正文内容
    mail_content = "测试邮件"
    # 邮件标题
    mail_title = "测试报告"

    # QQ邮箱是由SSL的
    # SSL登录
    smtp = SMTP_SSL(host_server)
    # 用来调试,1表示打开,0表示关闭
    smtp.set_debuglevel(1)
    # 服务器名
    smtp.ehlo(host_server)
    # 登录
    smtp.login(sender,pwd)
    # 邮件正文,格式为默认的,字符集为utf-8
    msg=MIMEText(mail_content,"plain","utf-8")
    # 邮件头
    msg["Subject"] = Header(mail_content,"utf-8")
    msg["From"]=sender
    msg["To"]=receiver
    smtp.sendmail(sender,receiver,msg.as_string())
    # 退出
    smtp.quit()

# 测试一下
senreport()

测试之后能成功发送并接收邮件

给多人发送邮件时,就在收件人那里改一下,以列表的形式存放收件人邮箱地址,然后再把msg["To"]去掉即可

SSL连接形式发送邮件

标签:host   python   ssl   参数   sendmail   发送   epo   信息   header   

原文地址:https://www.cnblogs.com/bigbigtong/p/10274861.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!