python--发送邮件

你说的曾经没有我的故事 提交于 2020-03-13 13:07:37

一、发送邮件需要用到yagmail模块
1. yagmail模块的安装,有以下两种安装方法,推荐第二种
  1)直接cmd--pip install yagmail
    这种直接安装会有bug,发送邮件时,邮件名会显示为乱码
  2)下载一个yagmail-0.10.212-py2.py3-none-any.whl文件,放到C盘或其他盘
    使用cd命令进入存放该文件的目录中,
    输入命令:pip install yagmail-0.10.212-py2.py3-none-any.whl
  3)使用该模块时需要邮箱的授权码,以QQ邮箱为例来说明授权码在哪里看
    登录QQ邮箱--设置--账户--POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务--生成授权码
    

2. 以下通过一个例子来介绍yagmail模块的使用

 1 import yagmail
 2 username ='1111111111@qq.com'#发件人的邮箱
 3 passwd='aaaaaaaaaa'#邮箱授权码
 4 mail = yagmail.SMTP(user=username,
 5                     password=passwd,
 6                     host='smtp.qq.com',#用的是QQ邮箱则写smtp.qq.com,163邮箱则写smtp.163.com
 7                     smtp_ssl=True
 8                     #port=234#
 9                     )#如果用的是qq邮箱或者你们公司的邮箱使用的是安全协议的话,要加上smtp_ssl=True,163邮箱则不需要
10 mail.send(to='2222222222@qq.com',#收件人,如果是一个收件人的话直接写字符串,多个人则写成list['511402865@qq.com','1129862709@qq.com']就行
11           cc='33333333@qq.com',#抄送
12           subject='测试报告',#邮件标题
13           contents='Hello!',#邮件正文
14           attachments=[r'C:\Users\yantiantian\Desktop\抽奖项目部署文档_最新.txt',r'D:\python_file\day8\作业']#
15           #附件,多个附件则写成list,路径前面加r,不会把特殊字符转译
16           )
17 print('发送成功')

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!