• python邮件发送基础知识


     
    一、smtplib模块:
    主要通过SMTP类与邮件系统进行交互。使用方法如下:
    
    1.实例化一个SMTP对象:
      s = smtplib.SMTP(邮件服务地址,端口号)
    
      s = smtplib.SMTP_SSL(邮件服务地址,端口号)
    
    2.登陆邮件,权限验证:
      s.login(用户名,密码)
    
    3.发送邮件:
      s.sendmail(发件人邮箱,收件人邮箱,发送内容)
    
    4.断开连接:
      s.close()
    
     
    
    二、email模块:
      email模块:支持发送的邮件内容为纯文本、HTML内容、图片、附件。email模块中有几大类来针对不同的邮件内容形式,常用如下:
    
      MIMEText:(MIME媒体类型)内容形式为纯文本、HTML页面。
    
      MIMEImage:内容形式为图片。
    
      MIMEMultupart:多形式组合,可包含文本和附件。
    
     
    
    每一类对应的导入方式:
      from email.mime.text import MIMEText
    
      from email.mime.image import MIMEImage
    
      from email.mime.multipart import MIMEMultipart
    
     
    
    三、MIMEText:
      MIMEText(msg,type,chartset)
    
      msg:文本内容
    
      type:文本类型默认为plain(纯文本)
    
       发送HTML格式的时候,修改为html,但同时要求msg的内容也是html的格式。
    
      chartset:文本编码,中文为“utf-8”
    
      # 构造TEXT格式的消息
    
      msg = MIMEText("hello.text","plain","utf-8")
    
      msg["Subject"] = "xxxxx"
    
      msg["From"] = "xxxx"
    
      msg["To"] = "xxxx"
    
      #发送以上构造的邮件内容要使用as_string将构造的邮件内容转换为string形式。
    
      s.sendmail("xxx","xxx",msg.as_string)
    
     
    
    四、MIMEImage、MIMEMultipart:
      msg = MIMEMultipart()
    
      #实例化一个文本对象 
    
      msg_sub = MIMEText("hello.text","plain","utf-8")
    
      #将text消息添加到MIMEMultipart中,作为邮件正文。
    
      msg.attach(msg_sub)
    
     
    
      #图片作为附件
    
      import os
    
      img_datas = open(os.getcwd()+ "/reports/xxxx.png","rb").read()
    
      msg_img = MIMEImage(img_data)
    
      msg_img.add_header('Content-Disposition','attachment', filename = "xxxx.png" )
    
      msg_img.add_header('Content-ID','<0>')
    
      #将图片添加到MIMEMultiplart中,作为附件发送。
    
      msg.attach(mag_img)
  • 相关阅读:
    BZOJ5308 ZJOI2018胖
    BZOJ5298 CQOI2018交错序列(动态规划+矩阵快速幂)
    423. Reconstruct Original Digits from English
    422. Valid Word Square
    277. Find the Celebrity
    419. Battleships in a Board
    414. Third Maximum Number
    413. Arithmetic Slices
    412. Fizz Buzz
    285. Inorder Successor in BST
  • 原文地址:https://www.cnblogs.com/nanfengnan/p/14121130.html
Copyright © 2020-2023  润新知