前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 测试 SMTP 服务

Python 测试 SMTP 服务

作者头像
为为为什么
发布2022-08-06 17:01:58
1.3K0
发布2022-08-06 17:01:58
举报
文章被收录于专栏:又见苍岚又见苍岚

SMTP 服务用于转发邮件,本文记录 Python 测试SMTP的方法。

SMTP

  • SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。
  • python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

核心语法

创建 SMTP 对象

语法如下:

代码语言:javascript
复制
import smtplib

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

参数说明:

  • host: SMTP 服务器主机。 你可以指定主机的ip地址或者域名如: runoob.com,这个是可选参数。
  • port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下 SMTP 端口号为25。
  • local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。
SMTP 对象使用 sendmail 方法发送邮件

语法如下:

代码语言:javascript
复制
SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

参数说明:

  • from_addr: 邮件发送者地址。
  • to_addrs: 字符串列表,邮件发送地址。
  • msg: 发送消息

这里要注意一下第三个参数,msg 是字符串,表示邮件。我们知道邮件一般由标题,发信人,收件人,邮件内容

实例测试

  • python 源码
代码语言:javascript
复制
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import smtplib
from email.mime.text import MIMEText
from email.header import Header
 
# 第三方 SMTP 服务
mail_host="smtp.xxx.com"  			#设置服务器
mail_user="yyyy@xxxx.com"   		#用户名
mail_pass="aaaaaaa"   				#口令 
mail_port = 25 		 				# 25 为 SMTP 端口号

sender = mail_user
receivers = ['343220061@qq.com']  	# 接收邮件,可设置为你的QQ邮箱或者其他邮箱
 
message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')
message['From'] = Header("VVD python 测试", 'utf-8')
message['To'] =  Header("测试", 'utf-8')
 
subject = 'Python SMTP 邮件测试 2'
message['Subject'] = Header(subject, 'utf-8')
 

if __name__ == '__main__':
    smtpObj = smtplib.SMTP() 
    smtpObj.connect(mail_host, mail_port)    
    smtpObj.login(mail_user, mail_pass)  
    smtpObj.sendmail(sender, receivers, message.as_string())
    print ("邮件发送成功")

  • 邮件发送成功后会在目标邮箱收到邮件

参考资料

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年2月3日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SMTP
  • 核心语法
    • 创建 SMTP 对象
      • SMTP 对象使用 sendmail 方法发送邮件
      • 实例测试
      • 参考资料
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档