1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 使用python自动发邮件(163 QQ outlook邮箱)

使用python自动发邮件(163 QQ outlook邮箱)

时间:2022-10-18 10:33:57

相关推荐

使用python自动发邮件(163 QQ outlook邮箱)

import smtplibfrom email.mime.text import MIMETextfrom email.utils import formataddrfrom datetime import datetime# 发件人邮箱账号my_sender = 'l1525943131@'# my_sender = '1525943131@'# 收件人邮箱账号my_user = ['1525943131@']# my_user = ['l1525943131@']# 授权码,不是账号的密码authorization_code = '********'# authorization_code = '****************'# 发送人姓名sender_name = 'After__today'# 接收人姓名user_name = ['天晴的时候会下雨']# 发件服务器smtp = '' #网易163# smtp='' #qq邮箱def mail(text):now_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')ret = Truefor i in range(len(my_user)):text1 = '您好 '+user_name[i]+'\n现在时间为'+str(now_time)+'\n很抱歉打扰您!\n'+texttry:msg = MIMEText(text1,'plain','utf-8')# 括号里的对应发件人邮箱昵称、发件人邮箱账号msg['From'] = formataddr([sender_name,my_sender])# 括号里的对应收件人邮箱昵称、收件人邮箱账号msg['To'] = formataddr([user_name[i],my_user[i]])# 邮件的主题,也可以说是标题msg['Subject'] = "系统提示信息"# 发件人邮箱中的SMTP服务器,端口是25server = smtplib.SMTP(smtp,25)# 发件人邮箱账号、邮箱密码server.login(my_sender, authorization_code)# 发件人邮箱账号、收件人邮箱账号、发送邮件server.sendmail(my_sender, [my_user[i],], msg.as_string())# 关闭连接server.quit()except Exception:ret = Falsefinally:nextreturn rettext = '发送成功'mail(text)

这里使用的是163邮箱,需要注意要在 “邮箱中心” 设置客户端授权密码,否则会报错(550, b'User has no permission'),authorization_code就是设置的授权码,如果使用邮箱密码,会报错(535, b'Error: authentication failed')。

如果是使用QQ邮箱发送邮件,同样需要设置授权码,QQ邮箱——>设置——>账户,然后找到如下:

按步骤开启POP3/SMTP服务,authorization_code改为生成的16位授权码即可。

使用outlook发送邮件使用的是POP3服务,代码稍有改动

import win32com.client as win32from datetime import datetimenow_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')sub = 'statistic_result'body = '现在时间为' + now_timeoutlook = win32.Dispatch('outlook.application')receivers = ['1525943131@']mail = outlook.CreateItem(0)mail.To = receivers[0]mail.Subject = sub# mail.Attachimage.Add('C:/Users/Administrator/Desktop/work.jpg')mail.Body = bodymail.Attachments.Add('C:/Users/Administrator/Desktop/work.jpg')mail.Send()

添加账户信息的过程见/article/e3c78d6496f6d73c4c85f5a2.html。(想往正文中添加图片信息我试了很久都不行,Attachimage方法用不了,希望会的同学能在评论区告知,谢谢(/鞠躬)。)

发送的时候可能会提示安全警告,关掉的方法为在outlook的选项中信任中心的设置中,把编程访问中的从不发送警告勾选上,如果和我截图一样是灰白色无法勾选,应该是电脑安全级别过高,在控制面板中可以更改。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。