前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python使用smtp发送字符串邮件

python使用smtp发送字符串邮件

作者头像
灯珑LoGin
发布2022-10-31 09:35:46
6270
发布2022-10-31 09:35:46
举报
文章被收录于专栏:龙进的专栏

发送邮件需要用到smtplib模块,用于实现SMTP协议

标准库还提供了email模块来帮助我们构造邮件格式

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

创建smtp对象的语法为:

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

参数说明:

host:SMTP主机,是可选参数。可以指定主机的ip地址或者域名。

port:如果你提供了host参数,那就需要指定smtp服务使用的端口号,一般情况下端口号为25,SSL加密则是465

local_hostname: 如果smtp在本机上,那就只需要指定服务器的地址为localhost接口。

使用smtp对象的sendmail方法来发送邮件,语法如下

SMTP.sendmail(from_address, to_address, msg[, mail_options, rcpt_options]

参数说明:

from_address:邮件发送者地址

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

msg:发送消息,一般使用字符串

举个例子,

代码里面的那个邮箱用户名和密码大家就自己去QQ邮箱那里开通smtp服务并且自己设置那个发送服务器地址吧。用自己的账号密码。

代码语言:javascript
复制
import smtplib
from email.mime.text import MIMEText
from email.header import Header


sender = 'xxx@qq.com'
password = 'xxxxx'
#收件人无论是否只有一个收件人都必须是列表
receiver = ['re@qq.com', ]
#邮件正文
message = MIMEText('使用Python发送邮件', 'plain', 'utf-8')
#发件人显示的名字
message['From'] = Header('Python邮件', 'utf-8')
#收件人显示的名字
message['To'] = Header('邮件', 'utf-8')
#邮件标题
message['Subject'] = 'Python SMTP 发送邮件'

try:
    #使用qq企业邮箱服务器发送
    smtp = smtplib.SMTP_SSL('smtp.qiye.aliyun.com', 465)#自己修改这里
    #登录
    smtp.login(sender, password)
    smtp.sendmail(sender, receiver, message.as_string())
    print('邮件已发送!')
except smtplib.SMTPException as e:
    x = e.args[1]
    a = x.decode('gbk')
    print('发送失败!', a)

至此,邮件发送就完成啦

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯企业邮
腾讯企业邮(Tencent Exmail)是腾讯基于多年海量用户邮件系统研发和运营经验,为企业量身订造的一套办公用邮箱系统。稳定、简洁和快速,整合了丰富的企业应用,涵盖资源共享、消息发布、组织管理等方面。腾讯企业邮和微信生态深度整合,为您提供便捷高效的移动邮件解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档