【STM32MP135F-DK】8-发送邮件
<div class='showpostmsg'><div>本次尝试使用开发板发送邮件,这个功能还是比较实用的,因为邮件既能发送数据,也能通知客户一些消息。</div><div>在开发板上发送邮件主要用的是SMTP功能。python里集成了smtplib,可以利用这个库里的函数实现SMTP的功能。</div>
<div>首先,要准备一个支持SMTP服务的邮箱作为发件箱。我这里使用的是163的邮箱,需要打开163邮箱的SMTP功能,需要在163邮箱里进行设置,很方便的就能打开SMTP功能,打开之后会给一个秘钥,这个秘钥是使用smtp服务时的验证密码,注意这里不需要使用自己邮箱的密码,而是要使用smtp服务提供的秘钥。</div>
<div>接下来编写python的代码</div>
<div>
<pre>
<code>import smtplib
from email.mime.text import MIMEText
mailhost = 'smtp.163.com'
mailuser = '1**********@163.com'
mailpass = 'T**************A'
sender = '1**********@163.com'
receivers = ['5********@qq.com']
message = MIMEText('from manhuami2007 stm32mp137!','plain','utf-8')
message['Subject'] = 'from manhuami2007'
message['From'] = sender
message['To'] = receivers
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(mailhost,25)
smtpObj.login(mailuser,mailpass)
smtpObj.sendmail(sender,receivers,message.as_string())
smtpObj.quit()
print("send sucess")
except smtplib.SMTPException as e:
print("error",e)</code></pre>
<p> </p>
</div>
<div>运行代码之后,作为收件箱的QQ邮箱就能收到一封邮件了。</div>
<div></div>
<div>这里用的就是smtplib里的函数,简单的分析一下代码:</div>
<div>mailhost为邮箱的服务器,因为是使用163的邮箱作为发件箱,因此用的是163的邮箱服务器 'smtp.163.com' ,默认使用的是25端口。</div>
<div>mailuser和mailpass是发件箱的邮箱号和秘钥,这个秘钥就是上面说的,开通SMTP服务时提供的秘钥。</div>
<div>receivers是收件箱,这个是个列表,因此可以添加多个收件箱。</div>
<div>接下来是邮件的内容message,通过编辑这个变量能够修改邮件的内容。</div>
<div>可以看出发送邮件的功能并不复杂。</div>
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script> <p>这种功能可以在家做监控,有异常发送邮箱。</p>
<p>开SMTP功能,打开之后会给一个秘钥,这个秘钥是和邮箱对应的吗?</p>
秦天qintian0303 发表于 2024-1-8 17:14
开SMTP功能,打开之后会给一个秘钥,这个秘钥是和邮箱对应的吗?
<p>是对应的</p>
页:
[1]