zoukankan      html  css  js  c++  java
  • SSL连接形式发送邮件

    用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"]去掉即可

  • 相关阅读:
    Flask 的 请求扩展 与 中间件
    Flask的配置文件 与 session
    django中的FBV和CBV
    Flask开启多线程、多进程
    WPF获取原始控件样式
    一个40岁老码农的总结,奋斗没有意义,选择大于努力
    FastText 分析与实践
    Flask的多app应用,多线程如何体现
    Python 远程调用MetaSploit
    GitLab 7.5.3 CentOS7安装和SMTP配置
  • 原文地址:https://www.cnblogs.com/bigbigtong/p/10274861.html
Copyright © 2011-2022 走看看