写在开头的话:发邮件当然还是用邮箱来的方便,但是这个不可以用来装B不是
向单个人发送邮件
from email import encoders
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))
# 输入Email地址和口令:
from_addr = input('请输入发件人的邮箱号码From: ')
password = input('请输入发件人的邮箱密码Password: ')
# 输入SMTP服务器地址:
smtp_server = input('请输入邮箱服务器地址SMTP server: ')
# 输入收件人地址:
to_addr = input('请输入收件人邮箱地址To: ')
content = '''
你要发送的内容
'''
msg = MIMEText(content, 'plain', 'utf-8')
msg['From'] = _format_addr(u'主题 <%s>' % from_addr)
msg['To'] = _format_addr(u'发送对象 <%s>' % to_addr)
msg['Subject'] = Header(u'题头', 'utf-8').encode()
server = smtplib.SMTP_SSL(smtp_server,465)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()
向多人发邮件
from email import encoders
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))
try:
# 输入Email地址和口令:
from_addr = input('请输入发件人的邮箱号码From: ')
password = input('请输入发件人的邮箱密码Password: ')
# 输入SMTP服务器地址:
smtp_server = input('请输入邮箱服务器地址SMTP server: ')
# 输入收件人地址:
to_addr = []
while True:
a=input('请输入收件人邮箱:')
to_addr.append(a)
b=input('是否继续输入,n退出,任意键继续:')
if b == 'n':
break
content = '''
亲爱的朋友:
你好!
'''
msg = MIMEText(content, 'plain', 'utf-8')
msg['From'] = _format_addr(u'主题 <%s>' % from_addr)
msg['To'] = _format_addr(u'管理员 <%s>' % to_addr)
msg['Subject'] = Header(u'来自...的问候……', 'utf-8').encode()
server = smtplib.SMTP_SSL(smtp_server, 465)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
print('恭喜,发送成功')
except:
print('发送失败,请重试')
server.quit()