截图模块
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #截图模块 def get_snapshot(): #定义变量 #excel文件的绝对位置 excel_file = r 'E:\L.xlsx' #输出图片的绝对位置 output_png_path = r 'E:\L.png' #excel的sheet名称 excel_tb = '每日销售' #注意要装excel软件,否则会报错 excel = win32.Dispatch( 'Excel.Application' ) wb = excel.Workbooks. Open (excel_file) ws = wb.WorkSheets(excel_tb) # 打开工作簿 # 示例:截图的起始终止格 start_cell = "A1" end_cell = "B48" #存放图片在excel中,否则直接剪贴板会报错 paste_cell = "Z99" ws. Range (f "{start_cell}:{end_cell}" ).CopyPicture() # 变成图片 ws.Paste(ws. Range (paste_cell)) # 将图片黏贴在excel中 ws.Shapes(ws.Shapes.Count).Copy() # 图片至剪贴板 img = ImageGrab.grabclipboard() # 从剪贴板获取图片 img.save(output_png_path) # 图片保存 wb.Save() # excel保存 wb.Close() print ( '输出图片:' + output_png_path) |
邮件正文发送图片,并附带附件

1 def attach_mail_module(mail_title,mail_content,mail_to_list,mail_ccto_list,attachment,attachment_file_name): 2 print('==进入attach_mail_module模块==') 3 4 #读取配置与密码,所有邮件信息都从配置文件来 5 conf_file='e:\\p.txt' 6 conf = configparser.ConfigParser() 7 conf.read(conf_file,encoding="utf-8") 8 mail_conf="mail_address_info" 9 10 abnormal_mail_reciever = conf.get(mail_conf,"mail_reciever") 11 smtp_address_ip = conf.get(mail_conf,"smtp_address_ip") 12 smtp_port = int(conf.get(mail_conf,"smtp_port")) 13 login_user_name = conf.get(mail_conf,"login_user_name") 14 login_passwd = conf.get(mail_conf,"login_passwd") 15 send_mail_from = conf.get(mail_conf,"send_mail_from") 16 17 #设置主题,收件人,抄送人 18 msg = MIMEMultipart('mixed') 19 msg['Subject'] = Header(mail_title,'utf-8') 20 msg['From'] = send_mail_from 21 msg['To'] = ",".join(to_list) 22 msg['cc'] = ','.join(ccto_list) 23 receive = to_list 24 receive.extend(ccto_list) 25 26 #设置附件(可以是中文名) 27 att = MIMEText(open(attachment, 'rb').read(), 'base64', 'utf-8') 28 att["Content-Type"] = 'application/octet-stream' 29 att.add_header("Content-Disposition", "attachment", filename=("gbk", "", attachment_file_name+".xlsx")) 30 msg.attach(att) 31 32 #设置图片 33 content=mail_content 34 html_img = f'<p>{content}<br><img src="cid:image1"></br></p>' # html格式添加图片 35 f = open(r"E:\LHD6_base.png", 'rb') #打开图片 36 msgimage = MIMEImage(f.read()) 37 f.close() 38 msgimage.add_header('Content-ID', '<image1>') # 设置图片 39 msg.attach(msgimage) 40 msg.attach(MIMEText(html_img,'html','utf-8')) # 添加到邮件正文 41 42 #发送邮件 43 smtp = smtplib.SMTP() 44 smtp.connect(smtp_address_ip,smtp_port) 45 smtp.login(login_user_name,login_passwd) 46 smtp.sendmail(send_mail_from, receive , msg.as_string()) 47 smtp.quit() 48 print('==attach_mail_module结束==\n')
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律