python常用模块email----创建简单的文本邮件并发送

简介:

email模块可以方便的用来构造邮件,今天我们通过一个简单的例子来实现文本邮件的构造的发送。


先将要发送的内容写在文件里面:

cat /tmp/email_test.txt

hello there!

i love python!


编写如下脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
cat test.py
 
#!/usr/bin/python
 
#coding=utf-8
 
import  smtplib
 
#构造邮件内容
from  email.mime.text  import  MIMEText
textfile = '/tmp/email_test.txt'
fp = open (textfile, 'rb' )
msg = MIMEText(fp.read())
fp.close()
 
from_addr = 'xxxxxxxx@qq.com'
password = 'xxxxxxxx'
smtp_server = 'smtp.qq.com'
to_addr = 'xxxxxxxx@qq.com'
 
#构造邮件头
msg[ 'Subject' ] = 'the content of %s' %  textfile
msg[ 'From' ] = from_addr
msg[ 'To' ] = to_addr
 
s = smtplib.SMTP_SSL(smtp_server, 465 )
s.set_debuglevel( 1 )
s.login(from_addr,password)
s.sendmail(from_addr,[to_addr],msg.as_string())
s.quit()


通过两个两个图可以对比一下有邮件头和没有邮件头的邮件的区别:

有邮件头的邮件:

wKiom1grvO2wOqi8AAAXNal76O8743.png-wh_50


没有邮件头的邮件:


wKiom1grvO3BjC2MAAANptF-qr8094.png-wh_50



好了,一封简单的文本邮件就这样发送成功了。


本文转自 emma_cql 51CTO博客,原文链接:http://blog.51cto.com/chenql/1873342


相关文章
|
15天前
|
人工智能 自然语言处理 Shell
[oeasy]python070_如何导入模块_导入模块的作用_hello_dunder_双下划线
本文介绍了如何在Python中导入模块及其作用,重点讲解了`__hello__`模块的导入与使用。通过`import`命令可以将外部模块引入当前环境,增强代码功能。例如,导入`__hello__`模块后可输出“Hello world!”。此外,还演示了如何使用`help()`和`dir()`函数查询模块信息,并展示了导入多个模块的方法。最后,通过一个实例,介绍了如何利用`jieba`、`WordCloud`和`matplotlib`模块生成词云图。总结来说,模块是封装好的功能部件,能够简化编程任务并提高效率。未来将探讨如何创建自定义模块。
33 8
|
12天前
|
缓存 Shell 开发工具
[oeasy]python071_我可以自己做一个模块吗_自定义模块_引入模块_import_diy
本文介绍了 Python 中模块的导入与自定义模块的创建。首先,我们回忆了模块的概念,即封装好功能的部件,并通过导入 `__hello__` 模块实现了输出 "hello world!" 的功能。接着,尝试创建并编辑自己的模块 `my_file.py`,引入 `time` 模块以获取当前时间,并在其中添加自定义输出。
21 4
|
3月前
|
Python
Python Internet 模块
Python Internet 模块。
140 74
|
2月前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
40 3
|
10月前
|
API Python
Python邮箱API发送邮件的方法和步骤
使用Python发送邮件涉及导入smtplib和email模块,设置发件人、收件人、主题和内容,然后连接SMTP服务器(如示例中的smtp.example.com)并使用SMTP方法发送。完整代码示例包括异常处理,确保邮件发送成功或提供错误信息。通过这种方式,可以实现Python的自动化邮件发送功能。
|
数据安全/隐私保护 Python
Python 技术篇-连接qq邮箱服务器,调用qq邮箱发送邮件实战演示,qq邮箱授权码开通方法
Python 技术篇-连接qq邮箱服务器,调用qq邮箱发送邮件实战演示,qq邮箱授权码开通方法
683 0
Python 技术篇-连接qq邮箱服务器,调用qq邮箱发送邮件实战演示,qq邮箱授权码开通方法
|
Web App开发 Python
python发送各类邮件的主要方法
python中email模块使得处理邮件变得比较简单,今天着重学习了一下发送邮件的具体做法,这里写写自己的的心得,也请高手给些指点。     一、相关模块介绍     发送邮件主要用到了smtplib和email两个模块,这里首先就两个模块进行一下简单的介绍:    1、smtplib模块       smtplib.SMTP([host[, port[, local_hostname[, timeout]]]])    SMTP类构造函数,表示与SMTP服务器之间的连接,通过这个连接可以向smtp服务器发送指令,执行相关操作(如:登陆、发送邮件)。
1039 0
|
Python 安全 数据安全/隐私保护
python发送各类邮件的主要方法
python中email模块使得处理邮件变得比较简单,今天着重学习了一下发送邮件的具体做法,这里写写自己的的心得,也请高手给些指点。     一、相关模块介绍     发送邮件主要用到了smtplib和email两个模块,这里首先就两个模块进行一下简单的介绍:    1、smtplib模块       smtplib.SMTP([host[, port[, local_hostname[, timeout]]]])    SMTP类构造函数,表示与SMTP服务器之间的连接,通过这个连接可以向smtp服务器发送指令,执行相关操作(如:登陆、发送邮件)。
1247 0
|
11天前
|
机器学习/深度学习 存储 设计模式
Python 高级编程与实战:深入理解性能优化与调试技巧
本文深入探讨了Python的性能优化与调试技巧,涵盖profiling、caching、Cython等优化工具,以及pdb、logging、assert等调试方法。通过实战项目,如优化斐波那契数列计算和调试Web应用,帮助读者掌握这些技术,提升编程效率。附有进一步学习资源,助力读者深入学习。

热门文章

最新文章