使用163邮箱+Python3.6 发送邮件/批量发送邮件

#Python是个提高工作效率的好工具

使用Python发送/批量发送电子邮件,也是可以的,所以就探索了一下,虽然不是很实用。毕竟大家伙在邮箱里批量添加收件人就好了。但是在爬虫过程中,或者是某个东西运行中往自己的邮箱发送日志,那就需要自动啦。

在使用163邮箱时候,需要获取到邮箱的客户端授权密码:

使用163邮箱+Python3.6 发送邮件/批量发送邮件_第1张图片

同理其他邮箱也需要授权码 


附上检验真理的代码:


#发送邮件
from email.header import Header #处理邮件主题
from email.mime.text import MIMEText # 处理邮件内容
from email.utils import parseaddr, formataddr #用于构造特定格式的收发邮件地址
import smtplib #用于发送邮件
def _format_addr(s):
    name, addr = parseaddr(s)
    return formataddr((Header(name, 'utf-8').encode(), addr))
from_addr = '[email protected]' #发件箱
password = 'XXXXXXX'#我的163邮箱的客户端授权密码
to_addr = '[email protected]'#收件箱
smtp_server = 'smtp.163.com'
msg = MIMEText('内容', 'plain','utf-8')
msg['From'] = _format_addr('发送<%s>'%from_addr)
msg['To'] = _format_addr('接收<%s>'%to_addr)
msg['Subject'] = Header('邮件主题:XXXXX','utf-8').encode()
server = smtplib.SMTP(smtp_server,25)
server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()

'''
#批量发送
from email.header import Header #处理邮件主题
from email.mime.text import MIMEText # 处理邮件内容
from email.utils import parseaddr, formataddr #用于构造特定格式的收发邮件地址
import smtplib #用于发送邮件
def _format_addr(s):
    name, addr = parseaddr(s)
    return formataddr((Header(name, 'utf-8').encode(), addr))
from_addr = '[email protected]'
password = 'XXXXXX'
to_addrs = ['[email protected]','[email protected]','[email protected]']#这里存放批量的邮件地址,或者我们也可以从本地存放邮件地址的文件中读取
smtp_server = 'smtp.163.com'
msg = MIMEText('Python 爬虫爬取', 'plain','utf-8')
msg['From'] = _format_addr('发送<%s>'%from_addr)
msg['Subject'] = Header('这是邮件主题:一号爬虫运行','utf-8').encode()
server = smtplib.SMTP(smtp_server,25)
server.login(from_addr, password)
for to_addr in to_addrs:
    msg['To'] = _format_addr('接收<%s>'%to_addr)
    try:
        server.sendmail(from_addr, to_addr, msg.as_string())
    except:
        print('发送失败,再次尝试')
        server.sendmail(from_addr, to_addr, msg.as_string())
    print('发送邮件到'+to_addr)
server.quit()
'''

 

看看效果:

1. 发件箱

使用163邮箱+Python3.6 发送邮件/批量发送邮件_第2张图片 能够成功发送邮件

 

2.QQ邮箱的收件箱

使用163邮箱+Python3.6 发送邮件/批量发送邮件_第3张图片 确实收到了,这是其中一封

 

你可能感兴趣的:(星路历程)