zoukankan      html  css  js  c++  java
  • python实现邮件的发送

    一、163邮箱设置

    进入163邮箱,点击设置中的pop3/smtp/imap

    开启smtp服务,如果没有开启,点击设置,手机号验证后勾选开启即可,开启后图如下:

    主要用到的就是smtp服务器:smtp.163.com

    然后设置客户端授权密码:

    记住密码,如果不记得密码在这重新授权。手机号验证即可重新授权。这个密码一会写代码的时候要用

    设置成功后,开始写代码

    二、代码实现

     1 # --*-- coding:utf-8 --*--
     2 
     3 # 导入所需要的库
     4 import smtplib #这个库用于发送邮件
     5 from email.mime.text import MIMEText #用于写邮件主题、内容等
     6 
     7 
     8 # 第一步:设置登陆邮箱数据
     9 # smtp服务器
    10 smtp_server = 'smtp.163.com' # 刚才在163邮箱中设置后出现的内容
    11 # 设置邮箱地址,自己的邮箱,发送者
    12 sender = 'SunshineWuya@163.com'
    13 # 邮箱密码,163邮箱设置中的客户端授权密码
    14 pwd = 'xxxxxxx'
    15 
    16 
    17 # 第二步:设置发送的内容
    18 # 发送内容text
    19 text = 'python自动发送邮件'
    20 # 将发送的内容转化为邮件的文本内容
    21 txt = MIMEText(text)
    22 # 设置邮件主题
    23 txt['Subject'] = 'test send email'
    24 # 设置邮件发送者
    25 txt['From'] = sender
    26 
    27 
    28 # 第三步:发送邮件
    29 # 创建SMTP服务器
    30 mail_server = smtplib.SMTP(smtp_server,25)
    31 # 登陆服务器
    32 mail_server.login(sender,pwd)
    33 # 发送邮件
    34 mail_server.sendmail(sender,['SunshineWuya@163.com'],txt.as_string())
    35 # 第一个参数为发送者,第二个参数为接收者,可以添加多个例如:['SunshineWuya@163.com','xxx@qq.com',]
    36 # 第三个参数为发送的内容
    37 
    38 
    39 # 第四步:退出登陆
    40 mail_server.quit()

    三、查看结果

    在收件箱中查看结果:

    查看邮件的内容:

    四、将收件人的邮箱地址换成发送者的地址,报554错误

       出现554的错误有很多,笔者是收件人To和发件人From没有成对出现造成的,具体问题具体分析,更多解决方法可以百度

      解决方法:

      将收件人地址添加在To中,再次发送

      

  • 相关阅读:
    Centos warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
    gitlab安装与配置(Centos6.8)
    重装MAC系统 “安装器有效负载签名检查失败” 解决方法
    nginx配置限制同一个ip的访问频率
    nginx配置文件详解
    C# 获取打印机列表以及串口
    JQ将数组转换为Json
    快速查看SQL Server 中各表的数据量以及占用空间大小
    键盘unicode值对照表
    JavaScript经典代码【二】【javascript判断用户点了鼠标左键还是右键】
  • 原文地址:https://www.cnblogs.com/tynam/p/8759119.html
Copyright © 2011-2022 走看看