python自动化处理邮件

准备:将邮件开通smtp服务

from smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
#
# #基础信息
host_server ='smtp.sina.cn' #邮箱SMTP服务器
sender ='****@sina.cn' #sender_sina
pwd ='***'
receiver ='31321127@qq.com'
mail_title ='这是用python自动化发的邮件标题'
mail_content ='邮件内容'
# #装载主体
msg =MIMEMultipart()  #邮件主体
msg["Subject"]=Header(mail_title,'utf-8')
msg["From"]=sender
msg["To"]=Header('测试邮箱','utf-8')
msg.attach(MIMEText(mail_content,'plain','utf-8'))

#  发送
smtp =SMTP_SSL(host_server) #ssl登录
smtp.login(sender,pwd)
smtp.sendmail(sender,receiver,msg.as_string())
smtp.quit()

发送带格式的 eg:使用html格式

import smtplib
from smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
#
# #基础信息
host_server ='smtp.sina.cn' #邮箱SMTP服务器
sender ='***@sina.cn' #sender_sina
pwd ='****'
receiver ='31321127@qq.com'
mail_title ='这是用python自动化发的邮件标题'
mail_content =' 你好, <a href="http://www.baidu.com"><P>这是百度地址</p></a>'
# #装载主体
msg =MIMEMultipart()  #邮件主体
msg["Subject"]=Header(mail_title,'utf-8')
msg["From"]=sender
msg["To"]=Header(receiver,'utf-8')
msg.attach(MIMEText(mail_content,'html','utf-8'))



try:
    #  发送
    smtp = SMTP_SSL(host_server)  # ssl登录
    smtp.login(sender, pwd)
    # smtp.set_debuglevel(1)  #邮件发送调试信息
    smtp.sendmail(sender, receiver, msg.as_string())
    print('发送成功')
    smtp.quit()
except smtplib.SMTPException as e:
    print(e)
# Author zxm
#
#
import smtplib
from smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.application import MIMEApplication  #添加附件
#
# #基础信息
host_server ='smtp.sina.cn' #邮箱SMTP服务器
sender ='***@sina.cn' #sender_sina
pwd ='***'
receiver ='31321127@qq.com'
mail_title ='这是用python自动化发的邮件标题'
mail_content =' 你好, <a href="http://www.baidu.com"><P>这是百度地址</p></a>'
# #装载主体
msg =MIMEMultipart()  #邮件主体
msg["Subject"]=Header(mail_title,'utf-8')
msg["From"]=sender
msg["To"]=Header(receiver,'utf-8')
msg.attach(MIMEText(mail_content,'html','utf-8'))

#添加附件
path ="D:/autoOffice/李四粮食-价格通知.pdf"
file =MIMEApplication(open(path,'rb').read())
file.add_header('Content-Disposition','attachment',filename='李四粮食-价格通知.pdf')
msg.attach(file)

try:
    #  发送
    smtp = SMTP_SSL(host_server)  # ssl登录
    smtp.login(sender, pwd)
    # smtp.set_debuglevel(1)  #邮件发送调试信息
    smtp.sendmail(sender, receiver, msg.as_string())
    print('发送成功')
    smtp.quit()
except smtplib.SMTPException as e:
    print(e)

说完发,然后说收 

准备:pip install zmail

import zmail

server =zmail.server('***@sina.cn','***')
mail =server.get_latest()
# zmail.show(mail)
print(mail['subject'])
print(mail['id'])
print(mail['from'])
print(mail['to'])
# print(mail['content_text'])
# print(mail['content_html'])
zmail.save_attachment(mail,target_path=None,overwrite=True) #拿附件