文章标题:【金秋打卡】第24天+Python办公自动化
第一模块: 学习课程名称:Python办公自动化;章节名称(序号): 4-6综合实战:某培训机构就业数据分析(二);讲师姓名:离岛
第二模块: 课程内容(内容概述):
综合实战:需求分析
1.Xlrd模块读取Excel数据;
2.xlsxwriter模块生成就业数据图表
3.smtplib模块发送附件邮件
(1)smtplib模块对smtp协议进行了封装,提供更便捷的方式发送电子邮件;
(2)发送邮件——>登录(服务器设置)、写邮件(信息发送给方、信息接收方、邮件主题、邮件内容-附件)、发送;
主要学习了如何发送邮件;
第三模块: 最终的解决思路:
xlrd
xlsxwriter
smtplib
form email.mime.text MIMEText form email.mime.multipart MIMEMultipart
form email.mime.application MIMEApplication
date=xlrd.open_workbook()
classinfo=[]
sheet date.sheets():
dict={:sheet.name,:}sum=i (sheet.nrows):
i>:
sum+=(sheet.cell(i,).value)dict[]=sum/(sheet.nrows-)
classinfo.append(dict)
(classinfo)
workbook=Xlsxwriter.workbook()
sheet=workbook.add_worksheet()nameinfo=[]
salaryinfo=[]
item classinfo:
nameinfo.append(item[])
salaryinfo.append(item[])
sheet.write_column(,nameinfo)
sheet.write_column(,salaryinfo)
chart=workbook.add_chart({:})
chart=set_title(:’‘)
chart.add_series({
:,
:,
:})
sheet.insert_chart(,chart)
workbook.close()
host_server=sender=code=user1=mail_title=“”
mail_content=attachment=MIMEApplication((,).read())
attachment.add_header(,,=)
smtp=smtplib.SMTP(host_server)
smtp=login(sender,code)
msg=MIMEMultipart()msg[]=mail_title
msg[]=sender
msg[]=user1
msg.attch(MIMEText(mail_content))
msg.attach(attachment)
smtp.sendmail(sender,user1,msg.as_string())
热门评论
-
小白菜慢慢长大2022-11-17 0
-
小白菜慢慢长大2022-11-17 0
-
小白菜慢慢长大2022-11-17 0
查看全部评论#3.发送邮件 host_server='smtp.qq.com'#主机地址 #设置发件人邮箱 sender='1111111@qq.com' #发件人邮箱密码-授权码 code='' #收件人邮箱 user1='' #准备邮件数据 #邮件标题 mail_title=“!!!1月平均就业薪资” #内容 mail_content="1月份平均就业薪资,请具体查看附件" #构建附件 attachment=MIMEApplication(open('newinfo.xlsx','rb').read()) attachment.add_header('content-disposition','attachment',filename='date.xlsx') #SMTP对象 smtp=smtplib.SMTP(host_server) #登录 smtp=login(sender,code) #发送 msg=MIMEMultipart()#带附件的实例 msg['Subject']=mail_title msg['Form']=sender msg['To']=user1 msg.attch(MIMEText(mail_content)) msg.attach(attachment) smtp.sendmail(sender,user1,msg.as_string())#2.写入excel workbook=Xlsxwriter.workbook('newinfo,xlsx') sheet=workbook.add_worksheet()#创建工作表 #写入班级数据 nameinfo=[] salaryinfo=[] for item in classinfo: nameinfo.append(item['name']) salaryinfo.append(item['salaryinfo']) sheet.write_column('A1',nameinfo) sheet.write_column('B1',salaryinfo) #写入图表 chart=workbook.add_chart({'type':'column'}) #标题 chart=set_title('name':’平均就业薪资‘) #数据源 chart.add_series({ 'name':'班级', 'categories':'=sheet1!$A$1:$A$3', 'values':'=sheet1!$B$1:$B$3' }) sheet.insert_chart('A7',chart) workbook.close()import xlrd import xlsxwriter import smtplib form email.mime.text import MIMEText #文本格式 form email.mime.multipart import MIMEMultipart form email.mime.application import MIMEApplication #1.读取 date=xlrd.open_workbook('info.excel') classinfo=[] for sheet in date.sheets(): dict={'name':sheet.name,'avgsalary':0}#班级信息 sum=0#存储薪资 for i in range(sheet.nrows): if i>1: sum+=float(sheet.cell(i,5).value)#得到薪资数据 dict['avgsalary']=sum/(sheet.nrows-2) classinfo.append(dict) print(classinfo)