概述

Python发送邮件主要用到smtplibemail两个模块,其中smtplib负责发送邮件,email负责构建邮件内容

使用Python可以发送简单文本邮件、HTML格式的文件、带附件的邮件等。

这里使用163邮箱的smtp服务器从163邮箱发送简单文本邮件到其它邮箱为例,详情见代码。

这是博客园中的一篇文章,总结的很全

首先需要拥有一个163邮箱账号,需要注意的是,需要在163邮箱的设置中开启客户端授权,申请授权码。

否则,直接使用密码登录会报错smtplib.SMTPAuthenticationError: (550, b‘User has no permission‘)

授权码是用于登录第三方邮件客户端的专用密码。这个过程需要手机号验证。

如下图,在设置--->POP3/SMTP/IMAP界面中,勾选SMTP服务,会提示进行手机验证,设置授权码(字母+数字),

然后在Python代码中进行登录时,使用刚才设置的授权码登录,而不是163邮箱密码。

源码

# !/usr/bin/env python
# -*- coding:utf-8 -*-import smtplib
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr,formataddr# 163邮箱服务器地址
smtp_server='smtp.163.com'
# 发件人邮箱地址
from_addr='135****2212@163.com'
# 发件人邮箱密码(使用申请的客户端授权码代替)
passwd='授权码'
# 收件人邮箱地址
to_addr='80*****23@qq.com'# 构建邮件内容(参数:邮件内容; 类型-plain,html; 编码)
msg=MIMEText('SMTP测试邮件','plain','utf-8')
# 设置邮件主题
msg['Subject']=Header('这是邮件主题',charset='utf-8')def send_email():# 获取SMTP对象server=smtplib.SMTP(host=smtp_server,port=25)# 登录163邮箱服务器server.login(user=from_addr,password=passwd)# 发送邮件server.sendmail(from_addr=from_addr,to_addrs=to_addr,msg=msg.as_string())# 退出邮箱服务器server.quit()if __name__ == '__main__':send_email()

运行结果

Python邮件功能 - 使用163邮箱SMTP服务器发送邮件相关推荐

  1. C#使用163的SMTP服务器发送邮件

                                      C#使用163的SMTP服务器发送邮件 public class TestSend163Email { /// <summar ...

  2. Ubuntu 使用 heirloom-mail 调用外部邮箱 SMTP 服务器发送邮件

    使用本地服务发邮件,经常被过滤掉而且占用资源,发送成功率不高.所以使用外部SMTP服务器发送邮件成为了需求. SMTP认证的目的是为了使用户避免受到垃圾邮件的侵扰,简单地说就是要求必须在提供了账户名和 ...

  3. Python+selenium 实现自动化163邮箱登录并发送邮件

    啊!终于写出来了,定位好久,终于都弄完了.但是有时候又发送不成功有时候又可以,不知道是我暂停时间太短,还是其他什么原因.记录一下吧~ 定位时注意一下动态的iframe ''' 自动登录163邮箱,并发 ...

  4. PHP邮件发送:PHP使用SMTP服务器发送邮件

    1.下载好phpmailer 后只需要几个重要的文件即可,其余的都可以删除 class.phpmailer.php class.smtp.php class.pos3.php(我未用到这个接受文件) ...

  5. 各大型邮箱smtp服务器及端口收集:

    各大型邮箱smtp服务器及端口收集: >新浪邮箱smtp服务器 外发服务器:smtp.vip.sina.com 收件服务器:pop3.vip.sina.com 新浪免费邮件 外发服务器:smtp ...

  6. 使用Telnet连接smtp服务器发送邮件

    我们可以通过 Telnet 发送一条邮件,并了解其过程. 1. 前提准备 1.1 开启 Telnet 按下快捷键 Win + S,在搜索框内输入 "启用或关闭Windows功能", ...

  7. 常用邮箱 SMTP 服务器地址大全

    1. 阿里云邮箱(mail.aliyun.com): POP3 服务器地址:pop3.aliyun.com(SSL加密端口:995:非加密端口:110) SMTP 服务器地址:smtp.aliyun. ...

  8. PHP用socket连接SMTP服务器发送邮件

    PHP用socket连接SMTP服务器发送邮件 PHP用socket连接SMTP服务器发送邮件学习实验记录: 分析与SMTP会话的一般流程 1. HELO XXX \r\n //XXX就是自己起个名字 ...

  9. gitlab使用163邮箱向用户发送邮件

    摘要: 前端时间在CentOS7上安装gitlab闲弃了一段时间,今天在添加账号的时候,邮箱一直不能收到注册通知.这里转载记录一下163邮箱的设置 gitlab官方SMTP设置SMTP setting ...

最新文章

  1. bitcoin全节点部署及bitcoind bitcoin-cli命令使用解释
  2. 第一季度Teradata营收下降7.3% 利润下跌63%
  3. LETTers比赛第七场 Guess the Numbers
  4. 深入理解JS中this关键字
  5. mysql unicode转汉字_如果有人问你 MySql 怎么存取 Emoji,把这篇文章扔给他
  6. 服务器上的电脑登不上oracle,Oracle服务器改计算机名后报错之解决方法
  7. linux(fedora) 下dvwa 建筑环境
  8. 使用router-view时组件之间的通信
  9. 电机的入门之路系列2--电机驱动芯片2003的用法
  10. 写文件 追加到开始_文件和流
  11. 使用FastReport 3.0及以上版本创建动态报表的几个技巧(转)
  12. 易鲸捷首架刘明:Trafodion值得放入工具箱,因为有以下优点
  13. 在服务器上搭建Cadence16.6 CIS共享库
  14. B 罗马数字 2018浙江理工大学新生赛
  15. 重庆大学和北京交通大学计算机学院,北京交通大学录取分为何比一些985高?真是能上985就不上211吗?...
  16. 2021年胡润中国百富榜研究报告
  17. 计算机技术对艺术的影响,数字化技术对当代艺术发展的影响--理论
  18. 地铁怎么坐才不能做反_地铁怎么坐,地铁怎么坐才不能做反
  19. (转)关于样本标准差(SD)与样本标准误差(SE)
  20. 内置方法和模块的应用

热门文章

  1. ISP图像处理流程介绍
  2. 在win下配置C语言运行环境(超简单配置版)
  3. 裁员寒潮中 自媒体人该如何突破?
  4. 公考行测图形推理汉字题考查方式全攻略[转]
  5. R调用source出现问题
  6. 小红书竞品分析_小红书报告,(浅析)小红书产品分析报告:
  7. 华夏名网Discuz虚拟主机论坛空间推荐
  8. 微小说,藏在花语中的爱。感动到心疼!
  9. js拼接URL字符串
  10. 基于单片机空气质量检测二氧化碳 一氧化碳温湿度PM2.5检测系统的设计与实现