之前尝试过用python,golang写的通过qq邮箱发送邮件。
用过后,感觉有几个问题:
1. 不稳定,经常发不出去
2. 速度慢,过了好几分钟才收到
3. 不够档次,比如你一个公司,给用户发送注册邮件,人家一看是一个qq邮箱发来的,瞬间low掉渣。
这里推荐用阿里云的邮件推送哈。以下分享下几个步骤:
1. 注册阿里云账号,开通邮件推送。
2. 准备一个域名,随便买一个就行,最低8元一年
3. 进入控制台,配置。
新建域名

配置域名:

怎么配置,官网写的很清楚,只需要按照要求,添加一条条的记录到域名的dns。

如果你的域名是在阿里云买的,就在阿里云的域名控制台,dns里配置:

如果你是腾讯云买的域名,这里有个坑!!!
配置文档里,需要配置主机记录

在腾讯云里:

解决方法:这里填:@
配置完了,点验证,会提示变成通过。

配置发件地址:


最后一步,设置密码:

终于到了,可以发送邮件的时候了,上python代码:
# -*- coding:utf-8 -*-import smtplibimport emailfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMEText def SendMail(to_email,title,content): EMAIL_FROM='admin@xxx.com' #刚才配置的发信地址 EMAIL_HOST_PASSWORD="xxx" #密码 EMAIL_HOST, EMAIL_PORT='smtpdm.aliyun.com',80 # 自定义的回复地址 replyto = EMAIL_FROM msg = MIMEMultipart('alternative') msg['Subject'] = title msg['From'] = '%s <%s>' % ("admin", EMAIL_FROM) msg['To'] = '%s <%s>' % ("client", to_email) msg['Reply-to'] = replyto msg['Message-id'] = email.utils.make_msgid() msg['Date'] = email.utils.formatdate() textplain = MIMEText('{}'.format(content), _subtype='plain', _charset='UTF-8') msg.attach(textplain) try: client = smtplib.SMTP() client.connect(EMAIL_HOST, EMAIL_PORT) # 开启DEBUG模式 client.set_debuglevel(0) client.login(EMAIL_FROM, EMAIL_HOST_PASSWORD) client.sendmail(EMAIL_FROM, [to_email], msg.as_string()) client.quit() return True except smtplib.SMTPConnectError as e: error_msg= '邮件发送失败,连接失败' except smtplib.SMTPAuthenticationError as e: error_msg = '邮件发送失败,认证错误:' except smtplib.SMTPSenderRefused as e: error_msg = '邮件发送失败,发件人被拒绝:' except smtplib.SMTPRecipientsRefused as e: error_msg = '邮件发送失败,收件人被拒绝:' except smtplib.SMTPDataError as e: error_msg = '邮件发送失败,数据接收拒绝:' except smtplib.SMTPException as e: error_msg = '邮件发送失败, {}'.format(e.message) except Exception as e: error_msg = '邮件发送异常, {}'.format(str(e)) print(error_msg) return Falseif __name__ == '__main__': SendMail("xxxxxx@qq.com","title","content")
测试下,效果是这样的,看起来高大上~:


本文介绍如何使用阿里云邮件推送服务,避免了QQ邮箱的不稳定和低端形象问题,通过简单步骤配置和Python代码实现,提升企业邮件发送的专业度和效率。
1119

被折叠的 条评论
为什么被折叠?



