zoukankan      html  css  js  c++  java
  • python常识系列11-->python发送邮件基础

    前言

        人之所以能,是相信能。
    

    一、python邮件模块简介

    • email模块属于内置模块,用来自定义邮件的中文、主题、日期、附件等信息;
    • smtplib模块属于内置模块,它对smtp协议进行了简单的封装,能实现邮件发送。

    二、邮件发送步骤

    1. 创建SMTP的操作对象并连接smtp目标服务器,可以是163、QQ等
    2. 使用自己的账号登录目标服务器(自己的邮箱地址和邮箱授权码)
    3. 调用对象中的方法,发送邮件到目标地址

    示例代码如下:

    import smtplib
    
    server = smtplib.SMTP()  
    smtp.connect(smtp_server) # 发件人邮箱中的SMTP服务器,端口默认是25
    server.login(sender, passwd)  # 发件人邮箱账号、邮箱授权码
    # msg.as_string()中as_string()是将msg(MIMEText或MIMEMultipart对象)变为str。
    server.sendmail(sender, receive, msg.as_string())  
    server.quit()
    

    上述代码没有填写实际的值,不能直接执行,有以下注意点:

    1. msg就是我们的邮件信息对象,通过 email模块 进行定义
    2. 邮箱授权码 非登录邮箱的密码,需要读者进入QQ邮箱或其它邮箱根据步骤进行开通和获取

    简单邮件实战代码如下:

    import smtplib
    from email.mime.text import MIMEText
    
    smtp = smtplib.SMTP()
    smtp.connect('smtp.qq.com')
    smtp.login('329999897@qq.com','***授权码***')
    
    msg = MIMEText('这是一封测试邮件', "html", "utf-8")  #邮件信息对象
    msg['from'] = '329999897@qq.com'  # 发送人邮箱
    msg['to'] = ‘liusir@qq.com’  # 邮件接收人邮箱
    msg['subject'] = ‘测试邮件’  #邮件主题
    
    smtp.sendmail('329999897@qq.com','liusir@qq.com',msg.as_string())
    smtp.quit()
    

    此时就可以完成简单发送邮件啦。
    发送邮件的时候也可以带附件,下一次分享吧。

  • 相关阅读:
    Windows下图文详解PHP三种运行方式(php_mod、cgi、fastcgi)
    【强烈推荐】利用NAT、Host-Only双虚拟网卡,实现Virtual Box中CentOS6.3联网
    PHP批量清空删除指定文件夹内容
    MySQL收藏
    Eclipse快捷键与使用技巧总结
    “知乎网”技术方案初探
    PHP数组常用函数
    PHP常用字符串的操作函数
    Linux下,如何给PHP安装pdo_mysql扩展
    PHP二维数组排序(list_order)
  • 原文地址:https://www.cnblogs.com/dream66/p/12873926.html
Copyright © 2011-2022 走看看