在某些应用中,可能会需要由管理员给所有用法群发电子邮件,或者类似的应用。本文代码使用Python详细模拟了这个过程。

import email

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

from email.mime.base import MIMEBase

import smtplib

sender = '你的电子邮件地址'

username = '你的用户名'

userpwd = '你的电子邮箱密码'

# 这里以126邮箱为例,可以根据需要进行修改

host = 'smtp.126.com'

port = 25

# 要发送的邮件内容

body = '''这是《Python程序设计开发宝典》和《Python可以这样学》的作者董付国发来的测试信息。'''

# 要群发的电子邮件地址

recipients = ('第一个收件人电子邮件地址',

'第二个收件人电子邮件地址',

'第三个收件人电子邮件地址')

# 登录自己的电子邮箱服务器

server = smtplib.SMTP(host, port)

server.starttls()

server.login(username, userpwd)

# 开始群发

for recipient in recipients:

# 创建邮件

msg = MIMEMultipart()

msg.set_charset('utf-8')

# 回复地址与发信地址可以不同

# 但是大部分邮件系统在回复时会提示

msg['Reply-to'] = '你的另外一个电子邮件地址'

# 设置发信人、收信人和主题

msg.add_header('From', sender)

msg.add_header('To', recipient)

msg.add_header('Subject', '这是一个测试')

# 设置邮件文字内容

msg.attach(MIMEText(body, 'plain',_charset="utf-8"))

# 添加图片

with open('测试图片.jpg', 'rb') as fp:

msg.attach(MIMEImage(fp.read()))

# 添加附件文件

attachment = MIMEBase('text', 'txt')

with open('测试附件.txt', 'rb') as fp:

attachment.set_payload(fp.read())

email.encoders.encode_base64(attachment)

attachment.add_header('content-disposition',\

'attachment',filename=('utf-8', '', '测试附件.txt'))

msg.attach(attachment)

# 发送邮件

server.send_message(msg)

# 退出邮件服务器

server.quit()

----------喜大普奔----------

1、继《Python程序设计基础》《Python程序设计(第2版)》《Python可以这样学》系列图书之后,董付国老师新书《Python程序设计开发宝典》已于2017年8月1日在清华大学出版社出版。为庆祝新书《Python程序设计开发宝典》全面上架,清华大学出版社联合“赣江图书专营”淘宝店推出特价优惠活动,《Python程序设计开发宝典》原价69元,新书上架期间超低价39.8元,可以复制下面的链接使用浏览器打开查看图书详情和购买:

https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-14464369246.84.46f16db0roWfX4&id=557107249812&rn=339cbc9df2bac424664103917dedfbd2&abbucket=8&tbpm=3

2、10月13日——15日,重庆,全国高校程序设计系列课程高级研究班,详见:全国高校程序设计系列课程高级研修班(Python)通知

使用Python实现电子邮件群发功能相关推荐

  1. 用python群发邮件_使用Python实现电子邮件群发功能

    原标题:使用Python实现电子邮件群发功能 在某些应用中,可能会需要由管理员给所有用法群发电子邮件,或者类似的应用.本文代码使用Python详细模拟了这个过程. importemail fromem ...

  2. html邮件模板编辑器_免费电子邮件群发工具推荐「aweber」

    推荐一款免费30天使用的电子邮件群发工具「aweber」,并且它不单单只是一个邮件群发工具,它有非常多的实用功能,以下我会做一些简单介绍. 一:自动化营销渠道 使用aweber的拖放广告系列编辑器构建 ...

  3. 使用Python发送电子邮件

    by Arjun Krishna Babu 通过Arjun Krishna Babu 如何使用Python发送电子邮件 (How to send emails using Python) As a l ...

  4. 使用Python实现微信群发每日一句

    我在自己教学的四个班里建了三个微信群,每个群大约有50-90人.我计划每天给学生双送双语每日一句,既让学生坚持学习英语,也传递给他们正能量,在后疫情时代保持积极向上.奋发有为的状态.然而,从拷贝金山词 ...

  5. python电子邮件地址怎么写_用Python发送电子邮件

    今天给大家分享如何用Python自动发送电子邮件,当我们在云服务器上部署了爬虫,就希望当爬虫发生异常情况的时候能通过自动发送电子邮件来通知我们.因此学会用Python程序自动发送邮件能减轻不少爬虫监控 ...

  6. 外贸软件_仿神卓外贸管理软件强大的邮件群发功能(不被退信的实现方法)

    外贸软件市场中,神卓外贸管理软件肯定是一款优秀的外贸业务流程管理软件,用户数众多,最牛的功能是邮件群发功能,今天要说的是邮件群发,常规的企业邮件一天中一般发送不会超过70封邮件,多了就有可能会被退信, ...

  7. python可以实现哪些功能_Python学习究竟有多强大,Python代码能实现哪些功能

    Python究竟有多强大?Python代码能实现哪些功能?众所周知,Python入门简单.功能强大,是人工智能时代最佳的编程语言.但很多人好奇Python究竟有多强大,为什么那么受欢迎?下面就来给大家 ...

  8. python3.7和3.8的区别-Python 3.8 新功能来一波(大部分人都不知道)

    Python 是一门广受好评的编程语言,每个版本的更新都会对开发社区带来一定影响.近日,Python 3.8 已进入 beta 2 版本的测试中,各项新特性已经添加完毕,最终版本预计于今年 10 月发 ...

  9. python3.8.5怎么用-Python 3.8 新功能大揭秘【新手必学】

    最新版本的Python发布了!今年夏天,Python 3.8发布beta版本,在2019年10月14日,第一个正式版本已准备就绪.现在,我们都可以开始使用新功能并从最新改进中受益. Python 3. ...

最新文章

  1. [冲昏头脑]IDEA中的maven项目中学习log4j的日志操作
  2. C++中operator关键字(重载操作符)
  3. matlab风力机叶片仿真教程,我用matlab编写了一个风力机叶片的优化设计程序,有点问题 - 程序语言 - 小木虫 - 学术 科研 互动社区...
  4. 什么是软件资产管理?
  5. 喵哈哈村的魔法考试 Round #5 (Div.2) C
  6. 学习笔记:UITabBarController使用详解
  7. 发布在IIS的网站,可以用本机IP登录访问,用localhost不可登录访问
  8. OpenCASCADE:Foundation Classes之异常
  9. 乌班图系统16.04安装
  10. 关于钥匙串中所有证书签名无效的问题解决纪录
  11. dll domodal运行时异常_解决装备疑难,计算机丢失***.dll文件方法「设计画圈」
  12. react在线浏览doc_如何把doc文件转换成PDF格式?教你一招秒实现
  13. web后端语言_web前端学习路线图_快速入门web前端学习路线图
  14. 二、语音合成(TTS)
  15. 关于html转换为pdf案例的一些测试与思考
  16. Matlab有趣代码
  17. 二十多年了,安全套市场还只有杜蕾斯、冈本、杰士邦
  18. 三菱IPM驱动芯片PSS15S92\PSS20S92分析
  19. 酷我音乐盒去广告方法(我用的是酷我音乐盒2010贺岁版)
  20. 数据结构课程设计银行储蓄系统

热门文章

  1. hibernate clob mysql_Hibernate操作Clob类型数据
  2. delete select语句_MySQL InnoDB锁介绍及不同SQL语句分别加什么样的锁
  3. oracle 12创建一个表,oracle 12 c 创建表空间,用户名,及表
  4. ipa图片解密 php,ipa文件中的图片获取
  5. android x86 uc,android x86 固件定制
  6. php接收post写入文件,PHP中Post和Get获取数据写入文件中
  7. 客户端负载均衡及透明应用切换(TAF)tnsnames failover=on
  8. Oracle11g新特性:在线操作功能增强-Oracle对象依赖性判断增强 (转载)
  9. html设置缩放级别,自定义页面缩放「Custom Page Zoom」
  10. 2. with check option能起什么作用?_【科普】专家教路:面膜护肤到底有什么用?