2025年3月28日 星期五 甲辰(龙)年 月廿七 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

Python3,pandas自动处理exlce数据及yagmail邮件自动发送

时间:03-18来源:作者:点击数:47

使用pandas处理Excel的数据

pandas怎么读取excel,我们已经分享了,不太熟悉的,可以参照小鱼的这篇文章pandas 5行代码实现对Excel的读取!

那么接下来,我们要做的就是对excel表中的数据,某一个负责人负责的数据进行统计。

1.先来看一下excel表的内容:

数据统计表.xlsx

在这里插入图片描述

2.我们用代码实现,对 “张三”,"李四 "负责信息的统计

  • # -*- coding:utf-8 -*-
  • """
  • @ auth : carl_DJ
  • @ time : 2020-8-19
  • """
  • import pandas as pd
  • import os
  • from send_email import send_email #导入send_email
  • #定义数据文件的地址 ,这里写两种
  • #一种:手动输入文件地址
  • excel_path = input(f'请输入文件地址:')
  • #另一种:直接读取文件地址
  • #excel_path = '../data/数据统计表.xlsx'
  • #读入
  • data = pd.read_excel(excel_path)
  • #定义一个names列表,可以统计多个负责人
  • names = {
  • '陈文''需要发送的邮箱地址',
  • '王杰''需要发送的邮箱地址'
  • }
  • #文件夹名字
  • dirname = 'exceldir'
  • #如果没有文件夹,则自动创建
  • if not os.path.exists(dirname):
  • os.makedirs(dirname)
  • #循环读取excel表中的数据
  • for name,email in names.items():
  • #获取负责人的信息
  • df = data.loc[data['负责人']==name]
  • #保存路径及文件名
  • filepath = os.path.join(dirname,f'{name}.xlsx')
  • #写入数据
  • writer = pd.ExcelWriter(filepath)
  • #sheet1 是数据写到excel表的sheet1页
  • df.to_excel(writer,'sheet1')
  • #保存数据
  • writer.save()
  • if email:
  • send_email(name,email,filepath)

3.运行的结果:

>> 3.1生成的文件夹

在这里插入图片描述

3.2生成的文件数据

在这里插入图片描述

yagmail实现邮件自动发送

使用yagmail实现邮件的发送

同样,在使用之前,需要安装yagmail模块

1.cmd窗口使用pip安装

  • pip install yagmail

安装完成,就可以使用了!

我们来编写send_emial 的代码

2.send_email.py

  • # -*- coding:utf-8 -*-
  • """
  • @ auth : carl_DJ
  • @ time : 2020-8-19
  • """
  • import yagmail
  • #定义send_email方法
  • def send_email(name,send_to,filepath):
  • #定义邮件发送的文本内容,以及附件
  • contents = [
  • f'{name},你好,数据统计信息已经整理完成,已发送,请查收!',
  • filepath
  • ]
  • #定义SMTP邮件的基本信息
  • yag = yagmail.SMTP(
  • user = 'carl_DJ@xxx.com',
  • password = 'password',
  • host = 'smtp.host'
  • )
  • yag.send(to = send_to,subject = '数据统计汇报',contents = contents)

3.结果就是这个样子:

在这里插入图片描述
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门