用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进行数据提取的方法总结
Aug 22 Python
Collatz 序列、逗号代码、字符图网格实例
Jun 22 Python
python实现多层感知器MLP(基于双月数据集)
Jan 18 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 Python
python实现tail实时查看服务器日志示例
Dec 24 Python
使用celery和Django处理异步任务的流程分析
Feb 19 Python
Jupyter notebook如何实现指定浏览器打开
May 13 Python
python 数据分析实现长宽格式的转换
May 18 Python
Python偏函数Partial function使用方法实例详解
Jun 17 Python
keras自动编码器实现系列之卷积自动编码器操作
Jul 03 Python
Python实现哲学家就餐问题实例代码
Nov 09 Python
Python编写可视化界面的全过程(Python+PyCharm+PyQt)
May 17 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
PHP中如何实现常用邮箱的基本判断
2014/01/07 PHP
php和jquery实现地图区域数据统计展示数据示例
2014/02/12 PHP
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
简述php环境搭建与配置
2016/12/05 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
2017/08/03 PHP
图片自动缩小的js代码,用以防止图片撑破页面
2007/03/12 Javascript
记录几个javascript有关的小细节
2007/04/02 Javascript
AeroWindow 基于JQuery的弹出窗口插件
2011/06/27 Javascript
javascript 常用功能总结
2012/03/18 Javascript
jquery 显示*天*时*分*秒实现时间计时器
2014/05/07 Javascript
js 获取元素在页面上的偏移量的方法汇总
2015/04/13 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
2016/06/12 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
微信小程序url传参写变量的方法
2018/08/09 Javascript
实例讲解JavaScript截取字符串
2018/11/30 Javascript
JavaScript简单实现的仿微博留言功能示例
2019/01/17 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
python进阶教程之文本文件的读取和写入
2014/08/29 Python
django轻松使用富文本编辑器CKEditor的方法
2017/03/30 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
对python中两种列表元素去重函数性能的比较方法
2018/06/29 Python
解决PySide+Python子线程更新UI线程的问题
2019/01/11 Python
Python argparse模块应用实例解析
2019/11/15 Python
Python 实现将某一列设置为str类型
2020/07/14 Python
斯凯奇澳大利亚官网:SKECHERS澳大利亚
2018/03/31 全球购物
英国在线药房:Chemist.co.uk
2019/03/26 全球购物
您熟悉ORM(Object-Relation Mapping)吗?请谈谈您所理解的ORM
2016/02/08 面试题
个人思想理论学习的自我鉴定
2013/11/30 职场文书
迎元旦广播稿
2014/02/22 职场文书
2015年信息化建设工作总结
2015/07/23 职场文书
2016年大学校运会广播稿件
2015/12/21 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
基于flask实现五子棋小游戏
2021/05/25 Python