zoukankan      html  css  js  c++  java
  • 通过python发送邮件

    学习一下如何通过python来发送邮件,这里使用第三方SMTP进行发送。

    学习链接:https://www.runoob.com/python/python-email.html  https://www.liaoxuefeng.com/wiki/897692888725344/923057144964288

    基础知识:

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。

    python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

    Python对SMTP支持有smtplibemail两个模块,email负责构造邮件,smtplib负责发送邮件。

    构造MIMEText对象时,第一个参数就是邮件正文,第二个参数是MIME的subtype,传入'plain',最终的MIME就是'text/plain',最后一定要用utf-8编码保证多语言兼容性。

    代码:

    import smtplib
    from email.mime.text import MIMEText
    from email.utils import formataddr
    
    my_sender = 'xxx@qq.com'  # 发件人邮箱账号
    my_pass = 'xxx'  # 发件人邮箱密码(授权码)
    my_user = 'xxx@qq.com'  # 收件人邮箱账号,我这边发送给自己
    
    
    def mail():
        ret = True
        try:
            
            msg = MIMEText('这是一封通过python发送的邮件', 'plain', 'utf-8')
            msg['From'] = formataddr(["猪猪侠", my_sender])  # 括号里的对应发件人邮箱昵称、发件人邮箱账号
            msg['To'] = formataddr(["笨笨狗", my_user])  # 括号里的对应收件人邮箱昵称、收件人邮箱账号
            msg['Subject'] = "发送邮件测试"  # 邮件的主题,也可以说是标题
    
            # QQ 邮箱 SMTP 服务器地址:smtp.qq.com,ssl 端口:465。
            server = smtplib.SMTP_SSL("smtp.qq.com", 465)  # 发件人邮箱中的SMTP服务器,端口是25
            server.login(my_sender, my_pass)  # 括号中对应的是发件人邮箱账号、邮箱密码
            server.sendmail(my_sender, [my_user, ], msg.as_string())  # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
            server.quit()  # 关闭连接
        except Exception as e:  # 如果 try 中的语句没有执行,则会执行下面的 ret=False
            ret = e
        return ret
    
    ret = mail()
    print(ret)
    猪猪侠要努力呀!
  • 相关阅读:
    BZOJ3105-新Nim游戏
    POJ2947-Widget Factory
    POJ2248-Addition Chains
    POJ1964-City Game
    POJ2823-Sliding Window
    关于upx壳的一点认知,以及upx壳的特征识别
    易语言人脸识别算法源码
    易语言websocket客户端纯源码(无模块)
    易语言雷电模拟器批量虚拟定位源码
    易语言修改外部任意窗口标题图标源码
  • 原文地址:https://www.cnblogs.com/mlllily/p/11213874.html
Copyright © 2011-2022 走看看