链接stmp服务

https://docs.python.org/3/library/smtplib.html

构建email参考

https://docs.python.org/2/library/email-examples.html

准备

开通smtp服务

from email.header import Header

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

from email.mime.multipart import MIMEMultipart

from email.mime.base import MIMEBase

'''

smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )

host: SMTP 服务器主机。 你可以指定主机的ip地址或者域名如: runoob.com,这个是可选参数。

port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下 SMTP 端口号为25。

local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。

'''

'''

email 对象 参考https://docs.python.org/2/library/email.mime.html#email.mime.base.MIMEBase

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

from_addr: 邮件发送者地址。

to_addrs: 字符串列表,邮件发送地址。

msg: 发送消息

'''

sender = 'yaoyt98@163.com' # 发送邮件

receivers = ['2860889218@qq.com','yaoyt98@163.com'] # 接受邮件

# message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8') #邮件内容

# message = MIMEText("<a href='http://baidu.com'>点半我跳转哦</a>", 'html', 'utf-8') #html

message = MIMEMultipart() #生成包括多个部分的邮件体

# 发送图片 ,文字 ,文档

path ='comert\imgs\阿狸\电玩女神 阿狸.jpg'

with open(path,'rb') as f:

img = MIMEImage(f.read())

message.attach(img)

text = MIMEText('阿狸的电玩女神的图片')

message.attach(text)

from email import encoders

# 增加附件

filename='新建文本文档' #附件名

textpath=r'comert\text\新建文本文档.txt'

with open(textpath,"rb") as fp:

mmtext= MIMEBase('application','octet-stream') #这个是所有mime的基类 设置类型

mmtext.set_payload(fp.read()) # 写入流

mmtext.add_header('Content-Disposition', 'attachment', filename=filename) # 添加头部

encoders.encode_base64(mmtext) # 改变编码

message.attach(mmtext)

# message = MIMEText("<a href='http://baidu.com'>点半我跳转哦</a>", 'html', 'utf-8') #html

subject = 'Python 测试' #标题

message['Subject'] = Header(subject, 'utf-8')

message['From'] = sender #一定是发件人的邮箱地址

message['To'] = ','.join(receivers) #一定是收件人的邮箱地址 两个都要是地址不然会报554 邮件格式错误

# import smtplib

# smtpobj = smtplib.SMTP_SSL('smtp.163.com', 465)

# smtpobj.login(sender, '授权密码') #

# smtpobj.sendmail(sender, receivers, message.as_string())

# smtpobj.quit()

from smtplib import SMTP_SSL

with SMTP_SSL('smtp.163.com', 465) as sp:

sp.login(sender, 'yaoyoutian2018')

sp.sendmail(sender, receivers, message.as_string())

print("邮件发送成功")

python smtplib和email发送邮件 未封装函数相关推荐

  1. 安装了email模块还是报错_科普:利用Python smtplib和email模块实现自动发送邮件功能...

    概要 我们都知道SMTP(简单邮件传输协议),是一组用于从原地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式.SMTP规定电子邮件应该如何格式化.如何加密,以及如何在邮件服务器之间传递.SMT ...

  2. python发送邮件廖雪峰_利用Python的smtplib和email发送邮件

    原理 网上已经有了很多的教程讲解相关的发送邮件的原理,在这里还是推荐一下廖雪峰老师的Python教程,讲解通俗易懂.简要来说,SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本 ...

  3. 你想要的完整解决Python smtplib使用163发送邮件时出现 •554 DT:SPM错误smtplib.SMTPDataError: (554, 'DT:SPM 163 smtp5,HdxpC

    最近在学习Python于是自己写了个小脚本测试使用smtp发送邮件,一切ok后出现如下错误: smtplib.SMTPDataError: (554, 'DT:SPM 163 smtp1,GdxpCg ...

  4. Python自动发送邮件-smtplib和email库

    一.先导入smtplib模块 导入MIMEText库用来做纯文本的邮件模板 二.发邮件几个相关的参数,每个邮箱的发件服务器不一样,以163为例子百度搜索服务器是 smtp.163.com 三.写邮件主 ...

  5. python发送邮件(smtplib、email、zmail)

    1.邮箱账号准备 首先需要注册一个个人邮箱,本文以126邮箱为例. 打开设置(网页版)中的POP3/SMTP/IMAP设置,开启POP3/SMTP服务,如果开启了会给出一串授权密码.开启后POP3/S ...

  6. email邮件中 内嵌iframe_邮件发送,使用Python中 smtplib与email 模块实现自动发送QQ邮件...

    在 Python 的实际应用中,特别是在执行周期性定时任务的场景中,我们希望能够一种简单.方便的方式获取任务的运行结果和状态.一般我们通过支持邮件发送功能的方式,实现任务结果的反馈.本文主要介绍,如何 ...

  7. 100天精通Python丨办公效率篇 —— 11、Python自动化操作 Email(发送邮件、收邮件、邮箱客户端)

    文章目录 一.通过SMTP发送电子邮件 1.1 定义邮件正文 1.2 发送邮件 二.收取电子邮件 2.1 配置账户信息 2.2 连接邮箱服务器 2.3 搜索返回消息ID 2.4 读取邮件 三.使用邮件 ...

  8. 六十一、Python中的smtplib和email实现邮件发送

    @Author : By Runsen 在Python中分别有两个库实现发送邮件,分别是smtplib和email. smtplib是用来发送邮件用的,email是用来构建邮件内容的. 下面是具体使用 ...

  9. smtplib库:Python使用QQ邮箱发送邮件

    目录 前言 发送email文本消息 发送email图片与附件消息 前言 一般来说,每个App都有一个意见反馈功能.对于企业,其意见反馈自然是发送到其服务器上,而对于个人应用来说,因为使用的人相对较少, ...

最新文章

  1. linux c 查看 结构体 宏 函数 关键字定义
  2. python中abc属于字符串吗_Python基础学习:字符串
  3. Boost:使用boost :: hash和boost :: array的测试
  4. drbd heartbeat mysql_Heartbeat+DRBD+MySQL Replication故障处理
  5. python framework threads_python 多线程,进程的理解
  6. mysql udf安全_打造全功能MYSQL入侵UDF
  7. MS SQL入门基础:存储过程概述
  8. 实习成长之路: 重新认识IOC,你可能对IoC有些误会?
  9. 基于AD09的四层板设计概要
  10. 企业管理理论综述与实践 — 战略
  11. python语言属于哪一种语言阅读答案_python是一种()-智慧树Python语言应用章节答案...
  12. android studio打包流程
  13. win10远程桌面查看对方计算机名,教你如何使用Win10远程桌面控制他人电脑?
  14. Verifying an Alien Dictionary
  15. matplotlib sinx cosx 图像
  16. 高通QCA6174A WiFi/蓝牙二合一芯片
  17. 03_深度学习实现手写数字识别(python)
  18. Springboot(SpringBoot)重试机制retry
  19. html屏幕滚动事件监听,JQuery监听页面滚动事件
  20. vim 插入模式小技巧

热门文章

  1. 从冯•诺依曼结构看计算机科学的发展史
  2. matlab数据的导入和导出
  3. tableau count() 和 countd() 区别
  4. C# 利用ZXing.Net来生成条形码和二维码
  5. 传奇sound文件调用说明
  6. 【全栈之巅】Node.js + Vue.js 全栈开发王者荣耀手机端官网和管理后台学习笔记(3.11-3.12)
  7. 《亲爱的小孩》里三位母亲的靠谱与不靠谱
  8. 3900x做服务器性能怎么样,AMD锐龙9 3900X性能怎么样?相当于什么级别和水平?
  9. ajaxSubmit提交两遍
  10. 使用ps将倾斜图片调正