python Email

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import smtplib
import xlrd
#from email.mime.text import MIMEText
from email.header import Header
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication


excelFileName = "D:\\SpeechRecognition\\emailFile.xlsx"  #需要修改,Excel文件的位置
tolist = []
tolist.append("279173578@qq.com")
tolist.append("chenjunliang1@huawei.com")
#tolist = ['279173578@qq.com', 'chenjunliang1@huawei.com']


dataExcel = xlrd.open_workbook(excelFileName)
table = dataExcel.sheet_by_index(0)
rowsCount = table.nrows

# 第三方 SMTP 服务
mail_host = "smtp.qq.com"  # 设置服务器
mail_user = "279173578@qq.com"  # 用户名
mail_pass = "zfrogjnxcofubjcg"  # 口令
 
sender = '279173578@qq.com'
receivers = ['chenjunliang1@huawei.com']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
 
#初始化附件
partPath =  "D:\\SpeechRecognition\\租房合同.docx"
partName =  "租房合同.docx"
onePart =  MIMEApplication(open(partPath, 'rb').read())
onePart.add_header('Content-Disposition', 'attachment', filename = '%s'%partName)
 
 
message = MIMEMultipart();
#message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')
#message['From'] = Header("", 'utf-8')
#message['To'] = Header("测试", 'utf-8')
 
message.attach(onePart)
 
 
subject = 'Python SMTP 邮件测试'
message['Subject'] = Header(subject, 'utf-8')
 
try:
    smtpObj = smtplib.SMTP()
    smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号
    smtpObj.login(mail_user, mail_pass)

    rowCur = 0
    #start 循环
    for x in range(1, rowsCount):
        value = table.cell_value(x, 7)
        print("current index:%d" % x)
        tolist.append(value)
        if (x % 30) == 0:
            smtpObj.sendmail(sender, tolist, message.as_string())
            print("send index:%d" % x + "successfully")
            tolist.clear()

    if not (len(tolist) == 0):
        smtpObj.sendmail(sender, tolist, message.as_string())

    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值