#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import sys
import time
import smtplib
from email import encoders
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
def send_mail(sub,content,mail_to,fileList):
mail_host=
'smtp.163.com'
mail_user=
'****@163.com'
mail_pass=
'******'
mail_to_list=mail_to.split(
','
)
msg = MIMEMultipart()
#msg=MIMEText(content,_charset=
'utf-8'
)
msg[
'Subject'
]=sub
msg[
'From'
]=mail_user
msg[
'To'
]=
";"
.join(mail_to_list)
msg.attach(MIMEText(content,_charset=
'utf-8'
))
files=fileList.split(
','
)
for
f in files:
part = MIMEBase(
'application'
,
'octet-stream'
) #
'octet-stream'
: binary data
part.set_payload(open(f,
'rb'
).read())
encoders.encode_base64(part)
part.add_header(
'Content-Disposition'
,
'attachment; filename="%s"'
% os.path.
basename
(f).encode(
'utf-8'
))
msg.attach(part)
try
:
s=smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(mail_user,mail_to_list,msg.as_string())
s.close()
return
True
except Exception, e:
print
str(e)
return
False
if
__name__==
"__main__"
:
if
len(sys.argv) == 5:
send_mail(sys.argv[1],sys.argv[2],sys.argv[3],sys.argv[4])
else
:
print
''
print
'*************************************************'
print
' Error: 请传入四个参数值:邮件主题 邮件内容 收件人 附件路径'
print
' 如: python sendMail_func.py 邮件测试 邮件内容 abc@126.com,def@163.com,123456789@qq.com 1.xlsx,2.xlsx'
print
'*************************************************'
print
''
exit
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。