|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码如下,网上说好像是编码问题,但还是不知道怎么解决,求大神指导:
# coding: utf-8
# 导入 smtplib 和 MIMEText
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.multipart import MIMEBase
from email import encoders
# 定义发送列表
mailto_list = ['********@qq.com']
# 设置服务器名称、用户名、密码以及邮件后缀
mail_host = "smtp.163.com"
mail_user = "******@163.com" # 发件邮箱
mail_pass = "******" # smtp密码
mail_postfix = "163.com"
# 发送邮件函数
def send_mail(to_list, sub, context):
me = mail_user + "<" + mail_user + "@" + mail_postfix + ">"
msg = MIMEMultipart(context)
# msg = MIMEText(context)
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ",".join(to_list)
# 附件
filename = '/Users/******/Desktop/111.txt'
att = MIMEText(open(filename, 'rb').read(), 'base64', 'utf-8')
att["Content-Type"] = 'application/octet-stream'
att["Content-Disposition"] = 'attachment; filename="111.txt"'
encoders.encode_base64(att)
msg.attach(att)
try:
send_smtp = smtplib.SMTP()
send_smtp.connect(mail_host)
send_smtp.login(mail_user, mail_pass)
send_smtp.sendmail(me, to_list, msg.as_string())
send_smtp.close()
return True
except Exception as e:
print(str(e))
return False
if __name__ == '__main__':
if send_mail(mailto_list, "呵呵哒", "哈哈"):
print("发送成功")
else:
print("发送失败")
|
-
附件
|