smtp发送邮件

注意:

关于脚本名称

python文件名 不能 设置为 email.py
如果这么做了,导入email模块的时候就变成了导入自己,然后就会出错
550 User has no permission

登陆163的服务器之前要先设置 邮箱授权码
设置之后在python代码中 原本应填入密码的地方 填入授权码即可登陆

关于SSL加密

若服务器使用了SSL加密,则在代码中
server = smtplib.SMTP_SSL(smtp_server,xxx)
若无SSL
server = smtplib.SMTP(smtp_server, xxx)

关于显示给收件人的 “ 收件人列表 ”

在邮件中,收到邮件的人看到的 ‘收件人列表’ 和实际的收件人,是分别储存在不同的变量中的

实际的收件人储存在:

to_addr = ['[email protected]','[email protected]','[email protected]','[email protected]']
是个list,储存实际会收到邮件的人

显示的 '收件人' 储存在:

msg['To'] = "[email protected],[email protected]" 这是个字符串,以逗号分隔收件人

显示的 '抄送给' 储存在:

msg['Cc'] = '[email protected]' 也是字符串,以逗号分隔收件人

在上面的这个例子中,收到邮件的人看到的情况是:
xxx 和 yyy 是收件人
zzz 收到了抄送
aaa既不在收件人列表,也不在抄送列表(除了aaa自己,其他收件人都不知道aaa也收到了邮件,相当于密送给了aaa)

你可能感兴趣的:(smtp发送邮件)