用Python登录Gmail并发送Gmail邮件的教程


Posted in Python onApril 17, 2015

 这篇快文介绍了使用Gmail作为您的e-mail服务器,通过Python的内置SMTP库发送电子邮件。它并不复杂,我保证。

下面是如何在Python中登录GMail:
 

import smtplib
 
# The below code never changes, though obviously those variables need values.
session = smtplib.SMTP('smtp.gmail.com', 587)
session.ehlo()
session.starttls()
session.login(GMAIL_USERNAME, GMAIL_PASSWORD)

下面是如何在Python中发送邮件:
 

headers = "\r\n".join(["from: " + GMAIL_USERNAME,
            "subject: " + email_subject
            "to: " + recipient,
            "mime-version: 1.0",
            "content-type: text/html"])
 
# body_of_email can be plaintext or html!          
content = headers + "\r\n\r\n" + body_of_email
session.sendmail(GMAIL_USERNAME, recipient, content)

取决于您对Python的掌握,这可能是一段相当小或相当长的代码。

对我来说,第一次拿一个程序来发送电子邮件,就如我看到黑客帝国里面的场景那一刻,就像我第一次在 Godaddy 上建立一个网站,或者像我第一次使用 JOptionPane 的疑惑。这是一个实现方法(一个简单的方法,它使得实现类似的应用变得非常简单),虽然我以前看过很多发邮件的代码,但这仍然给我留下了深刻的印象。

另外,尽管上面的代码简单,但我第一次也是倾尽全力,花了两个多小时才把那些代码写出来。因此我希望能帮到一些其他人。

Python 相关文章推荐
python docx 中文字体设置的操作方法
May 08 Python
Python3基于sax解析xml操作示例
May 22 Python
解决Tensorflow安装成功,但在导入时报错的问题
Jun 13 Python
python把数组中的数字每行打印3个并保存在文档中的方法
Jul 17 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 Python
Python使用指定端口进行http请求的例子
Jul 25 Python
QML使用Python的函数过程解析
Sep 26 Python
python的time模块和datetime模块实例解析
Nov 29 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
Python递归调用实现数字累加的代码
Feb 25 Python
python对一个数向上取整的实例方法
Jun 18 Python
pytorch加载预训练模型与自己模型不匹配的解决方案
May 13 Python
基于Python实现的百度贴吧网络爬虫实例
Apr 17 #Python
python中dir函数用法分析
Apr 17 #Python
python传递参数方式小结
Apr 17 #Python
使用70行Python代码实现一个递归下降解析器的教程
Apr 17 #Python
python类继承与子类实例初始化用法分析
Apr 17 #Python
python中split方法用法分析
Apr 17 #Python
仅用50行代码实现一个Python编写的计算器的教程
Apr 17 #Python
You might like
echo(),print(),print_r()之间的区别?
2006/11/19 PHP
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
2007/04/12 PHP
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
Godaddy空间Zend Optimizer升级方法
2010/05/10 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
2014/10/30 PHP
学习php设计模式 php实现单例模式(singleton)
2015/12/07 PHP
PHP使用Memcache时模拟命名空间及缓存失效问题的解决
2016/02/27 PHP
PHP不使用递归的无限级分类简单实例
2016/11/05 PHP
javascript编程起步(第五课)
2007/01/10 Javascript
JavaScript 对象模型 执行模型
2009/12/06 Javascript
javascript结合ajax读取txt文件内容
2014/12/05 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
js实现键盘Enter键提交表单的方法
2015/05/27 Javascript
五种js判断是否为整数类型方式
2015/12/03 Javascript
Bootstrap3使用typeahead插件实现自动补全功能
2016/07/07 Javascript
Node.js的特点详解
2017/02/03 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
vue组件tabbar使用方法详解
2018/11/06 Javascript
vue+element实现打印页面功能
2019/05/20 Javascript
[52:52]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第三局
2016/02/27 DOTA
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
简单易懂的python环境安装教程
2017/07/13 Python
Python 和 JS 有哪些相同之处
2017/11/23 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
python中利用matplotlib读取灰度图的例子
2019/12/07 Python
用python实现名片管理系统
2020/06/18 Python
django rest framework 过滤时间操作
2020/07/12 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
Python和Bash结合在一起的方法
2020/11/13 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
自动化专业职业生涯规划书范文
2014/01/16 职场文书
财务工作失职检讨书
2014/11/21 职场文书
小学作文指导之如何写人?
2019/07/08 职场文书
Java SSH 秘钥连接mysql数据库的方法
2021/06/28 Java/Android
vue项目proxyTable配置和部署服务器
2022/04/14 Vue.js