importsmtplibfromemail。mime。textimportMIMETextfromemail。utilsimportformataddrfromdatetimeimportdatetime发件人邮箱账号XXXX1525943131收件人邮箱账号myuser〔XXXX〕myuser〔XXXX〕授权码,不是账号的密码发送人姓名A接收人姓名username〔天晴的时候会下雨〕发件服务器网易163qq邮箱defmail(text):nowtimedatetime。now()。strftime(YmdH:M:S)retTrueforiinrange(len(myuser)):text1您好username〔i〕现在时间为str(nowtime)很抱歉打扰您!texttry:msgMIMEText(text1,,utf8)括号里的对应发件人邮箱昵称、发件人邮箱账号msg〔F〕formataddr(〔sendername,mysender〕)括号里的对应收件人邮箱昵称、收件人邮箱账号msg〔T〕formataddr(〔username〔i〕,myuser〔i〕〕)邮件的主题,也可以说是标题msg〔S〕系统提示信息发件人邮箱中的SMTP服务器,端口是25serversmtplib。SMTP(smtp,25)发件人邮箱账号、邮箱密码server。login(mysender,authorizationcode)发件人邮箱账号、收件人邮箱账号、发送邮件server。sendmail(mysender,〔myuser〔i〕,〕,msg。asstring())关闭连接server。quit()exceptException:retFalsefinally:发送成功mail(text) 这里使用的是163邮箱,需要注意要在“邮箱中心”设置客户端授权密码,否则会报错(550,U),authorizationcode就是设置的授权码,如果使用邮箱密码,会报错(535,Error:)。 私信小编01即可获取大量Python学习资料 如果是使用QQ邮箱发送邮件,同样需要设置授权码,QQ邮箱设置账户,然后找到如下: 按步骤开启POP3SMTP服务,authorizationcode改为生成的16位授权码即可。 使用outlook发送邮件使用的是POP3服务,代码稍有改动 importclientaswin32fromdatetimeimportdatetimenowtimedatetime。now()。strftime(YmdH:M:S)现在时间为nowtimeoutlookwin32。Dispatch(outlook。)receivers〔XXXX〕mailoutlook。CreateItem(0)mail。Toreceivers〔0〕mail。Subjectsubmail。Attachimage。Add(C:work。)mail。Bodybodymail。Attachments。Add(C:work。)mail。Send() 添加账户信息的过程见articlee3c78d6496f6d73c4c85f5a2。html。 (想往正文中添加图片信息我试了很久都不行,Attachimage方法用不了,希望会的同学能在评论区告知,谢谢(鞠躬)。) 发送的时候可能会提示安全警告,关掉的方法为在outlook的选项中信任中心的设置中,把编程访问中的从不发送警告勾选上,如果和我截图一样是灰白色无法勾选,应该是电脑安全级别过高,在控制面板中可以更改。