300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python自动发outlook邮件_使用python自动发邮件(163 QQ outlook邮箱)

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

时间:2023-09-10 08:21:21

相关推荐

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

import smtplib

fromemail.mime.text import MIMEText

fromemail.utils import formataddr

fromdatetime 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 =True

for i inrange(len(my_user)):

text1 = '您好 '+user_name[i]+'\n现在时间为'+str(now_time)+'\n很抱歉打扰您!\n'+text

try:

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服务器,端口是25

server = 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 =False

finally:

next

returnret

text = '发送成功'mail(text)

很多人学习python,不知道从何学起。

很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。

很多已经做案例的人,却不知道如何去学习更加高深的知识。

那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!??¤

QQ群:623406465

这里使用的是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 aswin32

fromdatetime import datetime

now_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')

sub = 'statistic_result'body = '现在时间为' +now_time

outlook = 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 =body

mail.Attachments.Add('C:/Users/Administrator/Desktop/work.jpg')

mail.Send()

添加账户信息的过程见/article/e3c78d6496f6d73c4c85f5a2.html。

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

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

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