python报表怎么自动发送(报表自动化Python发送邮件)
报表自动化最常见的方式就是定时自动发送邮件,本文就总结下Python发送邮件的具体实现:
第1步:设置邮箱要想用Python发送邮件,首先需要对邮箱进行设置,允许第三方客户端登录。以163邮箱为例,我们需要在设置中开启SMTP服务,开启SMTP服务时会给我们一个授权密码,我们要把这个授权码记录保存下来以便后续使用,如下图所示:
第2步:选用工具包
Python发送邮件常见的是用Python自带的email和smtplib这2个包来实现,但这2个包太繁琐了,不够简单实用。我们选用更简单高效的工具包:yagmail,首先安装这个包:
# 在线安装
pip install yagmail
# 先下载whl文件再安装
pip install C:\Users\sheng\Downloads\yagmail-0.15.293-py2.py3-none-any.whl
import yagmail
yag = yagmail.SMTP(user='xxx@163.com', password='xxx', host='smtp.163.com')
body = """
你好:
附件是运营日报,请查收!
"""
contents = [
body, #邮件正文
r'.\运营日报20230111.xlsx', #附件1
r'.\广告图.png' #附件2
]
to = ['xxx@163.com', 'xxx@126.com'] #要发送的人
cc = ['xxx@qq.com'] #要抄送的人
yag.send(to=to, subject='运营日报', contents=contents, cc=cc)
代码运行结果:
如下图所示,邮件已经成功发送了:
报错处理:
代码首次执行过程中,可能会遇到SMTPHeloError报错 ,这是电脑网络设置导致的,网上搜一下按照网上的解决办法处理即可。
以上就是Python发送邮件的具体实现,选用了非常简洁的yagmail包,代码量比Python自带的email包少很多,希望能帮助到你,如有疑问,欢迎留言。
历史文章:
报表自动化:Python发送微信消息
简单易用的文件合并工具
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com