python自动发邮件 foxmail_[Python]利用yagamil自动化发送邮件

这里我先使用pandas处理拆分excel,然后可以利用yagmail自动将拆分的表格发送给对应的人员.

这里分为两个文件,一个是主文件

另一个是sendm_email.py

import pandas as pd

import os

from send_email import send_email

excel_name = input('请输入excel文件路径,需要包含文件名:')

#读入

data = pd.read_excel(excel_name)

names = {

'头部T1':'XXX@qq.com',

'头部T2':'XXX@qq.com',

'腰部':'XXX@qq.com',

'尾部':'XXX@qq.com',

'底部':'XXX@foxmail.com',

}

dirname = 'exceldir'

if not os.path.exists(dirname):

os.makedirs(dirname)

for name,email in names.items():

df = data.loc[data['门店标识'] == name]

filepath = os.path.join(dirname, f'{name}.xlsx')

writer = pd.ExcelWriter(filepath)

df.to_excel(writer,'Sheet1')

writer.save()

if email:

send_email(name,email,filepath)

以上内容将表格内的门店标识项目作为循环的对照列,取头部T1等5个对应的内容进行迭代保存为另一份xlsx表格.保存好,最后使用send_email模块

import yagmail

def send_email(name,to,filepath):

contents = f'''

{name}你好,以下为您所在地区所需的表格,请查阅邮件的附件...

腾讯邮箱附件的名称可能会乱码,请无视...

'''

yag = yagmail.SMTP(

user = 'xxxx@foxmail.com',

password = 'Xzhtestdfgfghadfg',

host = 'smtp.qq.com'

)

yag.send(to = to,subject = '拆分表格',contents=contents,attachments=filepath)

print('邮件发送完成!')

附件名称会乱码,在QQ邮箱中确实存在,可是发送给163邮箱的时候附件名称又不会乱码,其实并不影响阅读,只是乱码的标题看起来很不舒服

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值