python发送QQ邮件,自定义邮件内容

怎么发QQ邮件,网上的例子很多,就不介绍了,具体可参考:https://www.jianshu.com/p/0f8c5e4e7054

这里主要把自定义邮件内容写一下

# -*- coding: utf-8 -*-

import smtplib
from email.mime.text import MIMEText

day = datetime.date.today()
msg_from='xxxxx@qq.com'                                     #发送方邮箱
passwd='vxxxxdd'                                            #填入发送方邮箱的授权码
msg_to='xxxxxxxxxx@qq.com'                                  #收件人邮箱
subject = str(day) + "头条新闻"                             #主题
content = '邮件内容'                                        #正文
msg = MIMEText(content)
msg['Subject'] = subject
msg['From'] = msg_from
msg['To'] = msg_to
try:
    s = smtplib.SMTP_SSL("smtp.qq.com",465)
    s.login(msg_from, passwd)
    s.sendmail(msg_from, msg_to, msg.as_string())
    print(str(day)+"    发送成功")
except Exception:
    print(str(day)+"    发送失败")
finally:
    s.quit()

上面的代码 ,content即发送邮件的内容。这是比较标准的内容格式,内容都是已经确定好的不会进行增减

但是,爬虫的结果很多都是数组,当然数组业可以直接当作内容发送,只是这样看邮件就很多“[]”且数据不是换行显示的,不便于内容浏览

 

 

所以对content进行改造,增加正文标题、循环取数组数据且换行显示,具体代码如下

content = ''
content +="中国人民政府网信息一览:"+'\n'
for i in gov:
    content +=i+'\n'
content +='\n'+'\n'"中国发改委信息一览:"+'\n'
for i in ndrc:
    content +=i+'\n'

将代码1改造成代码2,即实现预期目标

gov和ndrc是爬取某网站后返回的数组,注意content +=是关键,表面你要插入的内容,'\n'是换行符,最终效果如下

 

posted @ 2021-03-28 17:49  小贝书屋  阅读(209)  评论(0编辑  收藏  举报